/*
Theme Name: Hudes Spotlight
Author: Hudes Communications International Inc.
Description: Custom theme for hudescommunications.com
Version: 2.0
Text Domain: hudes-spotlight
*/
:root{--navy:#14213d;--navy2:#1f3266;--coral:#ff5a3c;--gold:#ffb703;--teal:#13a89e;--cream:#fff8ee;--ink:#1d1d1f;--muted:#5b6170;--line:#e8e2d6}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:"Inter",system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--ink);background:#fff;font-size:18px;line-height:1.65}
img{max-width:100%;height:auto}
a{color:var(--coral)}
h1,h2,h3{font-family:"DM Serif Display",Georgia,serif;font-weight:400;line-height:1.15;color:var(--navy);margin:0 0 .5em}
h1{font-size:clamp(2.4rem,5.5vw,4.2rem)}
h2{font-size:clamp(1.9rem,3.6vw,2.8rem)}
h3{font-size:1.45rem}
.wrap{max-width:1180px;margin:0 auto;padding:0 24px}
.btn{display:inline-block;padding:15px 28px;border-radius:999px;font-weight:700;text-decoration:none;font-size:1rem;transition:transform .15s,box-shadow .15s}
.btn:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(0,0,0,.15)}
.btn-coral{background:var(--coral);color:#fff}
.btn-ghost{border:2px solid #fff;color:#fff}
.btn-navy{background:var(--navy);color:#fff}
.eyebrow{display:inline-block;font-size:.8rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--coral);margin-bottom:12px}

/* header */
.topbar{background:var(--navy);color:#cfd6e6;font-size:.85rem}
.topbar .wrap{display:flex;justify-content:space-between;align-items:center;padding-top:8px;padding-bottom:8px;gap:16px;flex-wrap:wrap}
.topbar a{color:#fff;text-decoration:none;margin-left:14px}
.site-header{background:#fff;position:sticky;top:0;z-index:50;box-shadow:0 1px 0 var(--line)}
.site-header .wrap{display:flex;align-items:center;justify-content:space-between;padding-top:16px;padding-bottom:16px;gap:20px}
.brand{text-decoration:none;display:flex;flex-direction:column;line-height:1.1}
.brand b{font-family:"DM Serif Display",Georgia,serif;font-weight:400;font-size:1.65rem;color:var(--navy)}
.brand span{font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;color:var(--coral);font-weight:800}
.nav ul{list-style:none;margin:0;padding:0;display:flex;gap:6px;flex-wrap:wrap}
.nav a{display:block;padding:8px 14px;border-radius:999px;color:var(--navy);text-decoration:none;font-weight:600;font-size:.95rem}
.nav a:hover,.nav .current-menu-item a,.nav .current_page_item a{background:var(--cream);color:var(--coral)}
.nav-toggle{display:none;background:none;border:2px solid var(--navy);border-radius:8px;padding:6px 12px;font-weight:700;color:var(--navy)}
@media(max-width:900px){.nav{display:none;width:100%}.nav.open{display:block}.site-header .wrap{flex-wrap:wrap}.nav ul{flex-direction:column}.nav-toggle{display:block}}

/* hero */
.hero{position:relative;overflow:hidden;background:radial-gradient(ellipse at 75% 20%,rgba(255,183,3,.35),transparent 55%),radial-gradient(ellipse at 10% 90%,rgba(19,168,158,.35),transparent 55%),linear-gradient(135deg,var(--navy) 0%,var(--navy2) 100%);color:#fff;padding:110px 0 120px}
.hero h1{color:#fff;max-width:880px}
.hero h1 em{font-style:normal;color:var(--gold)}
.hero p.lead{font-size:1.25rem;max-width:680px;color:#e3e8f4;margin:0 0 34px}
.hero .ctas{display:flex;gap:14px;flex-wrap:wrap}
.hero:after{content:"";position:absolute;right:-120px;top:-120px;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.18),transparent 65%)}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:-60px;position:relative;z-index:2}
.stat{background:#fff;border-radius:18px;padding:26px 22px;box-shadow:0 18px 40px rgba(20,33,61,.12);border-top:5px solid var(--coral)}
.stat:nth-child(2){border-color:var(--gold)}.stat:nth-child(3){border-color:var(--teal)}.stat:nth-child(4){border-color:var(--navy2)}
.stat b{display:block;font-family:"DM Serif Display",serif;font-size:2.2rem;color:var(--navy);line-height:1}
.stat span{color:var(--muted);font-size:.95rem}
@media(max-width:820px){.stats{grid-template-columns:repeat(2,1fr)}}

section{padding:90px 0}
.intro{display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:center}
.intro p{color:#3a3f4b}
.card-k{background:var(--cream);border-radius:24px;padding:38px;position:relative}
.card-k:before{content:"\201C";position:absolute;top:-10px;left:24px;font-family:"DM Serif Display",serif;font-size:7rem;color:var(--coral);line-height:1}
.card-k blockquote{margin:30px 0 16px;font-family:"DM Serif Display",serif;font-size:1.6rem;line-height:1.3;color:var(--navy)}
.card-k cite{font-style:normal;font-weight:700;font-size:.9rem;color:var(--muted)}
@media(max-width:900px){.intro{grid-template-columns:1fr}}

.services{background:var(--cream)}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:40px}
.svc{background:#fff;border-radius:20px;padding:30px;box-shadow:0 6px 20px rgba(20,33,61,.06)}
.svc .ic{width:52px;height:52px;border-radius:14px;display:grid;place-items:center;font-size:1.5rem;margin-bottom:16px;background:rgba(255,90,60,.12)}
.svc:nth-child(3n+2) .ic{background:rgba(255,183,3,.2)}.svc:nth-child(3n) .ic{background:rgba(19,168,158,.15)}
.svc p{color:var(--muted);margin:0;font-size:1rem}
@media(max-width:900px){.grid3{grid-template-columns:1fr}}

.media{text-align:center}
.marquee{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:34px}
.marquee span{padding:10px 18px;border-radius:999px;border:1.5px solid var(--line);font-weight:700;color:var(--navy);font-size:.95rem;background:#fff}
.marquee span:nth-child(4n+1){border-color:var(--coral)}.marquee span:nth-child(4n+2){border-color:var(--gold)}.marquee span:nth-child(4n+3){border-color:var(--teal)}

.reviews{background:var(--navy);color:#fff}
.reviews h2{color:#fff}
.rv{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:20px;padding:30px}
.rv p{margin:0 0 18px;color:#e3e8f4;font-size:1.02rem}
.rv cite{font-style:normal;font-weight:800;font-size:.82rem;letter-spacing:.06em;color:var(--gold)}
.reviews .more{text-align:center;margin-top:40px}

.cta{background:linear-gradient(120deg,var(--coral),#ff8a3c 60%,var(--gold));color:#fff;text-align:center;border-radius:28px;padding:70px 30px;margin:90px auto}
.cta h2{color:#fff}
.cta p{font-size:1.2rem;max-width:620px;margin:0 auto 28px}

/* inner pages */
.page-hero{background:linear-gradient(135deg,var(--navy),var(--navy2));color:#fff;padding:70px 0 60px}
.page-hero h1{color:#fff;margin:0}
.page-hero .eyebrow{color:var(--gold)}
.content{padding:60px 0 90px}
.content .entry{max-width:860px}
.content .entry p{margin:0 0 1.2em}
.content .entry img{border-radius:12px}
body.page-rave-reviews .entry p strong, body.page-rave-reviews .entry b{color:var(--navy)}

/* footer */
.site-footer{background:#0e1830;color:#aeb7cc;padding:60px 0 30px;font-size:.95rem}
.site-footer .cols{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:40px}
.site-footer h4{color:#fff;font-size:1rem;margin:0 0 14px;letter-spacing:.06em;text-transform:uppercase}
.site-footer a{color:#fff;text-decoration:none}
.site-footer ul{list-style:none;padding:0;margin:0}
.site-footer li{margin-bottom:8px}
.site-footer .legal{border-top:1px solid rgba(255,255,255,.1);margin-top:40px;padding-top:20px;font-size:.85rem}
@media(max-width:820px){.site-footer .cols{grid-template-columns:1fr}}

/* v1.1 extras */
.fade{opacity:0;transform:translateY(28px);transition:opacity .8s ease,transform .8s ease}
.fade.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.fade{opacity:1;transform:none}.ticker-track{animation:none!important}}
.hero-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:50px;align-items:center}
.hero-photo{position:relative;justify-self:center}
.hero-photo img{width:340px;height:340px;object-fit:cover;border-radius:28px;border:6px solid rgba(255,255,255,.9);box-shadow:0 30px 60px rgba(0,0,0,.35);position:relative;z-index:1}
.hero-photo:before{content:"";position:absolute;inset:-18px -18px 18px 18px;border-radius:32px;background:linear-gradient(135deg,var(--coral),var(--gold))}
.hero-photo .tag{position:absolute;z-index:2;left:-26px;bottom:28px;background:#fff;color:var(--navy);padding:12px 18px;border-radius:14px;font-weight:800;font-size:.9rem;box-shadow:0 12px 30px rgba(0,0,0,.2)}
.hero-photo .tag b{color:var(--coral)}
@media(max-width:900px){.hero-grid{grid-template-columns:1fr}.hero-photo img{width:260px;height:260px}}
.ticker{overflow:hidden;background:var(--navy);padding:22px 0;white-space:nowrap;position:relative}
.ticker:before,.ticker:after{content:"";position:absolute;top:0;bottom:0;width:120px;z-index:2}
.ticker:before{left:0;background:linear-gradient(90deg,var(--navy),transparent)}.ticker:after{right:0;background:linear-gradient(270deg,var(--navy),transparent)}
.ticker-track{display:inline-flex;gap:56px;animation:tick 45s linear infinite}
.ticker-track span{font-family:"DM Serif Display",serif;font-size:1.6rem;color:#fff;opacity:.9}
.ticker-track span:nth-child(3n+1){color:var(--gold)}
.ticker-label{text-align:center;font-size:.8rem;font-weight:800;letter-spacing:.14em;color:var(--coral);text-transform:uppercase;padding-top:50px}
@keyframes tick{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.wins .grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:40px}
.win{border-radius:20px;padding:28px;color:#fff;position:relative;overflow:hidden}
.win:nth-child(1){background:linear-gradient(140deg,var(--coral),#ff8a3c)}
.win:nth-child(2){background:linear-gradient(140deg,var(--teal),#0d7f78)}
.win:nth-child(3){background:linear-gradient(140deg,var(--navy2),var(--navy))}
.win:nth-child(4){background:linear-gradient(140deg,#f3a300,var(--gold));color:var(--navy)}
.win h3{color:inherit;font-size:1.3rem}
.win .k{font-size:.75rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;opacity:.85}
.win p{font-size:.98rem;margin:0}
@media(max-width:1000px){.wins .grid4{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.wins .grid4{grid-template-columns:1fr}}
.carousel{position:relative;max-width:900px;margin:40px auto 0;min-height:260px}
.slide{position:absolute;inset:0;opacity:0;transition:opacity .7s;text-align:center;pointer-events:none}
.slide.on{opacity:1;position:relative;pointer-events:auto}
.slide p{font-family:"DM Serif Display",serif;font-size:clamp(1.3rem,2.4vw,1.9rem);line-height:1.35;color:#fff;margin:0 0 22px}
.slide cite{font-style:normal;font-weight:800;font-size:.85rem;letter-spacing:.08em;color:var(--gold)}
.dots{display:flex;justify-content:center;gap:10px;margin-top:30px}
.dots button{width:12px;height:12px;border-radius:50%;border:0;background:rgba(255,255,255,.3);cursor:pointer;padding:0}
.dots button.on{background:var(--coral);width:30px;border-radius:999px}
.arrows{display:flex;justify-content:center;gap:12px;margin-top:18px}
.arrows button{background:none;border:2px solid rgba(255,255,255,.4);color:#fff;border-radius:50%;width:44px;height:44px;font-size:1.2rem;cursor:pointer}
.sticky-cta{position:fixed;right:22px;bottom:22px;z-index:90;background:var(--coral);color:#fff;text-decoration:none;font-weight:800;padding:15px 24px;border-radius:999px;box-shadow:0 14px 30px rgba(255,90,60,.45);transform:translateY(120px);transition:transform .35s}
.sticky-cta.show{transform:none}
.sticky-cta:hover{background:#e8472b}
.about-photo{float:right;width:300px;margin:0 0 24px 36px;border-radius:24px;box-shadow:0 20px 40px rgba(20,33,61,.18);border:5px solid #fff;outline:5px solid var(--gold)}
@media(max-width:700px){.about-photo{float:none;display:block;margin:0 auto 24px;width:240px}}
.client-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px;max-width:none}
.client-grid div{background:var(--cream);border-left:4px solid var(--coral);padding:14px 16px;border-radius:10px;font-weight:600;color:var(--navy);font-size:.98rem}
.client-grid div:nth-child(3n+2){border-color:var(--gold)}.client-grid div:nth-child(3n){border-color:var(--teal)}
body.page-toronto-star-story .entry{max-width:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:26px}
body.page-toronto-star-story .entry figure{margin:0;background:#fff;border-radius:18px;padding:14px;box-shadow:0 12px 30px rgba(20,33,61,.12);transition:transform .2s}
body.page-toronto-star-story .entry figure:hover{transform:translateY(-6px) rotate(-.5deg)}
body.page-toronto-star-story .entry img{width:100%;height:420px;object-fit:cover;object-position:top;cursor:zoom-in}
.lb{position:fixed;inset:0;background:rgba(10,16,32,.92);z-index:200;display:none;align-items:center;justify-content:center;padding:30px;cursor:zoom-out}
.lb.open{display:flex}
.lb img{max-width:100%;max-height:100%;border-radius:8px;box-shadow:0 20px 60px rgba(0,0,0,.5)}
.lb .x{position:absolute;top:18px;right:26px;color:#fff;font-size:2.4rem;background:none;border:0;cursor:pointer}

.logo-img{height:150px;width:auto;display:block;transition:height .3s ease}
.site-header .wrap{transition:padding .3s ease}
.site-header.small .logo-img{height:70px}
.site-header.small .wrap{padding-top:6px;padding-bottom:6px}
.site-header .wrap{padding-top:10px;padding-bottom:10px}
@media(max-width:700px){.logo-img{height:72px}}

@media(min-width:901px){.nav ul{flex-wrap:nowrap;gap:2px}.nav a{padding:8px 11px;font-size:1.08rem;white-space:nowrap}}

/* ===== v2 ===== */
.narrow{max-width:900px}
.ribbon{display:block;text-align:center;background:linear-gradient(90deg,var(--coral),#ff8a3c,var(--gold));color:#fff;font-weight:700;font-size:.92rem;padding:9px 16px;text-decoration:none}
.ribbon .new{background:#fff;color:var(--coral);border-radius:999px;padding:2px 9px;font-size:.72rem;font-weight:800;letter-spacing:.1em;margin-right:8px}
.ribbon .arr{display:inline-block;transition:transform .2s}.ribbon:hover .arr{transform:translateX(4px)}
mark.swipe{background:linear-gradient(transparent 62%,rgba(255,90,60,.55) 62%,rgba(255,90,60,.55) 92%,transparent 92%) no-repeat;background-size:0 100%;color:inherit;transition:background-size 1s ease .3s;padding:0 2px}
.fade.in mark.swipe, .in mark.swipe, h2 mark.swipe.on{background-size:100% 100%}
.shine{position:relative;overflow:hidden}
.shine:after{content:"";position:absolute;top:0;left:-80%;width:50%;height:100%;background:linear-gradient(110deg,transparent,rgba(255,255,255,.55),transparent);transform:skewX(-20deg);animation:shine 6s ease-in-out infinite}
@keyframes shine{0%,80%{left:-80%}100%{left:140%}}
.btn-sm{padding:10px 18px;font-size:.9rem}
.hero .spot{position:absolute;inset:0;pointer-events:none;background:radial-gradient(420px circle at var(--mx,70%) var(--my,30%),rgba(255,220,150,.22),transparent 60%);z-index:0}
.hero .wrap{position:relative;z-index:1}
.rotator{display:inline-block;color:var(--gold);min-width:2ch}
.rotator em{font-style:normal;color:var(--gold)}
.rotator .w{display:inline-block;animation:wordin .5s ease}
@keyframes wordin{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
.onair{display:inline-flex;align-items:center;gap:6px;background:#d62828;color:#fff;font-size:.68rem;font-weight:800;letter-spacing:.12em;padding:3px 8px;border-radius:5px;margin-right:6px;vertical-align:middle}
.onair:before{content:"";width:7px;height:7px;border-radius:50%;background:#fff;animation:blink 1.4s infinite}
@keyframes blink{50%{opacity:.2}}
.page-hero{position:relative;overflow:hidden;background:radial-gradient(ellipse at 85% 0%,rgba(255,183,3,.25),transparent 55%),linear-gradient(135deg,var(--navy),var(--navy2))}
.page-hero .wrap{position:relative;z-index:1}
.page-hero .tagline{color:#dfe5f2;font-size:1.15rem;max-width:720px;margin:14px 0 0}
.beam{position:absolute;top:-50%;left:-30%;width:40%;height:200%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.10),transparent);transform:rotate(20deg);animation:beam 9s ease-in-out infinite}
@keyframes beam{0%{left:-40%}60%,100%{left:120%}}
.who-card{display:block;text-decoration:none;color:inherit;background:#fff;border-radius:22px;padding:30px;border:2px solid var(--line);transition:transform .2s,border-color .2s,box-shadow .2s}
.who-card:hover{transform:translateY(-6px);border-color:var(--coral);box-shadow:0 18px 40px rgba(20,33,61,.12)}
.who-card .ic{font-size:2rem;display:block;margin-bottom:10px}
.who-card p{color:var(--muted);font-size:1rem}
.who-card .go{font-weight:800;color:var(--coral);font-size:.92rem}
a.win{text-decoration:none;display:block;transition:transform .2s}a.win:hover{transform:translateY(-6px)}
.win .more-l{display:inline-block;margin-top:12px;font-weight:800;font-size:.85rem}
.logo-wall{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:36px 48px;margin-top:24px}
.logo-wall img{height:56px;width:auto;max-width:170px;object-fit:contain;filter:grayscale(1);opacity:.7;transition:filter .3s,opacity .3s}
.logo-wall img:hover{filter:none;opacity:1}
.how{background:linear-gradient(180deg,#fff,var(--cream))}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:36px;counter-reset:s}
.step{position:relative;background:#fff;border-radius:22px;padding:34px 28px 28px;box-shadow:0 10px 30px rgba(20,33,61,.08)}
.step b{position:absolute;top:-22px;left:26px;width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:var(--coral);color:#fff;font-family:"DM Serif Display",serif;font-size:1.4rem;box-shadow:0 8px 18px rgba(255,90,60,.4)}
.step:nth-child(2) b{background:var(--gold);color:var(--navy)}.step:nth-child(3) b{background:var(--teal)}
.step p{color:var(--muted);margin:0}
@media(max-width:820px){.steps{grid-template-columns:1fr;gap:34px}}
.mapsec{background:var(--navy)}
.cmap{width:100%;height:auto;display:block;margin-top:20px}
.cmap .pulse{transform-box:fill-box;transform-origin:center;animation:pulse 2.6s ease-in-out infinite}
@keyframes pulse{0%,100%{transform:scale(.7);opacity:.6}50%{transform:scale(1.25);opacity:1}}
.cmap .pin{opacity:0;animation:pinin .6s ease forwards}
@keyframes pinin{to{opacity:1}}
.map-note{text-align:center;color:#aeb7cc;font-size:.95rem;margin-top:8px}
.faq details{border-bottom:1px solid var(--line);padding:18px 4px}
.faq summary{cursor:pointer;font-weight:700;color:var(--navy);font-size:1.12rem;list-style:none;display:flex;justify-content:space-between;gap:20px}
.faq summary:after{content:"+";color:var(--coral);font-size:1.6rem;line-height:1;transition:transform .2s}
.faq details[open] summary:after{transform:rotate(45deg)}
.faq details p{color:var(--muted);margin:12px 0 0}
.story-box{display:grid;grid-template-columns:.9fr 1.1fr;gap:40px;align-items:center;background:var(--cream);border-radius:28px;padding:44px;border:2px dashed rgba(255,90,60,.35)}
.story-box form textarea,.story-box form input{width:100%;font:inherit;font-size:1rem;padding:14px 16px;border:2px solid var(--line);border-radius:14px;background:#fff}
.story-box form textarea:focus,.story-box form input:focus{outline:none;border-color:var(--coral)}
.story-box .row{display:flex;gap:12px;margin-top:12px}.story-box .row input{flex:1}
.story-box button{border:0;cursor:pointer}
.hp{position:absolute!important;left:-9999px!important}
@media(max-width:820px){.story-box{grid-template-columns:1fr;padding:28px}.story-box .row{flex-direction:column}}
.signature{font-family:"Great Vibes",cursive;font-size:3rem;color:var(--navy);margin:10px 0 18px!important;line-height:1}
.about-stats{margin-top:0}
.timeline{position:relative;margin-top:30px;padding-left:34px;border-left:3px solid var(--line)}
.timeline .t{position:relative;margin-bottom:28px}
.timeline .t:before{content:"";position:absolute;left:-44px;top:6px;width:16px;height:16px;border-radius:50%;background:var(--coral);box-shadow:0 0 0 5px rgba(255,90,60,.18)}
.timeline .t:nth-child(2):before{background:var(--gold)}.timeline .t:nth-child(3):before{background:var(--teal)}.timeline .t:nth-child(4):before{background:var(--navy2)}
.timeline b{font-family:"DM Serif Display",serif;font-size:1.7rem;color:var(--navy)}
.timeline p{margin:2px 0 0;color:var(--muted)}
.pull{margin:30px auto;max-width:900px;text-align:center;padding:40px 30px;border-top:3px solid var(--coral);border-bottom:3px solid var(--coral)}
.pull p{font-family:"DM Serif Display",serif;font-size:clamp(1.5rem,3vw,2.2rem);line-height:1.3;color:var(--navy);margin:0 0 14px}
.pull cite{font-style:normal;font-weight:800;font-size:.85rem;letter-spacing:.08em;color:var(--coral)}
.filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:26px}
.filters button{border:2px solid var(--line);background:#fff;color:var(--navy);font:inherit;font-weight:700;font-size:.95rem;padding:9px 18px;border-radius:999px;cursor:pointer}
.filters button.on,.filters button:hover{background:var(--navy);border-color:var(--navy);color:#fff}
.client-grid div{display:flex;flex-direction:column;gap:6px}
.client-grid div.hide{display:none}
.client-grid .pub{background:#fff;box-shadow:0 8px 20px rgba(20,33,61,.08)}
.badge{align-self:flex-start;background:var(--gold);color:var(--navy);font-size:.66rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;padding:3px 8px;border-radius:999px}
.nick{background:var(--gold);overflow:hidden;white-space:nowrap;padding:16px 0}
.nick-track{display:inline-flex;gap:60px;animation:tick 40s linear infinite}
.nick-track span{font-family:"DM Serif Display",serif;font-size:1.5rem;color:var(--navy)}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:30px}
@media(max-width:820px){.grid2{grid-template-columns:1fr}}
.mq{background:var(--navy);color:#fff;border-radius:20px;padding:30px;position:relative}
.mq:before{content:"MEDIA";position:absolute;top:18px;right:20px;font-size:.66rem;font-weight:800;letter-spacing:.14em;color:var(--gold)}
.mq p{font-family:"DM Serif Display",serif;font-size:1.3rem;line-height:1.35;margin:0 0 14px}
.mq cite{font-style:normal;font-weight:800;font-size:.78rem;letter-spacing:.06em;color:var(--gold)}
.rev-grid{columns:3 320px;column-gap:22px;margin-top:30px}
.rcard{break-inside:avoid;background:#fff;border:1px solid var(--line);border-radius:18px;padding:24px;margin-bottom:22px;box-shadow:0 6px 18px rgba(20,33,61,.05)}
.rcard .stars{color:var(--gold);letter-spacing:3px;margin-bottom:10px}
.rcard p{font-size:.98rem;color:#3a3f4b;margin:0 0 16px}
.rcard .who{display:flex;gap:12px;align-items:center}
.rcard .ini{flex:none;width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:var(--coral);color:#fff;font-weight:800;font-size:.9rem}
.rcard:nth-child(3n+2) .ini{background:var(--teal)}.rcard:nth-child(3n) .ini{background:var(--navy2)}
.rcard cite{font-style:normal;font-weight:700;font-size:.74rem;letter-spacing:.04em;color:var(--navy)}
.contact-grid{display:grid;grid-template-columns:380px 1fr;gap:50px;align-items:start;margin-bottom:60px}
@media(max-width:900px){.contact-grid{grid-template-columns:1fr}}
.pass-wrap{position:relative;padding-top:70px;text-align:center}
.lanyard{position:absolute;top:0;left:50%;width:34px;height:84px;transform:translateX(-50%);background:repeating-linear-gradient(45deg,var(--coral) 0 8px,#e8472b 8px 16px);border-radius:4px}
.pass{position:relative;background:#fff;border-radius:22px;box-shadow:0 30px 60px rgba(20,33,61,.22);overflow:hidden;padding-bottom:24px;transform:rotate(-2deg);transition:transform .4s}
.pass:hover{transform:rotate(0)}
.pass:before{content:"";position:absolute;top:12px;left:50%;width:56px;height:10px;border-radius:6px;background:#e6e1d6;transform:translateX(-50%)}
.pass-top{background:var(--navy);color:var(--gold);font-weight:800;letter-spacing:.4em;padding:34px 0 16px;font-size:1.2rem}
.pass img{width:140px;height:140px;border-radius:50%;object-fit:cover;margin:-6px auto 0;display:block;border:5px solid #fff;box-shadow:0 8px 20px rgba(0,0,0,.2);position:relative;top:14px}
.pass h3{margin:26px 0 2px}
.pass .role{color:var(--coral);font-weight:800;margin:0}
.pass .co{color:var(--muted);font-size:.9rem;margin:2px 0 14px}
.pass ul{list-style:none;padding:0 20px;margin:0 0 18px;font-size:.92rem}
.pass li{margin:6px 0}.pass a{color:var(--navy)}
.pass .btn{color:#fff}
.barcode{height:34px;margin:20px 40px 0;background:repeating-linear-gradient(90deg,var(--navy) 0 2px,transparent 2px 5px,var(--navy) 5px 6px,transparent 6px 9px)}
.desk{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:40px;padding:30px;background:radial-gradient(circle at 30% 20%,#f3ead9,#e6d8bd);border-radius:24px;box-shadow:inset 0 0 60px rgba(120,90,40,.18)}
.clip{position:relative;display:block;background:#fff;padding:12px;border-radius:4px;box-shadow:0 18px 30px rgba(60,40,10,.25);transform:rotate(-2.5deg);transition:transform .3s,box-shadow .3s;text-decoration:none;cursor:zoom-in}
.clip:nth-child(2n){transform:rotate(2deg)}.clip:nth-child(3n){transform:rotate(-1deg)}
.clip:hover{transform:rotate(0) scale(1.03);box-shadow:0 26px 44px rgba(60,40,10,.3);z-index:2}
.clip img{width:100%;height:440px;object-fit:cover;object-position:top;display:block}
.clip .lab{position:absolute;top:-14px;left:16px;background:var(--navy);color:#fff;padding:6px 12px;border-radius:8px;font-size:.82rem;box-shadow:0 6px 14px rgba(0,0,0,.2)}
.clip .lab b{color:var(--gold)}.clip .lab i{font-style:normal;margin-left:8px}
.tvbox{margin-top:50px;background:var(--navy);color:#fff;border-radius:24px;padding:40px;text-align:center}
.tvbox h2{color:#fff;margin-top:12px}.tvbox p{color:#cfd6e6}
.story-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:50px;align-items:start}
.story-grid h2{font-size:1.7rem;margin-top:1.2em}
.story-grid aside .clip{transform:rotate(1.5deg);margin-bottom:30px}
.story-grid aside .clip img{height:auto;max-height:560px}
.facts{background:var(--cream);border-radius:18px;padding:22px}
.facts div{display:flex;flex-direction:column;padding:10px 0;border-bottom:1px solid var(--line)}
.facts div:last-child{border:0}
.facts span{font-size:.75rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--coral)}
.facts b{color:var(--navy)}
@media(max-width:900px){.story-grid{grid-template-columns:1fr}}
.mobile-book{display:none}
@media(max-width:700px){
 .mobile-book{display:block;position:fixed;left:0;right:0;bottom:0;z-index:95;background:var(--coral);color:#fff;text-align:center;font-weight:800;padding:15px;text-decoration:none;box-shadow:0 -6px 20px rgba(0,0,0,.15)}
 .sticky-cta{display:none}
 body{padding-bottom:56px}
 .ribbon{font-size:.8rem}
 .topbar{display:none}
}

/* ===== v3 ===== */
@media(min-width:901px){.nav ul{gap:0}.nav a{padding:8px 8px;font-size:.98rem}}
@media(min-width:901px) and (max-width:1320px){.nav a{font-size:.86rem;padding:8px 6px}.logo-img{height:110px}}
@media(min-width:901px) and (max-width:1100px){.logo-img{height:80px}.nav a{font-size:.8rem;padding:6px 5px}}
/* photo win cards */
.pwins{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:40px}
.pwins.three{grid-template-columns:repeat(3,1fr);margin-top:0}
@media(max-width:1000px){.pwins,.pwins.three{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.pwins,.pwins.three{grid-template-columns:1fr}}
.pwin{position:relative;display:block;height:420px;border-radius:24px;overflow:hidden;text-decoration:none;color:#fff;box-shadow:0 20px 40px rgba(20,33,61,.18)}
.pwin img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:top;transition:transform .6s}
.pwin:hover img{transform:scale(1.07)}
.pwin .pat{position:absolute;inset:0;background:radial-gradient(circle at 30% 20%,rgba(255,255,255,.25),transparent 40%),repeating-linear-gradient(45deg,rgba(255,255,255,.06) 0 12px,transparent 12px 24px)}
.pwin.coral{background:var(--coral)}.pwin.teal{background:var(--teal)}.pwin.gold{background:linear-gradient(140deg,#f3a300,var(--gold))}.pwin.tomato{background:linear-gradient(140deg,#c81d25,#ff5a3c)}
.pwin .ov{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;padding:26px;background:linear-gradient(180deg,transparent 25%,rgba(14,24,48,.92) 85%)}
.pwin .k{font-size:.72rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}
.pwin b{font-family:"DM Serif Display",serif;font-weight:400;font-size:1.6rem;line-height:1.15;margin:6px 0 8px}
.pwin .d{font-size:.95rem;color:#dfe5f2}
.pwin .go{margin-top:12px;font-weight:800;font-size:.85rem;color:var(--gold);transform:translateY(8px);opacity:.85;transition:.3s}
.pwin:hover .go{transform:none;opacity:1}
/* the Hudes Herald */
.herald-wrap{background:#efe9dc;padding:50px 0 70px}
.herald{background:#fbf8f1;color:#1a1a1a;padding:30px 36px;box-shadow:0 30px 60px rgba(60,40,10,.18);font-family:Georgia,"Times New Roman",serif}
.mast{display:grid;grid-template-columns:120px 1fr 120px;align-items:center;border-bottom:4px double #1a1a1a;padding-bottom:12px}
.mast .title{text-align:center;font-family:"DM Serif Display",Georgia,serif;font-size:clamp(2.4rem,6vw,4.6rem);line-height:1;color:#111}
.mast .title span{font-size:.45em;vertical-align:middle;margin-right:6px}
.ear{font-family:Inter,sans-serif;font-size:.62rem;font-weight:800;letter-spacing:.12em;border:1.5px solid #1a1a1a;padding:8px;text-align:center;line-height:1.5}
.dateline{display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;border-bottom:1.5px solid #1a1a1a;padding:8px 2px;font-family:Inter,sans-serif;font-size:.78rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.wire{display:flex;align-items:center;gap:14px;overflow:hidden;background:#111;color:#fff;margin:16px 0;padding:10px 14px;font-family:Inter,sans-serif;white-space:nowrap}
.wire b{background:#d62828;padding:3px 8px;font-size:.72rem;letter-spacing:.12em;flex:none;z-index:1}
.wire-track{display:inline-flex;gap:40px;animation:tick 35s linear infinite;font-size:.9rem}
.wire-track span:before{content:"\25CF";color:var(--gold);margin-right:10px;font-size:.6rem;vertical-align:middle}
.front{display:grid;grid-template-columns:2fr 1fr;gap:34px;margin-top:10px}
.front .lead{border-right:1px solid #cfc6b4;padding-right:34px}
.kicker{display:inline-block;font-family:Inter,sans-serif;font-size:.7rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#d62828;margin-bottom:6px}
.front h2{font-family:"DM Serif Display",Georgia,serif;color:#111;font-size:clamp(1.9rem,3.6vw,2.9rem);margin:0 0 8px}
.front h3{font-family:"DM Serif Display",Georgia,serif;color:#111;font-size:1.45rem;margin:0 0 10px}
.deck{font-style:italic;font-size:1.15rem;color:#444;margin:0 0 18px}
.lead-body{display:grid;grid-template-columns:1fr 1fr;gap:26px;align-items:start}
.lead-body .clip{transform:rotate(-1.5deg)}
.lead-body .clip img{height:auto;max-height:520px}
.cols2 p{font-size:1.02rem;line-height:1.7;text-align:justify}
.drop{float:left;font-family:"DM Serif Display",serif;font-size:3.6rem;line-height:.8;margin:6px 8px 0 0;color:#d62828}
.more{font-family:Inter,sans-serif;font-weight:800;color:#d62828;text-decoration:none;font-size:.9rem}
.side article{padding-bottom:22px;margin-bottom:22px;border-bottom:1px solid #cfc6b4}
.side .clip.sm img{height:260px}
.side .box{background:#f1e9d6;padding:18px;border:0}
.more-clips{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:24px;margin-top:20px}
.onair-strip{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:20px;padding:16px;border-top:4px double #1a1a1a;font-family:Inter,sans-serif;font-size:.95rem}
.onair-strip .btn{margin-left:auto}
@media(max-width:900px){.front,.lead-body{grid-template-columns:1fr}.front .lead{border:0;padding:0}.mast{grid-template-columns:1fr}.ear{display:none}.herald{padding:20px}}
/* Spotlight Stage */
.stage,.praise-hero{position:relative;overflow:hidden;background:radial-gradient(ellipse at 50% 120%,rgba(255,183,3,.25),transparent 60%),linear-gradient(180deg,#0b1328,#14213d);color:#fff;padding:80px 0 90px;text-align:center}
.stage h1{color:#fff}
.beams i{position:absolute;top:-20%;width:240px;height:140%;background:linear-gradient(180deg,rgba(255,240,200,.28),transparent 80%);filter:blur(6px);transform-origin:top center;animation:sway 7s ease-in-out infinite alternate}
.beams i:nth-child(1){left:15%;transform:rotate(18deg)}.beams i:nth-child(2){left:45%;animation-delay:-2s;transform:rotate(-6deg)}.beams i:nth-child(3){left:75%;animation-delay:-4s;transform:rotate(-20deg)}
@keyframes sway{from{rotate:-8deg}to{rotate:8deg}}
.stage .wrap,.praise-hero .wrap{position:relative;z-index:1}
.stage-stats{display:flex;justify-content:center;gap:60px;margin:20px 0 40px;flex-wrap:wrap}
.stage-stats b{display:block;font-family:"DM Serif Display",serif;font-size:3.2rem;color:var(--gold);line-height:1}
.stage-stats span{font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;color:#cfd6e6;font-weight:700}
.stage-h{color:#fff;font-size:1.5rem}
.stars-row{display:grid;grid-template-columns:repeat(5,1fr);gap:18px;margin-top:24px}
@media(max-width:900px){.stars-row{grid-template-columns:repeat(2,1fr)}}
.star{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.18);border-radius:20px;padding:28px 16px;display:flex;flex-direction:column;align-items:center;gap:12px;box-shadow:0 0 0 rgba(255,183,3,0);transition:box-shadow .3s,transform .3s}
.star:hover{transform:translateY(-6px);box-shadow:0 0 40px rgba(255,183,3,.35)}
.star b{font-family:"DM Serif Display",serif;font-weight:400;font-size:1.35rem;color:#fff}
.star img{max-height:60px;max-width:150px;object-fit:contain;background:#fff;padding:8px;border-radius:10px}
.ind-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:30px;align-items:start}
@media(max-width:900px){.ind-grid{grid-template-columns:1fr}}
.ind{border-radius:22px;color:#fff;overflow:hidden;box-shadow:0 14px 30px rgba(20,33,61,.14)}
.ind.c1{background:linear-gradient(140deg,var(--coral),#ff8a3c)}.ind.c2{background:linear-gradient(140deg,var(--teal),#0d7f78)}.ind.c3{background:linear-gradient(140deg,var(--navy2),var(--navy))}.ind.c4{background:linear-gradient(140deg,#c81d25,#ff5a3c)}.ind.c5{background:linear-gradient(140deg,#6a4c93,#8e6cc4)}.ind.c0{background:linear-gradient(140deg,#f3a300,var(--gold));color:var(--navy)}
.ind summary{list-style:none;cursor:pointer;padding:26px;display:grid;grid-template-columns:auto 1fr;gap:4px 14px;align-items:center}
.ind summary .ic{grid-row:span 2;font-size:2.2rem}
.ind .nm{font-family:"DM Serif Display",serif;font-size:1.45rem}
.ind .ct{font-size:.85rem;font-weight:700;opacity:.85}
.ind ul{list-style:none;margin:0;padding:0 26px 22px;display:flex;flex-wrap:wrap;gap:8px}
.ind li{background:rgba(255,255,255,.18);border-radius:999px;padding:6px 12px;font-size:.88rem;font-weight:600}
.ind[open] summary{border-bottom:1px solid rgba(255,255,255,.2)}
/* Hall of Praise */
.cine{position:relative;min-height:260px;max-width:1000px;margin:10px auto 0}
.cq{position:absolute;inset:0;opacity:0;transition:opacity 1s;display:flex;flex-direction:column;justify-content:center}
.cq.on{opacity:1}
.cq p{font-family:"DM Serif Display",serif;font-size:clamp(1.8rem,4.2vw,3.2rem);line-height:1.2;color:#fff;margin:0 0 18px}
.cq cite{font-style:normal;font-weight:800;letter-spacing:.12em;color:var(--gold);font-size:.9rem}
.tabs{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-bottom:30px}
.tabs button{border:2px solid var(--line);background:#fff;color:var(--navy);font:inherit;font-weight:700;font-size:.95rem;padding:9px 18px;border-radius:999px;cursor:pointer}
.tabs button.on,.tabs button:hover{background:var(--coral);border-color:var(--coral);color:#fff}
.pr{background:#fff;border:1px solid var(--line);border-radius:18px;margin-bottom:14px;box-shadow:0 6px 18px rgba(20,33,61,.05);transition:box-shadow .2s}
.pr:hover{box-shadow:0 12px 28px rgba(20,33,61,.1)}
.pr.hide{display:none}
.pr summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:auto 1fr auto;gap:16px;align-items:center;padding:20px 22px}
.pr .ini{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:var(--coral);color:#fff;font-weight:800}
.pr:nth-child(3n+2) .ini{background:var(--teal)}.pr:nth-child(3n) .ini{background:var(--navy2)}
.pr .ln b{display:block;font-family:"DM Serif Display",serif;font-weight:400;font-size:1.3rem;line-height:1.3;color:var(--navy)}
.pr .ln cite{font-style:normal;font-size:.74rem;font-weight:700;letter-spacing:.05em;color:var(--muted)}
.pr .pl{font-size:1.8rem;color:var(--coral);transition:transform .2s}
.pr[open] .pl{transform:rotate(45deg)}
.pr p{margin:0;padding:0 22px 22px 84px;color:#3a3f4b}
@media(max-width:600px){.pr p{padding-left:22px}}

/* ===== v4 ===== */
.btn-gold{background:var(--gold);color:var(--navy)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
#hprog{position:fixed;top:0;left:0;height:3px;width:0;background:linear-gradient(90deg,var(--coral),var(--gold));z-index:9999;transition:width .1s}
body{animation:pagein .5s ease}
@keyframes pagein{from{opacity:0}to{opacity:1}}
body.leaving{opacity:0;transition:opacity .25s}
/* intro curtain */
.intro-curtain{position:absolute;inset:0;z-index:5;pointer-events:none;background:#05080f;opacity:0}
.introfx .intro-curtain{animation:curtain 1.1s ease forwards}
@keyframes curtain{0%{opacity:1;background:radial-gradient(circle at 30% 45%,transparent 0,#05080f 0)}40%{opacity:1;background:radial-gradient(circle at 30% 45%,transparent 120px,#05080f 260px)}100%{opacity:0;background:radial-gradient(circle at 30% 45%,transparent 900px,#05080f 1200px)}}
/* explore tiles */
.explore{padding-top:70px}
.tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:34px}
@media(max-width:900px){.tiles{grid-template-columns:1fr 1fr}}@media(max-width:560px){.tiles{grid-template-columns:1fr}}
.tile{position:relative;display:flex;flex-direction:column;gap:6px;min-height:200px;padding:30px;border-radius:24px;color:#fff;text-decoration:none;overflow:hidden;box-shadow:0 18px 36px rgba(20,33,61,.16);transform-style:preserve-3d;transition:transform .25s,box-shadow .25s}
.tile:before{content:"";position:absolute;width:260px;height:260px;border-radius:50%;right:-80px;top:-80px;background:rgba(255,255,255,.14);transition:transform .5s}
.tile:hover:before{transform:scale(1.4)}
.tile .ti{font-size:2.4rem}
.tile b{font-family:"DM Serif Display",serif;font-weight:400;font-size:1.7rem;line-height:1.1}
.tile span{opacity:.92}
.tile i{position:absolute;right:26px;bottom:22px;font-style:normal;font-size:1.6rem;transition:transform .25s}
.tile:hover i{transform:translateX(6px)}
.t1{background:linear-gradient(140deg,#d62828,var(--coral))}.t2{background:linear-gradient(140deg,#f3a300,var(--gold));color:var(--navy)}.t3{background:linear-gradient(140deg,var(--teal),#0d7f78)}.t4{background:linear-gradient(140deg,var(--navy2),var(--navy))}.t5{background:linear-gradient(140deg,#6a4c93,#8e6cc4)}.t6{background:linear-gradient(140deg,#ff8a3c,#ff5a3c)}
/* finale band */
.finale{background:linear-gradient(135deg,var(--navy),var(--navy2));color:#fff;margin-top:20px}
.finale h2{color:#fff}.finale p{color:#cfd6e6}
.finale-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}
.finale form{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.15);border-radius:24px;padding:28px}
.finale label{font-family:"DM Serif Display",serif;font-size:1.6rem;display:block;margin-bottom:10px}
.finale textarea,.finale input{width:100%;font:inherit;font-size:1rem;padding:14px 16px;border:2px solid transparent;border-radius:14px;background:#fff;color:var(--ink)}
.finale textarea:focus,.finale input:focus{outline:none;border-color:var(--gold)}
.finale .row{display:flex;gap:12px;margin-top:12px}.finale .row input{flex:1}.finale button{border:0;cursor:pointer}
@media(max-width:820px){.finale-grid{grid-template-columns:1fr}.finale .row{flex-direction:column}}
/* tilt */
.tilt{will-change:transform}
/* MMP */
.mmp-hero{position:relative;overflow:hidden;background:radial-gradient(ellipse at 75% 30%,rgba(255,183,3,.22),transparent 55%),linear-gradient(160deg,#060b18,#14213d 70%);color:#fff;padding:0 0 90px}
.mmp-hero h1{color:#fff}.mmp-hero .lead{color:#cfd6e6;font-size:1.15rem}
.breaking{display:flex;align-items:center;gap:14px;background:#d62828;color:#fff;padding:12px 24px;font-weight:700;transform:translateX(-100%);animation:slidein .7s ease .2s forwards}
@keyframes slidein{to{transform:none}}
.breaking b{background:#fff;color:#d62828;padding:3px 10px;border-radius:4px;font-size:.78rem;letter-spacing:.14em}
.typed:after{content:"|";animation:blink 1s infinite;margin-left:2px}
.mmp-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;padding-top:60px}
.mmp-stats{display:flex;gap:34px;margin-top:26px;flex-wrap:wrap}
.mmp-stats b{display:block;font-family:"DM Serif Display",serif;font-size:3rem;color:var(--gold);line-height:1}
.mmp-stats span{font-size:.8rem;color:#cfd6e6;font-weight:700;max-width:140px;display:block}
.fan{position:relative;height:460px;perspective:1200px}
.fan .card{position:absolute;top:20px;left:50%;width:250px;margin-left:-125px;background:#fff;padding:10px;border-radius:6px;box-shadow:0 30px 60px rgba(0,0,0,.5);transition:transform .5s cubic-bezier(.2,.8,.2,1),z-index 0s;transform-origin:bottom center;cursor:zoom-in}
.fan .card img{width:100%;height:380px;object-fit:cover;object-position:top;display:block}
.fan .c1{transform:rotate(-16deg) translateX(-90px)}.fan .c2{transform:rotate(0deg);z-index:2}.fan .c3{transform:rotate(16deg) translateX(90px)}
.fan .card:hover{transform:translateY(-40px) rotate(0) scale(1.08) rotateY(8deg);z-index:5}
@media(max-width:900px){.mmp-grid{grid-template-columns:1fr}.fan{height:420px}}
.flash{position:relative}
.flash:after{content:"";position:absolute;inset:0;background:#fff;opacity:0;pointer-events:none;border-radius:inherit}
.flash.flashed:after{animation:camflash .7s ease}
@keyframes camflash{0%{opacity:0}15%{opacity:.9}100%{opacity:0}}
.latest{padding:50px 0 0}
.latest-card{display:grid;grid-template-columns:auto 1fr auto;gap:24px;align-items:center;background:var(--cream);border-radius:24px;padding:28px 32px;border-left:6px solid var(--coral)}
.latest-card h2{font-size:1.6rem;margin:0 0 4px}.latest-card p{margin:0;color:var(--muted)}
.pill{background:var(--coral);color:#fff;font-weight:800;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;padding:6px 12px;border-radius:999px;white-space:nowrap}
@media(max-width:820px){.latest-card{grid-template-columns:1fr}}
.plist{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:20px}
@media(max-width:900px){.plist{grid-template-columns:1fr 1fr}}@media(max-width:560px){.plist{grid-template-columns:1fr}}
.pl{display:flex;flex-direction:column;gap:6px;text-decoration:none;color:var(--ink);background:#fff;border-radius:20px;overflow:hidden;box-shadow:0 12px 28px rgba(20,33,61,.1);padding-bottom:20px;transition:transform .25s}
.pl:hover{transform:translateY(-6px)}
.pl.hide{display:none}
.pl img{width:100%;height:220px;object-fit:cover;object-position:top}
.pl .big{display:grid;place-items:center;height:220px;font-family:"DM Serif Display",serif;font-size:3.2rem;color:#fff}
.pl.w .big{background:linear-gradient(140deg,#111,#333)}.pl.o2 .big{background:linear-gradient(140deg,var(--teal),#0d7f78)}.pl.a .big{background:linear-gradient(140deg,#c81d25,#ff5a3c)}.pl.tv .big{background:linear-gradient(140deg,var(--navy2),var(--navy))}
.pl .o,.pl b,.pl i{padding:0 20px}
.pl .o{font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--coral);margin-top:10px}
.pl b{font-family:"DM Serif Display",serif;font-weight:400;font-size:1.25rem;line-height:1.25;color:var(--navy)}
.pl i{font-style:normal;font-size:.85rem;color:var(--muted)}
.tvsec{background:linear-gradient(160deg,#060b18,#14213d)}
.tv-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:50px;align-items:center}
@media(max-width:900px){.tv-grid{grid-template-columns:1fr}}
.tvset{display:block;text-decoration:none}
.tvset .screen{position:relative;display:grid;place-items:center;aspect-ratio:16/9;border-radius:22px;border:14px solid #1b1b1f;background:radial-gradient(circle at 50% 40%,#2b4aa0,#0b1328);box-shadow:0 0 0 2px #333,0 40px 80px rgba(0,0,0,.6),inset 0 0 80px rgba(0,0,0,.6);overflow:hidden}
.tvset .screen:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(0deg,rgba(255,255,255,.04) 0 2px,transparent 2px 4px);animation:scan 6s linear infinite}
@keyframes scan{to{background-position:0 100px}}
.tvset .onair{position:absolute;top:16px;left:16px}
.tvset .play{width:90px;height:90px;border-radius:50%;display:grid;place-items:center;background:var(--coral);color:#fff;font-size:2rem;box-shadow:0 0 0 12px rgba(255,90,60,.25);transition:transform .25s}
.tvset:hover .play{transform:scale(1.1)}
.tvset .cap{position:absolute;bottom:16px;color:#fff;font-weight:700}
.tvset .stand{display:block;width:30%;height:16px;margin:0 auto;background:#1b1b1f;border-radius:0 0 12px 12px}
.olist{display:flex;flex-wrap:wrap;justify-content:center;gap:12px 26px;margin-top:26px}
.lightup{font-family:"DM Serif Display",serif;font-size:1.5rem;color:#b9b9b9;filter:grayscale(1);transition:color .8s,filter .8s}
.lightup.lit{filter:none}
.lightup.lit:nth-child(4n+1){color:var(--coral)}.lightup.lit:nth-child(4n+2){color:var(--navy)}.lightup.lit:nth-child(4n+3){color:var(--teal)}.lightup.lit:nth-child(4n){color:#e09b00}
/* About */
.about-hero{background:radial-gradient(ellipse at 20% 40%,rgba(255,183,3,.25),transparent 55%),linear-gradient(135deg,var(--navy),var(--navy2));color:#fff;padding:80px 0;overflow:hidden}
.about-hero h1{color:#fff}.about-hero .lead{color:#dfe5f2;font-size:1.2rem}
.ah-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:60px;align-items:center}
@media(max-width:900px){.ah-grid{grid-template-columns:1fr}}
.ph-frame{position:relative;max-width:420px;margin:auto}
.ph-frame:before{content:"";position:absolute;inset:24px -24px -24px 24px;border-radius:30px;background:linear-gradient(135deg,var(--coral),var(--gold))}
.ph-frame img{position:relative;width:100%;height:auto;border-radius:30px;border:6px solid #fff;box-shadow:0 30px 60px rgba(0,0,0,.4)}
.ah-nums{display:flex;gap:40px;margin-top:28px;flex-wrap:wrap}
.ah-nums b{display:block;font-family:"DM Serif Display",serif;font-size:3rem;color:var(--gold);line-height:1}
.ah-nums span{font-size:.8rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#cfd6e6}
.about-body{display:grid;grid-template-columns:1.5fr .7fr;gap:60px;align-items:start}
@media(max-width:900px){.about-body{grid-template-columns:1fr}}
.sticky{position:sticky;top:130px}
/* Services panels */
.sp{display:grid;grid-template-columns:220px 1fr;gap:50px;align-items:center;padding:46px 0;border-bottom:1px solid var(--line)}
.sp.rev{grid-template-columns:1fr 220px}.sp.rev .sp-ic{order:2}
.sp-ic{position:relative;width:200px;height:200px;border-radius:50%;display:grid;place-items:center;color:#fff;margin:auto}
.s0 .sp-ic{background:linear-gradient(140deg,var(--coral),#ff8a3c)}.s1 .sp-ic{background:linear-gradient(140deg,var(--teal),#0d7f78)}.s2 .sp-ic{background:linear-gradient(140deg,var(--navy2),var(--navy))}
.sp-ic svg{width:96px;height:96px}
.sp-ic .num{position:absolute;top:-6px;right:-6px;background:var(--gold);color:var(--navy);font-weight:800;width:52px;height:52px;border-radius:50%;display:grid;place-items:center}
.sp h2{font-size:2.1rem}.sp p{font-size:1.12rem;color:#3a3f4b;max-width:640px}
.draw *{stroke-dasharray:400;stroke-dashoffset:400}
.in .draw *, .draw.in *{animation:drawit 1.6s ease forwards}
@keyframes drawit{to{stroke-dashoffset:0}}
@media(max-width:760px){.sp,.sp.rev{grid-template-columns:1fr;text-align:center}.sp.rev .sp-ic{order:0}.sp p{margin:auto}}
/* Success stories */
.story-panel{display:grid;grid-template-columns:1fr 1fr;gap:0;border-radius:28px;overflow:hidden;margin-bottom:40px;box-shadow:0 30px 60px rgba(20,33,61,.18);min-height:440px}
.story-panel.rev .sp-media{order:2}
.sp-media{position:relative;display:block;overflow:hidden;min-height:340px}
.sp-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:top;transition:transform .8s}
.story-panel:hover .sp-media img{transform:scale(1.06)}
.tomato .sp-media,.story-hero.tomato{background:linear-gradient(140deg,#8b0f15,#d62828 60%,#ff5a3c)}
.coral .sp-media{background:var(--coral)}.teal .sp-media{background:var(--teal)}
.sp-media .pat{position:absolute;inset:0;background:radial-gradient(circle at 30% 30%,rgba(255,255,255,.25),transparent 45%),repeating-linear-gradient(45deg,rgba(255,255,255,.06) 0 14px,transparent 14px 28px)}
.ph-big{position:absolute;inset:0;display:grid;place-items:center;text-align:center;padding:30px;font-family:"DM Serif Display",serif;font-size:2.4rem;color:#fff}
.sp-body{background:var(--navy);color:#fff;padding:50px;display:flex;flex-direction:column;justify-content:center;gap:10px}
.sp-body .k{font-size:.75rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}
.sp-body h2{color:#fff;font-size:2.3rem;margin:0}.sp-body p{color:#cfd6e6}
.sp-body .btn{align-self:flex-start;margin-top:10px}
.slots{display:flex;gap:30px;flex-wrap:wrap;margin:10px 0}
.slots b{display:block;font-family:"DM Serif Display",serif;font-size:2.4rem;color:var(--gold);line-height:1;font-variant-numeric:tabular-nums}
.slots span{font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#cfd6e6}
.slots.big b{font-size:clamp(2.4rem,5vw,3.8rem)}
@media(max-width:900px){.story-panel{grid-template-columns:1fr}.story-panel.rev .sp-media{order:0}.sp-body{padding:32px}}
.story-hero{position:relative;overflow:hidden;color:#fff;padding:90px 0 80px}
.story-hero h1{color:#fff;max-width:900px}.story-hero .lead{color:#ffe9e2;font-size:1.2rem;max-width:760px}
.story-hero .wrap{position:relative;z-index:1}
.who-list,.res-list{list-style:none;padding:0}
.who-list li,.res-list li{padding:12px 16px;margin-bottom:8px;background:var(--cream);border-radius:12px;border-left:4px solid var(--coral)}
.aside-ph{width:100%;border-radius:18px;margin-bottom:24px}
/* Clients flip */
a.star{text-decoration:none}
.star .visit{font-size:.78rem;font-weight:700;color:var(--gold);opacity:0;transform:translateY(6px);transition:.25s}
.star:hover .visit{opacity:1;transform:none}
.flip-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:30px}
@media(max-width:900px){.flip-grid{grid-template-columns:1fr 1fr}}@media(max-width:560px){.flip-grid{grid-template-columns:1fr}}
.flip{perspective:1200px;height:340px;cursor:pointer;outline:none}
.flip-in{position:relative;width:100%;height:100%;transition:transform .8s cubic-bezier(.2,.8,.2,1);transform-style:preserve-3d}
.flip.flipped .flip-in{transform:rotateY(180deg)}
.flip .front,.flip .back{position:absolute;inset:0;border-radius:24px;backface-visibility:hidden;-webkit-backface-visibility:hidden;color:#fff;box-shadow:0 20px 40px rgba(20,33,61,.18);overflow:hidden}
.flip .front{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;text-align:center}
.flip .front:after{content:"";position:absolute;inset:0;background:repeating-radial-gradient(circle at 80% 20%,rgba(255,255,255,.08) 0 12px,transparent 12px 28px)}
.flip .ic{font-size:4rem;position:relative;z-index:1}
.flip .nm{font-family:"DM Serif Display",serif;font-size:1.9rem;position:relative;z-index:1}
.flip .ct{font-weight:800;opacity:.9;position:relative;z-index:1}
.flip .hint{font-size:.8rem;opacity:.75;position:relative;z-index:1;margin-top:6px}
.flip .back{transform:rotateY(180deg);padding:24px;overflow:auto}
.flip .back h3{color:inherit;font-size:1.3rem}
.flip .back ul{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:6px}
.flip .back li{background:rgba(255,255,255,.2);border-radius:999px;padding:5px 11px;font-size:.84rem;font-weight:600}
.flip.c1 .front,.flip.c1 .back{background:linear-gradient(140deg,var(--coral),#ff8a3c)}.flip.c2 .front,.flip.c2 .back{background:linear-gradient(140deg,var(--teal),#0d7f78)}.flip.c3 .front,.flip.c3 .back{background:linear-gradient(140deg,var(--navy2),var(--navy))}.flip.c4 .front,.flip.c4 .back{background:linear-gradient(140deg,#c81d25,#ff5a3c)}.flip.c5 .front,.flip.c5 .back{background:linear-gradient(140deg,#6a4c93,#8e6cc4)}.flip.c0 .front,.flip.c0 .back{background:linear-gradient(140deg,#f3a300,var(--gold));color:var(--navy)}
.deal{opacity:0;transform:translateY(-60px) rotate(-8deg) scale(.9)}
.deal.dealt{opacity:1;transform:none;transition:opacity .6s,transform .7s cubic-bezier(.2,.8,.2,1)}
/* Rave Reviews */
.praise-hero .badge5{display:inline-flex;align-items:center;gap:12px;background:rgba(255,255,255,.08);border:1px solid rgba(255,183,3,.5);border-radius:999px;padding:10px 22px;margin-bottom:26px}
.badge5 .st{color:var(--gold);letter-spacing:3px}.badge5 b{font-family:"DM Serif Display",serif;font-size:1.8rem;color:#fff}.badge5 span:last-child{color:#cfd6e6;font-weight:700}
.cine{min-height:320px}
.cq p{font-size:clamp(2rem,4.8vw,3.8rem)}
.wall{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:24px;align-items:start}
.wall .pr{break-inside:avoid;display:block;margin:0 0 24px;border:0;border-radius:22px;color:#fff;box-shadow:0 18px 36px rgba(20,33,61,.16)}
.wall .pr.c0{background:linear-gradient(150deg,var(--navy),var(--navy2))}.wall .pr.c1{background:linear-gradient(150deg,var(--coral),#ff8a3c)}.wall .pr.c2{background:linear-gradient(150deg,var(--teal),#0d7f78)}.wall .pr.c3{background:linear-gradient(150deg,#6a4c93,#8e6cc4)}
.wall .pr summary{display:block;padding:26px}
.wall .pr b{display:block;font-family:"DM Serif Display",serif;font-weight:400;font-size:1.5rem;line-height:1.25;margin:10px 0 16px;color:#fff}
.wall .pr .who{display:flex;gap:12px;align-items:center}
.wall .pr .ini{width:44px;height:44px;flex:none;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.2);font-weight:800}
.wall .pr cite{font-style:normal;font-size:.72rem;font-weight:700;letter-spacing:.04em;opacity:.9}
.wall .pr .more-r{display:inline-block;margin-top:14px;font-size:.8rem;font-weight:800;color:var(--gold)}
.wall .pr[open] .more-r{display:none}
.wall .pr p{padding:0 26px 26px;color:rgba(255,255,255,.92);margin:0}
.stars.sparkle{color:var(--gold);letter-spacing:3px}
.sparkle.on{animation:sparkle 1s ease}
@keyframes sparkle{0%{text-shadow:none}40%{text-shadow:0 0 12px #fff,0 0 24px var(--gold)}100%{text-shadow:none}}
/* Contact lanyard swing */
.swing{transform-origin:50% 0}
.swing:hover{animation:swing 1.6s ease-in-out}
@keyframes swing{20%{transform:rotate(4deg)}40%{transform:rotate(-3deg)}60%{transform:rotate(2deg)}80%{transform:rotate(-1deg)}100%{transform:rotate(0)}}

/* ===== v5 ===== */
/* counters six */
.mmp-stats.six{display:grid;grid-template-columns:repeat(3,1fr);gap:18px 22px}
@media(max-width:640px){.mmp-stats.six{grid-template-columns:repeat(2,1fr)}}
/* outlet logos */
.outlets-row{padding:34px 0 10px;text-align:center}
.olog{display:flex;flex-wrap:wrap;justify-content:center;gap:18px;margin-top:14px}
.ol{display:flex;align-items:center;gap:10px;min-width:170px;justify-content:center;padding:18px 26px;border-radius:14px;background:#fff;box-shadow:0 6px 22px rgba(10,22,48,.08);text-decoration:none;opacity:.25;filter:grayscale(1);transform:scale(.92);transition:all .7s cubic-bezier(.2,.8,.2,1)}
.ol.lit{opacity:1;filter:none;transform:none}
.ol:nth-child(2){transition-delay:.25s}.ol:nth-child(3){transition-delay:.5s}.ol:nth-child(4){transition-delay:.75s}
.ol:hover{transform:translateY(-4px);box-shadow:0 14px 30px rgba(10,22,48,.16)}
.ol span{font-weight:800;font-size:1.5rem;letter-spacing:.02em}
.ol.ansa span{color:#0b4f9c;font-family:Georgia,serif;letter-spacing:.12em}
.ol.appetito span{color:#c8102e;font-family:'Great Vibes',cursive;font-weight:400;font-size:2.1rem}
.ol.star span{color:#0a3d91;font-family:'DM Serif Display',serif;font-weight:400}
.ol.yt svg{width:38px;height:27px}.ol.yt span{color:#111;font-family:Inter,sans-serif;letter-spacing:-.03em}
/* client logo */
.client-logo{display:block;max-width:240px;height:auto;border-radius:8px;box-shadow:0 6px 18px rgba(0,0,0,.18);margin:0 0 14px}
.client-logo.big{max-width:340px;margin:0 auto 18px}
/* GTFE cinematic hero */
.gt-hero{position:relative;overflow:hidden;text-align:center}
.gt-bg{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.35;animation:kenburns 22s ease-in-out infinite alternate}
@keyframes kenburns{from{transform:scale(1)}to{transform:scale(1.14)}}
.gt-hero .wrap{position:relative;z-index:2}
.leak{position:absolute;inset:-20%;z-index:1;pointer-events:none;background:radial-gradient(closest-side,rgba(230,57,70,.45),transparent 70%) 10% 30%/55% 60% no-repeat,radial-gradient(closest-side,rgba(255,140,60,.35),transparent 70%) 90% 70%/50% 55% no-repeat;mix-blend-mode:screen;animation:leak 9s ease-in-out infinite alternate}
@keyframes leak{from{transform:translateX(-6%) rotate(-3deg)}to{transform:translateX(6%) rotate(3deg)}}
.rise{animation:rise 1.1s cubic-bezier(.2,.8,.2,1) both .2s}
@keyframes rise{from{opacity:0;transform:translateY(40px)}to{opacity:1;transform:none}}
.sub-h{font-family:'DM Serif Display',serif;font-size:1.35rem;color:var(--gold);margin:-6px 0 16px}
/* video + gallery */
.video{position:relative;padding-top:56.25%;border-radius:16px;overflow:hidden;box-shadow:0 18px 40px rgba(10,22,48,.25);margin:28px 0 8px}
.video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.vid-note{font-size:.95rem;margin:0 0 22px}
.gal{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:10px 0 30px}
.gal a{display:block;border-radius:10px;overflow:hidden;aspect-ratio:4/3}
.gal img{width:100%;height:100%;object-fit:cover;transition:transform .6s}
.gal a:hover img{transform:scale(1.08)}
@media(max-width:640px){.gal{grid-template-columns:repeat(2,1fr)}}
/* cinema CTA */
.cine-cta{position:relative;overflow:hidden;background-size:cover;background-position:center;color:#fff;text-align:center;padding:110px 0;margin-top:40px}
.cine-cta:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,22,48,.75),rgba(120,15,25,.75))}
.cine-cta .wrap{position:relative;z-index:2}.cine-cta h2{color:#fff;font-size:clamp(2rem,4.5vw,3.4rem)}
/* marquee CTA */
.marquee-cta{position:relative;background:linear-gradient(135deg,#0a1630,#1b2c5c)!important;color:#fff;padding:60px 30px!important;border-radius:20px;overflow:hidden}
.marquee-cta h2,.marquee-cta p{color:#fff;position:relative;z-index:2}
.marquee-cta .bulbs{position:absolute;inset:10px;border-radius:14px;pointer-events:none;background:radial-gradient(circle,#ffd86b 0 3px,transparent 4px) 0 0/22px 22px repeat-x,radial-gradient(circle,#ffd86b 0 3px,transparent 4px) 0 100%/22px 22px repeat-x,radial-gradient(circle,#ffd86b 0 3px,transparent 4px) 0 0/22px 22px repeat-y,radial-gradient(circle,#ffd86b 0 3px,transparent 4px) 100% 0/22px 22px repeat-y;animation:chase 1s linear infinite;filter:drop-shadow(0 0 4px #ffcf4a)}
@keyframes chase{to{background-position:22px 0,-22px 100%,0 -22px,100% 22px}}
.btn-gold{background:linear-gradient(135deg,#f6d36b,#e3a72f);color:#1a1300!important;position:relative;z-index:2}
.pulse{animation:pulse 2.2s ease-in-out infinite}
@keyframes pulse{0%,100%{box-shadow:0 0 0 0 rgba(246,211,107,.55)}50%{box-shadow:0 0 0 14px rgba(246,211,107,0)}}
/* VIP card */
.vip-wrap{perspective:1200px;padding:40px 0}
.vip{max-width:640px;margin:0 auto;text-align:center;padding:48px 36px;border-radius:18px;background:linear-gradient(160deg,#fffdf6,#fff4dc);border:2px solid #d9b25a;box-shadow:0 0 0 6px #fffaf0,0 0 0 8px #d9b25a,0 24px 50px rgba(10,22,48,.2);transform-style:preserve-3d}
.vip-k{display:inline-block;font-size:.8rem;letter-spacing:.3em;text-transform:uppercase;color:#a07a1f;margin-bottom:8px}
.vip h2{font-size:clamp(1.8rem,4vw,2.6rem);margin:.2em 0}
.vip-line{font-size:1.05rem;color:#555}
.script-write{font-family:'Great Vibes',cursive;font-size:2rem;color:#0a1630;border-bottom:1px solid #d9b25a;padding:0 10px;min-width:180px;display:inline-block}
.btn-foil{background:linear-gradient(110deg,#c9962e 20%,#fff1b8 40%,#c9962e 60%);background-size:250% 100%;color:#2a1d00!important;animation:foil 3s linear infinite}
@keyframes foil{from{background-position:120% 0}to{background-position:-120% 0}}
/* About newsroom */
.newsroom{padding:60px 0;text-align:center;background:radial-gradient(ellipse at top,#1b2c5c,#0a1630);color:#fff;margin-top:30px}
.nr-nums{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:24px 0}
.nr-nums b{display:block;font-family:'DM Serif Display',serif;font-size:clamp(2.6rem,6vw,4.4rem);color:var(--gold)}
.nr-nums span{opacity:.85}
.nr-quote{font-family:'Great Vibes',cursive;font-size:clamp(1.8rem,3.6vw,2.8rem);max-width:820px;margin:10px auto;color:#fff}
.sig-draw{width:min(380px,80%);height:auto;display:block;margin:6px auto 0}
.sig-draw text{font-family:'Great Vibes',cursive;font-size:62px;fill:transparent;stroke:var(--gold);stroke-width:1.2;stroke-dasharray:1400;stroke-dashoffset:1400}
.sig-draw.in text{animation:sig 3.2s ease forwards}
@keyframes sig{70%{stroke-dashoffset:0;fill:transparent}100%{stroke-dashoffset:0;fill:var(--gold)}}
@media(max-width:640px){.nr-nums{grid-template-columns:1fr}}
/* Services badges */
.badges{position:relative;overflow:hidden}
.grad-strip{position:absolute;left:-10%;right:-10%;top:30%;height:260px;background:linear-gradient(90deg,#ff6b6b,#f6d36b,#2ec4b6,#4361ee,#ff6b6b);background-size:300% 100%;filter:blur(60px);opacity:.25;animation:gs 12s linear infinite;pointer-events:none}
@keyframes gs{to{background-position:300% 0}}
.flip-hint{text-align:center;color:#667;margin:0 0 18px;position:relative}
.bgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;position:relative}
@media(max-width:900px){.bgrid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.bgrid{grid-template-columns:1fr}}
.flipc{perspective:1100px;min-height:300px;cursor:pointer}
.flip-in{position:relative;height:100%;min-height:300px;transform-style:preserve-3d;transition:transform .8s cubic-bezier(.2,.8,.2,1)}
.flipc:hover .flip-in,.flipc.flipped .flip-in{transform:rotateY(180deg)}
.flipc.peek .flip-in{animation:peek 1.4s ease}
@keyframes peek{40%{transform:rotateY(25deg)}100%{transform:none}}
.badge-f,.badge-b{position:absolute!important;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;border-radius:18px;padding:28px 24px;margin:0!important;display:flex!important;flex-direction:column!important;gap:12px;background:#fff;box-shadow:0 12px 30px rgba(10,22,48,.12);border-top:6px solid var(--coral);overflow:hidden}
.badge-f.s1{border-top-color:var(--teal)}.badge-f.s2{border-top-color:var(--gold)}
.badge-f:after{content:"";position:absolute;inset:0;background:radial-gradient(240px circle at var(--mx,50%) var(--my,-200px),rgba(255,215,120,.35),transparent 60%);pointer-events:none}
.badge-f{justify-content:flex-start!important;border-bottom:0!important}
.badge-f .sp-ic{order:0!important;width:86px!important;height:86px!important;margin:0!important;flex:0 0 auto}
.badge-f .sp-ic svg{width:46px;height:46px}
.badge-f .sp-ic .num{width:34px;height:34px;font-size:.8rem;top:-4px;right:-8px}
.badge-f .sp-tx{order:1}
.badge-f h2{font-size:1.3rem;margin:0}.badge-f p{font-size:.95rem;margin:0}
.badge-b{transform:rotateY(180deg);background:linear-gradient(150deg,#0a1630,#2b3f85);color:#fff;justify-content:center;align-items:center;text-align:center;border-top-color:var(--gold)}
.badge-b .k{letter-spacing:.25em;text-transform:uppercase;font-size:.75rem;color:var(--gold)}
.badge-b b{font-family:'DM Serif Display',serif;font-size:1.6rem;font-weight:400;line-height:1.25}
/* Rave reviews ovation */
.ovation{position:relative;display:flex;flex-direction:column;align-items:center;margin:0 auto 26px}
.ovation .giant{font-family:'DM Serif Display',serif;font-size:clamp(5rem,14vw,9rem);line-height:1;background:linear-gradient(180deg,#fff1b8,#e3a72f);-webkit-background-clip:text;background-clip:text;color:transparent;position:relative;z-index:2}
.ovation .st{color:var(--gold);font-size:1.8rem;letter-spacing:.2em;z-index:2}
.ov-l{color:#fff;text-transform:uppercase;letter-spacing:.3em;font-size:.85rem;z-index:2}
.burst{position:absolute;left:50%;top:42%;width:0;height:0}
.burst i{position:absolute;width:14px;height:14px;margin:-7px;background:var(--gold);clip-path:polygon(50% 0,61% 35%,98% 35%,68% 57%,79% 91%,50% 70%,21% 91%,32% 57%,2% 35%,39% 35%);opacity:0;transform:rotate(var(--a)) translateY(0)}
.ovation.go .burst i{animation:burst 1.6s ease-out forwards}
@keyframes burst{0%{opacity:1;transform:rotate(var(--a)) translateY(0) scale(.4)}100%{opacity:0;transform:rotate(var(--a)) translateY(-190px) scale(1.2)}}
.nick.gold{background:linear-gradient(90deg,#e3a72f,#f6d36b,#e3a72f)}
.nick.gold span{color:#1a1300;font-size:1.15rem;font-weight:700}
.clip{opacity:0;transform:translateY(-60px) rotate(var(--r,-3deg));transition:opacity .5s,transform .7s cubic-bezier(.3,1.4,.5,1)}
.clip.dropped{opacity:1;transform:rotate(var(--r,-1deg))}
.clip:nth-child(3n){--r:1.5deg}.clip:nth-child(3n+1){--r:-1.2deg}.clip:nth-child(4n){--r:.6deg}
.clip:hover{transform:rotate(0) translateY(-4px)}
@media(prefers-reduced-motion:reduce){.gt-bg,.leak,.bulbs,.grad-strip,.btn-foil,.pulse{animation:none}.clip{opacity:1;transform:none}.flipc.peek .flip-in{animation:none}}

.ol img{height:46px;width:auto;display:block}.ol.ansa img{height:52px;border-radius:6px}

.pickups{padding:30px 0 20px;text-align:center;overflow:hidden}
.pk-sub{color:#667;margin:4px 0 16px}
.pk-track-wrap{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.pk-track{display:flex;gap:22px;width:max-content;animation:pk 45s linear infinite}
.pk-track:hover{animation-play-state:paused}
.pk{flex:0 0 auto;background:#fff;border-radius:12px;padding:14px 22px;box-shadow:0 6px 18px rgba(10,22,48,.08);display:flex;align-items:center;height:78px}
.pk img{height:46px;width:auto;max-width:230px;object-fit:contain;display:block}
@keyframes pk{to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){.pk-track{animation:none;flex-wrap:wrap;justify-content:center;width:auto}}
