/* site2 additions: built on top of the main site's /assets/css/style.css */
.tgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px}
.tgrid .panel h3{margin:0 0 8px;font-size:1.05rem;color:var(--gold)}
.tgrid .panel p{margin:0;color:var(--muted);font-size:.95rem}
.tag{display:inline-block;border:1px solid var(--line);border-radius:999px;padding:2px 12px;font-size:.8rem;color:var(--muted);margin:0 6px 6px 0}
.rank-row{display:grid;grid-template-columns:280px 1fr;background:var(--plum-2);border:1px solid var(--line);border-radius:var(--r-panel);overflow:hidden;margin-bottom:22px;box-shadow:var(--shadow)}
.rank-row img{width:100%;height:100%;min-height:210px;object-fit:cover}
.rank-row .body{padding:24px;display:flex;flex-direction:column;gap:8px;align-items:flex-start}
.rank-row h3{margin:0;font-size:1.4rem}
.rank-row p{margin:0;color:var(--muted)}
.rank-no{font-family:var(--display);font-weight:800;color:var(--gold)}
.badge{background:var(--gold);color:#241500;font-weight:800;font-size:.75rem;padding:3px 10px;border-radius:999px;margin-left:8px}
.btn-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:8px}
.shot{border-radius:var(--r-panel);box-shadow:var(--shadow);width:100%}
.gens{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:14px}
.gens img{border-radius:var(--r-art);width:100%;aspect-ratio:4/5;object-fit:cover}
.team{text-align:center}
.team img{width:130px;height:130px;object-fit:cover;border-radius:50%;margin:0 auto 12px;border:3px solid var(--plum-3)}
.team h3{margin:0;font-size:1.05rem}.team em{display:block;color:var(--cyan);font-style:normal;font-size:.85rem;margin-bottom:6px}
.team p{margin:0;color:var(--muted);font-size:.9rem}
.dayparts img{height:54px;width:auto;margin-bottom:10px}
.quote{border-left:3px solid var(--gold);padding:6px 0 6px 18px}
.quote p{margin:0 0 8px;color:var(--text)}.quote span{color:var(--muted);font-size:.9rem}.stars{color:var(--gold);letter-spacing:2px}
@media(max-width:760px){.rank-row{grid-template-columns:1fr}.rank-row img{max-height:240px}}
.team .av{width:110px;height:110px;border-radius:50%;margin:0 auto 12px;display:grid;place-items:center;font-family:var(--display);font-weight:800;font-size:1.8rem;color:#241500;background:linear-gradient(135deg,var(--gold),var(--coral));border:3px solid var(--plum-3)}
.split>.shot{max-width:420px;justify-self:center}
/* full-bleed hero: picture, big title bottom-left, button bottom-right */
.hero-full{position:relative;min-height:clamp(340px,34vw,500px);display:flex;align-items:flex-end;background:radial-gradient(800px 420px at 85% 20%,rgba(255,92,122,.28),transparent 60%),radial-gradient(700px 400px at 10% 90%,rgba(66,227,214,.14),transparent 60%),linear-gradient(135deg,#2e1d5c,#1a1036 60%,#150c2e);padding:0 0 clamp(24px,3vw,40px);overflow:hidden}
.hero-full::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(10,5,30,.55) 100%)}
.hero-full .wrap{position:relative;z-index:1;display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;width:100%}
.hero-full h1{font-family:Impact,"Arial Narrow","Arial Black",sans-serif;font-weight:400;font-size:clamp(40px,6.5vw,88px);line-height:.95;max-width:none;margin:0 0 14px;color:#fff;letter-spacing:.01em;-webkit-text-stroke:2px #000;paint-order:stroke fill;text-shadow:4px 4px 0 #000}
.hero-full p{max-width:520px;margin:0;color:#fff;font-size:.95rem;line-height:1.35;text-shadow:0 1px 3px #000,0 0 8px #000}
.hero-full .hero-btn{display:inline-block;background:#fff;color:#000;text-decoration:none;font-family:Georgia,serif;font-weight:700;font-size:clamp(1rem,1.6vw,1.4rem);padding:14px 30px;border:3px solid #000;border-radius:999px;box-shadow:5px 5px 0 #000;white-space:nowrap}
.hero-full .hero-btn:hover{background:var(--gold);color:#000}
.hero-covers{position:absolute;inset:0 0 0 auto;width:min(62%,760px);display:flex;gap:14px;align-items:center;justify-content:flex-end;padding-right:3%;transform:rotate(-6deg) translateY(-6%);z-index:0;opacity:.95}
.hero-covers img{width:clamp(110px,15vw,200px);aspect-ratio:4/5;object-fit:cover;border-radius:var(--r-art);box-shadow:var(--shadow);border:3px solid rgba(255,255,255,.12)}
.hero-covers img:nth-child(even){transform:translateY(34px)}
.hero-full::after{z-index:0}
@media(max-width:700px){.hero-covers{width:100%;opacity:.35}.hero-covers img:nth-child(n+4){display:none}}
.hero-full .wrap{padding-left:clamp(24px,5vw,72px);padding-right:clamp(24px,5vw,72px)}
.hero-covers{padding-right:clamp(24px,5vw,72px)}
/* green feature band: framed picture left, heading + 3x2 points right */
.feature-green{background:#62a040;padding:clamp(48px,7vw,96px) 0;border-block:1px solid rgba(0,0,0,.25)}
.feature-green .wrap{display:grid;grid-template-columns:minmax(260px,.9fr) 2.1fr;gap:clamp(28px,4vw,56px);align-items:center;padding-left:clamp(24px,5vw,72px);padding-right:clamp(24px,5vw,72px)}
.feature-green .fg-pic{border:6px solid #fff;background:#fff;box-shadow:6px 6px 0 rgba(0,0,0,.35)}
.feature-green .fg-pic img{width:100%;aspect-ratio:1/1;object-fit:cover;}
.feature-green h2{font-family:Georgia,"Times New Roman",serif;color:#fff;font-size:clamp(1.5rem,2.4vw,2.1rem);line-height:1.15;max-width:16ch;margin:0 0 26px;text-shadow:2px 2px 0 rgba(0,0,0,.45)}
.fg-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px 34px}
.fg-grid h3{font-family:Impact,"Arial Narrow","Arial Black",sans-serif;font-weight:400;font-size:clamp(1.1rem,1.6vw,1.5rem);letter-spacing:.02em;color:#fff;margin:0 0 8px;text-shadow:2px 2px 0 #000,-1px -1px 0 #000,1px -1px 0 #000,-1px 1px 0 #000}
.fg-grid p{margin:0;color:#fff;font-family:Georgia,serif;font-size:.92rem;line-height:1.4}
@media(max-width:900px){.feature-green .wrap{grid-template-columns:1fr}.feature-green .fg-pic{max-width:420px}.fg-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.fg-grid{grid-template-columns:1fr}}
.hero-full .wrap>div:first-child{max-width:min(56%,700px)}
.hero-full h1{font-size:clamp(36px,5vw,72px)}
.hero-covers{width:min(46%,580px)}
.hero-covers img{width:clamp(90px,11vw,160px)}
@media(max-width:900px){.hero-full .wrap>div:first-child{max-width:100%}.hero-covers{width:100%;opacity:.3}}
/* recolour feature band to the main site's palette */
.feature-green{background:linear-gradient(110deg,#2b1a5c,#1d1240);border-block:1px solid var(--line)}
.feature-green .fg-pic{border-color:var(--gold);background:var(--gold);box-shadow:var(--shadow)}
.feature-green h2{color:var(--text);text-shadow:none}
.fg-grid h3{color:var(--gold);text-shadow:none;font-family:var(--display);font-weight:700;font-size:clamp(.95rem,1.2vw,1.1rem)}
.fg-grid p{color:var(--muted);font-family:var(--body);font-size:.95rem}
.feature-green h2{font-family:var(--display);font-weight:800;font-size:clamp(1.4rem,2.2vw,2rem)}
.hero-full .wrap>div:first-child{max-width:min(50%,620px)}
.hero-full h1{font-size:clamp(34px,4.6vw,66px)}
/* "complete experience" band: big outlined title, staggered cards, flat decorations */
.cards-band{position:relative;background:linear-gradient(110deg,#2b1a5c,#1d1240);padding:clamp(48px,6vw,88px) 0 clamp(70px,8vw,110px);overflow:hidden;border-block:1px solid var(--line)}
.cards-band::after{content:"";position:absolute;left:0;right:0;bottom:0;height:clamp(28px,4vw,52px);background:var(--plum-3);border-top:3px solid var(--cyan)}
.cards-band .wrap{position:relative;z-index:1;padding-left:clamp(24px,5vw,72px);padding-right:clamp(24px,5vw,72px)}
.cards-band h2{font-family:var(--display);font-weight:800;font-size:clamp(1.9rem,4.4vw,3.8rem);line-height:1.08;color:#fff;max-width:18ch;margin:0 0 clamp(28px,4vw,48px);text-shadow:4px 4px 0 #0d0722,-1px -1px 0 #0d0722,1px -1px 0 #0d0722,-1px 1px 0 #0d0722}
.cb-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));max-width:980px}
.cb-row+.cb-row{margin-left:clamp(0px,9%,120px)}
.cb-card{background:linear-gradient(160deg,#c8465f,#a93550);border:2px solid #fff;padding:22px 24px 26px;min-height:190px;margin:0 -1px -1px 0}
.cb-card h3{font-family:var(--display);font-weight:700;font-size:clamp(1.05rem,1.6vw,1.45rem);color:#fff;margin:0 0 14px;line-height:1.15}
.cb-card p{margin:0;color:#fff;font-size:.95rem;line-height:1.45}
.cb-deco{position:absolute;z-index:0;pointer-events:none}
.cb-deco.block{right:clamp(10px,6vw,110px);top:clamp(70px,9vw,140px);width:clamp(110px,15vw,230px);transform:rotate(6deg)}
.cb-deco.star{left:clamp(0px,3vw,60px);bottom:clamp(16px,3vw,44px);width:clamp(90px,12vw,190px);transform:rotate(-8deg);z-index:2}
@media(max-width:860px){.cb-row,.cb-row+.cb-row{grid-template-columns:1fr;margin-left:0}.cb-deco.block{display:none}}
/* technology band: tight outlined title, 4x2 boxed headings with text below */
.tech-band{background:linear-gradient(180deg,#221546,#17102f);padding:clamp(48px,6vw,88px) 0 clamp(56px,7vw,100px);border-block:1px solid var(--line)}
.tech-band .wrap{padding-left:clamp(24px,5vw,72px);padding-right:clamp(24px,5vw,72px)}
.tech-band h2{font-family:Impact,"Arial Narrow","Arial Black",sans-serif;font-weight:400;font-size:clamp(2.2rem,6.2vw,5.4rem);line-height:1;letter-spacing:-.03em;color:#fff;margin:0 0 clamp(28px,4vw,52px);text-shadow:4px 4px 0 #0d0722,-2px -2px 0 #0d0722,2px -2px 0 #0d0722,-2px 2px 0 #0d0722;max-width:none}
.tb-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:30px 24px}
.tb-head{display:flex;align-items:center;gap:12px;min-height:84px;padding:14px 18px;background:#0d0722;border:2px solid #fff;color:#fff;font-family:var(--display);font-weight:700;font-size:clamp(.9rem,1.15vw,1.05rem);line-height:1.2}
.tb-head svg{flex:0 0 26px;width:26px;height:26px}
.tb-item p{margin:14px 0 0;color:var(--muted);font-size:.95rem;line-height:1.5}
@media(max-width:1000px){.tb-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.tb-grid{grid-template-columns:1fr}}
/* "interesting for longer" band: mono title, checklist left, wide framed picture right */
.mono-band{background:linear-gradient(135deg,#150c2e,#2b1a5c);padding:clamp(48px,6vw,88px) 0;border-block:1px solid var(--line)}
.mono-band .wrap{padding-left:clamp(24px,5vw,72px);padding-right:clamp(24px,5vw,72px)}
.mono-band h2{font-family:ui-monospace,"Cascadia Mono",Consolas,"Courier New",monospace;font-weight:500;font-size:clamp(1.8rem,4.6vw,4rem);line-height:1.1;color:#fff;margin:0 0 clamp(26px,4vw,48px);max-width:20ch;text-shadow:3px 3px 0 #0d0722,-1px -1px 0 #0d0722,1px -1px 0 #0d0722,-1px 1px 0 #0d0722}
.mb-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.7fr);gap:clamp(24px,4vw,56px);align-items:start}
.mb-list{list-style:none;margin:0;padding:0;display:grid;gap:26px}
.mb-list li{display:grid;grid-template-columns:36px 1fr;column-gap:16px}
.mb-list svg{width:34px;height:34px;grid-row:1 / span 2}
.mb-list h3{font-family:ui-monospace,"Cascadia Mono",Consolas,"Courier New",monospace;font-weight:500;font-size:1.15rem;color:#fff;margin:0 0 8px}
.mb-list p{margin:0;color:var(--muted);font-size:.95rem;line-height:1.5}
.mb-pic{border:6px solid #fff;background:#fff;box-shadow:var(--shadow)}
.mb-pic img{width:100%;aspect-ratio:1200/640;object-fit:cover}
@media(max-width:900px){.mb-body{grid-template-columns:1fr}.mb-pic{order:-1}}
/* discover band: full-width cover wall, big outlined title, text left, pill button right */
.discover-band{position:relative;min-height:clamp(420px,40vw,620px);background:radial-gradient(900px 500px at 80% 30%,rgba(255,92,122,.3),transparent 60%),radial-gradient(800px 500px at 10% 80%,rgba(66,227,214,.18),transparent 60%),linear-gradient(135deg,#2e1d5c,#150c2e);overflow:hidden;display:flex;align-items:flex-start;border-block:1px solid var(--line)}
.discover-band .db-wall{position:absolute;inset:-10% -5%;display:grid;grid-template-columns:repeat(8,1fr);gap:16px;transform:rotate(-7deg);opacity:.5}
.discover-band .db-wall img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:var(--r-art);box-shadow:var(--shadow)}
.discover-band .db-wall img:nth-child(even){transform:translateY(40px)}
.discover-band::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(13,7,34,.7),rgba(13,7,34,.25) 55%,rgba(13,7,34,.65))}
.discover-band .wrap{position:relative;z-index:1;width:100%;padding:clamp(40px,5vw,72px) clamp(24px,5vw,72px)}
.discover-band h2{font-family:Impact,"Arial Narrow","Arial Black",sans-serif;font-weight:400;font-size:clamp(2.2rem,6vw,5.2rem);line-height:1;letter-spacing:-.03em;color:#fff;margin:0 0 clamp(24px,4vw,56px);max-width:none;text-shadow:4px 4px 0 #0d0722,-2px -2px 0 #0d0722,2px -2px 0 #0d0722,-2px 2px 0 #0d0722}
.db-row{display:flex;justify-content:space-between;align-items:flex-start;gap:32px;flex-wrap:wrap}
.discover-band p{max-width:560px;margin:0;color:#fff;font-size:.98rem;line-height:1.5;text-shadow:0 1px 3px #000,0 0 10px #000}
.discover-band .hero-btn{display:inline-block;background:#fff;color:#000;text-decoration:none;font-family:Georgia,serif;font-weight:700;font-size:clamp(1rem,1.6vw,1.4rem);padding:14px 30px;border:3px solid #000;border-radius:999px;box-shadow:5px 5px 0 #000;text-align:center}
.discover-band .hero-btn:hover{background:var(--gold)}
@media(max-width:760px){.discover-band .db-wall{grid-template-columns:repeat(4,1fr)}}

/* "first moments" band: outlined title, checkerboard of picture tiles and boxed points */
.first-band{background:linear-gradient(180deg,#17102f,#221546);padding:clamp(48px,6vw,88px) 0 clamp(56px,7vw,100px);border-block:1px solid var(--line)}
.first-band .wrap{padding-left:clamp(24px,5vw,72px);padding-right:clamp(24px,5vw,72px)}
.first-band h2{font-family:Impact,"Arial Narrow","Arial Black",sans-serif;font-weight:400;font-size:clamp(2rem,5.2vw,4.6rem);line-height:1;letter-spacing:-.03em;color:#fff;margin:0 0 clamp(26px,4vw,48px);max-width:none;text-shadow:4px 4px 0 #0d0722,-2px -2px 0 #0d0722,2px -2px 0 #0d0722,-2px 2px 0 #0d0722}
.fb-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:30px 24px;align-items:start}
.fb-pic{border:3px solid #fff;background:#fff;box-shadow:var(--shadow)}
.fb-pic img{width:100%;aspect-ratio:8/5;object-fit:cover}
.fb-txt .tb-head{min-height:80px;align-items:flex-start}
.fb-txt p{margin:14px 0 0;color:var(--muted);font-size:.95rem;line-height:1.5}
@media(max-width:1000px){.fb-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.fb-grid{grid-template-columns:1fr}}

/* "libraries" band: wide outlined title, list | framed picture | list */
.libs-band{background:linear-gradient(135deg,#2b1a5c,#150c2e);padding:clamp(48px,6vw,88px) 0 clamp(56px,7vw,100px);border-block:1px solid var(--line)}
.libs-band .wrap{padding-left:clamp(24px,5vw,72px);padding-right:clamp(24px,5vw,72px)}
.libs-band h2{font-family:"Arial Black",Impact,sans-serif;font-weight:900;font-size:clamp(1.8rem,4.6vw,4rem);line-height:1.05;color:#fff;margin:0 0 clamp(26px,4vw,48px);max-width:20ch;text-shadow:3px 3px 0 #0d0722,-2px -2px 0 #0d0722,2px -2px 0 #0d0722,-2px 2px 0 #0d0722}
.lb-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr) minmax(0,1fr);gap:clamp(22px,3.5vw,48px);align-items:start}
.lb-list{list-style:none;margin:0;padding:0;display:grid;gap:26px}
.lb-list li{display:grid;grid-template-columns:36px 1fr;column-gap:14px}
.lb-list svg{width:34px;height:34px;grid-row:1 / span 2}
.lb-list h3{font-family:var(--display);font-weight:700;font-size:1.02rem;color:#fff;margin:0 0 6px;line-height:1.25}
.lb-list p{margin:0;color:var(--muted);font-size:.93rem;line-height:1.5}
.lb-pic{border:6px solid #fff;background:#fff;box-shadow:var(--shadow)}
.lb-pic img{width:100%;aspect-ratio:640/560;object-fit:cover}
@media(max-width:1000px){.lb-body{grid-template-columns:1fr 1fr}.lb-pic{grid-column:1 / -1;order:-1;max-width:520px}}
@media(max-width:600px){.lb-body{grid-template-columns:1fr}}

/* "reader perspectives" band: kicker, serif title, intro, three white quote cards */
.readers-band{background:linear-gradient(180deg,#221546,#17102f);padding:clamp(48px,6vw,88px) 0 clamp(56px,7vw,100px);border-block:1px solid var(--line)}
.readers-band .wrap{padding-left:clamp(24px,5vw,72px);padding-right:clamp(24px,5vw,72px)}
.rv-kicker{margin:0 0 10px;font-family:var(--display);font-weight:700;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--cyan)}
.readers-band h2{font-family:Georgia,"Times New Roman",serif;font-weight:700;font-size:clamp(1.9rem,3.6vw,3.2rem);line-height:1.1;color:#fff;margin:0 0 16px;max-width:16ch;text-shadow:3px 3px 0 #0d0722}
.rv-intro{margin:0 0 30px;max-width:62ch;color:var(--muted);font-size:.95rem;line-height:1.6}
.rv-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.rv-card{margin:0;background:#fff;color:#1a1036;border:1px solid #0d0722;border-radius:18px;box-shadow:0 5px 0 #0d0722;padding:24px;min-height:210px;display:flex;flex-direction:column;justify-content:space-between;gap:24px}
.rv-card blockquote{margin:0;font-family:Georgia,serif;font-weight:700;font-size:.95rem;line-height:1.7}
.rv-card figcaption{display:flex;justify-content:space-between;align-items:center;font-family:Georgia,serif;font-weight:700;font-size:.9rem}
.rv-stars{color:#e0a400;letter-spacing:2px;font-size:1rem}
@media(max-width:900px){.rv-grid{grid-template-columns:1fr}}
.site-footer .f-top{grid-template-columns:1.6fr 1fr 1fr}
@media(max-width:700px){.site-footer .f-top{grid-template-columns:1fr 1fr}.site-footer .f-brand{grid-column:1 / -1}}
.site-header .hdr-actions{margin-left:auto}
