.home-hero,.home-how,.home-projects{width:min(1120px,calc(100% - 80px));margin-inline:auto}
.home-hero{padding-top:64px}
.home-intro{display:grid;grid-template-columns:1.15fr 1fr;align-items:end;gap:64px;padding-bottom:42px}
.home-eyebrow{margin:0 0 18px;color:var(--muted);font-size:10px;line-height:1.4;font-weight:650;letter-spacing:.17em}
.home-heading h1{margin:0;font-family:inherit;font-size:clamp(44px,4.6vw,64px);line-height:1.06;font-weight:650;letter-spacing:-.055em;color:var(--fg)}
.home-opening{padding-bottom:2px}
.home-lead{max-width:440px;margin:0 0 24px;font-size:16px;line-height:1.65;color:var(--muted)}
.home-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.home-actions .button{min-height:48px;white-space:nowrap}
.home-tour{display:inline-flex;align-items:center;gap:9px;min-height:44px;color:var(--fg);text-decoration:none;font-size:13px;font-weight:550;white-space:nowrap}
.home-tour:hover{text-decoration:underline;text-underline-offset:5px}
.home-guest{margin:15px 0 0;color:var(--muted);font-size:11px;line-height:1.5}
.home-stage{position:relative;margin:0;aspect-ratio:1.8;overflow:hidden;border-radius:28px;background:var(--bg);border:1px solid var(--line);isolation:isolate}
.home-photo{display:block;width:100%;height:100%;object-fit:cover;object-position:center 33%}
.home-photo-caption{position:absolute;left:24px;bottom:24px;display:grid;grid-template-columns:1fr 38px;column-gap:24px;align-items:center;padding:19px 18px 19px 22px;border:1px solid var(--line);border-radius:19px;background:var(--surface);color:var(--fg);box-shadow:var(--shadow);backdrop-filter:blur(18px) saturate(1.1);-webkit-backdrop-filter:blur(18px) saturate(1.1)}
.home-caption-label{font-size:8px;letter-spacing:.13em;font-weight:650;line-height:1.5;color:var(--muted)}
.home-photo-caption p{grid-column:1;margin:5px 0 0;font-size:15px;line-height:1.4;font-weight:550;letter-spacing:-.02em}
.home-photo-caption a{grid-column:2;grid-row:1 / 3;display:flex;align-items:center;justify-content:center;width:38px;height:44px;color:var(--fg);text-decoration:none;font-size:22px;border-radius:50%;transition:background .18s ease}
.home-photo-caption a:hover{background:var(--soft)}
.home-how{padding-block:88px 76px}
.home-section-heading{display:grid;grid-template-columns:1fr auto;align-items:end;gap:0 32px}
.home-section-heading .home-eyebrow{grid-column:1 / -1;margin-bottom:13px}
.home-section-heading h2,.home-projects h2{margin:0;font-family:inherit;font-size:clamp(26px,2.7vw,34px);font-weight:600;line-height:1.2;letter-spacing:-.04em;color:var(--fg)}
.home-section-heading .home-tour{margin-bottom:-6px}
.home-steps{list-style:none;margin:36px 0 0;padding:29px 0 0;border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(3,1fr);counter-reset:bench-step}
.home-steps li{position:relative;padding:0 28px 0 38px;counter-increment:bench-step}
.home-steps li::before{content:counter(bench-step) ".";position:absolute;left:0;top:1px;font-size:12px;line-height:1.7;font-weight:500;color:var(--muted)}
.home-steps li+li{border-left:1px solid var(--line);padding-left:64px}
.home-steps li+li::before{left:27px}
.home-steps li:last-child{padding-right:0}
.home-steps h3{font-family:inherit;font-size:15px;font-weight:600;line-height:1.5;letter-spacing:-.02em;margin:0 0 10px;color:var(--fg)}
.home-steps p{font-size:13px;line-height:1.75;color:var(--muted);margin:0}
.home-projects{padding-block:56px 68px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:40px}
.home-projects .home-eyebrow{margin-bottom:13px}
.home-projects p:not(.home-eyebrow){font-size:14px;line-height:1.75;color:var(--muted);margin:17px 0 0}
.home-projects .button{flex-shrink:0;min-height:48px}
.home-questions{width:min(1120px,calc(100% - 80px));margin-inline:auto;padding-bottom:64px;display:grid;grid-template-columns:1fr 1.25fr;gap:64px;align-items:start}
.home-questions .home-section-heading{display:block}
.home-answers details{border-top:1px solid var(--line);padding:4px 0}
.home-answers details:last-child{border-bottom:1px solid var(--line)}
.home-answers summary{cursor:pointer;padding:18px 0;font-size:14px;font-weight:550;line-height:1.6;color:var(--fg)}
.home-answers p{margin:0 0 18px;font-size:14px;line-height:1.8;color:var(--muted)}
.home-answers a{color:var(--fg);text-underline-offset:3px}
@media(max-width:900px){.home-questions{width:calc(100% - 48px);gap:32px}}
@media(max-width:620px){.home-questions{width:calc(100% - 40px);grid-template-columns:1fr;gap:24px;padding-bottom:48px}}
@media(min-width:1500px){.home-hero{padding-top:82px}}
@media(max-width:900px){.home-hero,.home-how,.home-projects{width:calc(100% - 48px)}.home-intro{gap:32px;grid-template-columns:1fr 1fr}.home-actions{gap:8px 18px}.home-heading h1{font-size:48px}.home-lead{font-size:14px}.home-stage{aspect-ratio:1.85}.home-steps li{padding-right:20px;padding-left:26px}.home-steps li+li{padding-left:42px}.home-steps li+li::before{left:16px}.home-how{padding-block:64px}.home-photo-caption{left:20px;bottom:20px}}
@media(max-width:620px){.home-hero,.home-how,.home-projects{width:calc(100% - 40px)}.home-hero{padding-top:42px}.home-intro{display:block;padding-bottom:29px}.home-eyebrow{font-size:9px;margin-bottom:16px}.home-heading h1{font-size:clamp(40px,11.7vw,54px)}.home-opening{padding-top:24px}.home-lead{font-size:15px;max-width:360px;margin-bottom:22px;line-height:1.65}.home-actions{gap:14px 23px}.home-actions .button{padding-inline:19px}.home-tour{font-size:12px}.home-guest{font-size:10px;margin-top:13px}.home-stage{aspect-ratio:1.06;border-radius:22px}.home-photo{object-position:70% 50%}.home-photo-caption{left:13px;right:13px;bottom:13px;padding:15px 12px 15px 17px;border-radius:16px;column-gap:12px}.home-photo-caption p{font-size:14px}.home-caption-label{font-size:7px}.home-how{padding-block:56px 47px}.home-section-heading{display:block}.home-section-heading h2{font-size:27px;max-width:270px;line-height:1.18}.home-section-heading .home-tour{margin-top:12px}.home-steps{grid-template-columns:1fr;margin-top:25px;padding-top:0}.home-steps li,.home-steps li+li{padding:23px 0 23px 32px;border-left:0;border-bottom:1px solid var(--line)}.home-steps li:last-child{padding-bottom:0;border-bottom:0}.home-steps li::before,.home-steps li+li::before{left:0;top:25px}.home-steps h3{font-size:15px;margin-bottom:7px}.home-steps p{font-size:13px;max-width:310px;line-height:1.7}.home-projects{display:block;padding-block:39px 48px}.home-projects h2{font-size:28px;max-width:290px}.home-projects p:not(.home-eyebrow){font-size:13px;margin-top:15px;max-width:320px}.home-projects .button{margin-top:25px}.home-desktop-break{display:none}}
@media(prefers-reduced-transparency:reduce){.home-photo-caption{background:var(--surface-strong);backdrop-filter:none;-webkit-backdrop-filter:none}}
