:root{--red:#A61C1D;--deep:#6E0E10;--ink:#141414;--mut:#5a5a5a;--line:#e6dcd8;--soft:#fbf7f5;--head:'Anton',Impact,sans-serif;--body:'Poppins',system-ui,sans-serif}
*,*::before,*::after{box-sizing:border-box}
[hidden]{display:none!important}
html{scroll-behavior:smooth}
body{margin:0;background:#fff;color:var(--ink);font:400 16px/1.6 var(--body);-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
h1,h2{font-family:var(--head);font-weight:400;letter-spacing:.01em;line-height:1.05;margin:0;text-transform:uppercase}
.wrap{max-width:1240px;margin:0 auto;padding:0 20px}
.skip{position:absolute;left:-999px;top:0;background:#fff;color:var(--ink);padding:10px 14px;z-index:99}.skip:focus{left:10px}
:focus-visible{outline:3px solid #ffb347;outline-offset:3px}
.kicker{font-family:var(--head);letter-spacing:.1em;font-size:15px;color:var(--red);text-transform:uppercase}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:0 22px;border-radius:999px;font:700 15px var(--body);border:2px solid transparent;cursor:pointer;transition:transform .15s,background .2s,color .2s}
.btn svg{width:20px;height:20px}
.btn:hover{transform:translateY(-1px)}
.btn[disabled]{opacity:.5;cursor:default;transform:none}
.btn-red{background:var(--red);color:#fff}.btn-red:hover{background:var(--deep)}
.btn-white{background:#fff;color:var(--red)}
.btn-line{border-color:var(--ink);color:var(--ink);background:transparent}.btn-line:hover{background:var(--ink);color:#fff}
.btn-white-line{border-color:#fff;color:#fff;background:transparent}.btn-white-line:hover{background:#fff;color:var(--red)}
.link{font-weight:600;color:var(--red);min-height:44px;display:inline-flex;align-items:center}
.link:hover{text-decoration:underline}

/* masthead */
.mast{background:var(--red) url(/assets/img/hero-bg.jpg) center/cover no-repeat;color:#fff;position:relative}
.mast::before{content:"";position:absolute;inset:0;background:rgba(140,20,22,.55)}
.mast>*{position:relative}
.mast-row{display:flex;flex-wrap:wrap;align-items:center;gap:16px 28px;padding-top:22px;padding-bottom:10px}
.logo img{height:64px;width:auto}
.mast-nav{display:flex;flex-wrap:wrap;gap:4px 24px;font-weight:600;font-size:15px;margin-left:auto}
.mast-nav a{padding:10px 0;opacity:.95}.mast-nav a:hover{opacity:1;text-decoration:underline;text-underline-offset:6px}
.tagline{font-family:var(--head);letter-spacing:.08em;font-size:clamp(18px,2.6vw,28px);text-transform:uppercase;padding-bottom:26px}
@media(max-width:700px){.mast-nav{order:3;width:100%;margin-left:0;gap:4px 18px}.logo img{height:50px}.mast-cta{margin-left:auto}.mast-row .btn{min-height:44px;padding:0 16px}}

/* latest */
.latest{background:var(--soft);border-bottom:1px solid var(--line)}
.latest-grid{display:grid;gap:36px;align-items:center;padding-top:44px;padding-bottom:48px}
@media(min-width:880px){.latest-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr)}}
.latest-media{position:relative;border-radius:16px;overflow:hidden;background:#e9dfdb;cursor:pointer}
.latest-media.is-short{max-width:min(340px,72vw);aspect-ratio:9/16;justify-self:center;width:100%}
.latest-media.is-video{aspect-ratio:16/9}
.latest-media:not(.is-short):not(.is-video){aspect-ratio:16/9}
.latest-media img{width:100%;height:100%;object-fit:cover}
.latest-text h1{font-size:clamp(32px,4.6vw,56px);margin:12px 0 14px}
.meta{color:var(--mut);font-size:14px;margin:0 0 22px}
.row-btns{display:flex;flex-wrap:wrap;gap:12px}
.play{position:absolute;inset:0;display:grid;place-items:center;background:linear-gradient(transparent 55%,rgba(0,0,0,.45))}
.play span{width:72px;height:72px;border-radius:50%;background:var(--red);display:grid;place-items:center;box-shadow:0 8px 24px rgba(0,0,0,.3);transition:transform .2s}
.play svg{width:28px;height:28px;margin-left:4px}
.latest-media:hover .play span,.card:hover .play span{transform:scale(1.08)}
.skel{position:absolute;inset:0;background:linear-gradient(90deg,#e9dfdb 0%,#f3ecea 50%,#e9dfdb 100%);background-size:200% 100%;animation:sh 1.4s infinite}
@keyframes sh{to{background-position:-200% 0}}

/* sections */
.sec{padding:64px 0}
.sec-dark{background:var(--ink);color:#fff}
.sec-dark .link{color:#ff8a8a}
.sec-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:10px 20px;padding-bottom:14px;border-bottom:3px solid currentColor;margin-bottom:28px}
.sec-head h2{font-size:clamp(28px,3.4vw,40px)}
.more{display:flex;justify-content:center;margin-top:30px}

/* cards */
.card{all:unset;box-sizing:border-box;cursor:pointer;display:flex;flex-direction:column;gap:10px;width:100%}
.card:focus-visible{outline:3px solid #ffb347;outline-offset:4px;border-radius:12px}
.thumb{position:relative;border-radius:12px;overflow:hidden;background:#e9dfdb}
.thumb img{width:100%;height:100%;object-fit:cover}
.card .t{font-weight:600;font-size:15px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.card .d{font-size:13px;color:var(--mut)}
.sec-dark .card .d{color:#a9a9a9}
.card:hover .t{color:var(--red)}
.sec-dark .card:hover .t{color:#ff8a8a}
.card .play span{width:52px;height:52px}.card .play svg{width:20px;height:20px}
.shorts-grid{display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}
@media(max-width:560px){.shorts-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.card .t{font-size:14px}}
.shorts-grid .thumb{aspect-ratio:9/16}
.videos-grid{display:grid;gap:28px;grid-template-columns:repeat(auto-fill,minmax(min(300px,100%),1fr))}
.videos-grid .thumb{aspect-ratio:16/9}
.empty{color:var(--mut);padding:20px 0}
.soon{border:2px dashed #555;border-radius:16px;padding:36px;display:flex;flex-direction:column;gap:12px;align-items:flex-start}
.soon p{margin:0;max-width:560px;color:#d6d6d6}
.soon .kicker{color:#ff8a8a}

/* story */
.story{display:grid;gap:28px;align-items:center;border:2px solid var(--ink);padding:36px}
.story h2{font-size:clamp(28px,3.6vw,42px);margin:8px 0 12px}
.story p{margin:0;color:#4a4a4a;max-width:560px}
.story-btns{display:flex;flex-direction:column;gap:12px}
@media(min-width:880px){.story{grid-template-columns:1.4fr 1fr}}
@media(max-width:560px){.story{padding:24px}}

/* band + footer */
.band{background:var(--red);color:#fff}
.band-row{display:flex;flex-wrap:wrap;gap:24px;align-items:center;justify-content:space-between;padding-top:52px;padding-bottom:52px}
.band h2{font-size:clamp(28px,4vw,46px);max-width:720px}
.band-btns{display:flex;flex-wrap:wrap;gap:12px}
.foot{background:var(--ink);color:#cfcfcf;font-size:14px}
.foot-grid{display:grid;gap:32px;padding-top:52px;padding-bottom:28px}
@media(min-width:720px){.foot-grid{grid-template-columns:1fr 1fr}}
.foot-logo{height:46px;width:auto;margin-bottom:12px}
.foot-h{display:block;font-family:var(--head);letter-spacing:.08em;color:#fff;font-size:15px;text-transform:uppercase;margin-bottom:12px}
.bob{display:inline-block;background:#fff;padding:14px 16px;border-radius:10px;margin-bottom:12px}
.bob img{height:20px;width:auto}
.foot p{margin:0;line-height:1.6}
.foot-bottom{display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;border-top:1px solid #333;padding-top:18px;padding-bottom:26px;font-size:13px;color:#9a9a9a}

/* player */
.player{border:0;padding:0;background:transparent;max-width:none;max-height:none;width:100vw;height:100dvh;margin:0;overflow:hidden}
.player::backdrop{background:rgba(10,10,10,.88)}
.player[open]{display:grid;place-items:center}
.player-box{width:min(92vw,1100px);aspect-ratio:16/9;background:#000;border-radius:12px;overflow:hidden}
.player-box.short{width:auto;height:min(86dvh,800px);aspect-ratio:9/16;max-width:92vw}
.player-box iframe{width:100%;height:100%;border:0;display:block}
.player-close{position:fixed;top:16px;right:16px;width:48px;height:48px;border-radius:50%;border:0;background:#fff;color:var(--ink);cursor:pointer;display:grid;place-items:center}
.player-close svg{width:22px;height:22px}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.mast-cta{display:flex;align-items:center;gap:10px}
.icon-btn{width:48px;height:48px;border-radius:50%;border:2px solid rgba(255,255,255,.85);color:#fff;display:grid;place-items:center;transition:background .2s,color .2s}
.icon-btn svg{width:22px;height:22px}
.icon-btn:hover{background:#fff;color:var(--red)}
@media(max-width:700px){.icon-btn{width:44px;height:44px}}
.foot-mail{margin-top:10px!important}.foot-mail a{color:#fff;font-weight:600}.foot-mail a:hover{text-decoration:underline}
