/* Anvilstead V1.4.2 — typographic direction and spatial discipline.
   Loaded last. Preserves previously approved homepage hero, logo and art.
   Display = Segoe UI Variable / system sans; editorial = Georgia.
   No external font loading, no layout jump and no third-party trackers. */
:root{--type-copy:#263840;--type-muted:#62777f;--type-line:1.74}
html{font-size:16px;-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{font-family:Inter,'Segoe UI Variable','Segoe UI',system-ui,-apple-system,BlinkMacSystemFont,Arial,sans-serif;font-kerning:normal;text-rendering:optimizeLegibility}
.editorial,.serif-head{font-family:Georgia,'Iowan Old Style','Baskerville','Times New Roman',serif;font-weight:400;font-style:italic;letter-spacing:-.046em}
/* Keep editorial headers assertive without overpowering body copy. */
.section-head{font-size:clamp(36px,4.45vw,67px);letter-spacing:-.055em;line-height:1.13;text-wrap:balance}
.page-title{font-size:clamp(53px,5.9vw,94px);line-height:1.06;letter-spacing:-.062em;text-wrap:balance}
.inner-hero{padding-top:clamp(174px,16vw,208px);padding-bottom:clamp(82px,8vw,115px)}
.inner-hero .intro{font-size:clamp(16px,1.15vw,18px);line-height:1.8;max-width:590px}
.inner-section h2{font-size:clamp(34px,3.5vw,54px);line-height:1.13;letter-spacing:-.047em}
.contact-grid h2,.trust-layout h2{font-size:clamp(38px,4vw,62px);line-height:1.14;letter-spacing:-.054em}
.service-panel h3{font-size:clamp(27px,2.65vw,40px);letter-spacing:-.045em;line-height:1.18}
.service-panel p,.about-layout .bodycopy p{font-size:clamp(15px,1.05vw,17px);line-height:1.8}
/* Work listing */
.work-title{font-size:clamp(31px,3.2vw,48px);line-height:1.13;letter-spacing:-.045em}
.v13-title-row h2{font-size:clamp(39px,4.15vw,64px);line-height:1.11;letter-spacing:-.051em}
.v13-eng-head h2{font-size:clamp(39px,4.1vw,64px);line-height:1.13;letter-spacing:-.055em}
.case-deep-heading h2{font-size:clamp(42px,4.4vw,72px);line-height:1.08;letter-spacing:-.058em}
.proof-top h2{font-size:clamp(40px,4.05vw,65px);line-height:1.1}
.case-story h2{font-size:clamp(35px,3.3vw,51px);line-height:1.16;letter-spacing:-.05em}
.case-story .story-copy{max-width:740px;font-size:clamp(15px,1.06vw,17px);line-height:1.84}
.case-story .story-copy p{max-width:68ch}
.deep-problem p{font-size:clamp(18px,1.52vw,22px);line-height:1.62}
.deep-block h3{font-size:clamp(25px,2.5vw,36px);line-height:1.23}
/* CASE HERO: fixed nav safe zone + text/art hierarchy */
.case-hero{min-height:750px;height:clamp(750px,91svh,930px);align-items:stretch;background:#07131d;isolation:isolate}
.case-hero>img.case-hero-art{object-fit:cover;object-position:center center}
.case-hero:after{z-index:0;background:linear-gradient(90deg,rgba(3,13,21,.88) 0%,rgba(3,13,21,.71) 23%,rgba(3,13,21,.43) 42%,rgba(3,13,21,.06) 66%,transparent 88%),linear-gradient(0deg,rgba(4,16,23,.75),transparent 25%,transparent 72%,rgba(4,16,23,.16))}
.case-hero>.shell{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;flex:1;width:100%;max-width:none;margin:0;padding:142px clamp(26px,5vw,105px) 95px;z-index:2}
.case-hero .eyebrow{font-size:10px;line-height:1.55;letter-spacing:.19em;font-weight:700;max-width:520px;color:#afe5e9}
.case-hero h1{display:flex;flex-direction:column;gap:12px;max-width:min(620px,51vw);margin:23px 0 25px;line-height:1.1;letter-spacing:0;font-weight:inherit;text-wrap:initial}
.case-hero h1 .case-name{display:block;font-family:Inter,'Segoe UI Variable','Segoe UI',system-ui,Arial,sans-serif;font-style:normal;font-size:clamp(43px,3.6vw,64px);font-weight:610;line-height:1.07;letter-spacing:-.052em;text-wrap:balance}
.case-hero h1 .editorial{display:block;max-width:610px;font-family:Georgia,'Iowan Old Style','Times New Roman',serif;font-weight:400;font-style:italic;font-size:clamp(39px,3.65vw,60px);letter-spacing:-.049em;line-height:1.09;text-wrap:balance}
.case-hero p{font-size:clamp(15px,1.05vw,17px);line-height:1.77;max-width:490px;color:#dbe6e8;text-shadow:0 1px 12px #03131bd9}
.case-hero-jump{font-size:13px;min-height:51px;gap:24px;padding:15px 20px;margin-top:30px;letter-spacing:.01em}
.case-hero .case-art-caption{position:absolute;right:clamp(26px,5vw,105px);left:auto;bottom:29px;color:#d0dfe1;font-size:10px;font-weight:560;letter-spacing:.065em;line-height:1.5;text-align:right;max-width:430px;text-shadow:0 1px 12px #05131a}
/* Caption remains in footer instead of competing with the heading */
@media(min-width:1750px){
 .case-hero h1{max-width:710px}
 .case-hero h1 .case-name{font-size:66px}
 .case-hero h1 .editorial{font-size:62px;max-width:675px}
}
@media(max-width:1100px){
 .case-hero>.shell{padding-inline:clamp(28px,4.5vw,60px)}
 .case-hero h1{max-width:65vw}
 .case-hero h1 .case-name{font-size:clamp(43px,4.8vw,56px)}
 .case-hero h1 .editorial{font-size:clamp(39px,4.9vw,53px)}
 .case-hero:after{background:linear-gradient(90deg,#06141ee6 0%,#06141eba 33%,#06141e2c 83%),linear-gradient(0deg,#05131ac9,transparent 38%)}
}
@media(max-width:760px){
 .inner-hero{padding:152px 0 77px;min-height:0}
 .inner-hero .page-title{font-size:clamp(49px,9.9vw,78px)}
 .section-head{font-size:clamp(37px,8vw,55px)}
 .case-hero{height:auto;min-height:790px}
 .case-hero>img.case-hero-art{object-position:64% center}
 .case-hero>.shell{padding:138px 27px 115px;justify-content:center}
 .case-hero h1{max-width:580px;margin:23px 0 22px;gap:9px}
 .case-hero h1 .case-name{font-size:clamp(39px,7.4vw,55px);line-height:1.09}
 .case-hero h1 .editorial{font-size:clamp(37px,7.2vw,53px);line-height:1.12;max-width:570px}
 .case-hero p{font-size:15px;line-height:1.77;max-width:490px}
 .case-hero .case-art-caption{bottom:25px;left:27px;right:27px;text-align:left;max-width:none;font-size:9px}
 .case-hero:after{background:linear-gradient(0deg,#04131bf5 0%,#04131bb0 55%,#04131b78 100%),linear-gradient(90deg,#04131b9c,transparent 98%)}
 .v13-title-row h2,.v13-eng-head h2,.case-deep-heading h2{font-size:clamp(36px,8vw,55px)}
 .case-story .story-copy{font-size:16px}
}
@media(max-width:430px){
 .case-hero{min-height:820px}
 .case-hero>.shell{padding:132px 24px 103px}
 .case-hero h1{max-width:100%;gap:9px;margin:19px 0 20px}
 .case-hero h1 .case-name{font-size:clamp(37px,9.5vw,44px)}
 .case-hero h1 .editorial{font-size:clamp(36px,9.25vw,43px);line-height:1.13}
 .case-hero .eyebrow{font-size:9px;letter-spacing:.125em}
 .case-hero p{font-size:14.5px;line-height:1.7}
 .case-hero-jump{font-size:12px;margin-top:23px}
 .case-hero .case-art-caption{left:24px;bottom:19px}
 .page-title{letter-spacing:-.053em}
 .v13-title-row h2{font-size:39px}
 .v13-eng-head h2{font-size:39px}
}
@media(prefers-reduced-motion:reduce){.case-hero-jump{transition:none}}
