.shack-page header,.shack-page main,.shack-page footer{max-width:1480px;margin:auto}
.shack-page h1{font-size:clamp(2.8rem,5.5vw,5.2rem);line-height:1.02;margin:14px 0 0}
.shack-page h2{font-size:clamp(1.55rem,2.8vw,2.5rem);line-height:1.15;margin:8px 0 16px}
.shack-page h3{font-family:'Chakra Petch',sans-serif;font-size:1.35rem;margin:8px 0}
.intro{display:grid;grid-template-columns:1.2fr 1fr;gap:60px;align-items:end;padding:24px 0 12px}
.intro-copy{max-width:490px;padding-bottom:7px}.intro-copy p{font-size:1.08rem;line-height:1.6;color:#b3c2d1}.intro-copy p:first-child{color:var(--text);font-size:1.2rem}
.review-label{display:inline-block;border:1px solid #786442;color:#f0cb7b;border-radius:30px;padding:7px 12px;font-size:.75rem;margin-top:10px}
.studio{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:24px;scroll-margin-top:20px}
.stage{min-width:0;border:1px solid var(--line);background:#0e1520;border-radius:16px;overflow:hidden}
.stage-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:20px 24px}.stage-heading h2{font-size:1.55rem;margin:6px 0 0}.stage-heading .eyebrow{font-size:.66rem}.stage-heading a{font-size:.78rem}
.stage figure{margin:0}.stage figure img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;background:#15202b}
.stage figcaption{padding:20px 24px 0;color:#bfccd6;line-height:1.6;font-size:.95rem;min-height:3.5em}
.detail-chips{list-style:none;display:flex;flex-wrap:wrap;gap:8px;padding:14px 24px 22px;margin:0}.detail-chips li{font-size:.72rem;border:1px solid #304052;border-radius:6px;padding:6px 9px;color:#afc4d5;background:#131e2b}
.theme-picker{border:1px solid var(--line);border-radius:16px;background:#0e1520;padding:22px 14px}.theme-picker>.eyebrow{font-size:.68rem;margin:0 10px 18px}
.theme-button{width:100%;display:flex;align-items:center;gap:12px;text-align:left;padding:13px 10px;border:1px solid transparent;background:transparent;border-radius:10px;margin:0 0 6px;cursor:pointer;color:var(--text)}
.theme-button b{font-size:.88rem;font-weight:600}.theme-button small{display:block;color:#90a3b5;font-size:.69rem;margin-top:5px}.theme-dot{display:block;flex:none;width:24px;height:35px;border-radius:7px;background:var(--theme);box-shadow:inset 0 1px 0 #ffffff30}.selection-mark{opacity:0;margin-left:auto;color:var(--accent)}
.theme-button[aria-pressed=true]{border-color:#3e9fc2;background:#173244}.theme-button[aria-pressed=true] .selection-mark{opacity:1}.theme-button:hover{background:#15293a}.theme-button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
.picker-note{font-size:.76rem;line-height:1.6;color:#90a3b5;margin:18px 10px 0}
.study-section{margin-top:90px;scroll-margin-top:30px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:24px}.section-heading>p{max-width:400px;font-size:.95rem;line-height:1.65;color:#a8bac9;margin-bottom:16px}
.look-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px}.look-card{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#101925}.look-image{display:block}.look-card img{display:block;width:100%;height:auto;aspect-ratio:3/2}.look-card>div{padding:22px 24px}.look-card .eyebrow{font-size:.68rem;color:var(--amber)}.look-card p:not(.eyebrow){font-size:.9rem;color:#a8bac9;line-height:1.6;max-width:520px}.text-action{display:inline-block;padding:8px 0;font-size:.85rem}
.progress-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.progress-card{box-shadow:none;border:0;background:transparent;border-radius:0}.progress-card img{display:block;width:100%;height:auto;border:1px solid var(--line);border-radius:12px}.progress-card .eyebrow{margin-top:22px;color:var(--amber);font-size:.7rem}.progress-card p:not(.eyebrow){font-size:.9rem;color:#a8bac9;line-height:1.6}.study-note{font-size:.8rem;color:#90a3b5;margin-top:26px}
.parts-image{display:block;border-radius:16px;overflow:hidden;border:1px solid #877554}.parts-image img{display:block;width:100%;height:auto}.parts-notes{display:grid;grid-template-columns:1fr 1fr;gap:50px;margin:18px 0}.parts-notes p{font-size:.92rem;line-height:1.6;color:#a8bac9}.parts-notes b{color:var(--text)}
.review-note{padding:30px;border:1px solid var(--line);border-radius:12px;margin-top:65px;max-width:850px}.review-note h2{font-size:1.45rem}.review-note p{font-size:.88rem;line-height:1.7;color:#90a3b5}.review-note>a{font-size:.85rem}
.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@media(max-width:1100px){.studio{grid-template-columns:minmax(0,1fr) 240px;gap:16px}.theme-picker{padding:18px 10px}.theme-button{gap:8px;padding:10px 7px}.theme-dot{width:20px;height:30px}.theme-button b{font-size:.8rem}.theme-button small{font-size:.65rem}.intro{gap:30px}}
@media(max-width:850px){.intro{grid-template-columns:1fr;gap:16px}.intro-copy{max-width:650px}.studio{grid-template-columns:1fr}.theme-picker{display:grid;grid-template-columns:1fr 1fr;gap:4px 8px}.theme-picker>.eyebrow,.picker-note{grid-column:1/-1}.theme-button{margin:0}.section-heading{display:block}.section-heading>p{max-width:600px}.progress-grid{grid-template-columns:1fr}.progress-card{display:grid;grid-template-columns:1.1fr 1fr;gap:0 24px}.progress-card>a:first-child{grid-row:1/5}.progress-card .eyebrow{margin:0}.progress-card h3{font-size:1.1rem}.progress-card .text-action{padding-top:0}}
@media(max-width:600px){.shack-page header,.shack-page main,.shack-page footer{padding-left:18px;padding-right:18px}.shack-page header{padding-bottom:4px}.shack-page main{padding-top:18px}.site-nav{font-size:.73rem}.intro{padding-top:0}.intro-copy p{font-size:.94rem}.intro-copy p:first-child{font-size:1.03rem}.stage-heading{padding:16px;gap:10px}.stage-heading h2{font-size:1.2rem}.stage-heading a{font-size:.65rem;max-width:90px}.stage figcaption{padding:14px 16px 0;font-size:.83rem}.detail-chips{padding:12px 16px 16px;gap:6px}.detail-chips li{font-size:.63rem}.theme-picker{padding:16px 9px}.theme-button small{display:none}.theme-button b{font-size:.75rem}.theme-dot{width:17px;height:28px}.selection-mark{font-size:.75rem}.study-section{margin-top:58px}.look-grid{grid-template-columns:1fr;gap:20px}.look-card>div{padding:18px 20px}.progress-card{display:block}.progress-card .eyebrow{margin-top:16px}.progress-grid{gap:32px}.parts-notes{grid-template-columns:1fr;gap:0}.review-note{padding:22px;margin-top:35px}.shack-page footer{font-size:.73rem}}
