/* User-approved reference restoration, 2026-10-23. The photographic fade and compact ruled panels reproduce the supplied layout. */
.reference-home{font-size:16px}
.reference-home #main{max-width:1440px;margin-inline:auto}
.reference-home h2{font-size:27px;line-height:1.2;letter-spacing:-.035em;max-width:none}
.reference-home h3{font-size:16px;line-height:1.35;letter-spacing:-.02em}
.reference-home .button{min-height:48px;padding:13px 22px;font-size:16px}
.site-header .header-inner{min-height:78px}
.site-header .brand .bridge{width:86px}
.site-header .brand strong{font-size:24px}
.header-request{font-size:15px;white-space:nowrap;text-underline-offset:4px}
.header-inner{gap:26px}
.header-inner nav{gap:24px}
.header-inner nav a{font-size:16px}
.button-outline{border:1px solid var(--ink);background:var(--ground);font-weight:500} /* taste-skill-ignore: fine panel outlines and separators are explicit reference details. */
.button-outline:hover{background:var(--surface)}

.ref-hero{position:relative;min-height:468px;isolation:isolate;overflow:hidden}
.ref-hero-photo{position:absolute;inset:0;z-index:-2}
.ref-hero-photo img{height:100%;width:100%;object-fit:cover;object-position:center 58%}
.ref-hero::after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,var(--ground) 0%,#faf7f0f7 23%,#faf7f0d9 34%,#faf7f063 46%,#faf7f000 59%)} /* taste-skill-ignore: neutral photo scrim explicitly reproduces the approved reference. */
.ref-hero-content{padding-block:34px 20px}
.ref-hero h1{font-size:clamp(38px,3.55vw,51px);line-height:1.09;max-width:650px;letter-spacing:-.035em;text-wrap:initial}
.ref-hero-intro{font-size:18px;line-height:1.5;margin-top:24px;max-width:35ch}
.ref-hero-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:20px}
.ref-promise{font-size:15px;margin-top:12px;max-width:49ch;color:var(--muted)}
.ref-local{display:flex;align-items:center;gap:14px;margin-top:28px;color:var(--muted)}
.ref-local .bridge{width:120px;height:50px;opacity:.6}
.ref-local strong{font-family:var(--display);font-size:17px;letter-spacing:.09em}
.ref-local small{display:block;font-size:15px;letter-spacing:0;margin-top:3px}

.ref-help{padding-block:24px;display:grid;grid-template-columns:.95fr 1.45fr;gap:32px;align-items:start}
.ref-help-intro h2{font-size:29px}
.ref-help-intro h2 br{display:none}
.ref-help-intro>p{font-size:16px;line-height:1.55;max-width:53ch;margin-top:10px}
.ref-more{display:inline-flex;align-items:center;gap:8px;font-size:15px;min-height:34px;text-decoration:none;margin-top:6px}
.ref-more .icon{width:17px;height:17px}
.ref-more:hover{text-decoration:underline}
.ref-situations{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.ref-situation{display:flex;flex-direction:column;align-items:center;text-align:center;text-decoration:none;border:1px solid #17364d26;border-radius:3px;padding:17px 10px 14px;min-width:0;transition:background .18s} /* taste-skill-ignore: fine panel outlines and separators are explicit reference details. */
.ref-situation>.icon{width:32px;height:32px;stroke-width:1.9;margin-bottom:10px}
.ref-situation h3{font-size:16px;min-height:38px;display:flex;align-items:center;justify-content:center}
.ref-situation p{font-size:15px;line-height:1.45;margin-top:5px}
.ref-situation:hover{background:var(--surface)}

.ref-process{background:#fff9;border-block:1px solid #17364d0f} /* taste-skill-ignore: fine panel outlines and separators are explicit reference details. */
.ref-process-grid{display:grid;grid-template-columns:210px 1fr 165px;gap:25px;align-items:center;min-height:196px}
.ref-driver{position:relative;align-self:stretch;overflow:hidden;min-height:196px}
.ref-driver img{position:absolute;inset:0}
.ref-driver img{height:100%;width:100%;object-fit:cover;object-position:50% 40%;transform:none}
.ref-driver figcaption{position:absolute;bottom:0;left:0;right:0;font-size:15px;background:var(--ground);padding:2px 8px}
.ref-process-content{padding-block:20px}
.ref-steps{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:18px 0 0;padding:0}
.ref-steps li{display:flex;gap:12px;margin:0;align-items:start}
.ref-steps li>span{display:grid;place-items:center;width:30px;height:30px;flex:0 0 30px;background:var(--accent);border-radius:50%;font-family:var(--display);font-size:20px;line-height:1}
.ref-steps h3{font-size:16px;padding-top:4px}
.ref-steps p{font-size:15px;line-height:1.5;margin-top:8px}
.ref-human{font-family:var(--display);font-style:italic;font-size:21px;line-height:1.65;transform:rotate(-7deg);padding:12px 0}

.ref-details{display:grid;grid-template-columns:1.5fr .85fr .78fr;gap:28px;padding-block:24px}
.ref-details>div{min-width:0}
.ref-details h2{font-size:24px}
.ref-section-note{font-size:15px;line-height:1.5;margin-top:7px;margin-bottom:14px;max-width:60ch}
.ref-trip-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.ref-trip{border:1px solid #17364d26;border-radius:3px;overflow:hidden;text-decoration:none;background:#ffffff70;transition:background .18s} /* taste-skill-ignore: fine panel outlines and separators are explicit reference details. */
.ref-trip:hover{background:var(--surface)}
.ref-trip>img{width:100%;aspect-ratio:1.5;object-fit:cover}
.ref-trip>div{position:relative;padding:13px 30px 13px 12px}
.ref-trip h3{font-size:16px;line-height:1.4}
.ref-trip p{font-size:15px;line-height:1.4;margin-top:5px}
.ref-trip .icon{position:absolute;right:8px;top:17px;width:17px;height:17px}
.ref-extra{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:37px;font-size:15px;text-decoration:none;margin-top:5px}
.ref-extra:hover{text-decoration:underline}
.ref-extra .icon{width:17px;height:17px}
.ref-price-list{display:grid;gap:6px}
.ref-price-list>div{display:flex;gap:11px;border:1px solid #17364d1f;border-radius:3px;padding:9px 10px} /* taste-skill-ignore: fine panel outlines and separators are explicit reference details. */
.ref-price-list .icon{width:24px;height:24px;margin-top:2px}
.ref-price-list dt{font-size:16px;font-weight:600;line-height:1.4}
.ref-price-list dd{font-size:15px;line-height:1.4;margin-top:3px}
.ref-price-total{display:flex;align-items:center;gap:9px;background:#f4bc4226;border:1px solid #d9ac5c5c;border-radius:3px;margin-top:8px;padding:10px;text-decoration:none} /* taste-skill-ignore: fine panel outlines and separators are explicit reference details. */
.ref-price-total>span{flex:1}
.ref-price-total strong{font-size:15px;display:block;line-height:1.4}
.ref-price-total small{font-size:15px;display:block;line-height:1.4;margin-top:3px}
.ref-price-total>.icon{width:20px;height:20px}
.ref-price-total>.icon:last-child{width:16px;height:16px}
.ref-price-total:hover{background:#f4bc4240}
.ref-geography-list{display:grid;gap:8px;margin-top:16px}
.ref-geography-list>a{display:flex;align-items:center;gap:11px;min-height:43px;text-decoration:none}
.ref-geography-list>a:hover strong{text-decoration:underline}
.ref-geography-list strong{display:block;font-size:16px;font-weight:500}
.ref-geography-list small{display:block;font-size:15px;line-height:1.4;margin-top:1px}
.ref-geography-list .icon{width:25px;height:25px}
.ref-geography>p{font-size:15px;line-height:1.55;margin-top:16px}
.ref-geography-mark{display:flex;align-items:center;gap:12px;margin-top:17px;color:var(--muted)}
.ref-geography-mark .bridge{width:95px;height:45px;opacity:.6}
.ref-geography-mark span{font-family:var(--display);font-style:italic;font-size:16px;line-height:1.5}

.ref-faq{padding-block:12px 24px;border-top:1px solid #17364d16} /* taste-skill-ignore: fine panel outlines and separators are explicit reference details. */
.ref-faq-title{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:12px}
.ref-faq-title h2{font-size:25px}
.ref-faq-title>a{display:flex;align-items:center;gap:8px;font-size:15px;text-decoration:none}
.ref-faq-title>a .icon{width:17px;height:17px}
.ref-faq .faq-list{display:grid;grid-template-columns:1fr 1fr;gap:7px 18px;align-items:start}
.ref-faq .faq-list details{padding:9px 12px;border:1px solid #17364d26;background:#ffffff50;border-radius:3px} /* taste-skill-ignore: fine panel outlines and separators are explicit reference details. */
.ref-faq .faq-list summary{font-size:15px;line-height:1.5;min-height:25px;gap:12px;font-weight:400}
.ref-faq .faq-list details p{font-size:16px;padding-top:10px;line-height:1.6}
.ref-faq .faq-list .icon{width:15px;height:15px}
.ref-illustration-note{font-size:15px;line-height:1.5;margin-top:14px;color:var(--muted)}
.ref-footer{background:var(--ink);color:var(--ground);padding:24px 0 16px}
.ref-footer-main{display:flex;align-items:center;justify-content:space-between;gap:30px}
.ref-footer .brand .bridge{width:85px}
.ref-footer .brand strong{font-size:23px}
.ref-footer .brand small{font-size:15px}
.ref-footer nav{display:flex;gap:24px}
.ref-footer nav a{font-size:15px;text-decoration:none;padding-block:10px}
.ref-footer nav a:hover{text-decoration:underline}
.ref-footer-message{font-family:var(--display);font-style:italic;font-size:19px;line-height:1.5}
.ref-footer-bottom{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-top:20px;font-size:15px;color:#e0e9ef}
.ref-footer :focus-visible{outline-color:var(--accent)}

@media(min-width:1441px){.ref-hero{min-height:490px}
.ref-hero-content{padding-top:40px}
}

@media(max-width:1150px){.header-request{display:none}
.header-inner{gap:22px}
.site-header .brand strong{font-size:22px}
.ref-help{grid-template-columns:.8fr 1.2fr;gap:22px}
.ref-situations{gap:6px}
.ref-situation{padding-inline:6px}
.ref-process-grid{grid-template-columns:170px 1fr;gap:24px}
.ref-human{display:none}
.ref-details{gap:22px;grid-template-columns:1.25fr 1fr}
.ref-geography{grid-column:1/-1;display:grid;grid-template-columns:1fr 2fr;column-gap:30px;align-items:start;border-top:1px solid #17364d16;padding-top:18px} /* taste-skill-ignore: fine panel outlines and separators are explicit reference details. */
.ref-geography h2{grid-column:1}
.ref-geography-list{grid-column:2;grid-row:1/4;grid-template-columns:1fr 1fr;margin-top:0}
.ref-geography>p{grid-column:1}
.ref-geography-mark{display:none}
.ref-geography .ref-more{grid-column:1}
.ref-footer-message{display:none}
.ref-trip h3{font-size:15px}
}

@media(max-width:820px){.site-header .header-inner{min-height:74px}
.header-inner nav{top:74px}
.ref-hero{min-height:440px}
.ref-hero h1{font-size:39px}
.ref-hero-intro{font-size:16px;margin-top:20px}
.ref-hero-actions{max-width:380px;gap:10px}
.reference-home .ref-hero-actions .button{padding:12px 15px;font-size:16px;min-height:46px}
.ref-hero-content{padding-top:30px}
.ref-hero::after{background:linear-gradient(90deg,var(--ground) 0%,#faf7f0f2 27%,#faf7f099 48%,#faf7f000 75%)} /* taste-skill-ignore: neutral photo scrim explicitly reproduces the approved reference. */
.ref-promise{max-width:31ch}
.ref-local{margin-top:24px}
.ref-help{grid-template-columns:1fr;gap:20px}
.ref-help-intro h2 br{display:none}
.ref-help-intro>p{max-width:68ch}
.ref-help-intro h2{font-size:28px}
.ref-situation{padding:14px 12px;gap:9px}
.ref-situation h3{min-height:0}
.ref-situation p{font-size:15px}
.ref-process-grid{grid-template-columns:150px 1fr;gap:20px}
.ref-process h2{font-size:25px}
.ref-steps{gap:14px;margin-top:16px}
.ref-steps li{display:block}
.ref-steps li>span{margin-bottom:7px}
.ref-steps h3{font-size:15px}
.ref-steps p{font-size:15px}
.ref-details h2{font-size:24px}
.ref-details{grid-template-columns:1.2fr 1fr;gap:22px}
.ref-trip-grid{grid-template-columns:1fr}
.ref-trip{display:grid;grid-template-columns:100px 1fr}
.ref-trip>img{height:100%;aspect-ratio:1;min-height:108px}
.ref-trip>div{padding-top:14px}
.ref-trip h3{font-size:16px}
.ref-extra{font-size:15px}
.ref-faq .faq-list{gap:8px}
.ref-faq .faq-list summary{font-size:15px}
.ref-footer nav{gap:16px}
.ref-footer .brand strong{font-size:20px}
.ref-footer .brand .bridge{width:60px}
}

@media(max-width:540px){.reference-home{padding-bottom:84px}
.site-header .brand .bridge{width:64px}
.site-header .brand strong{font-size:20px}
.site-header .brand small{font-size:15px}
.site-header .header-inner{min-height:70px}
.header-inner nav{top:70px}
.ref-hero{display:flex;flex-direction:column;min-height:0;overflow:hidden}
.ref-hero-photo{position:relative;inset:auto;order:-1;height:235px;width:100%;z-index:0}
.ref-hero-photo img{object-position:75% 53%;height:100%;width:100%}
.ref-hero::after{display:none}
.ref-hero-photo::after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,var(--ground),#faf7f000 35%)} /* taste-skill-ignore: neutral photo scrim explicitly reproduces the approved reference. */
.ref-hero-content{position:relative;padding-block:0 22px;margin-top:-24px;z-index:1}
.ref-hero h1{font-size:35px;line-height:1.12;max-width:none}
.ref-hero-intro{font-size:16px;line-height:1.5;margin-top:18px}
.ref-hero-actions{display:grid;grid-template-columns:1fr;gap:9px;margin-top:21px;max-width:none}
.reference-home .ref-hero-actions .button{width:100%;font-size:16px;min-height:48px;padding:12px 16px}
.ref-promise{font-size:15px;max-width:none;margin-top:12px}
.ref-local{display:none}
.ref-help{padding-block:22px;gap:15px;border-top:1px solid #17364d16} /* taste-skill-ignore: fine panel outlines and separators are explicit reference details. */
.ref-help-intro h2{font-size:27px}
.ref-help-intro h2 br{display:block}
.ref-help-intro>p{font-size:16px;margin-top:12px}
.ref-help-intro .ref-more{margin-top:5px}
.ref-situations{display:block}
.ref-situation{flex-direction:row;text-align:left;align-items:center;gap:17px;padding:14px 0;border:0;border-bottom:1px solid #17364d1f;border-radius:0} /* taste-skill-ignore: fine panel outlines and separators are explicit reference details. */
.ref-situation>.icon{width:33px;height:33px;margin:0;flex:0 0 33px}
.ref-situation h3{font-size:16px;display:block;min-height:0}
.ref-situation p{font-size:16px;margin-top:4px;max-width:29ch}
.ref-process{padding-block:22px}
.ref-process-grid{display:block}
.ref-driver{float:left;width:104px;height:116px;min-height:116px;margin:0 16px 13px 0}
.ref-driver img{transform:none}
.ref-driver figcaption{font-size:15px;padding:1px 5px}
.ref-process-content{padding:0}
.ref-process h2{font-size:26px;padding-block:10px 12px}
.ref-steps{clear:both;display:flex;flex-direction:column;gap:17px;margin-top:18px}
.ref-steps li{display:flex;gap:13px}
.ref-steps li>span{margin:0;width:30px;height:30px;flex-basis:30px}
.ref-steps h3{font-size:16px;padding-top:2px}
.ref-steps p{font-size:16px;margin-top:5px}
.ref-human{display:block;clear:both;font-size:18px;transform:none;padding:0;margin-top:19px}
.ref-human br{display:none}
.ref-details{display:flex;flex-direction:column;padding-block:25px;gap:27px}
.ref-details h2{font-size:27px}
.ref-section-note{font-size:15px;margin-top:9px;margin-bottom:15px}
.ref-trip-grid{display:grid;grid-template-columns:1fr;gap:14px}
.ref-trip{display:block}
.ref-trip>img{width:100%;height:auto;aspect-ratio:1.75;min-height:0}
.ref-trip>div{padding:14px 38px 14px 14px}
.ref-trip h3{font-size:16px}
.ref-trip p{font-size:16px}
.ref-trip .icon{width:20px;height:20px;right:12px;top:17px}
.ref-extra{min-height:44px;font-size:16px;margin-top:5px}
.ref-pricing{padding-top:23px;border-top:1px solid #17364d1f} /* taste-skill-ignore: fine panel outlines and separators are explicit reference details. */
.ref-price-list{gap:8px}
.ref-price-list>div{padding:12px;gap:13px}
.ref-price-list dt{font-size:16px}
.ref-price-list dd{font-size:16px}
.ref-price-list .icon{width:27px;height:27px}
.ref-price-total{padding:13px 12px;gap:10px;margin-top:10px}
.ref-price-total strong{font-size:16px}
.ref-price-total small{font-size:15px}
.ref-geography{display:block;padding-top:23px}
.ref-geography-list{display:grid;grid-template-columns:1fr 1fr;gap:16px 12px;margin-top:18px}
.ref-geography-list>a{gap:10px;align-items:start}
.ref-geography-list strong{font-size:16px}
.ref-geography-list small{font-size:15px;line-height:1.45;margin-top:4px}
.ref-geography-list .icon{width:23px;height:23px}
.ref-geography>p{font-size:16px;margin-top:20px}
.ref-geography-mark{display:flex;margin-top:18px}
.ref-geography .ref-more{font-size:16px;margin-top:12px;min-height:44px}
.ref-faq{padding-block:22px}
.ref-faq-title h2{font-size:27px}
.ref-faq-title>a{font-size:15px;gap:5px;white-space:nowrap}
.ref-faq .faq-list{grid-template-columns:1fr;gap:8px}
.ref-faq .faq-list details{padding:12px}
.ref-faq .faq-list summary{font-size:16px;min-height:30px}
.ref-faq .faq-list details p{font-size:16px}
.ref-illustration-note{font-size:15px;margin-top:16px}
.ref-footer{padding-block:26px 20px}
.ref-footer-main{display:block}
.ref-footer .brand .bridge{width:76px}
.ref-footer .brand strong{font-size:24px}
.ref-footer .brand small{font-size:15px}
.ref-footer nav{display:grid;grid-template-columns:1fr 1fr;gap:5px 20px;margin-top:20px}
.ref-footer nav a{font-size:16px;min-height:40px}
.ref-footer-message{display:block;font-size:19px;margin-top:20px}
.ref-footer-bottom{margin-top:20px;font-size:15px;gap:14px}
.reference-home .mobile-dock .button{min-height:48px;font-size:16px}
.ref-footer-bottom span{flex-basis:100%}
}

@media(prefers-reduced-motion:reduce){.ref-situation,.ref-trip{transition:none}
}


/* Dedicated generated plates supplied after independent fidelity review. */
@media(min-width:1151px) and (max-width:1400px){.ref-human{font-size:18px}}
.ref-local-engraving{display:block;width:190px;height:64px;object-fit:contain;opacity:.24;flex:0 0 auto}
.ref-geography-mark{display:block;position:relative;min-height:92px;padding-top:5px;isolation:isolate}
.ref-geography-mark .ref-local-engraving{position:absolute;bottom:0;left:0;width:100%;height:auto;max-height:92px;object-fit:contain;opacity:.19;z-index:-1}
.ref-geography-mark span{display:block;text-align:right;padding-bottom:27px}
@media(max-width:820px){.ref-local-engraving{width:160px;height:57px}}
@media(max-width:540px){.ref-driver img{transform:none;object-position:50% 40%}.ref-geography-mark{display:block;min-height:100px}.ref-geography-mark .ref-local-engraving{max-height:100px;width:100%}.ref-geography-mark span{font-size:17px;padding-bottom:35px}}

/* Readability revision requested by the user, 2026-10-23. */
:root{--home-copy:17px;--home-detail:16px;--home-support:15px}
.reference-home{font-size:var(--home-copy)}
.ref-help-intro>p{font-size:var(--home-copy);line-height:1.6}
.ref-situation p,.ref-steps p,.ref-price-list dd,.ref-geography>p,.ref-trip p{font-size:var(--home-detail);line-height:1.55}
.ref-situation h3,.ref-price-list dt,.ref-trip h3,.ref-geography-list strong{font-size:17px}
.ref-situation h3{min-height:46px}
.ref-situation{padding:18px 12px}
.ref-steps h3{font-size:16px;line-height:1.45}
.ref-steps{gap:22px}
.ref-faq .faq-list summary{font-size:16px;min-height:36px}
.ref-faq .faq-list details p{font-size:16px}
.ref-faq .faq-list details{padding:12px 14px}
.reference-home .button{min-height:52px;font-size:16px}
.ref-geography-list{gap:12px}
.ref-details{column-gap:30px}
@media(max-width:1100px) and (min-width:541px){.ref-help{grid-template-columns:1fr}.ref-situations{grid-template-columns:repeat(4,1fr)}.ref-help-intro>p{max-width:70ch}}
@media(max-width:540px){.ref-situation{padding:16px 0}.ref-situation h3{min-height:0}.ref-situation p{max-width:31ch}.ref-steps{gap:20px}.ref-geography-list{gap:20px 12px}.ref-faq .faq-list summary{min-height:40px}.ref-details{gap:30px}.ref-footer nav a{font-size:16px}}

/* Supplied business photography: documentary scenes, 2026-10-23. */
.ref-hero-photo img{object-position:center 57%}
.ref-process-grid{grid-template-columns:280px 1fr 165px}
.ref-driver img{object-fit:contain;object-position:center;background:var(--ground)}
@media(max-width:1400px){.ref-process-grid{grid-template-columns:240px 1fr 150px}}
@media(max-width:1150px){.ref-process-grid{grid-template-columns:240px 1fr}}
@media(max-width:760px){.ref-process-grid{grid-template-columns:190px 1fr}}
@media(max-width:540px){.ref-hero-photo{height:250px}.ref-hero-photo img{object-position:center 59%}.ref-process-grid{display:block}.ref-driver{float:none;width:100%;height:auto;min-height:0;margin:0 0 24px}.ref-driver img{position:static;width:100%;height:auto;aspect-ratio:1.5;object-fit:contain}.ref-driver figcaption{position:static;padding:4px 0 0;background:transparent}}

/* Square example frames retain the bridge and the loaded vehicle together. */
@media(min-width:541px){.ref-trip>img{aspect-ratio:1;object-position:center 25%}}
.ref-trip-bridge>img{aspect-ratio:1;object-position:center 15%}

/* Supplied-photo case studies. Inherit the site's editorial palette and type. */
@media(min-width:821px) and (max-width:1380px){.header-request{display:none}}
.case-index-intro{max-width:920px;margin-bottom:36px}
.case-index-intro h1{font-size:clamp(36px,4.1vw,58px);line-height:1.13;max-width:22ch}
.case-index-intro .lead{max-width:64ch}
.case-filters{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 16px}
.case-filters button{border:1px solid var(--ink);background:transparent;color:var(--ink);font:inherit;padding:10px 16px;min-height:46px;cursor:pointer;border-radius:var(--radius)}
.case-filters button[aria-pressed=true]{background:var(--ink);color:var(--ground)}
.case-filters button:hover{background:var(--surface)}
.case-filters button[aria-pressed=true]:hover{background:var(--navy-hover,var(--ink))}
.case-count{font-size:15px;margin:0 0 24px}
.case-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:52px 36px}
.case-item{min-width:0}.case-item[hidden],.case-filters[hidden],.case-count[hidden]{display:none}
.case-photo-link{display:block;overflow:hidden;background:var(--surface)}
.case-photo-link img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;transition:transform .35s ease-out}
.case-photo-link:hover img{transform:scale(1.025)}
.case-item-copy h2{font-family:var(--display);font-size:28px;line-height:1.25;margin:20px 0 12px}
.case-item-copy h2 a{text-decoration:none}.case-item-copy h2 a:hover{text-decoration:underline;text-underline-offset:5px}
.case-item-copy p{max-width:60ch;margin:0 0 8px}
.case-item-featured{grid-column:1/-1;display:grid;grid-template-columns:1.05fr 1fr;gap:44px;align-items:center}
.case-item-featured .case-photo-link img{aspect-ratio:3/4;max-height:660px;object-fit:contain}
.case-item-featured h2{font-size:clamp(30px,3.3vw,44px);max-width:17ch;margin-top:0}
.case-hero{display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:48px;padding-top:40px}
.case-hero h1{font-size:clamp(36px,4vw,54px);line-height:1.13;max-width:22ch}
.case-hero figure{margin:0}.case-hero figure img{width:100%;height:auto;display:block;aspect-ratio:3/2;object-fit:cover}
.case-hero-portrait figure img{aspect-ratio:3/4;max-height:680px;object-fit:contain;background:var(--surface)}
.case-facts{margin:28px 0}.case-facts>div{margin:0 0 14px}.case-facts dt{font-size:15px;color:var(--muted)}.case-facts dd{margin:3px 0 0;font-size:18px}
.case-hero .button{max-width:100%}.case-story{padding-bottom:30px}.case-story .practical p{font-size:16px}
.case-related{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin:26px 0}
.case-related>a{display:block;text-decoration:none}.case-related img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}.case-related h3{font-size:22px;margin:16px 0 10px}
@media(max-width:820px){.case-grid{gap:36px 24px}.case-item-featured{gap:28px}.case-hero{grid-template-columns:1fr;gap:28px}.case-hero-copy{max-width:72ch}.case-hero figure{max-width:760px}.case-hero-portrait figure{width:100%;max-width:510px}.case-index-intro{margin-bottom:28px}}
@media(max-width:540px){.case-grid,.case-item-featured,.case-related{grid-template-columns:1fr}.case-item-featured{gap:0}.case-item-featured h2{font-size:29px;max-width:none;margin-top:20px}.case-grid{gap:34px}.case-filters{gap:8px}.case-filters button{font-size:15px;padding:10px 12px}.case-index-intro h1,.case-hero h1{font-size:35px;line-height:1.17}.case-hero{padding-top:22px}.case-item-copy h2{font-size:27px}.case-hero .button{font-size:16px}.case-facts{margin:24px 0}.case-related{gap:28px}}
@media(prefers-reduced-motion:reduce){.case-photo-link img{transition:none}.case-photo-link:hover img{transform:none}}

.case-index.section{padding-top:48px}
@media(max-width:540px){.case-index.section{padding-top:24px}.case-index-intro{margin-bottom:20px}}
