/* Opt-in studies only. The default homepage keeps its existing composition. */
.home-shell[data-home-layout] {width:min(1080px,calc(100% - 80px));min-height:100dvh;}
.home-shell[data-home-layout] .topbar {flex:0 0 76px;}
.layout-home {flex:1;min-width:0;color:var(--ink);}
.layout-kicker {font-size:13px;letter-spacing:.07em;color:var(--muted);font-weight:500;}
.layout-home h1 {font-size:clamp(40px,4.3vw,58px);line-height:1.22;letter-spacing:-.045em;font-weight:650;margin:18px 0 24px;}
.layout-home h1 span {display:block;}
.layout-description {font-size:17px;line-height:1.9;color:var(--muted);}
.layout-action {margin-top:30px;}
.layout-home .layout-action .btn {font-size:16px;min-height:52px;padding:12px 22px;gap:16px;border-radius:9px;box-shadow:none;}
.layout-home .layout-action .btn:hover:not(:disabled) {box-shadow:none;}
.layout-home .layout-action .icon {width:20px;height:20px;}
.layout-process {list-style:none;padding:22px 0;margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:40px;border-top:1px solid var(--line);}
.layout-process li {display:flex;gap:14px;align-items:flex-start;}
.layout-step-number {font:12px/24px 'SFMono-Regular',Consolas,monospace;color:#7b8b72;}
.layout-process strong {font-size:14px;font-weight:600;line-height:1.7;}
.layout-process p {font-size:13px;line-height:1.7;color:var(--muted);margin:4px 0 0;}
.layout-deck {display:grid;place-items:center;min-width:0;}
.home-shell .layout-deck .card-stack {position:relative;inset:auto;width:250px;height:auto;margin:0;transform:none;aspect-ratio:var(--draw-card-ratio);}
.home-shell .layout-deck .front-card {padding:0;box-shadow:0 16px 26px -22px rgb(22 61 51 / .4);transform:rotate(-3deg);}
.layout-deck .card-art {min-height:0;}
.layout-deck .card-art::before {content:none;}
.home-shell .layout-deck .back-one {transform:rotate(-9deg) translate(-13px,0);box-shadow:none;background:#dbe6bb;}
.home-shell .layout-deck .back-two {transform:rotate(7deg) translate(14px,1px);background:#e9eddf;}

/* A: one close-knit reading group, balanced by a smaller card. */
.layout-editorial {display:flex;flex-direction:column;padding:32px 0 12px;}
.layout-editorial-main {flex:1;display:grid;grid-template-columns:minmax(0,400px) minmax(0,320px);gap:80px;align-items:center;justify-content:center;padding:38px 20px 64px;}
.layout-editorial .layout-copy {padding:0;}
.layout-editorial .layout-deck {padding:28px 0;}
.layout-editorial .layout-process {padding:24px 20px 18px;}

/* B: the deck becomes the center of a small, focused ritual. */
.layout-center {display:flex;flex-direction:column;align-items:center;text-align:center;padding:30px 0 14px;}
.layout-center h1 {font-size:clamp(34px,3.8vw,48px);margin:12px 0;}
.layout-center h1 span {display:inline;margin-left:.3em;}
.layout-center .layout-description {font-size:15px;line-height:1.8;}
.layout-center .layout-description br {display:none;}
.layout-center .layout-deck {flex:1;min-height:284px;width:100%;padding:24px 0 18px;}
.home-shell .layout-center .card-stack {width:clamp(155px,23dvh,202px);}
.layout-center .layout-action {margin:10px 0 30px;}
.layout-center .layout-process {width:100%;max-width:780px;padding:18px 0 12px;gap:24px;text-align:left;}
.layout-center .layout-process p {display:none;}
.layout-center .layout-process li {justify-content:center;gap:10px;}

/* C: a quiet tabletop on the left, a practical starting sequence on the right. */
.layout-workshop {display:flex;flex-direction:column;justify-content:center;gap:24px;padding:32px 0 40px;}
.layout-workshop h1 {font-size:clamp(34px,3.4vw,44px);margin:12px 0 0;}
.layout-workshop h1 span {display:inline;margin-left:.3em;}
.layout-worktable {display:grid;grid-template-columns:1.15fr 1fr;min-height:450px;background:var(--surface);border:1px solid var(--line);border-radius:16px;overflow:hidden;}
.layout-table-art {display:flex;flex-direction:column;align-items:center;background:#e9eedf;padding:24px 28px;}
.layout-table-label {align-self:flex-start;font-size:11px;letter-spacing:.13em;color:#64775f;}
.layout-table-art .layout-deck {flex:1;width:100%;padding:26px 0;}
.home-shell .layout-workshop .card-stack {width:208px;}
.layout-table-art>p {font-size:12px;color:var(--muted);margin:8px 0 0;}
.layout-table-copy {padding:34px 40px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;}
.layout-table-copy h2 {font-size:27px;line-height:1.5;letter-spacing:-.03em;font-weight:600;margin:10px 0 20px;}
.layout-workshop .layout-process {display:flex;flex-direction:column;gap:18px;padding:0;border:0;}
.layout-workshop .layout-process p {margin-top:0;}
.layout-workshop .layout-action {margin-top:26px;}

@media(min-width:761px) and (max-height:740px) {
 .home-shell[data-home-layout] .topbar {flex-basis:64px;}
 .layout-editorial {padding-top:14px;}
 .layout-editorial-main {padding:24px 20px 36px;}
 .layout-editorial h1 {font-size:48px;}
 .home-shell .layout-editorial .card-stack {width:222px;}
 .layout-center {padding-top:20px;}
 .layout-center .layout-deck {min-height:236px;padding:18px 0;}
 .layout-center .layout-action {margin:6px 0 20px;}
 .layout-center .layout-process {padding:14px 0;}
 .layout-workshop {padding:20px 0 24px;gap:20px;}
 .layout-worktable {min-height:396px;}
 .layout-table-copy {padding:24px 32px;}
 .layout-table-art {padding:18px 24px;}
 .home-shell .layout-workshop .card-stack {width:178px;}
}
@media(max-width:760px) {
 .home-shell[data-home-layout] {width:calc(100% - 40px);}
 .home-shell[data-home-layout] .topbar {flex-basis:68px;gap:12px;}
 .home-shell[data-home-layout] .brand-sub {font-size:8px;letter-spacing:1px;}
 .home-shell[data-home-layout] .brand-text {font-size:17px;}
 .home-shell[data-home-layout] .brand-mark {width:32px;height:32px;}
 .home-shell[data-home-layout] .brand {gap:8px;}
 .home-shell[data-home-layout] .top-nav {gap:12px;}
 .home-shell[data-home-layout] .nav-button {font-size:12px;gap:4px;}
 .home-shell[data-home-layout] .nav-button .icon {display:none;}
 .layout-home h1 {font-size:38px;}
 .layout-description {font-size:15px;}
 .layout-kicker {font-size:12px;}
 .layout-editorial {padding:20px 0 8px;}
 .layout-editorial-main {position:relative;display:flex;flex-direction:column;justify-content:center;gap:26px;padding:12px 0 26px;}
 .layout-editorial .layout-copy {align-self:stretch;}
 .layout-editorial h1 {margin:12px 0 16px;}
 .layout-editorial .layout-action {margin-top:22px;}
 .layout-editorial .layout-deck {padding:0;}
 .home-shell .layout-editorial .card-stack {width:132px;}
 .layout-editorial .layout-process {gap:14px;padding:16px 0;}
 .layout-process li {display:block;}
 .layout-process strong {font-size:12px;}
 .layout-process p {font-size:11px;}
 .layout-step-number {display:block;margin-bottom:4px;}
 .layout-center {padding:24px 0 12px;}
 .layout-center h1 {font-size:33px;margin:12px 0 16px;}
 .layout-center h1 span {display:block;margin:0;}
 .layout-center .layout-description {font-size:14px;}
 .layout-center .layout-description br {display:block;}
 .home-shell .layout-center .card-stack {width:160px;}
 .layout-center .layout-deck {min-height:274px;padding:24px 0;}
 .layout-center .layout-action {margin:8px 0 24px;}
 .layout-center .layout-process {gap:8px;}
 .layout-center .layout-process li {display:block;text-align:center;}
 .layout-workshop {padding:22px 0 24px;gap:20px;}
 .layout-workshop h1 {font-size:32px;}
 .layout-workshop h1 span {display:block;margin:0;}
 .layout-worktable {grid-template-columns:1fr;}
 .layout-table-art {padding:16px 20px;}
 .layout-table-art .layout-table-label,.layout-table-art>p {display:none;}
 .layout-table-art .layout-deck {padding:6px 0;}
 .home-shell .layout-workshop .card-stack {width:100px;}
 .layout-table-art>p {font-size:11px;}
 .layout-table-copy {padding:24px;}
 .layout-table-copy h2 {font-size:23px;margin-bottom:18px;}
 .layout-workshop .layout-process {gap:14px;}
 .layout-workshop .layout-process li {display:flex;}
 .layout-workshop .layout-process strong {font-size:14px;}
 .layout-workshop .layout-process p {font-size:12px;}
 .layout-workshop .layout-action {width:100%;margin-top:22px;}
 .layout-workshop .layout-action .btn {width:100%;}
}
@media(max-width:760px) {
 .layout-workshop {padding:16px 0 20px;gap:16px;}
 .layout-workshop h1 {font-size:30px;}
 .home-shell .layout-workshop .card-stack {width:86px;}
 .layout-table-copy {padding:20px;}
 .layout-table-copy>.layout-kicker {display:none;}
 .layout-table-copy h2 {font-size:21px;line-height:1.4;margin:0 0 16px;}
 .layout-workshop .layout-process {gap:12px;}
 .layout-workshop .layout-action {margin-top:18px;}
}
