/* Homepage composition, loaded after the original page styles. */
.hero { padding:56px 0 0; }
.hero>.wrap { max-width:1360px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);gap:0 64px; }
.opening-spread { display:contents; }
.hero #home-title { grid-column:1;grid-row:1;font-family:var(--f-editorial);font-size:clamp(52px,5.5vw,80px);font-weight:400;line-height:1.02;letter-spacing:-.055em;word-spacing:normal;max-width:11ch;margin:24px 0 28px; }
.hero #home-title span { white-space:normal; }
.hero #home-title .headline-pair { display:contents; }
.headline-pair b { display:block;font-weight:400; }
.headline-pair b+b { margin-left:0; }
.opening-copy { grid-column:1;grid-row:2;max-width:390px;padding-bottom:32px; }
.opening-copy .lead { font-size:18px;line-height:1.65;color:var(--ink-2);margin:0 0 24px; }
.opening-copy .btn-forge { width:auto;min-width:220px;margin:0 0 16px; }
.opening-links { display:block;font-size:14px;width:max-content;max-width:100%; }
.join-free { margin-top:12px;font-size:13px;text-align:left; }
.home-status-line { grid-column:1;grid-row:3;align-self:end;justify-content:flex-start;gap:10px;margin:0 0 24px;font-size:12px; }
.home-status-line::before { flex:0 0 6px;height:6px;border-radius:50%;background:var(--forge); }
.home-status-line::after { display:none; }
.human-panorama { grid-column:2;grid-row:1/4;display:grid;grid-template-columns:3fr 2fr;grid-template-rows:1fr 1fr;gap:10px;height:560px;align-items:stretch;margin-bottom:32px; }
.human-panorama img { height:100%;border-radius:12px; }
.human-panorama .panorama-kitchen { grid-column:1;grid-row:1/3;height:100%;object-position:48% 42%;border-radius:20px 12px 12px 20px; }
.human-panorama .panorama-active { grid-column:2;grid-row:1;height:100%;object-position:50% 42%; }
.human-panorama .panorama-window { grid-column:2;grid-row:2;height:100%;object-position:62% 40%; }
.explanation-rail { grid-column:1/-1;gap:24px;background:transparent;padding:24px 0 30px;text-align:left;color:var(--ink-2);font-size:13px; }
.explanation-rail li+li { padding-left:24px; }
.h-section { padding:88px 0; }
.h-section+.h-section:not(.h-section--carbon)>.wrap { background:none;padding-top:0; }
.h-section+.h-section:not(.h-section--carbon) { padding-top:88px; }
.h-section .h2 { font-family:var(--f-editorial);font-weight:400;letter-spacing:-.045em;font-size:clamp(36px,4.2vw,56px);max-width:18ch;line-height:1.08; }
.discovery { background:var(--forge);color:var(--porcelain);padding:64px 0;margin-top:24px; }
.discovery .h2,.discovery a,.discovery .index-caption h3 { color:var(--porcelain); }
.discovery .data-label,.discovery .index-caption p,.discovery .longevity-index span { color:#d5e0d5; }
.discovery .index-caption,.discovery .longevity-index { border-color:#688879; }
.discovery .head-row { margin-bottom:32px; }
.photo-index { grid-template-columns:repeat(3,minmax(0,1fr));gap:28px; }
.index-photo { height:240px;border-radius:12px; }
.index-caption { padding:20px 0; }
.index-caption h3 { font-size:22px; }
.longevity-index { margin-top:16px; }
.prog-group { padding-top:0;margin-top:40px; }
.group-head h3 { font-size:24px;letter-spacing:-.035em; }
.prog-grid { grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-items:stretch; }
.rx,.rx--feature { background:var(--white);border:1px solid var(--hairline);border-radius:16px;padding:32px; }
.rx .rx-body,.rx--feature .rx-body,.rx--dark .rx-body { display:flex;flex-direction:column;height:100%;gap:14px; }
.rx .rx-body>h4 { font-size:26px;line-height:1.15;letter-spacing:-.035em;margin:0; }
.rx .rx-body>.rx-actions { margin-top:auto;padding-top:10px;align-self:stretch; }
.rx .rx-desc { line-height:1.6;margin:0;max-width:48ch; }
.rx .price { font-size:25px;margin-top:6px; }
.rx .chip-waitlist { align-self:flex-start;margin:0; }
.rx:hover { border-color:var(--hairline-2); }
.rx--feature { grid-column:1/-1;display:grid;grid-template-columns:.85fr 1.15fr;gap:40px;align-items:center; }
.rx--feature .rx-media { display:block;border-radius:12px;min-height:320px;height:100%; }
.rx--feature .rx-body { padding:8px 0; }
.rx--dark { background:var(--stone); }
.rx .card-action { min-height:48px;border-radius:8px; }
.steps { gap:40px; }
.step-num { font-family:var(--f-editorial);font-weight:400;font-size:64px; }
.how-band .photo-frame { border-radius:16px; }
.prin-grid { gap:56px; }
.prin-media .photo-frame { border-radius:16px; }
.h-section--carbon { background:var(--carbon); }
.h-section--carbon .h2 { color:var(--on-carbon); }
.faq-grid { gap:56px; }
@media(max-width:1100px) {
 .hero>.wrap { gap:0 36px; }.human-panorama { height:520px; }
 .hero #home-title { font-size:64px; }.index-photo { height:210px; }
}
@media(max-width:900px) {
 .hero { padding-top:32px; }.hero>.wrap { gap:0 28px; }
 .hero #home-title { font-size:52px;margin-top:12px; }.human-panorama { height:510px;grid-template-columns:1fr; }
 .human-panorama .panorama-kitchen { grid-column:1;grid-row:1/3;border-radius:16px; }
 .human-panorama .panorama-active,.human-panorama .panorama-window { display:none; }
 .opening-copy .lead { font-size:16px; }.explanation-rail { gap:14px;font-size:12px; }
 .explanation-rail li+li { padding-left:14px; }.rx--feature { gap:24px; }
 .prin-grid,.faq-grid { grid-template-columns:1fr; }
}
@media(max-width:600px) {
 .hero>.wrap { display:flex;flex-direction:column; }
 .home-status-line { order:0;margin:0 0 20px; }
 .opening-spread { display:contents; }.hero #home-title { order:1;font-size:clamp(44px,12vw,64px);max-width:13ch;margin:0 0 20px; }
 .hero #home-title .headline-pair { display:block; }.headline-pair b { display:inline; }.headline-pair b+b { margin-left:.12em; }
 .opening-copy { order:2;max-width:100%;padding:0 0 28px; }
 .opening-copy .lead { font-size:17px;margin-bottom:20px;max-width:34ch; }
 .opening-copy .btn-forge { width:100%;margin-bottom:12px; }.opening-copy .opening-links { display:block; }
 .join-free { text-align:left; }.human-panorama { order:3;display:block;height:300px;margin-bottom:0; }
 .human-panorama .panorama-kitchen { height:100%;border-radius:16px;object-position:48% 42%; }
 .explanation-rail { display:none; }.discovery { margin-top:40px;padding:40px 0; }
 .discovery .h2 { max-width:14ch;font-size:38px; }.discovery .photo-index-link { border-color:#688879;grid-template-columns:88px 1fr;padding:16px 0; }
 .photo-index { display:block; }.index-photo { height:88px;border-radius:8px; }.index-caption { padding:0; }
 .index-caption h3 { font-size:20px; }.index-caption p { font-size:13px;line-height:1.5; }
 .discovery .head-row>a { min-height:44px; }.longevity-index { margin-top:4px; }
 .h-section,.h-section+.h-section:not(.h-section--carbon) { padding:56px 0; }
 .h-section+.h-section:not(.h-section--carbon)>.wrap { padding-top:0; }.head-row { margin-bottom:28px; }
 .prog-grid { grid-template-columns:1fr;gap:16px; }.rx,.rx--feature { padding:24px; }
 .rx--feature { display:block; }.rx--feature .rx-media { min-height:0;height:200px;margin-bottom:24px; }
 .rx--feature .rx-body { padding:0; }.rx .rx-actions { margin-top:8px; }.rx .rx-body>h4 { font-size:25px; }
 .group-head { gap:8px;margin-bottom:0; }.steps { grid-template-columns:1fr;gap:32px; }
 .step-num { font-size:48px;margin-bottom:12px; }.prin-grid,.faq-grid { gap:32px; }
}
@media(prefers-reduced-motion:reduce) { .index-photo img,.rx { transition:none; } }
/* Cards must shrink to the viewport even when price rows have long labels. */
.prog-grid>.rx,.rx .rx-body,.rx .rx-media { min-width:0; }
@media(max-width:600px) {
 .options li { flex-wrap:wrap;gap:8px; }
 .options li>div:first-child { flex-basis:100%; }
 .rx .card-action { white-space:normal;height:auto;padding-top:12px;padding-bottom:12px; }
}
.rx--feature { grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); }
.rx--feature .rx-media { width:100%;max-width:100%;aspect-ratio:auto; }
@media(max-width:900px) {
 .rx--feature { grid-template-columns:1fr; }
 .rx--feature .rx-media { height:300px;min-height:0; }
}
@media(max-width:600px) {
 .rx--feature .rx-media { height:200px; }
 .options li>.opt-name { flex-basis:100%; }
}
