/* Casos de uso copiados de belendiloy.com (solo reglas .case-*). Se carga solo en las paginas de caso sincronizadas. */
.case-lead{display:flex;justify-content:center;
  height:100px;position:relative;
  padding:24px 0;box-sizing:border-box;}
.case-lead .teaser-stem{width:1px;height:100%;background:var(--line);position:relative;}
.case-lead .teaser-dot{position:absolute;left:50%;top:0;
  transform:translate(-50%,-50%);
  width:8px;height:8px;background:var(--accent);
  will-change:top;}
.page-cover:hover img:not(.cover-logo){transform:scale(1.045);}
.case-grid{display:flex;flex-wrap:wrap;gap:40px;
  padding:0 var(--pad) 100px;}
.case-grid .work-card{width:calc(50% - 20px);}
@media(max-width:820px){
.case-grid .work-card{width:100%;}
}
.case-row{display:flex;gap:64px;padding:0 var(--pad) 60px;flex-wrap:wrap;}
.case-row-text{flex:0 0 320px;}
.case-row-text .eyebrow{margin-bottom:0;}
.case-row-text h2{font-size:clamp(22px,2.6vw,30px);font-weight:500;line-height:1.3;margin-top:16px;}
.case-row-body{flex:1 1 420px;max-width:640px;}
.case-row-body p{font-size:15px;line-height:1.85;color:var(--muted);margin-bottom:18px;}
.case-row-body p:last-child{margin-bottom:0;}
.case-media{padding:0 var(--pad) 100px;}
.case-media img{width:100%;display:block;border-radius:0;object-fit:cover;}
.case-media-full img{aspect-ratio:2/1;height:auto;}
.case-media-overlap{position:relative;padding:0 var(--pad) 140px;}
.case-media-overlap .media-main{width:64%;max-width:820px;aspect-ratio:4/5;height:auto;object-fit:cover;border-radius:0;display:block;}
.case-media-overlap .media-accent{position:absolute;left:calc(46% + 24px);bottom:0;
  width:38%;max-width:440px;aspect-ratio:4/5;height:auto;object-fit:cover;border-radius:0;
  box-shadow:0 24px var(--pad) rgba(0,0,0,0.25);
  border:6px solid var(--bg);}
.case-split{display:flex;gap:64px;padding:0 var(--pad) 100px;align-items:flex-start;flex-wrap:wrap;}
.case-split-text{flex:1 1 380px;max-width:480px;}
.case-split-text h2{font-size:clamp(22px,2.6vw,30px);font-weight:500;margin:16px 0 20px;line-height:1.3;}
.case-split-text h4{font-size:13px;font-weight:500;letter-spacing:.03em;margin-bottom:16px;}
.case-split-text p{font-size:15px;line-height:1.85;color:var(--muted);}
.case-split-media{flex:1 1 420px;display:flex;flex-direction:column;gap:24px;}
.case-split-media img{width:100%;height:auto;border-radius:0;display:block;object-fit:cover;aspect-ratio:3/2;}
.case-media-natural img{aspect-ratio:auto;height:auto;}
.case-gallery{display:flex;gap:24px;padding:0 var(--pad) 100px;}
.case-gallery-col{flex:1 1 0;display:flex;flex-direction:column;gap:24px;}
.case-gallery-col img{width:100%;height:auto;border-radius:0;display:block;object-fit:cover;aspect-ratio:4/3;}
.case-gallery-col-offset{margin-top:-120px;}
.case-links{padding:0 var(--pad) 100px;}
.page-cover .cover-logo{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);
  width:min(22%,220px);height:auto;object-fit:contain;
  z-index:2;filter:drop-shadow(0 8px 24px rgba(0,0,0,0.25));}
.case-cols{display:flex;gap:64px;padding:0 var(--pad) 100px;flex-wrap:wrap;}
.case-cols>div{flex:1 1 380px;}
.case-text{max-width:640px;padding:0 var(--pad) 60px;}
.case-media-right{padding:0 var(--pad) 100px;display:flex;justify-content:flex-end;}
.case-media-right img{width:min(42%,600px);height:auto;border-radius:0;object-fit:cover;aspect-ratio:1/1;display:block;}
.case-phases{display:flex;gap:24px;flex-wrap:wrap;padding:0 var(--pad) 100px;}
.case-phases>div{flex:1 1 240px;border-top:1px solid var(--line);padding-top:20px;}
.case-phases .phase-num{font-size:22px;font-weight:600;color:var(--accent);margin-bottom:10px;display:block;}
.case-phases .phase-label{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:16px;display:block;}
.case-phases ul{list-style:none;}
.case-phases ul li{font-size:13px;line-height:1.6;color:var(--muted);padding:8px 0;border-bottom:1px solid var(--line);}
.case-phases ul li:last-child{border-bottom:none;}
.case-row-text h4,.case-row-body h4{font-size:14px;font-weight:500;margin:24px 0 16px;}
.case-row-body h4:first-child{margin-top:0;}
.case-toc-layout{display:flex;gap:64px;align-items:flex-start;
  padding:0 var(--pad) 100px;}
.case-toc{flex:0 0 220px;
  position:sticky;top:120px;
  display:flex;flex-direction:column;gap:14px;}
.case-toc-link{font-size:13px;color:var(--muted);text-decoration:none;
  transition:color .3s ease;}
.case-toc-link::after{content:none;}
.case-toc-link:hover{color:var(--fg);}
.case-toc-link.active{color:var(--accent);font-weight:400;}
.case-toc-content{flex:1 1 auto;min-width:0;}
.case-toc-section{padding-bottom:100px;padding-left:0;padding-right:0;min-height:0;
  scroll-margin-top:120px;}
.case-toc-section:last-child{padding-bottom:0;}
.case-toc-section .eyebrow{margin-bottom:0;}
.case-toc-section h2{font-size:clamp(24px,3vw,34px);font-weight:500;margin:16px 0 22px;line-height:1.25;
  max-width:720px;}
.case-toc-section p{font-size:15px;line-height:1.85;color:var(--muted);margin-bottom:18px;max-width:720px;}
.case-toc-section p:last-child{margin-bottom:0;}
.case-toc-section p strong{color:var(--fg);font-weight:400;}
.case-toc-section ul{margin:0 0 18px;padding-left:20px;max-width:720px;}
.case-toc-section ul:last-child{margin-bottom:0;}
.case-toc-section ul li{font-size:15px;line-height:1.85;color:var(--muted);margin-bottom:8px;}
.case-toc-section ul li:last-child{margin-bottom:0;}
.case-toc-section ul li strong{color:var(--fg);font-weight:400;}
.case-toc-media{margin-top:40px;overflow:hidden;border-radius:0;}
.case-toc-media.case-toc-gallery{display:flex;gap:24px;margin-top:100px;overflow:visible;border-radius:0;}
.case-toc-media.case-toc-gallery>div{flex:1 1 0;display:flex;flex-direction:column;gap:24px;overflow:hidden;border-radius:0;}
.case-toc-media.case-toc-gallery>div:last-child{margin-top:-60px;}
.case-toc-media img{width:100%;border-radius:0;display:block;object-fit:cover;transition:transform .7s cubic-bezier(.16,1,.3,1);}
@media(hover:hover) and (pointer:fine){
.case-toc-media:not(.case-toc-gallery):hover img{transform:scale(1.035);}
.case-toc-media.case-toc-gallery>div:hover img{transform:scale(1.035);}
}
.case-toc-media.case-toc-gallery img{aspect-ratio:4/3;height:auto;}
.case-toc-media.case-toc-full img{aspect-ratio:2/1;height:auto;}
.case-toc-media.case-toc-full.case-toc-natural img{aspect-ratio:auto;height:auto;}
.case-toc-content .case-media,
.case-toc-content .case-media-overlap,
.case-toc-content .case-media-right,
.case-toc-content .case-gallery,
.case-toc-content .case-cols,
.case-toc-content .case-phases,
.case-toc-content .case-split-media-only{padding-left:0;padding-right:0;margin-top:40px;}
.case-toc-content .case-media:first-child,
.case-toc-content .case-media-overlap:first-child,
.case-toc-content .case-gallery:first-child{margin-top:0;}
.case-toc-content .case-gallery-col-offset{margin-top:0;}
.case-toc-content .case-split-media-only{display:flex;gap:24px;}
.case-toc-content .case-split-media-only img{width:100%;height:auto;border-radius:0;display:block;object-fit:cover;aspect-ratio:3/2;}
.case-toc-fab{display:none;}
.case-toc-drawer-title{display:none;}
@media(max-width:960px){
.case-toc-layout{flex-direction:column;gap:32px;padding:0 20px 60px;}
.case-toc{position:fixed;top:0;left:0;right:0;z-index:110;
    flex-direction:column;flex-wrap:nowrap;gap:2px;
    width:100%;max-height:85vh;overflow-y:auto;
    background:var(--bg);
    padding:100px 20px 28px;
    border-bottom:1px solid var(--line);
    box-shadow:0 20px 40px rgba(0,0,0,.18);
    transform:translateY(-100%);
    transition:transform .45s cubic-bezier(.16,1,.3,1);}
.case-toc.open{transform:translateY(0);}
.case-toc-drawer-title{display:block;
    font-size:clamp(22px,6vw,30px);font-weight:600;letter-spacing:-.02em;line-height:1.15;
    margin-bottom:18px;padding-bottom:18px;border-bottom:1px solid var(--line);}
.case-toc-link{padding:13px 0;border-bottom:1px solid var(--line);
    font-size:15px;}
.case-toc-content{max-width:100%;}
.case-toc-media.case-toc-gallery{flex-direction:column;gap:16px;}
.case-toc-media.case-toc-gallery>div:last-child{margin-top:0;}
.case-toc-fab{display:flex;position:fixed;right:20px;bottom:24px;z-index:120;
    width:52px;height:52px;border-radius:50%;
    align-items:center;justify-content:center;
    background:var(--fg);color:var(--bg);border:none;cursor:pointer;
    box-shadow:0 10px 28px rgba(0,0,0,.28);
    transition:background .3s ease,color .3s ease,transform .3s ease;}
.case-toc-fab svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.7;
    position:absolute;}
.case-toc-fab-icon-close{display:none;}
.case-toc-fab.open .case-toc-fab-icon-list{display:none;}
.case-toc-fab.open .case-toc-fab-icon-close{display:block;}
.case-toc-fab.open{background:var(--accent);color:#ffffff;}
}
@media(max-width:820px){
.case-row{gap:24px;padding:0 20px 40px;}
.case-row-text{flex:1 1 100%;}
.case-media,.case-media-overlap,.case-split,.case-gallery,.case-links{padding-left:20px;padding-right:20px;}
.case-media-overlap{padding-bottom:60px;}
.case-media-overlap .media-main{width:100%;}
.case-media-overlap .media-accent{position:static;width:70%;margin:16px 0 0 auto;box-shadow:none;border-width:4px;}
.case-split{gap:24px;padding-bottom:60px;}
.case-gallery{flex-direction:column;gap:16px;}
.case-gallery-col{gap:16px;}
.case-gallery-col-offset{margin-top:0;}
}
@media(max-width:640px){
.case-lead{height:100px;padding:20px 0;}
.case-grid{padding:0 20px 60px;gap:32px;}
.case-links{padding:0 20px 60px;}
}
.case-sector-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;
  margin:20px 0 8px;font-size:13px;color:var(--muted);}
.case-sector-row .sep{opacity:.5;}
.case-meta-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:24px;
  padding-top:28px;margin-top:28px;border-top:1px solid var(--line);}
.case-meta-grid .meta-item{font-size:13px;color:var(--muted);}
.case-meta-grid .meta-item b{display:block;color:var(--fg);font-weight:400;margin-bottom:6px;
  font-size:11px;text-transform:uppercase;letter-spacing:.06em;}
.case-statement{font-family:var(--display);font-weight:400;font-style:normal;
  font-size:clamp(21px,2.6vw,30px);line-height:1.45;color:var(--fg);
  max-width:760px;margin:14px 0 28px;}
.case-subhead{font-size:12px;font-weight:500;text-transform:uppercase;letter-spacing:.08em;
  color:var(--muted);margin:36px 0 12px;}
.case-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:24px 0 28px;}
.case-card{border:1px solid var(--line);border-radius:0;padding:22px;
  transition:transform .35s cubic-bezier(.16,1,.3,1),border-color .35s ease,box-shadow .35s ease;}
.case-card h4{font-size:15px;font-weight:500;margin-bottom:10px;color:var(--fg);}
.case-card p{font-size:14px;line-height:1.7;color:var(--muted);margin:0;max-width:none;}
.case-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:24px 0 12px;}
.case-stat{border:1px solid var(--line);border-radius:0;padding:22px;
  transition:transform .35s cubic-bezier(.16,1,.3,1),border-color .35s ease,box-shadow .35s ease;}
.case-stat .num{font-family:var(--display);font-weight:400;
  font-size:clamp(26px,3vw,36px);color:var(--accent);display:block;margin-bottom:8px;
  transition:transform .35s cubic-bezier(.16,1,.3,1);}
.case-stat .label{font-size:13px;line-height:1.6;color:var(--muted);}
.case-stats-note{font-size:12px;color:var(--muted);opacity:.8;margin:0 0 28px;max-width:720px;}
@media(hover:hover) and (pointer:fine){
.case-card:hover,.case-stat:hover{transform:translateY(-4px);border-color:var(--accent);
    box-shadow:0 12px 28px rgba(0,0,0,.08);}
.case-stat:hover .num{transform:scale(1.06);}
}
.case-pull-quote{max-width:720px;margin:var(--pad) 0;padding-left:28px;
  border-left:2px solid var(--accent);position:relative;}
.case-pull-quote::before{content:'“';position:absolute;left:-6px;top:-28px;
  font-family:var(--display);font-size:80px;font-weight:600;
  color:var(--accent);opacity:.25;line-height:1;pointer-events:none;}
.case-pull-quote blockquote{font-family:var(--display);font-weight:400;font-style:normal;
  font-size:clamp(19px,2.4vw,25px);line-height:1.55;color:var(--fg);margin:0 0 16px;
  position:relative;}
.case-pull-quote cite{font-style:normal;font-size:13px;color:var(--muted);}
.case-before-after{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:28px 0;}
.case-ba-col{border:1px solid var(--line);border-radius:0;padding:22px;
  transition:transform .35s cubic-bezier(.16,1,.3,1),border-color .35s ease,box-shadow .35s ease;}
@media(hover:hover) and (pointer:fine){
.case-ba-col:hover{transform:translateY(-4px);box-shadow:0 12px 28px rgba(0,0,0,.08);}
.case-ba-col.after:hover{border-color:var(--accent);}
}
.case-ba-col .ba-label{font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.08em;
  color:var(--muted);margin-bottom:10px;display:block;}
.case-ba-col.after .ba-label{color:var(--accent);}
.case-ba-col p{font-size:14px;line-height:1.7;color:var(--muted);margin:0;max-width:none;}
.case-solution-screens{display:flex;gap:20px;margin-top:20px;}
.case-solution-screens>div{flex:1 1 0;}
.case-solution-screens img{width:100%;border-radius:0;display:block;object-fit:cover;aspect-ratio:4/3;}
.case-media-caption{font-size:12px;color:var(--muted);margin-top:10px;}
.case-learnings{border:1px dashed var(--line);border-radius:0;padding:24px;
  font-size:14px;line-height:1.7;color:var(--muted);max-width:720px;}
.case-next{border-top:1px solid var(--line);padding-top:28px;margin-top:20px;}
.case-next .label{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;
  margin-bottom:10px;display:block;}
.case-next a{font-family:var(--display);font-weight:400;font-size:clamp(24px,3vw,34px);
  color:var(--fg);text-decoration:none;transition:color .3s ease;}
.case-next a:hover{color:var(--accent);}
@media(max-width:820px){
.case-meta-grid{grid-template-columns:repeat(2,1fr);}
.case-cards{grid-template-columns:1fr;}
.case-stats{grid-template-columns:1fr;}
.case-before-after{grid-template-columns:1fr;}
.case-solution-screens{flex-direction:column;}
}
.case-figures{padding:0 var(--pad) 100px;}
.case-figures .eyebrow{margin-bottom:8px;}
@media(min-width:961px){
.case-figures .case-stats{grid-template-columns:repeat(5,1fr);}
}
@media(max-width:960px){
.case-figures{padding:0 20px 60px;}
}
.case-swatches{display:flex;flex-direction:column;gap:10px;margin:28px 0 8px;}
.case-swatches>div{display:flex;align-items:center;gap:4px;}
.case-swatches span{flex:1 1 0;height:40px;}
.case-swatches b{flex:0 0 72px;padding-left:12px;font-size:12px;font-weight:400;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;}
@media(max-width:600px){
.case-swatches span{height:28px;}
.case-swatches b{flex-basis:56px;font-size:10px;}
}
@media(max-width:820px){
.case-toc-media img,
  .case-toc-media.case-toc-full img,
  .case-toc-media.case-toc-gallery img,
  .case-media img,
  .case-media-full img,
  .case-gallery-col img,
  .case-split-media img,
  .case-media-right img,
  .case-media-overlap .media-main,
  .case-media-overlap .media-accent{aspect-ratio:auto;height:auto;}
}
.case-spaced .case-toc-media + p,
.case-spaced .case-toc-media + ul,
.case-spaced .case-swatches-fig + p{margin-top:var(--pad);}
.case-swatches-fig{margin:40px 0 0;}
.case-swatches-fig .case-swatches{margin:0;}
.case-swatches-fig figcaption{margin-top:16px;padding-top:12px;border-top:1px solid var(--line);
  font-size:12px;line-height:1.6;color:var(--muted);letter-spacing:.02em;}
.case-pager{padding:0 var(--pad) 60px;}
.case-pager .eyebrow{margin-bottom:20px;}
.case-pager-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
.case-pager-link{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:14px;
  padding:44px 32px 44px 0;color:var(--fg);text-decoration:none;min-width:0;}
.case-pager-link.is-next{align-items:flex-end;text-align:right;padding:44px 0 44px 32px;border-left:1px solid var(--line);}
.case-pager-dir{display:inline-flex;align-items:center;gap:8px;
  font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);
  transition:color .25s ease;}
.case-pager-dir svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;transition:transform .35s cubic-bezier(.16,1,.3,1);}
.case-pager-title{font-family:var(--display);font-weight:400;
  font-size:clamp(28px,3.6vw,52px);line-height:1.08;letter-spacing:-.01em;
  transition:color .3s ease,transform .5s cubic-bezier(.16,1,.3,1);}
.case-pager-link:hover .case-pager-title,.case-pager-link:focus-visible .case-pager-title{color:var(--accent);}
.case-pager-link:hover .case-pager-dir,.case-pager-link:focus-visible .case-pager-dir{color:var(--fg);}
.case-pager-link.is-prev:hover .case-pager-dir svg{transform:translateX(-4px);}
.case-pager-link.is-next:hover .case-pager-dir svg{transform:translateX(4px);}
.case-pager-thumb{display:block;width:72px;height:72px;overflow:hidden;background:#161616;order:-1;}
.case-pager-thumb img{display:block;width:100%;height:100%;object-fit:cover;}
@media(hover:hover) and (pointer:fine) and (min-width:1024px){
.case-pager-thumb{position:absolute;top:50%;z-index:5;width:132px;height:132px;order:0;
    box-shadow:0 18px 40px -14px rgba(0,0,0,.4);
    opacity:0;pointer-events:none;
    transition:opacity .25s ease,transform .55s cubic-bezier(.34,1.56,.64,1);}
.case-pager-link.is-prev{padding-right:212px;}
.case-pager-link.is-next{padding-left:212px;}
.case-pager-link.is-prev .case-pager-thumb{right:var(--pad);transform:translateY(-50%) scale(.6) rotate(-9deg);}
.case-pager-link.is-next .case-pager-thumb{left:var(--pad);transform:translateY(-50%) scale(.6) rotate(9deg);}
.case-pager-link.is-prev:hover .case-pager-thumb,.case-pager-link.is-prev:focus-visible .case-pager-thumb{opacity:1;transform:translateY(-50%) scale(1) rotate(-3deg);}
.case-pager-link.is-next:hover .case-pager-thumb,.case-pager-link.is-next:focus-visible .case-pager-thumb{opacity:1;transform:translateY(-50%) scale(1) rotate(3deg);}
.case-pager-thumb img{transform:scale(1.25);transition:transform .8s cubic-bezier(.16,1,.3,1);}
.case-pager-link:hover .case-pager-thumb img{transform:scale(1);}
.case-pager-link.is-prev:hover .case-pager-title{transform:translateX(-6px);}
.case-pager-link.is-next:hover .case-pager-title{transform:translateX(6px);}
}
@media(prefers-reduced-motion:reduce){
.case-pager-thumb,.case-pager-thumb img,.case-pager-title,.case-pager-dir svg{transition:none !important;}
}
@media(max-width:820px){
.case-pager{padding:0 20px 40px;}
.case-pager-grid{grid-template-columns:1fr;}
.case-pager-link,.case-pager-link.is-next{padding:28px 0;}
.case-pager-link.is-next{border-left:none;border-top:1px solid var(--line);}
}
.case-framed .case-toc-content{counter-reset:case-fig;}
.case-framed .case-toc-media:not(.case-toc-gallery){position:relative;counter-increment:case-fig;
  margin-top:var(--pad);padding:60px clamp(20px,6%,72px) clamp(24px,4.5%,52px);
  display:flex;justify-content:center;align-items:center;
  border:1px solid var(--line);
  background:rgba(128,128,128,.05);
  background:color-mix(in srgb, var(--fg) 3%, var(--bg));
  overflow:hidden;transition:border-color .35s ease;}
html[data-theme="light"] .case-framed .case-toc-media:not(.case-toc-gallery){background:#fff;}
.case-framed .case-toc-media:not(.case-toc-gallery)::before{content:"Fig. " counter(case-fig, decimal-leading-zero);
  position:absolute;top:20px;left:24px;
  font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);}
.case-framed .case-toc-media:not(.case-toc-gallery)::after{content:"";position:absolute;top:24px;right:24px;width:7px;height:7px;background:var(--accent);}
.case-framed .case-toc-media:not(.case-toc-gallery) img{width:auto;max-width:100%;height:auto;max-height:min(72vh,640px);
  aspect-ratio:auto;object-fit:contain;
  box-shadow:0 24px var(--pad) -28px rgba(0,0,0,.35);}
@media(hover:hover) and (pointer:fine){
.case-framed .case-toc-media:not(.case-toc-gallery):hover{border-color:rgba(var(--accent-rgb),.45);}
.case-framed .case-toc-media:not(.case-toc-gallery):hover img{transform:scale(1.015);}
}
.case-framed .case-toc-media + p,
.case-framed .case-toc-media + ul,
.case-framed .case-toc-media + .case-stats{margin-top:var(--pad);}
@media(max-width:820px){
.case-framed .case-toc-media:not(.case-toc-gallery){margin-top:32px;padding:46px 14px 16px;}
.case-framed .case-toc-media:not(.case-toc-gallery)::before{top:16px;left:14px;}
.case-framed .case-toc-media:not(.case-toc-gallery)::after{top:20px;right:14px;}
.case-framed .case-toc-media:not(.case-toc-gallery) img{max-height:none;}
.case-framed .case-toc-media + p,.case-framed .case-toc-media + ul{margin-top:32px;}
}

/* styles.css oculta cualquier <nav> en movil (el nav del header); el paginador de casos tambien es un <nav> */
nav.case-pager{display:block;}
