/* Home only. Four primary destinations, a visible seminar route, and wider 03 sections.
   Event forms, shared shell, Hero artwork/type and functional scripts stay unchanged. */
body.mainsite[data-body-variant="03"]{font-size:16px}
body.mainsite .navin{width:min(90vw,1728px);max-width:none;padding:14px 0;gap:clamp(16px,2vw,32px)}
body.mainsite .links{gap:clamp(4px,1vw,18px)}
body.mainsite .links a{font-size:16px;line-height:1.5;min-height:44px;padding:11px 14px}
body.mainsite .nav .cta{display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:48px;padding:12px 22px;font-size:16px;line-height:1.5;border:1px solid transparent;background:linear-gradient(#171717,#171717) padding-box,var(--polished-gold) border-box;color:#fff}
body.mainsite .nav .cta:hover{background:linear-gradient(#353128,#353128) padding-box,var(--polished-gold) border-box}
body.mainsite .nav .cta:focus-visible,body.mainsite .seminar-cta:focus-visible{outline:3px solid #735320;outline-offset:4px}

body.mainsite[data-body-variant="03"] #top > section:not(.hero){padding-block:clamp(64px,6vw,112px)}
body.mainsite[data-body-variant="03"] #top > section:not(.hero) > .wrap{width:min(90vw,1728px);max-width:none;padding-inline:0;grid-template-columns:minmax(0,.28fr) minmax(0,.72fr);column-gap:clamp(32px,4vw,72px)}
body.mainsite[data-body-variant="03"] #top > section:not(.hero) > .wrap > .head{max-width:28rem}
body.mainsite[data-body-variant="03"] #top > section:not(.hero) .head h2{font-size:clamp(32px,3.1vw,52px);line-height:1.45}
body.mainsite[data-body-variant="03"] #top > section:not(.hero) .head p{font-size:16px}
body.mainsite[data-body-variant="03"] #top > section:not(.hero) .section-links{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:24px;font-family:var(--sans);font-size:16px;line-height:1.7}
body.mainsite[data-body-variant="03"] #top > section:not(.hero) .section-links a{display:inline-flex;gap:8px;align-items:center;min-height:44px;color:#78541e;text-decoration:underline;text-underline-offset:6px;text-decoration-color:#b99457}
body.mainsite[data-body-variant="03"] #top > section:not(.hero) :is(.story p,.pf p,.ask p,.faq .a,.row .x){max-width:46rem}
body.mainsite[data-body-variant="03"] #top > section:not(.hero) .story h3{max-width:44rem}
body.mainsite[data-body-variant="03"] #top > section#products > .wrap{grid-template-columns:1fr}
body.mainsite[data-body-variant="03"] #top > section#products > .wrap > .head{max-width:none}

/* Wide card rows use the whole content width; editorial sections keep the left heading. */
body.mainsite[data-body-variant="03"] #top > :is(section#start,section#works) > .wrap > .head{grid-column:1 / -1;max-width:none}
body.mainsite[data-body-variant="03"] #top > :is(section#start,section#works) > .wrap > .ks{grid-column:1 / -1;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
body.mainsite[data-body-variant="03"] #top > section#works > .wrap > .seclink{grid-column:1 / -1}
body.mainsite[data-body-variant="03"] #top > :is(section#start,section#works) .kc{padding:clamp(24px,2.1vw,36px)}

/* Inside #start so the existing Hero + #start exchange contract remains valid. */
body.mainsite[data-body-variant="03"] #top > section#start{padding-top:0}
body.mainsite .seminar-strip{padding:28px 0;margin-bottom:clamp(64px,6vw,112px);border-block:1px solid #c9ad79;background:#f8f6f0}
body.mainsite .seminar-strip-inner{width:min(90vw,1728px);margin-inline:auto;display:flex;align-items:center;justify-content:space-between;gap:28px}
body.mainsite .seminar-date{display:flex;align-items:center;flex-wrap:wrap;gap:10px 20px;margin:0;font-size:16px;font-weight:600;color:#62451d}
body.mainsite .seminar-date span{border:1px solid #b99a61;border-radius:999px;padding:3px 12px;font-size:14px}
body.mainsite .seminar-strip h2{font-family:var(--serif);font-size:clamp(22px,2vw,32px);font-weight:400;line-height:1.5;margin:10px 0}
body.mainsite .seminar-preview{font-size:14px;line-height:1.8;color:#655e53;margin:0}
body.mainsite:not([data-preview="true"]) .seminar-preview{display:none}
body.mainsite .seminar-cta{display:inline-flex;align-items:center;justify-content:center;gap:24px;flex-shrink:0;min-height:56px;padding:15px 26px;border:1px solid transparent;border-radius:999px;background:linear-gradient(#171717,#171717) padding-box,var(--polished-gold) border-box;color:#fff;font-size:16px;font-weight:600;text-decoration:none;text-align:center}
body.mainsite .seminar-cta:hover{background:linear-gradient(#353128,#353128) padding-box,var(--polished-gold) border-box}
body.mainsite footer.sitefoot > .wrap{width:min(90vw,1728px);max-width:none;padding-inline:0}
body.mainsite .footer-site-nav{display:flex;flex-wrap:wrap;gap:8px 24px;margin-bottom:40px;padding-bottom:28px;border-bottom:1px solid #dfd8ca;font-size:16px}
body.mainsite .footer-site-nav a{display:inline-flex;align-items:center;min-height:44px;color:#39362f;text-decoration:underline;text-underline-offset:5px}

@media(min-width:1001px){body.mainsite .links{display:flex}body.mainsite .menu{display:none}}
@media(max-width:1199px){
 body.mainsite .links a{padding-inline:10px}
 body.mainsite[data-body-variant="03"] #top > :is(section#start,section#works) > .wrap > .ks{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:1000px){
 body.mainsite .navin{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px 16px}
 body.mainsite .nav .links{display:none}
 body.mainsite .nav .menu{display:flex;grid-column:2;grid-row:1}
 body.mainsite .nav .cta{grid-column:1 / -1;grid-row:2;min-height:44px;font-size:16px}
 body.mainsite .sheet nav{display:grid;gap:6px}
 body.mainsite .sheet a{font-size:clamp(22px,4vw,30px)}
 body.mainsite .seminar-strip-inner{align-items:flex-start;flex-direction:column;gap:20px}
 body.mainsite .seminar-cta{max-width:100%}
}
@media(max-width:767px){
 body.mainsite .navin,body.mainsite .seminar-strip-inner,body.mainsite footer.sitefoot > .wrap{width:calc(100% - 40px)}
 body.mainsite[data-body-variant="03"] #top > section:not(.hero) > .wrap{width:calc(100% - 40px);display:block}
 body.mainsite[data-body-variant="03"] #top > section:not(.hero) .head h2{font-size:30px}
 body.mainsite[data-body-variant="03"] #top > :is(section#start,section#works) > .wrap > .ks{grid-template-columns:minmax(0,1fr);gap:16px}
 body.mainsite .seminar-date{font-size:16px;gap:8px 12px}
 body.mainsite .seminar-cta{width:100%;padding-inline:16px;font-size:16px;gap:12px}
}
/* The existing display gate also applies to all newly added event entrances. */
body.mainsite[data-event-exposure="off"] :is(.event-nav,.seminar-strip){display:none}
