@font-face{font-family:Bowlby;src:url('assets/fonts/bowlby.woff2') format('woff2');font-display:swap}
@font-face{font-family:Dela;src:url('assets/fonts/dela.woff2') format('woff2');font-display:swap}
@font-face{font-family:Bodoni;src:url('assets/fonts/bodoni.woff2') format('woff2');font-weight:700;font-display:swap}
@font-face{font-family:Shrikhand;src:url('assets/fonts/shrikhand.woff2') format('woff2');font-display:swap}
@font-face{font-family:Archivo;src:url('assets/fonts/archivo.woff2') format('woff2');font-weight:600;font-display:swap}
@font-face{font-family:Karla;src:url('assets/fonts/jakarta.woff2') format('woff2');font-weight:400 700;font-display:swap}
:root{--ink:#262b27;--paper:#f5f0e6;--accent:#c5df66;--review-height:54px;--ease:cubic-bezier(.16,1,.3,1);--space-1:8px;--space-2:16px;--space-3:24px;--space-4:32px;--space-5:48px;--space-6:64px}
*{box-sizing:border-box}
html{scrollbar-color:var(--ink) var(--paper);scrollbar-width:thin}
body{margin:0;color:var(--ink);background:var(--paper);font-family:Karla,'Noto Sans CJK KR',Arial,sans-serif;font-size:16px;-webkit-font-smoothing:antialiased}
::selection{background:var(--ink);color:var(--paper)}
button,a{-webkit-tap-highlight-color:transparent;touch-action:manipulation}
button{font:inherit;color:inherit;border:0;background:none;cursor:pointer;padding:0}
a{color:inherit;text-decoration:none;text-underline-offset:.24em}
button:disabled{opacity:.32;cursor:default}
button:focus-visible,a:focus-visible,[tabindex]:focus-visible,summary:focus-visible{outline:2px solid currentColor;outline-offset:5px}
button:not(:disabled):hover,a:hover{text-decoration-thickness:1px}
img{display:block;max-width:100%;width:100%;height:100%;object-fit:cover}
figure,h1,h2,p{margin:0}
h1,h2{font-weight:400}
p{line-height:1.65;word-break:keep-all}
[hidden]{display:none!important}
.icon{width:24px;height:24px;flex:0 0 auto;vertical-align:middle}
.icon.left{transform:rotate(180deg)}
.skip-link{position:fixed;left:20px;top:-100px;z-index:100;background:var(--ink);color:var(--paper);padding:12px 20px}
.skip-link:focus{top:12px}
.site-world{min-height:calc(100svh - var(--review-height));display:flex;flex-direction:column}
.site-head{height:96px;flex:0 0 96px;padding:0 3.5vw;display:flex;align-items:center;justify-content:space-between;gap:32px}
.wordmark{font-family:Bowlby,sans-serif;font-size:38px;letter-spacing:-.03em;line-height:1}
.head-sub{font-size:12px;font-weight:700;letter-spacing:.07em}
.site-head nav{display:flex;gap:32px;align-items:center}
.site-head nav a,.site-head nav button{font-size:12px;font-weight:700;display:flex;align-items:center;gap:8px;min-height:44px}
.site-head nav a:hover,.site-head nav button:hover{text-decoration:underline}
.site-head .icon{width:16px;height:16px}
.photo-button{position:relative;display:block;width:100%;height:100%;overflow:hidden}
.photo-button img{transition:scale .6s var(--ease)}
.photo-button:hover img{scale:1.025}
.photo-open{position:absolute;right:10px;bottom:10px;width:36px;height:36px;display:grid;place-items:center;color:#262b27;background:#f5f0e6;opacity:0;transition:opacity .2s}
.photo-button:hover .photo-open,.photo-button:focus-visible .photo-open{opacity:1}
.review-bar{min-height:var(--review-height);display:flex;align-items:center;justify-content:space-between;gap:20px;background:#f5f0e6;color:#262b27;padding:0 24px;border-top:1px solid #262b2733;font-size:11px}
.all-concepts{display:flex;gap:8px;align-items:center;min-height:44px;white-space:nowrap}
.all-concepts .icon{width:16px;height:16px}
.review-bar nav{display:flex;gap:6px;align-items:center}
.review-bar nav a{display:flex;align-items:center;gap:6px;padding:0 10px;min-height:44px;position:relative}
.review-bar nav a[aria-current]{font-weight:700}
.review-bar nav a[aria-current]:after{content:'';position:absolute;bottom:6px;left:10px;right:10px;height:2px;background:currentColor}
.review-number{font-variant-numeric:tabular-nums}
.concept-note{font-size:11px;white-space:nowrap}

/* Club poster: letterpress scale and a photographic pin board. */
.world-club{--paper:#eac36a;--ink:#922f24;--accent:#edd8cf}
.world-club .site-head{border-bottom:1px solid #922f2444;margin:0 3.5vw;padding:0}
.club-main{flex:1;min-height:650px;position:relative;display:grid;grid-template-columns:42% 58%;padding:40px 3.5vw 62px}
.club-type{position:relative;z-index:2;display:flex;flex-direction:column;justify-content:space-between}
.club-type h1{font-family:Bowlby,sans-serif;font-size:clamp(78px,7.8vw,132px);line-height:.99;letter-spacing:-.035em;margin-left:-5px}
.club-type h1 span{font-size:1.39em;line-height:.95}
.club-bottom-copy{display:flex;align-items:flex-end;gap:40px;margin-top:28px}
.club-bottom-copy p{font-size:15px;font-weight:600}
.club-cta{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:15px 0;border-bottom:2px solid currentColor;min-height:52px;font-size:14px;font-weight:700}
.club-cta .icon{width:32px;height:32px}
.club-board{position:relative;min-height:535px;margin-left:-20px}
.club-main-photo{position:absolute;left:18%;top:4%;width:56%;height:84%;transform:rotate(5deg);padding:11px 11px 31px;background:#eee9da;box-shadow:3px 10px 20px #5b311229}
.club-main-photo .photo-button{height:100%}
.club-photo-caption{position:absolute;bottom:9px;left:13px;font-size:11px;color:#39382e;font-weight:700;letter-spacing:.12em}
.club-photo-small{position:absolute;left:0;top:17%;width:28%;height:48%;transform:rotate(-12deg);z-index:3;padding:8px 8px 28px;background:#ecd8cf;box-shadow:2px 8px 20px #5b311229}
.club-photo-side{position:absolute;right:0;top:41%;width:30%;height:50%;transform:rotate(10deg);padding:8px 8px 28px;background:#eee9da;box-shadow:3px 8px 20px #5b311229;z-index:4}
.club-stamp{position:absolute;right:1%;top:-5%;width:132px;height:132px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;border:2px solid currentColor;border-radius:50%;transform:rotate(12deg);z-index:5}
.club-stamp span{font-family:Archivo,sans-serif;font-weight:600;font-size:18px;letter-spacing:.02em}
.club-stamp strong{font-family:Shrikhand,serif;font-size:36px;line-height:1.2;font-weight:400}
.club-ticket{position:absolute;left:3%;top:69%;z-index:6;background:#922f24;color:#f4d889;padding:14px 25px 18px;transform:rotate(-7deg);font-family:Archivo,sans-serif;display:flex;flex-direction:column;align-items:center;gap:2px}
.club-ticket span{font-size:13px;letter-spacing:.07em}
.club-ticket strong{font-size:32px;font-weight:600;line-height:1}
.club-side-note{position:absolute;right:-25px;top:6%;font-size:11px;font-weight:700;writing-mode:vertical-rl;letter-spacing:.13em}
.club-picker{position:absolute;bottom:-19px;left:12%;right:0;display:flex;justify-content:center;gap:18px}
.club-picker button{font-size:11px;font-weight:700;min-height:44px;position:relative;white-space:nowrap}
.club-picker button[aria-pressed=true]:after{content:'';position:absolute;left:0;right:0;bottom:7px;height:2px;background:currentColor}
.club-baseline{position:absolute;bottom:17px;left:3.5vw;right:3.5vw;display:flex;justify-content:space-between;font-size:11px;font-weight:700;letter-spacing:.06em}

/* Blue hour: an irregular, continuous photographic rail. */
.world-blue{--paper:#3f5261;--ink:#eee5d4;--accent:#baa173}
.world-blue .wordmark{font-family:Dela,sans-serif}
.blue-main{flex:1;min-width:0;overflow:hidden;display:flex;flex-direction:column;padding-top:15px}
.blue-intro{display:flex;align-items:center;justify-content:space-between;padding:0 7vw;position:relative}
.blue-intro h1{font-family:Dela,sans-serif;font-size:clamp(64px,7vw,112px);line-height:1.02;letter-spacing:-.035em;position:relative;z-index:2}
.blue-intro-copy{margin-right:12%;padding-top:18px}
.blue-intro-copy p{font-size:19px;line-height:1.7;margin-bottom:22px}
.blue-intro-copy span{font-size:11px;letter-spacing:.11em}
.blue-rail{display:flex;gap:46px;overflow-x:auto;scrollbar-width:none;scroll-snap-type:x mandatory;padding:32px 7vw 10px;cursor:grab;min-height:340px;align-items:flex-start;touch-action:pan-x pan-y;flex:1}
.blue-rail::-webkit-scrollbar{display:none}
.blue-rail.dragging{scroll-snap-type:none;cursor:grabbing;user-select:none}
.blue-rail.dragging .photo-button{pointer-events:none}
.blue-frame{flex:0 0 290px;scroll-snap-align:start;scroll-margin-left:7vw}
.blue-frame .photo-button{height:300px}
.blue-frame:nth-child(2n){margin-top:46px;flex-basis:220px}
.blue-frame:nth-child(2n) .photo-button{height:246px}
.blue-frame:nth-child(3n){flex-basis:245px;margin-top:-12px}
.blue-frame:nth-child(3n) .photo-button{height:270px}
.blue-frame figcaption{font-size:12px;display:flex;gap:18px;line-height:1.3;margin-top:13px}
.blue-frame figcaption span{font-size:11px;font-variant-numeric:tabular-nums;padding-top:2px}
.blue-controls{display:flex;align-items:center;justify-content:space-between;padding:22px 3.5vw 26px;gap:55px}
.blue-control-copy{display:flex;align-items:center;gap:22px}
.blue-cross .icon{width:50px;height:50px;transform:rotate(135deg)}
.blue-control-copy p{font-size:12px}
.rail-progress{height:1px;background:#eee5d455;flex:1;position:relative;max-width:420px}
.rail-progress span{height:3px;width:16.66%;position:absolute;left:0;top:-1px;background:var(--ink);transition:left .35s var(--ease)}
.rail-buttons{display:flex;align-items:center;gap:10px}
.rail-buttons>span{font-size:12px;font-variant-numeric:tabular-nums;margin-right:20px}
.rail-buttons button{width:50px;height:50px;border:1px solid #eee5d477;border-radius:50%;display:grid;place-items:center}
.rail-buttons button:not(:disabled):hover{background:var(--ink);color:var(--paper)}

/* Pocket Press: two actual pages, a quiet gutter, and persistent chapter tabs. */
.world-press{--paper:#b2ad93;--ink:#393426;--accent:#e5dfcd}
.world-press .wordmark{font-family:Bodoni,serif;font-weight:700;font-size:42px}
.press-main{display:flex;flex-direction:column;flex:1;padding:14px 7vw 20px;position:relative;justify-content:center}
.press-spine-label{position:absolute;left:2.8vw;top:50%;writing-mode:vertical-rl;transform:translateY(-50%) rotate(180deg);font-size:11px;letter-spacing:.13em}
.press-book{display:grid;grid-template-columns:1fr 1fr;position:relative;background:#e5dfcd;box-shadow:5px 18px 32px #3e372a29;min-height:565px;height:min(64vh,670px)}
.press-left{padding:28px 38px 24px;display:flex;flex-direction:column;position:relative;border-right:1px solid #39342633;background:#e2dccb}
.press-folio{display:flex;justify-content:space-between;gap:20px;font-size:11px;letter-spacing:.07em;border-bottom:1px solid #39342655;padding-bottom:12px}
.press-left h1{font-family:Bodoni,serif;font-weight:700;font-size:clamp(58px,6.3vw,94px);letter-spacing:-.04em;line-height:.96;margin-top:27px}
.press-deck{font-size:14px;margin-top:21px}
.press-small{display:flex;gap:22px;align-items:flex-end;margin:24px 0 24px auto;width:76%;flex:1;min-height:0}
.press-small .photo-button{width:55%;height:100%;min-height:100px;max-height:195px;flex:0 0 55%}
.press-small>span{font-family:Bodoni,serif;font-weight:700;font-size:19px;line-height:1.3;max-width:115px;padding-bottom:4px}
.press-byline{display:flex;justify-content:space-between;font-size:11px;margin-top:auto;letter-spacing:.06em}
.press-right{display:flex;flex-direction:column;padding:24px;background:#ebe5d6;min-width:0}
.press-right-image{flex:1;min-height:0}
.press-right-image img{object-position:center 43%}
.press-caption{padding-top:20px;display:flex;align-items:flex-end;justify-content:space-between;gap:20px}
.press-caption div>span{font-size:11px}
.press-caption h2{font-size:17px;margin-top:8px;font-weight:600;word-break:keep-all}
.press-caption>span{font-size:11px}
.press-tabs{position:absolute;right:-34px;top:24px;display:flex;flex-direction:column;gap:8px}
.press-tabs button{writing-mode:vertical-rl;width:34px;min-height:113px;font-size:11px;font-weight:700;letter-spacing:.03em;background:#ae9b86;border-radius:0 5px 5px 0;padding:13px 0;display:flex;align-items:center;justify-content:center}
.press-tabs button:nth-child(2){background:#aaa98b}.press-tabs button:nth-child(3){background:#c6b37b}
.press-tabs button[aria-pressed=true]{background:#393426;color:#ebe5d6;width:42px}
.press-controls{display:flex;justify-content:space-between;align-items:center;gap:24px;padding-top:25px}
.press-controls>p{font-size:12px}
.press-controls>span{font-size:11px;letter-spacing:.08em}
.press-controls>div{display:flex;align-items:center;gap:20px;font-size:12px;font-variant-numeric:tabular-nums}
.press-controls button{display:grid;place-items:center;width:46px;height:44px;border-bottom:1px solid #39342677}
.press-controls button:not(:disabled):hover{background:var(--ink);color:var(--paper)}
.press-book.turning .press-right{animation:page-turn .5s var(--ease);transform-origin:left center}
@keyframes page-turn{from{transform:perspective(1400px) rotateY(-12deg);filter:brightness(.91)}to{transform:perspective(1400px) rotateY(0);filter:brightness(1)}}

/* Little Frequency: vinyl geometry is the selector's visible state. */
.world-radio{--paper:#79545a;--ink:#f0e4ce;--accent:#c9b179}
.world-radio .wordmark{font-family:Shrikhand,serif;font-size:39px}
.world-radio .site-head{border-bottom:1px solid #f0e4ce44;margin:0 3.5vw;padding:0}
.radio-main{flex:1;position:relative;padding:22px 5vw 50px;display:flex;flex-direction:column}
.radio-title{display:flex;justify-content:space-between;align-items:center;position:relative;z-index:4;pointer-events:none}
.radio-title h1{font-family:Shrikhand,serif;font-size:clamp(58px,6.5vw,102px);line-height:1;letter-spacing:-.035em}
.radio-title h1 span{padding-left:4.3vw}
.radio-title p{font-size:16px;margin-right:15%;padding-top:10px}
.radio-deck{display:grid;grid-template-columns:58% 42%;flex:1;min-height:380px;margin-top:15px;position:relative}
.record-area{position:relative;min-height:375px}
.record{position:absolute;left:2%;top:2%;width:min(32vw,430px);aspect-ratio:1;background:#432d35;border-radius:50%;transform:rotate(-16deg);transition:transform 1s var(--ease);box-shadow:2px 9px 23px #251b2229;display:grid;place-items:center}
.record-grooves{position:absolute;inset:9%;border:1px solid #79545a33;border-radius:50%;outline:1px solid #79545a22;outline-offset:10px}
.record-grooves:before,.record-grooves:after{content:'';position:absolute;border:1px solid #79545a33;border-radius:50%}
.record-grooves:before{inset:6%}.record-grooves:after{inset:13%}
.record-label{width:43%;height:43%;border-radius:50%;background:#c9b179;color:#f0e4ce;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative}
.record-label>span{font-size:11px;font-weight:700;letter-spacing:.11em}
.record-label>strong{font-family:Shrikhand,serif;font-weight:400;font-size:37px;margin:5px 0}
.record-label>small{font-size:11px;font-weight:700}
.record-label i{position:absolute;left:calc(50% - 4px);top:calc(50% - 4px);width:8px;height:8px;background:#79545a;border-radius:50%}
.record-sleeve{position:absolute;right:7%;top:8%;width:48%;height:92%;max-height:410px;transform:rotate(7deg);background:#c9b179;padding:12px 12px 34px;box-shadow:4px 15px 25px #251b2230;z-index:2}
.sleeve-tag{position:absolute;bottom:12px;left:13px;font-size:11px;font-weight:700;letter-spacing:.035em;white-space:nowrap}
.radio-selector{padding:0 0 0 5%;align-self:center}
.radio-now{display:flex;justify-content:space-between;font-size:11px;letter-spacing:.06em;border-bottom:1px solid #f0e4ce66;padding-bottom:10px}
.radio-selector h2{font-family:Shrikhand,serif;font-size:clamp(29px,3vw,46px);line-height:1.12;letter-spacing:-.02em;margin:16px 0 14px}
.radio-selector>p{font-size:13px;line-height:1.8;min-height:48px}
.track-list{margin-top:24px;border-top:1px solid #f0e4ce66}
.track-list button{display:grid;grid-template-columns:24px 1fr auto 18px;gap:12px;align-items:center;min-height:48px;width:100%;border-bottom:1px solid #f0e4ce66;padding:0 10px;font-size:13px;text-align:left}
.track-list button>span:first-child{font-size:11px;opacity:.85}
.track-list button>span:nth-last-child(2){font-size:11px;font-weight:700}
.track-list button strong{font-weight:600}
.track-list button .icon{width:18px;height:18px}
.track-list button[aria-pressed=true]{background:#f0e4ce;color:#f5d8db}
.track-list button:hover:not([aria-pressed=true]){background:#f0e4ce11}
.radio-cta{margin-top:15px;min-height:44px;font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:space-between;width:100%}
.radio-end{position:absolute;left:5vw;right:5vw;bottom:16px;display:flex;justify-content:space-between;font-size:11px;letter-spacing:.06em}

/* Everyday archive: mixed photographic scales, persistent colour index. */
.world-archive{--paper:#434839;--ink:#e9e2ca;--accent:#c6c19b}
.world-archive .wordmark{font-family:Archivo,sans-serif;font-size:40px;font-weight:600}
.world-archive .site-head{border-bottom:1px solid #e9e2ca44;margin:0 3.5vw;padding:0;height:84px;flex-basis:84px}
.archive-main{display:grid;grid-template-columns:25% 75%;flex:1;min-height:645px;padding:28px 3.5vw 28px;gap:0}
.archive-sidebar{padding-right:32px;display:flex;flex-direction:column}
.archive-sidebar h1{font-family:Archivo,sans-serif;font-weight:600;font-size:clamp(48px,5vw,76px);line-height:.95;letter-spacing:-.02em}
.archive-sidebar h1 span{color:var(--accent);font-size:.65em;letter-spacing:0}
.archive-sidebar>p{font-size:13px;margin-top:22px}
.archive-filters{display:flex;flex-direction:column;margin-top:30px}
.archive-filters button{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:46px;font-size:11px;border-bottom:1px solid #e9e2ca3d;padding:0 10px}
.archive-filters button small{font-size:11px;opacity:.8}
.archive-filters button[aria-pressed=true]{background:var(--accent);color:#292e2b;font-weight:700}
.archive-footnote{margin-top:auto;padding-top:28px;display:grid;grid-template-columns:40px 1fr;gap:18px;align-items:center}
.archive-footnote p{font-size:11px}
.archive-star{width:34px;height:34px;color:var(--accent)}
.archive-star svg{width:100%;height:100%}
.archive-footnote>span:last-child{grid-column:1/-1;font-size:11px;letter-spacing:.08em}
.archive-gallery{min-width:0;border-left:1px solid #e9e2ca3d;padding-left:28px;display:flex;flex-direction:column}
.archive-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:11px;padding-bottom:18px}
.archive-toolbar .icon{width:14px;height:14px;margin-left:5px}
.archive-grid{display:grid;grid-template-columns:1.45fr 1fr 1fr 1fr;grid-template-rows:repeat(2,minmax(190px,1fr));gap:20px 17px;flex:1}
.archive-item{display:flex;flex-direction:column;min-height:0;min-width:0}
.archive-item .photo-button{min-height:0;flex:1}
.archive-item-0{grid-row:1/3}
.archive-item-7{display:none}
.archive-item figcaption{display:flex;justify-content:space-between;gap:5px;font-size:11px;letter-spacing:.025em;padding-top:9px;line-height:1.2}
.archive-grid.filtered{grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:minmax(250px,1fr);align-content:start}
.archive-grid.filtered .archive-item{grid-row:auto;display:flex;max-height:530px}
.archive-grid.filtered .archive-item .photo-button{min-height:260px}
.archive-empty{padding:40px 0;font-size:14px}

/* Full-resolution lookbook with keyboard navigation and protected focus. */
.viewer{border:0;padding:0;background:#f1ede3;color:#292e2b;width:min(1040px,94vw);max-width:none;max-height:94svh;box-shadow:0 20px 70px #0004}
.viewer::backdrop{background:#172019cc}
.viewer[open]{display:flex;flex-direction:column}
.viewer-top,.viewer-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:12px 28px;font-size:12px;flex:0 0 auto}
.viewer-top{border-bottom:1px solid #292e2b44}
.viewer-top button{display:flex;align-items:center;gap:8px;min-height:44px;font-size:11px}
.viewer-close{width:44px;height:44px;justify-content:center}.viewer-close .icon{width:20px;height:20px}.viewer-close:hover{background:currentColor;color:var(--paper)}
.viewer-content{display:grid;grid-template-columns:60px 1fr 60px;align-items:center;padding:18px 24px;min-height:0}
.viewer-content figure{min-height:0}
.viewer-image-wrap{height:min(63vh,670px);position:relative}
.viewer-image{object-fit:contain}
.viewer-content figcaption{display:flex;justify-content:space-between;gap:15px;align-items:center;padding-top:16px;font-size:11px}
.viewer-content h2{font-family:Archivo,sans-serif;font-size:22px;font-weight:600}
.viewer-content>button{width:48px;height:48px;display:grid;place-items:center;border:1px solid #292e2b77;border-radius:50%}
.viewer-content>button:hover{background:#292e2b;color:#f1ede3}
.viewer-content .viewer-next{justify-self:end}
.viewer-bottom{border-top:1px solid #292e2b44;min-height:54px}
.viewer-bottom a{min-height:44px;display:flex;align-items:center;gap:10px}
.viewer-bottom .icon{width:18px;height:18px}
.viewer-error{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:20px}
.viewer-error button{padding:10px 20px;border:1px solid}
body:has(.viewer[open]){overflow:hidden}

/* Review gallery: real captures of the five independent experiences. */
.world-index{--paper:#edece5;--ink:#282d29}
.index-head{display:flex;align-items:center;justify-content:space-between;padding:25px 4vw;border-bottom:1px solid #282d2933}
.index-head>a:first-child{font-family:Bowlby,sans-serif;font-size:36px}
.index-head>span,.index-head>a:last-child{font-size:11px;letter-spacing:.05em;display:flex;align-items:center;gap:5px;min-height:44px}
.index-head .icon{width:16px;height:16px}
.index-main{padding:55px 4vw 30px}
.index-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;padding-bottom:48px}
.index-intro h1{font-size:clamp(30px,3.5vw,52px);font-weight:600;line-height:1.4;letter-spacing:-.04em}
.index-intro h1 span{color:#596358}
.index-intro>p{font-size:13px;padding-bottom:5px}
.concept-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:40px 25px}
.concept-preview{grid-column:span 2;min-width:0;display:block}
.concept-preview:nth-child(-n+2){grid-column:span 3}
.concept-thumb{aspect-ratio:1.6;overflow:hidden;position:relative;background:#d9dace}
.concept-thumb>img{transition:transform .7s var(--ease)}
.concept-preview:hover .concept-thumb>img{transform:scale(1.025)}
.concept-enter{position:absolute;right:15px;bottom:15px;background:#f5f0e6;color:#292e2b;padding:10px 15px;display:flex;align-items:center;gap:15px;font-size:12px;opacity:0;transition:opacity .2s}
.concept-preview:hover .concept-enter,.concept-preview:focus-visible .concept-enter{opacity:1}
.concept-title{display:flex;align-items:center;gap:10px;margin:18px 0 6px}
.concept-title>span{font-size:11px}
.concept-title h2{font-family:Archivo,sans-serif;font-size:26px;font-weight:600;flex:1}
.concept-title>.icon{width:22px;height:22px}
.concept-preview>p{font-size:13px}
.concept-preview>small{display:block;font-size:11px;color:#596358;margin-top:7px}
.index-note{display:flex;justify-content:space-between;align-items:flex-end;margin-top:60px;padding-top:24px;border-top:1px solid #282d2933;gap:30px}
.index-note p{font-size:11px;color:#596358}
.index-note>span{font-size:11px;font-weight:700}

@media(min-width:1600px){.club-main{padding-top:55px}.club-board{max-width:900px}.club-type h1{font-size:clamp(132px,8vw,166px)}.blue-rail{gap:60px}.blue-frame{flex-basis:370px}.blue-frame .photo-button{height:370px}.blue-frame:nth-child(2n){flex-basis:290px}.blue-frame:nth-child(2n) .photo-button{height:310px}.blue-frame:nth-child(3n){flex-basis:320px}.blue-frame:nth-child(3n) .photo-button{height:330px}.radio-deck{min-height:480px}.record-sleeve{max-height:490px}.record{width:470px}}
@media(max-width:1100px){.site-head{gap:20px}.head-sub{font-size:11px}.site-head nav{gap:20px}.review-name{display:none}.review-bar nav a{min-width:44px;justify-content:center}.review-bar{gap:10px}.club-main{grid-template-columns:43% 57%;min-height:600px}.club-type h1{font-size:8vw}.club-bottom-copy{gap:20px}.club-cta{font-size:12px;gap:12px}.club-board{min-height:480px}.club-stamp{width:102px;height:102px;right:-2%}.club-stamp span{font-size:14px}.club-stamp strong{font-size:27px}.club-picker{left:0;gap:12px}.club-picker button{font-size:11px}.club-ticket{padding:12px 15px}.club-ticket strong{font-size:26px}.blue-intro-copy{margin-right:4%}.press-main{padding-left:6vw;padding-right:8vw}.press-left{padding:25px}.press-small{width:85%;gap:15px}.press-small>span{font-size:16px}.radio-deck{grid-template-columns:54% 46%;min-height:360px}.record-sleeve{right:3%;width:52%;height:80%}.record{width:32vw;top:8%;left:-3%}.radio-title p{margin-right:10%}.radio-selector{padding-left:5%}.track-list button{gap:8px;font-size:12px}.track-list button>span:nth-last-child(2){font-size:11px}.archive-main{grid-template-columns:26% 74%}.archive-sidebar{padding-right:22px}.archive-gallery{padding-left:22px}.archive-grid{gap:18px 13px;grid-template-columns:1.3fr 1fr 1fr}.archive-toolbar>span:last-child{display:none}.archive-grid.filtered .archive-item{display:flex}.archive-item figcaption{font-size:11px}.concept-note{display:none}}
@media(max-width:760px){
  :root{--review-height:60px}
  .site-head{height:76px;flex-basis:76px;padding:0 22px;gap:16px}
  .wordmark{font-size:30px}
  .head-sub{display:none}
  .site-head nav{gap:18px}
  .site-head nav a,.site-head nav button{font-size:11px;gap:5px}
  .site-head .icon{width:13px;height:13px}
  .review-bar{padding:6px 16px;gap:8px;flex-wrap:wrap;justify-content:space-between}
  .review-bar nav{gap:0}
  .review-bar nav a{padding:0 6px;min-width:35px}
  .review-bar nav a[aria-current]:after{left:6px;right:6px}
  .all-concepts{font-size:11px;gap:4px}
  .concept-note{display:none}
  .photo-open{width:28px;height:28px;opacity:1;right:7px;bottom:7px}
  .photo-open .icon{width:19px;height:19px}
  .world-club .site-head{margin:0 22px}
  .club-main{display:flex;flex-direction:column;padding:28px 22px 60px;min-height:0;overflow:hidden}
  .club-type{display:block}
  .club-type h1{font-size:clamp(51px,13vw,93px);line-height:1.04;letter-spacing:-.03em;margin-left:0;max-width:88%}
  .club-type h1 br:first-child{display:none}
  .club-type h1 span{font-size:1.1em}
  .club-type h1 br:last-child{display:none}
  .club-bottom-copy{position:relative;margin-top:22px;justify-content:space-between;align-items:center;gap:18px}
  .club-bottom-copy p{font-size:12px;flex-shrink:0}
  .club-cta{font-size:11px;gap:10px;padding:7px 0;min-height:44px}
  .club-cta .icon{width:27px;height:27px}
  .club-board{margin:32px 0 0;min-height:360px;height:92vw;max-height:500px}
  .club-main-photo{left:19%;width:60%;height:80%;top:4%;padding:7px 7px 25px}
  .club-photo-small{left:-2%;width:32%;height:49%;top:20%;padding:6px 6px 22px}
  .club-photo-side{right:-3%;width:34%;height:48%;top:44%;padding:6px 6px 22px}
  .club-stamp{top:-30px;right:0;width:88px;height:88px}
  .club-stamp span{font-size:11px}.club-stamp strong{font-size:24px}
  .club-photo-caption{font-size:11px;bottom:9px;left:9px}
  .club-ticket{left:0;top:72%;padding:10px 15px 13px}
  .club-ticket span{font-size:11px}.club-ticket strong{font-size:25px}
  .club-side-note{display:none}
  .club-picker{bottom:-23px;left:0;gap:20px;justify-content:flex-start}
  .club-picker button{font-size:11px}
  .club-baseline{left:22px;right:22px;bottom:15px;font-size:11px}
  .club-baseline>span:nth-child(2){display:none}
  .blue-main{padding-top:24px;min-height:calc(100svh - 136px)}
  .blue-intro{padding:0 22px;display:block}
  .blue-intro h1{font-size:clamp(45px,11.6vw,78px);line-height:1.08}
  .blue-intro-copy{margin:20px 0 0;padding:0;display:flex;justify-content:space-between;align-items:flex-end;gap:15px}
  .blue-intro-copy p{font-size:13px;margin:0}
  .blue-intro-copy span{font-size:11px;max-width:100px;line-height:1.6;text-align:right}
  .blue-rail{gap:28px;padding:32px 22px 12px;min-height:370px;flex:1}
  .blue-frame{flex-basis:245px;scroll-margin-left:22px}
  .blue-frame .photo-button{height:282px}
  .blue-frame:nth-child(2n){flex-basis:200px;margin-top:34px}
  .blue-frame:nth-child(2n) .photo-button{height:240px}
  .blue-frame:nth-child(3n){flex-basis:220px;margin-top:0}
  .blue-frame:nth-child(3n) .photo-button{height:265px}
  .blue-frame figcaption{font-size:11px;gap:14px}
  .blue-controls{padding:12px 22px 25px;gap:20px}
  .blue-control-copy{display:none}.rail-progress{max-width:none}
  .rail-buttons{gap:8px}.rail-buttons>span{font-size:11px;margin-right:5px}.rail-buttons button{width:44px;height:44px}
  .world-press .wordmark{font-size:36px}
  .press-main{padding:20px 34px 24px 17px;justify-content:flex-start}
  .press-spine-label{display:none}
  .press-book{grid-template-columns:1fr;min-height:0;height:auto}
  .press-left{padding:22px 25px;border-right:0;border-bottom:1px solid #39342644;min-height:390px}
  .press-folio{font-size:11px;padding-bottom:10px}
  .press-left h1{font-size:65px;line-height:.95;margin-top:20px}
  .press-deck{font-size:12px;margin-top:16px}
  .press-small{position:absolute;right:24px;bottom:53px;width:108px;margin:0;display:block;height:147px;transform:rotate(5deg)}
  .press-small .photo-button{width:100%;height:128px;min-height:0;max-height:none}
  .press-small>span{font-family:Karla,sans-serif;display:block;font-size:11px;margin-top:6px;max-width:none;line-height:1.3}
  .press-byline{margin-top:55px;font-size:11px}
  .press-right{padding:18px}
  .press-right-image{height:350px;flex:none}
  .press-caption{padding-top:16px}.press-caption div>span{font-size:11px}.press-caption h2{font-size:14px}
  .press-tabs{right:-27px;top:20px;gap:7px}.press-tabs button{width:27px;min-height:94px;font-size:11px;padding:12px 0}.press-tabs button[aria-pressed=true]{width:32px}
  .press-controls{display:grid;grid-template-columns:1fr auto;padding-top:18px;gap:12px}
  .press-controls>p{font-size:11px;max-width:150px}
  .press-controls>span{display:none}.press-controls>div{gap:13px;font-size:11px}.press-controls button{width:44px}
  .world-radio .site-head{margin:0 22px}.world-radio .wordmark{font-size:33px}
  .radio-main{padding:23px 22px 48px}
  .radio-title{display:block}
  .radio-title h1{font-size:clamp(46px,12vw,72px);line-height:1.05}
  .radio-title h1 span{padding-left:7vw}
  .radio-title p{position:absolute;right:0;top:3px;margin:0;padding:0;font-size:11px}
  .radio-deck{display:flex;flex-direction:column;min-height:0;margin-top:25px}
  .record-area{min-height:0;height:81vw;max-height:460px}
  .record{width:68vw;left:-5%;top:0;max-width:385px}
  .record-sleeve{width:53%;height:90%;max-height:none;top:5%;right:3%;padding:8px 8px 27px}
  .record-label>strong{font-size:30px}.record-label>span{font-size:11px}.record-label>small{font-size:11px}
  .sleeve-tag{font-size:11px;bottom:9px;left:9px}
  .radio-selector{padding:26px 0 0;width:100%}
  .radio-now{font-size:11px}
  .radio-selector h2{font-size:32px;margin:18px 0 12px}
  .radio-selector h2 br{display:none}
  .radio-selector>p{font-size:12px;min-height:0}
  .track-list{margin-top:20px}.track-list button{font-size:12px;gap:10px;min-height:52px}.track-list button>span:nth-last-child(2){font-size:11px}
  .radio-cta{font-size:11px;margin-top:13px}
  .radio-end{left:22px;right:22px;bottom:17px;font-size:11px}
  .world-archive .site-head{margin:0 22px;height:76px;flex-basis:76px}.world-archive .wordmark{font-size:34px}
  .archive-main{display:flex;flex-direction:column;padding:24px 22px 28px;min-height:0}
  .archive-sidebar{padding:0;display:block;position:relative}
  .archive-sidebar h1{font-size:52px;line-height:1;max-width:70%}
  .archive-sidebar h1 br:first-child{display:none}
  .archive-sidebar h1 span{font-size:.73em;display:block}
  .archive-sidebar h1 br:last-of-type{display:none}
  .archive-sidebar>p{position:absolute;right:0;top:5px;font-size:11px;margin:0;max-width:95px}
  .archive-filters{display:grid;grid-template-columns:1fr 1fr;gap:0 12px;margin-top:24px}
  .archive-filters button{font-size:11px;min-height:44px;padding:0 8px}
  .archive-filters button small{font-size:11px}
  .archive-footnote{display:none}
  .archive-gallery{padding:0;border:0;margin-top:25px}
  .archive-toolbar{font-size:11px;padding-bottom:14px}
  .archive-grid{grid-template-columns:1fr 1fr;grid-template-rows:none;gap:24px 15px}
  .archive-item,.archive-item-6,.archive-item-7{display:flex;grid-row:auto}
  .archive-item-0{grid-column:1/-1}
  .archive-item .photo-button{height:210px;flex:none}
  .archive-item-0 .photo-button{height:340px}
  .archive-item figcaption{font-size:11px;padding-top:8px}
  .archive-grid.filtered{grid-template-columns:1fr 1fr;grid-template-rows:none}
  .archive-grid.filtered .archive-item{grid-column:auto;max-height:none}
  .archive-grid.filtered .archive-item .photo-button{min-height:0;height:235px}
  .viewer{width:100vw;max-height:100svh;height:100svh;margin:0;box-shadow:none}
  .viewer-top,.viewer-bottom{padding:12px 20px;gap:12px;font-size:11px}
  .viewer-content{grid-template-columns:40px 1fr 40px;padding:15px 8px;flex:1}
  .viewer-image-wrap{height:65svh}
  .viewer-content>button{width:36px;height:44px;border:0;border-radius:0}
  .viewer-content figcaption{flex-direction:column;align-items:flex-start;gap:5px;font-size:11px}
  .viewer-content h2{font-size:20px}.viewer-bottom a{font-size:11px}
  .index-head{padding:15px 22px}.index-head>a:first-child{font-size:30px}.index-head>span{display:none}
  .index-head>a:last-child{font-size:11px}
  .index-main{padding:32px 22px 25px}
  .index-intro{display:block;padding-bottom:32px}.index-intro h1{font-size:27px;line-height:1.45}.index-intro p{font-size:11px;margin-top:19px}
  .concept-grid{grid-template-columns:1fr;gap:34px}
  .concept-preview,.concept-preview:nth-child(-n+2){grid-column:auto}
  .concept-title{margin-top:14px}.concept-title h2{font-size:25px}.concept-preview>p{font-size:12px}.concept-preview>small{font-size:11px}
  .concept-enter{opacity:1;padding:8px 12px;font-size:11px;right:10px;bottom:10px}.concept-enter .icon{width:16px;height:16px}
  .index-note{display:block;margin-top:40px}.index-note p{font-size:11px}.index-note>span{display:block;margin-top:20px;font-size:11px}
}
@media(max-width:370px){.review-bar{padding-left:12px;padding-right:12px}.review-bar nav a{min-width:32px}.club-picker{gap:12px}.club-type h1{font-size:12.5vw}.club-bottom-copy{gap:10px}.club-cta{font-size:11px}.radio-title h1{font-size:11.5vw}.radio-title p{font-size:11px}.archive-sidebar h1{font-size:46px}.press-left h1{font-size:57px}.press-small{width:90px}.press-controls{gap:5px}.press-controls>div{gap:6px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.sleeve-tag{white-space:normal;right:9px;line-height:1.15;font-size:11px}.record-sleeve{padding-bottom:44px}.club-photo-caption{letter-spacing:.02em}.press-left h1{margin-top:8px}.press-left{padding-top:32px}
@media(max-width:760px){.record-sleeve{padding-bottom:43px}.sleeve-tag{font-size:11px;bottom:8px}.press-small{bottom:63px}.club-picker{gap:15px}.club-picker button{font-size:11px}.club-baseline span:last-child{display:none}}

/* Keep publication controls outside the paper and all touch targets usable. */
.press-book{grid-template-rows:minmax(0,1fr);flex:0 0 auto}
.press-left,.press-right{min-height:0}
.press-tabs{right:-44px}
.press-tabs button,.press-tabs button[aria-pressed=true]{width:44px}
.blue-intro h1{word-spacing:.06em}
@media(max-width:760px){
  .press-main{padding-right:55px}
  .press-book{grid-template-rows:auto auto}
  .press-left{min-height:390px}
  .press-small{right:18px;width:96px}
  .press-small>span{font-size:11px}
  .press-tabs{right:-44px}
  .press-tabs button,.press-tabs button[aria-pressed=true]{width:44px}
  .press-deck{max-width:60%}
  .press-controls{grid-template-columns:1fr;gap:8px}
  .press-controls>p{max-width:none}
  .press-controls>div{justify-content:flex-end}
  .review-bar nav a{min-width:44px}
  .viewer-content{grid-template-columns:44px 1fr 44px}
  .viewer-content>button{width:44px}
}
@media(max-width:370px){.review-bar{justify-content:center}.all-concepts{width:100%;justify-content:center}.review-bar nav{width:100%;justify-content:space-between}.press-left h1{font-size:52px}.press-deck{font-size:11px;max-width:55%}}

.radio-selection-meta{display:flex;justify-content:flex-end;font-size:11px;padding-top:12px;letter-spacing:.03em}.radio-selector h2{margin-top:0}.radio-cta{margin-top:4px}

/* Garment-led palette revision: washed navy, khaki, wine and olive. */
.world-radio .record-label,.world-radio .record-sleeve{color:#432d35}
.world-radio .record-grooves{border-color:#c9b99055;outline-color:#c9b99033}
.world-radio .record-grooves:before,.world-radio .record-grooves:after{border-color:#c9b99044}
.world-radio .track-list button[aria-pressed=true]{background:#432d35;color:#f0e4ce}
.world-archive .archive-filters button[aria-pressed=true]{color:#434839}

.world-archive .archive-filters button[aria-pressed=true] small{opacity:1}
