/* Research-led homepage. Shared type, colour and control tokens live in style.css. */
.home-page .hero-summary{top:32%;width:min(var(--measure-reading),calc(100% - 9vw))}
.home-page .hero-statement{display:inline-block;max-width:100%}
.home-page .hero-summary .hero-attribution{text-align:right;margin-top:16px;font-size:var(--type-control);line-height:var(--leading-body);color:var(--text-primary)}
.home-page .hero-heading{max-width:86vw;bottom:148px}
.home-page .hero-actions{bottom:56px}
.home-page .hero-rule{display:none}
.home-page .shade{background:linear-gradient(180deg,#03090760,transparent 38%,#03090730 55%,#030907b5)}
.home-page .agency-section{padding-top:104px;padding-bottom:104px}
.home-page .home-section-heading{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:last baseline;gap:64px;margin-bottom:56px}
.home-page .home-section-heading h2{margin:0;color:var(--text-primary)}
.home-page .home-section-heading .module-kicker{display:block;margin:0 0 20px}
.home-page .home-section-heading p{max-width:var(--measure-reading);margin:0;font-size:var(--type-body);line-height:var(--leading-body);color:var(--text-secondary)}
.home-page .service-accordion-item>summary{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.35fr) 18px;gap:32px;min-height:112px;padding:30px 0}
.home-page .service-summary{font-size:var(--type-body);line-height:var(--leading-body);color:#fff}
.home-page .service-accordion-body{display:block;width:min(100%,calc(60ch + 26px));margin:4px 0 44px;padding:0 0 0 24px;border-left:2px solid #fff}
.home-page .service-accordion-body p{max-width:var(--measure-reading)}
.home-page .service-accordion-item[open] .service-summary{color:var(--text-secondary)}
.home-page .service-accordion-icon{width:32px;height:32px;border-radius:var(--radius-button);justify-self:end;transition:background .2s}
.home-page .service-accordion-icon::before,.home-page .service-accordion-icon::after{left:7px;top:15px}
.home-page .service-accordion-item[open] .service-accordion-icon{background:var(--text-primary)}
.home-page .service-accordion-item[open] .service-accordion-icon::before{background:var(--page-bg,#090908)}
@media(prefers-reduced-motion:no-preference){.home-page .service-accordion-item[open] .service-accordion-body{animation:accordion-reveal .25s ease-out both}}
@keyframes accordion-reveal{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}
.home-page .approach-section{border-top:1px solid #ffffff24}
.practice-link{display:grid;grid-template-columns:112px minmax(0,1fr) auto;gap:32px;align-items:center;margin-top:56px;padding:28px;border:1px solid #ffffff20;border-radius:14px;background:#10110f;transition:background .25s}
.practice-link:hover{background:#171814}.practice-link:focus-visible{outline-offset:6px}
.practice-grid{display:block;width:112px;height:112px;border-radius:4px}
.practice-link .module-kicker{font-size:var(--type-small);color:var(--text-secondary)}
.home-page .practice-link h3{font-size:var(--type-title);line-height:var(--leading-title);margin:12px 0 10px}
.practice-link p{max-width:var(--measure-reading);font-size:var(--type-body);line-height:var(--leading-body);margin:0;color:var(--text-secondary)}
.practice-link-action{display:flex;gap:28px;align-items:center;font-size:var(--type-control);line-height:var(--leading-control);padding:14px 0;border-bottom:1px solid #ffffff70}
.home-page .testimonials{min-height:0;padding:80px 4.5vw 88px;background:#10110f;border-block:1px solid #ffffff12}
.home-page .testimonials-heading{margin-bottom:24px}
.home-page .testimonial-progress{margin-bottom:40px}
.home-page .testimonial-layout{grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:64px}
.home-page .testimonial-stage{min-height:180px}
.home-page .testimonial-slide{padding-right:0}
.home-page .testimonial-slide blockquote p{max-width:36ch}
.home-page .packages-section{border-bottom:1px solid #ffffff20}
.home-page .package-grid{gap:16px}
.home-page .package-card{border-radius:16px}
.home-page .package-note{margin-top:30px}
.home-page .stack-card h3>span{font-size:var(--type-label);line-height:var(--leading-label);letter-spacing:var(--tracking-label);margin-top:18px;color:var(--text-secondary)}
.home-page .stack-card-copy{padding:30px}
.home-page .stack-card p{max-width:var(--measure-reading)}
.home-page .stack-canyon{background:#1b1a17}.home-page .stack-forest{background:#19201c}.home-page .stack-alpine{background:#1b1e21}
.home-page .enquiry-grid{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:72px}
.home-page .enquiry-intro h2{margin:24px 0;max-width:14ch}
.home-page .enquiry-intro p{max-width:var(--measure-reading)}
.home-page .enquiry-intro .action-button{width:fit-content;max-width:100%;margin-top:32px}
.home-page .contact-signature{margin-top:56px;font-size:var(--type-control);color:var(--text-primary)}
.contact-signature span{display:block;font-size:var(--type-small);line-height:var(--leading-small);margin-top:8px;color:var(--text-secondary)}
.home-page .enquiry-form{padding:36px;border-radius:16px}
.home-page .enquiry-form h3{margin:0 0 16px}
.home-page .form-intro{font-size:var(--type-body);line-height:var(--leading-body);color:var(--text-secondary)}
.home-page .form-intro>span{margin-top:14px}
.enquiry-options{margin:4px 0 28px;border-block:1px solid #ffffff25}
.enquiry-options>summary{display:flex;justify-content:space-between;gap:16px;align-items:center;min-height:56px;cursor:pointer;font-size:var(--type-control);line-height:var(--leading-control);list-style:none}
.enquiry-options>summary::-webkit-details-marker{display:none}.enquiry-options>summary::marker{content:""}
.enquiry-options>summary span{font-size:var(--type-small);color:var(--text-secondary)}
.enquiry-options>summary:focus-visible{outline:2px solid var(--text-primary);outline-offset:5px}
.enquiry-options[open]>.enquiry-fields{margin-top:20px}
.draft-actions{display:flex;gap:22px;align-items:center;flex-wrap:wrap;margin-top:20px}
.home-page .draft-actions .action-button{width:auto;min-width:150px}.draft-actions .text-link{margin:0;padding:12px 0;gap:22px;border:0}
@media(min-width:641px) and (min-height:601px) and (prefers-reduced-motion:no-preference){.js .home-page .stack-section{height:270svh}}
@media(max-width:1100px){
 .home-page .home-section-heading{gap:40px;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}
 .practice-link{grid-template-columns:96px minmax(0,1fr);gap:24px}.practice-grid{width:96px;height:96px}.practice-link-action{grid-column:2;justify-self:start}
 .home-page .enquiry-grid{gap:40px;grid-template-columns:1fr}.home-page .enquiry-intro h2{max-width:20ch}.home-page .contact-signature{margin-top:32px}
}
@media(max-width:760px){
 .home-page .home-section-heading{grid-template-columns:1fr;align-items:start;gap:24px}
 .home-page .service-accordion-item>summary{grid-template-columns:minmax(0,1fr) 18px;gap:12px 24px;padding:28px 0}
 .home-page .service-name{grid-column:1;grid-row:1}.home-page .service-summary{grid-column:1;grid-row:2}.home-page .service-accordion-icon{grid-column:2;grid-row:1/span 2}
 .home-page .testimonial-layout{grid-template-columns:1fr;gap:30px}.home-page .testimonial-controls{order:2}.home-page .testimonial-stage{order:1;min-height:0}.home-page .testimonial-count{flex-basis:auto;margin:0 0 0 auto}
}
@media(max-width:640px){
 .home-page .hero-summary{top:25%;left:24px;right:auto;width:calc(100% - 48px)}
 .home-page .hero-heading{max-width:calc(100% - 48px);bottom:230px}
 .home-page .hero-actions{bottom:85px;gap:14px 20px}
 .home-page .agency-section{padding:72px 24px}
 .home-page .home-section-heading{margin-bottom:36px}
 .home-page .service-accordion-item>summary{min-height:106px}
 .home-page .service-summary{font-size:var(--type-body)}
 .home-page .service-accordion-body{margin:0 0 32px;padding:0 0 0 20px;width:100%}
 .practice-link{grid-template-columns:64px minmax(0,1fr);padding:22px;gap:20px;margin-top:36px}.practice-grid{width:64px;height:64px}.practice-link>div{grid-column:1/-1;grid-row:2}.practice-link-action{grid-column:1/-1;grid-row:3;font-size:var(--type-control)}
 .home-page .testimonials{padding:64px 24px}.home-page .testimonials-heading{align-items:start;flex-direction:column;gap:8px}.home-page .testimonial-progress{margin-bottom:30px}
 .home-page .stack-card-copy{padding:24px}.home-page .stack-card h3>span{display:inline;margin:0 0 0 16px}
 .home-page .enquiry-form{padding:24px}.home-page .enquiry-intro h2{max-width:15ch}.home-page .enquiry-intro .action-button{gap:14px;padding-inline:16px}.home-page .contact-signature{margin-top:32px}
 .draft-actions{align-items:stretch;flex-direction:column}.home-page .draft-actions .action-button{width:100%}
}
@media(max-width:380px) and (max-height:650px) and (orientation:portrait){
 .home-page .hero-summary{top:166px}.home-page .hero-heading{bottom:210px}.home-page .hero-actions{bottom:76px}
}
@media(max-height:600px) and (orientation:landscape){
 .home-page .hero-summary{top:104px;left:auto;right:4.5vw;width:min(360px,43vw)}
 .home-page .hero-heading{max-width:46%;bottom:112px}.home-page .hero-actions{bottom:35px}
}
@media(prefers-reduced-motion:reduce){.practice-link{transition:none}}

@media(max-width:640px) and (min-height:701px) and (prefers-reduced-motion:no-preference){.js .home-page .stack-section{height:270svh}}

@media(prefers-reduced-motion:reduce){.home-page .service-accordion-icon{transition:none}}
