/* Layout do case. Tokens vêm de tokens.css; componentes e estados vêm de styles.css. */
.case-page{--client-deep:#041b24;--client-mid:#12313f;--client-accent:#4ba6cd}
.project-hero{padding-top:150px;padding-bottom:36px}
.breadcrumb{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:11px;min-height:44px}
.breadcrumb a{color:var(--gold);padding-block:12px}
.hero-heading{display:grid;grid-template-columns:1.2fr 1fr;gap:70px;align-items:end;margin-block:32px 44px}
.hero-title{font-size:clamp(90px,11.2vw,160px);line-height:1.02;letter-spacing:-.02em}
.hero-title span{color:var(--gold)}
.hero-copy{max-width:430px;justify-self:end}
.hero-copy>.eyebrow{color:var(--gold);margin-bottom:22px}
.hero-copy>p:not(.eyebrow){font-size:17px;line-height:1.85;color:var(--muted)}
.case-hero-actions{display:flex;gap:var(--space-6);align-items:center;flex-wrap:wrap;margin-top:25px}
.project-facts{display:grid;grid-template-columns:1.2fr 1.5fr 1fr 1fr;gap:28px;border-top:1px solid var(--line);padding-top:26px;margin:0}
.project-facts dt{font:10px/1.8 Consolas,monospace;text-transform:uppercase;letter-spacing:.8px;color:var(--gold);margin-bottom:9px}
.project-facts dd{margin:0;font-size:12px;line-height:1.8;color:var(--muted)}
.hero-visual{position:relative;overflow:hidden;padding:clamp(30px,5.5vw,80px);padding-right:14%;background:var(--surface);border:1px solid var(--line)}
.hero-visual-label{display:flex;justify-content:space-between;gap:var(--space-5);margin-bottom:30px}
.hero-visual>.browser-mockup{position:relative;z-index:1}
.hero-phone{position:absolute;z-index:2;width:20%;max-width:245px;right:4.5%;bottom:9%;padding:7px;border:1px solid var(--line);background:var(--bg);border-radius:26px;box-shadow:0 20px 50px #0005;transform:rotate(5deg)}
.hero-phone a,.hero-phone img{border-radius:20px;overflow:hidden}
.hero-phone img{width:100%;height:auto}
.visual-zoom{display:block;cursor:zoom-in;aspect-ratio:auto;padding:0;background:transparent;box-shadow:none}
.visual-zoom>img{width:100%;height:auto;object-fit:contain;box-shadow:none}
.browser-mockup>.visual-zoom{border:0}
.caption-line{display:flex;justify-content:space-between;align-items:start;gap:var(--space-6);padding:18px 0;color:var(--muted);font-size:11px}
.caption-line>.eyebrow{max-width:50%}
.project-nav{position:sticky;top:var(--header-height);z-index:30;background:var(--bg);border-block:1px solid var(--line)}
.project-nav-inner{display:flex;justify-content:space-between;align-items:center;gap:var(--space-6)}
.project-name{font-size:11px;color:var(--muted);white-space:nowrap}
.project-nav-links{flex-wrap:nowrap;gap:26px;min-width:0}
.project-nav-links a{white-space:nowrap;min-height:55px;display:inline-flex;align-items:center;gap:8px}
.project-nav-links a>span{font:10px Consolas,monospace;color:var(--gold)}
.project-nav .read-shortcut{white-space:nowrap}
.project-section{scroll-margin-top:70px}
.section-summary .text-link{margin-top:14px}
.identity-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-5)}
.brand-board{padding:35px;min-height:330px;display:flex;flex-direction:column;justify-content:space-between}
.brand-board-dark{background:var(--client-deep);color:#e8eef1}
.brand-board-light{background:#e8eef1;color:var(--client-deep)}
.brand-board-label{display:flex;justify-content:space-between;gap:var(--space-5);font-size:10px;color:inherit;opacity:.8}
.brand-board img{max-height:190px;width:85%;object-fit:contain}
.palette-heading{display:grid;grid-template-columns:1fr 1fr;align-items:start;gap:var(--space-7);margin-top:38px}
.palette-heading h3{font-size:28px;line-height:1.25}
.palette-heading p{font-size:14px;line-height:1.85;color:var(--muted)}
.experience,.process-section{background:var(--surface);border-block:1px solid var(--line)}
.screen-wall{display:grid;grid-template-columns:1.25fr 1fr;gap:var(--space-6);align-items:end}
.screen-feature{padding:30px;background:var(--bg);border:1px solid var(--line);min-width:0}
.screen-feature figcaption{display:flex;justify-content:space-between;gap:18px;margin-top:22px;color:var(--muted);font-size:12px}
.details-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-6);margin-top:var(--space-6)}
.mobile-board{padding:36px;background:var(--bg);border:1px solid var(--line);display:grid;grid-template-columns:.7fr 1fr;gap:30px;align-items:center}
.mobile-board figure{border:6px solid var(--line);border-radius:24px;overflow:hidden;max-width:220px}
.mobile-board h3,.detail-editorial h3{font-size:36px;line-height:1.2}
.mobile-board p{font-size:13px;line-height:1.85;color:var(--muted);margin-top:20px}
.detail-editorial{padding:36px;background:var(--bg);border:1px solid var(--line);display:flex;flex-direction:column;justify-content:space-between;gap:var(--space-6)}
.detail-editorial>p{font-size:13px;color:var(--muted);line-height:1.85;max-width:390px}
.detail-editorial .text-link{align-self:start}
.language-row{display:flex;gap:var(--space-5);margin-block:16px 24px;font:12px Consolas,monospace;color:var(--gold)}
.digital-showcase{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.85fr);gap:26px;align-items:start}
.digital-faq,.digital-social{padding:26px;background:var(--surface);border:1px solid var(--line);min-width:0}
.digital-faq figcaption{margin-top:22px;font-size:13px;line-height:1.85;color:var(--muted)}
.digital-faq figcaption .text-link{margin-top:12px}
.digital-touchpoints{display:grid;gap:var(--space-5);min-width:0}
.digital-social figcaption{font-size:12px;line-height:1.85;margin-top:20px;color:var(--muted)}
.digital-favicon{display:flex;align-items:center;gap:22px;background:var(--surface);border:1px solid var(--line);padding:var(--space-6)}
.digital-favicon>img{width:58px;height:58px;flex-shrink:0}
.digital-favicon .eyebrow{margin-bottom:8px;color:var(--gold)}
.digital-favicon p:last-child{font-size:12px;line-height:1.85;color:var(--muted)}
.outcome-heading{max-width:900px;margin:24px 0 54px}
.outcome-lines{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:44px;border-top:1px solid var(--line);padding-top:32px}
.outcome-lines strong{display:block;font:31px/1.15 var(--display);text-transform:uppercase;margin-bottom:18px}
.outcome-lines p{font-size:13px;color:var(--muted);line-height:1.9;max-width:310px}
.chapter-body{max-width:1080px}
.chapter-body>p+p{margin-top:18px}
.chapter-body>.chapter-label{font:10px/1.8 Consolas,monospace;color:var(--gold);text-transform:uppercase;letter-spacing:.8px;margin-bottom:18px}
.chapter-body>p{max-width:780px}
.chapter-body ul{padding-left:20px;list-style:disc;margin-block:16px}
.chapter-body li{font-size:13px;line-height:1.9;color:var(--muted)}
.chapter-body a:not(.visual-zoom){color:var(--gold);text-decoration:underline;text-underline-offset:var(--link-underline-offset);text-decoration-thickness:var(--link-underline-thickness)}
.chapter-sources{margin-top:var(--space-6);padding-top:20px;border-top:1px solid var(--line)}
.chapter-sources>p{font-size:12px;color:var(--muted)}
.adinkra-research{margin-top:var(--space-7)}
.research-selection{display:grid;grid-template-columns:minmax(0,220px) minmax(0,1fr);align-items:center;gap:var(--space-7);padding:26px;background:var(--bg);border:1px solid var(--line)}
.research-selection figure{background:white}
.research-selection img{max-height:340px;width:100%;object-fit:contain}
.research-selection h4{font-size:36px;line-height:1.2;margin-block:16px;color:var(--gold)}
.research-selection>div>p:last-child{font-size:13px;line-height:1.85;color:var(--muted)}
.research-grid-title{font:14px Arial,sans-serif;text-transform:none;margin:30px 0 16px}
.research-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}
.research-grid figure{min-width:0}
.research-grid img{height:185px;width:100%;object-fit:contain;background:#fff}
.research-grid figcaption{font-size:11px;line-height:1.7;color:var(--muted);padding-top:10px}
.research-source{font-size:11px;line-height:1.9;margin-top:var(--space-6);color:var(--muted);overflow-wrap:anywhere}
.research-source cite{font-style:normal}
.mobile-facts{display:none}
@media(max-width:1100px){
 .project-name{display:none}.project-nav-links{gap:23px}.project-hero{padding-top:135px}
 .hero-heading{gap:40px}.hero-title{font-size:clamp(85px,11.7vw,130px)}.hero-copy>p:not(.eyebrow){font-size:16px}
 .brand-board{padding:28px;min-height:290px}.mobile-board,.detail-editorial{padding:28px;gap:22px}.mobile-board h3,.detail-editorial h3{font-size:30px}
 .digital-showcase{gap:18px}.digital-faq,.digital-social{padding:22px}.research-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:800px){
 .hero-heading{grid-template-columns:1fr;gap:26px;margin-block:28px}.hero-copy{justify-self:start;max-width:520px}.hero-copy>.eyebrow{margin-bottom:14px}.hero-copy>p:not(.eyebrow){font-size:16px}
 .hero-title{font-size:clamp(74px,15vw,120px)}.hero-title br{display:none}.hero-title span{display:inline-block}.case-hero-actions{margin-top:18px;gap:var(--space-5)}
 .desktop-facts{display:none}.mobile-facts{display:block}.project-facts{grid-template-columns:1fr 1fr;padding-block:18px;gap:22px}.project-facts dd{font-size:12px}
 .hero-visual{padding:28px 45px 42px 22px}.hero-visual-label{font-size:10px;gap:16px;margin-bottom:24px}.hero-phone{padding:4px;border-radius:17px;right:3%;bottom:8%;width:24%}.hero-phone a,.hero-phone img{border-radius:12px}
 .caption-line{font-size:11px}.caption-line>.eyebrow{font-size:10px}.project-nav-inner{overflow-x:auto;scrollbar-width:none}.project-nav .read-shortcut{display:none}.project-nav-links{width:100%;justify-content:space-between;gap:var(--space-5)}.project-nav-links a{min-height:54px}
 .identity-grid{gap:14px}.brand-board{padding:20px;min-height:240px}.brand-board img{width:100%}.brand-board-label{font-size:10px}.brand-board-label span:last-child{display:none}
 .palette-heading{grid-template-columns:1fr;gap:14px;margin-top:30px}.palette-heading h3{font-size:28px}.palette{grid-template-columns:repeat(2,minmax(0,1fr))}.palette .swatch{grid-column:auto;padding:20px 16px;min-height:150px}.palette .swatch:last-child{grid-column:1/-1;min-height:125px}.swatch-code{font-size:30px}
 
 .screen-wall,.details-grid,.digital-showcase{grid-template-columns:minmax(0,1fr);gap:18px}.screen-feature{padding:var(--space-6)}.screen-feature figcaption{font-size:12px;flex-wrap:wrap}.screen-feature figcaption .eyebrow{font-size:10px}
 .mobile-board{grid-template-columns:.8fr 1fr;padding:28px;gap:28px}.mobile-board h3,.detail-editorial h3{font-size:38px}.mobile-board p,.detail-editorial>p{font-size:14px}.detail-editorial{padding:28px;min-height:330px}
 .digital-faq,.digital-social{padding:22px}.digital-social img{max-width:440px;margin:auto}.outcome-lines{grid-template-columns:1fr;gap:0;padding-top:0}.outcome-lines>div{padding-block:24px;border-bottom:1px solid var(--line)}.outcome-lines p{max-width:520px;font-size:14px}
 .research-selection{grid-template-columns:minmax(0,1fr);gap:22px;padding:22px}.research-selection figure{max-width:220px;margin:auto}.research-selection h4{font-size:32px}.research-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.research-grid img{height:190px}
}
@media(max-width:480px){
 .project-hero{padding-top:116px;padding-bottom:28px}.hero-title{font-size:clamp(68px,17.8vw,85px)}.hero-visual-label span:last-child{max-width:100px;text-align:right}.project-nav-links{gap:18px}.hero-copy>p:not(.eyebrow){font-size:15px}
 .brand-board{min-height:210px;padding:16px}
 .screen-feature{padding:18px}.mobile-board{padding:22px;gap:var(--space-5)}.mobile-board h3{font-size:30px}.mobile-board p{font-size:13px}.digital-favicon{gap:16px;padding:20px}.digital-favicon>img{width:48px;height:48px}.digital-favicon .eyebrow{font-size:10px}.research-selection{padding:20px}
}

.type-specimen{font-family:var(--specimen-family),sans-serif;font-weight:400;background:var(--specimen-bg);color:var(--specimen-ink);padding:clamp(24px,4.3vw,62px)}
.type-specimen .eyebrow{color:inherit;opacity:.72}
.specimen-top{display:flex;justify-content:space-between;align-items:center;gap:var(--space-5)}
.specimen-family-row{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:var(--space-7);margin-block:32px}
.specimen-family{font-size:clamp(74px,8vw,116px);line-height:.98;letter-spacing:-.02em}
.specimen-purpose{font-family:var(--font-body);font-size:13px;line-height:1.8;margin-top:24px}
.specimen-glyph{font-size:clamp(200px,25vw,350px);line-height:.95;justify-self:center;letter-spacing:-.06em}
.specimen-description{font-family:var(--font-body);font-size:14px;line-height:1.85;max-width:610px}
.specimen-alphabet{border-top:1px solid #041b2433;margin-top:32px;padding-top:24px;display:grid;gap:8px;font-size:clamp(21px,2.6vw,36px);line-height:1.35;letter-spacing:.1em;overflow-wrap:anywhere}
.type-specimen-support{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:20px;gap:20px}
.type-specimen-secondary{padding:38px;display:flex;flex-direction:column;align-items:start;min-height:430px}
.specimen-secondary-family{font-size:28px;line-height:1.3;margin-top:38px}
.specimen-sample{font-size:clamp(28px,3vw,42px);line-height:1.45;margin-block:28px 38px;max-width:430px}
.type-specimen-secondary .specimen-description{font-size:13px;margin-top:auto;max-width:430px}
.style-guide .palette-heading{margin-top:54px}
.palette{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;background:transparent;margin-top:24px}
.swatch{min-width:0;min-height:210px;display:flex;flex-direction:column;justify-content:space-between;padding:22px 18px}
.swatch-code{font:12px/1.8 Consolas,monospace;letter-spacing:.04em}
.swatch>div{display:flex;flex-direction:column;gap:12px;font-size:13px}
.swatch-role{font-size:11px;line-height:1.65}
.guide-signatures{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:20px}
.guide-signatures .brand-board{min-height:235px;padding:26px}
.guide-signatures .brand-board img{max-height:120px;width:75%}
@media(max-width:1100px){.type-specimen-secondary{padding:28px}.specimen-glyph{font-size:clamp(170px,22vw,280px)}.swatch{padding:20px 12px;min-height:200px}.swatch>div{font-size:12px}}
@media(max-width:800px){.type-specimen-support{grid-template-columns:minmax(0,1fr);gap:18px}.type-specimen-secondary{min-height:350px}.specimen-family{font-size:clamp(66px,11.8vw,100px)}.specimen-family-row{gap:20px;margin-block:26px}.specimen-glyph{font-size:clamp(140px,24vw,220px)}.specimen-alphabet{font-size:25px;letter-spacing:.08em}.specimen-description{font-size:14px}.specimen-sample{font-size:34px}.palette{grid-template-columns:repeat(2,minmax(0,1fr))}.palette .swatch{grid-column:auto;min-height:155px;padding:20px}.palette .swatch:last-child{grid-column:1/-1;min-height:125px}.guide-signatures{gap:14px}.guide-signatures .brand-board{padding:18px;min-height:190px}.guide-signatures .brand-board img{width:100%}.style-guide .palette-heading{margin-top:36px}}
@media(max-width:480px){.type-specimen{padding:24px}.specimen-family-row{grid-template-columns:minmax(0,1fr);gap:16px}.specimen-glyph{display:none}.specimen-family{font-size:clamp(60px,18vw,82px)}.specimen-top .eyebrow{font-size:10px}.specimen-alphabet{font-size:22px;margin-top:24px;padding-top:20px;letter-spacing:.06em}.specimen-secondary-family{font-size:26px;margin-top:32px}.specimen-sample{font-size:30px;line-height:1.5}.guide-signatures .brand-board{min-height:160px;padding:15px}.guide-signatures .brand-board-label{font-size:10px}}

.breadcrumb-back{display:inline-flex;align-items:center;gap:10px}.breadcrumb-back .arrow{width:15px;height:15px}
.brand-board>.brand-logo{margin:auto;max-height:190px;width:85%;object-fit:contain}
.guide-signatures .brand-board>.brand-logo{max-height:120px;width:75%}
.project-flow{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));list-style:none;padding:0;margin:0 0 52px;gap:22px}
.flow-step{position:relative;min-width:0}.flow-number{display:grid;place-items:center;position:relative;z-index:1;width:28px;height:28px;background:var(--bg);border:1px solid var(--gold);color:var(--gold);font:10px Consolas,monospace}
.flow-step:not(:last-child)::after{content:'';position:absolute;top:14px;left:28px;right:-22px;border-top:1px solid #d3ab6059}
.flow-step h3{font-size:25px;line-height:1.2;margin:24px 0 12px}.flow-step p{font-size:13px;line-height:1.8;color:var(--muted);max-width:180px}
.strategy-decisions>h3{font-size:32px;line-height:1.3;margin-bottom:28px}
.strategy-decision-head,.strategy-decision{display:grid;grid-template-columns:.8fr 1fr 1.1fr;gap:38px}
.strategy-decision-head{font:10px/1.8 Consolas,monospace;text-transform:uppercase;letter-spacing:.7px;color:var(--gold);padding-bottom:16px}
.strategy-decision{border-top:1px solid var(--line);padding-block:28px}.strategy-decision h4{font-size:25px;line-height:1.25}
.strategy-documents{font:11px/1.85 Consolas,monospace;color:var(--gold);margin-top:12px;max-width:260px}.strategy-decision>div>p:not(.strategy-documents):not(.decision-mobile-label){font-size:14px;line-height:1.9;color:var(--muted)}

.decision-mobile-label{display:none}
.chapter-part{margin-top:28px;max-width:780px}.chapter-part h4{font-size:24px;line-height:1.35;color:var(--gold);margin-bottom:14px}.chapter-part>p{font-size:14px;line-height:1.95;color:var(--muted)}
@media(max-width:1100px){.project-flow{grid-template-columns:repeat(3,minmax(0,1fr));gap:30px 24px}.flow-step:nth-child(3)::after{display:none}.strategy-decision-head,.strategy-decision{gap:26px}}
@media(max-width:800px){.project-flow{grid-template-columns:minmax(0,1fr);gap:0;margin-bottom:36px}.flow-step{display:grid;grid-template-columns:28px minmax(0,1fr);gap:20px;padding-bottom:26px}.flow-step h3{margin:0 0 9px;font-size:25px}.flow-step p{max-width:440px;font-size:14px}.flow-step:not(:last-child)::after{display:block;top:28px;bottom:0;left:14px;right:auto;border-top:0;border-left:1px solid #d3ab6059}.flow-step:last-child{padding-bottom:0}.strategy-decision-head{display:none}.strategy-decision{grid-template-columns:minmax(0,1fr);gap:22px;padding-block:26px}.strategy-decision h4{font-size:28px}.strategy-documents{max-width:none}.decision-mobile-label{display:block;color:var(--gold);margin-bottom:10px}.strategy-decisions>h3{font-size:30px}.guide-signatures .brand-board>.brand-logo{width:100%}.chapter-part>p{font-size:14px}.chapter-part h4{font-size:23px}}

.case-page #visao-geral{scroll-margin-top:70px}

.palette{overflow:hidden}.swatch.reveal{transition-duration:var(--duration-palette-reveal)}

/* A ficha usa a mesma lista de serviços da chamada na home. */
.project-facts .scope-tags{margin:0;gap:var(--space-1) var(--space-3)}
