:root { --ink:#070708; --paper:#f5f0e6; --muted:#919398; --line:rgba(255,255,255,.12); --gold:#d4af37; --cyan:#55dff6; }
* { box-sizing:border-box; }
html { max-width:100%; overflow-x:hidden; scroll-behavior:smooth; }
body { max-width:100%; margin:0; min-height:100vh; overflow-x:hidden; background:radial-gradient(circle at 86% 3%,rgba(212,175,55,.14),transparent 28rem),var(--ink); color:var(--paper); font-family:"DM Sans",system-ui,sans-serif; }
a { color:inherit; }
.skip-link { position:fixed; left:12px; top:-60px; z-index:100; background:var(--paper); color:var(--ink); padding:10px 14px; }
.skip-link:focus { top:12px; }
.site-header { position:sticky; top:0; z-index:20; display:flex; justify-content:space-between; align-items:center; min-height:76px; padding:0 clamp(20px,4vw,64px); border-bottom:1px solid var(--line); background:rgba(7,7,8,.9); backdrop-filter:blur(18px); }
.brand img { display:block; width:112px; height:58px; object-fit:cover; }
.site-header nav { display:flex; gap:28px; align-items:center; }
.site-header nav a { color:#92949a; font-size:12px; font-weight:700; letter-spacing:.08em; text-decoration:none; text-transform:uppercase; }
.site-header nav a:hover,.site-header nav a.active { color:var(--paper); }
.site-header nav .nav-cta { min-height:38px; display:inline-flex; align-items:center; padding:0 17px; border:1px solid var(--gold); color:var(--paper); }
main { width:min(1380px,100%); margin:0 auto; padding:0 clamp(18px,4vw,64px); }
.hero { min-height:420px; display:grid; align-content:center; border-bottom:1px solid var(--line); }
.eyebrow { margin:0; color:#a5a5a7; font-size:10px; font-weight:700; letter-spacing:.2em; text-transform:uppercase; }
.hero h1 { margin:20px 0 0; font-family:"Archivo Black",sans-serif; font-size:clamp(3.5rem,7vw,7rem); line-height:.82; letter-spacing:-.065em; text-transform:uppercase; }
.hero h1 span { color:transparent; -webkit-text-stroke:2px var(--paper); }
.hero-detail { display:flex; justify-content:space-between; gap:30px; align-items:end; margin-top:36px; color:var(--muted); }
.hero-detail p:first-child { max-width:700px; font-size:18px; line-height:1.6; }
.hero-detail strong { color:var(--gold); font-family:"Archivo Black",sans-serif; font-size:28px; }
.news-section { padding:76px 0 100px; }
.section-heading { display:flex; justify-content:space-between; align-items:end; gap:24px; margin-bottom:28px; }
.section-heading h2 { margin:10px 0 0; font-family:"Archivo Black",sans-serif; font-size:clamp(2.5rem,5vw,5rem); letter-spacing:-.055em; line-height:.95; text-transform:uppercase; }
.section-heading > p { margin:0; color:#777a80; font-size:11px; }
.news-grid { display:grid; grid-template-columns:minmax(0,1fr); gap:22px; align-items:start; }
.news-card { display:grid; grid-template-columns:minmax(230px,340px) minmax(0,1fr); width:100%; max-width:100%; min-width:0; height:330px; overflow:hidden; border:1px solid var(--line); border-radius:30px; background:#f6f5f3; color:#171719; scroll-margin-top:100px; }
.news-card-no-image { grid-template-columns:1fr; width:calc(100% - 340px); height:330px; min-height:330px; max-height:330px; justify-self:end; }
.news-card:target { box-shadow:0 0 0 2px var(--cyan); }
.news-image { display:block; min-height:100%; background:#191a1d; }
.news-image img { width:100%; height:330px; object-fit:cover; display:block; }
.news-image img[src^="/source-"] { object-fit:contain; padding:30px 20px; background:#090a0c; }
.news-copy { display:flex; min-width:0; min-height:0; flex-direction:column; overflow:hidden; padding:26px 34px; }
.news-meta { display:flex; align-items:center; justify-content:space-between; gap:20px; color:#66676a; }
.news-meta span { display:inline-flex; max-width:70%; padding:7px 12px; border-radius:99px; background:#e8e8e8; color:#18181a; font-size:12px; font-weight:700; }
.news-meta time { font-size:14px; }
.news-card h2 { display:-webkit-box; margin:18px 0 0; overflow:hidden; font-size:clamp(1.45rem,2.4vw,2.15rem); line-height:1.12; letter-spacing:-.035em; -webkit-box-orient:vertical; -webkit-line-clamp:2; }
.news-source { margin:16px 0 0; color:#67686c; font-size:14px; }
.news-summary { display:-webkit-box; margin:18px 0 0; overflow:hidden; font-size:17px; line-height:1.55; -webkit-box-orient:vertical; -webkit-line-clamp:3; }
.news-footer { display:flex; justify-content:space-between; align-items:center; gap:20px; margin-top:auto; padding-top:26px; color:#696a6e; font-size:13px; }
.news-footer a { color:#111; font-size:16px; font-weight:700; text-decoration:none; }
.news-footer a:hover { color:#8c6c0f; }
.empty-state { min-height:260px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:12px; border:1px solid var(--line); color:#777a80; text-align:center; }
footer { display:flex; justify-content:space-between; gap:24px; padding:24px clamp(20px,4vw,64px); border-top:1px solid var(--line); color:#666970; font-size:10px; letter-spacing:.1em; text-transform:uppercase; }
footer a { color:#9a8a55; text-decoration:none; }
@media(min-width:901px){.news-copy{padding:22px 30px}.news-meta,.news-card h2,.news-source,.news-summary,.news-footer{flex-shrink:0}.news-card h2{margin-top:14px;font-size:clamp(1.35rem,2.2vw,2rem);line-height:1.12}.news-source{margin-top:10px}.news-summary{margin-top:12px;font-size:16px;line-height:1.42}.news-footer{padding-top:14px}}
@media(max-width:900px){.site-header nav{gap:12px}.site-header nav a{font-size:10px}.hero{min-height:360px}.news-grid{gap:18px}.news-card{grid-template-columns:minmax(0,1fr);height:auto;max-height:none}.news-card-no-image{width:100%;height:auto;min-height:0;max-height:none}.news-copy{overflow:visible}.news-card h2,.news-summary{display:block;overflow:visible;-webkit-line-clamp:unset}.news-image img{height:260px;min-height:0}.news-image img[src^="/source-"]{padding:22px 16px}.hero-detail,.section-heading{align-items:flex-start;flex-direction:column}.news-footer{align-items:flex-start;flex-direction:column}}
@media(max-width:620px){.site-header{padding-inline:14px}.brand img{width:82px;height:50px}.site-header nav a[href="/festivals"],.site-header nav a[href^="https://www.instagram"]{display:none}.site-header nav .nav-cta{padding:0 10px}main{padding-inline:20px}.news-card{border-radius:18px}.news-copy{padding:22px}.news-meta{align-items:flex-start;flex-direction:column;gap:10px}.news-meta span{max-width:100%}.news-card h2,.news-summary,.news-footer{overflow-wrap:anywhere}.news-summary{font-size:16px}.hero h1{font-size:11.5vw;line-height:.88}footer{flex-direction:column}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

/* AHM-NAV-V2 */
.site-header .main-nav{display:flex;align-items:center;justify-content:flex-end;gap:16px;min-width:0}
.site-header .nav-pages,.site-header .nav-actions{display:flex;align-items:center;gap:8px;min-width:0}
.site-header .nav-pages a,.site-header .nav-actions a{display:inline-flex!important;align-items:center;white-space:nowrap}
.site-header .nav-actions{padding-left:14px;border-left:1px solid rgba(255,255,255,.15)}
.site-header .nav-actions .nav-cta{margin-left:0}
@media(max-width:1050px){
  .site-header .main-nav{flex:1;flex-wrap:wrap;gap:6px 12px}
  .site-header .nav-actions{order:1;margin-left:auto;padding-left:0;border-left:0}
  .site-header .nav-pages{order:2;width:100%;overflow-x:auto;gap:14px;padding:2px 0 4px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .site-header .nav-pages::-webkit-scrollbar{display:none}
}


/* AHM-NAV-V3 */
.site-header .main-nav{display:flex;align-items:center;justify-content:flex-end;gap:16px;min-width:0}
.site-header .nav-pages,.site-header .nav-actions{display:flex;align-items:center;gap:9px;min-width:0}
.site-header .nav-pages a,.site-header .nav-actions a{display:inline-flex!important;align-items:center;justify-content:center;white-space:nowrap;text-decoration:none;text-transform:uppercase}
.site-header .nav-pages a{min-height:40px;padding:0 13px!important;border:2px solid var(--paper,#f5f0e6);border-radius:9px;color:var(--paper,#f5f0e6)!important}
.site-header .nav-pages a:hover{border-color:var(--hot,var(--gold,#d4af37));color:var(--hot,var(--gold,#d4af37))!important}
.site-header .nav-pages a.active{border-color:var(--hot,var(--gold,#d4af37));box-shadow:inset 0 0 0 1px var(--hot,var(--gold,#d4af37));color:var(--hot,var(--gold,#d4af37))!important}
.site-header .nav-actions{padding-left:14px;border-left:1px solid rgba(255,255,255,.15)}
.site-header .nav-actions .nav-instagram{width:42px;height:42px;padding:7px!important;border:0;border-radius:9px;color:var(--paper,#f5f0e6)!important}
.site-header .nav-actions .nav-instagram:hover{background:rgba(255,255,255,.08)}
.site-header .nav-actions .nav-instagram img{display:block;width:26px;height:26px;object-fit:contain}
.site-header .nav-actions .nav-cta{min-height:40px;margin-left:0;padding:0 14px!important;border:2px solid var(--hot,var(--gold,#d4af37));border-radius:9px;color:var(--paper,#f5f0e6)!important}
.site-header .nav-actions .nav-cta:hover{background:var(--hot,var(--gold,#d4af37));color:var(--ink,#070708)!important}
@media(max-width:1180px){
  .site-header{align-items:flex-start!important;height:auto!important;min-height:76px!important;padding-block:8px!important}
  .site-header .main-nav{flex:1;flex-wrap:wrap;gap:6px 12px}
  .site-header .nav-actions{order:1;margin-left:auto;padding-left:0;border-left:0}
  .site-header .nav-pages{order:2;width:100%;overflow-x:auto;gap:8px;padding:2px 0 4px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .site-header .nav-pages::-webkit-scrollbar{display:none}
}
@media(max-width:660px){
  .site-header{display:flex!important;align-items:flex-start!important;gap:10px!important;min-height:68px!important;padding:8px 12px!important}
  .site-header .main-nav{gap:4px 8px!important}
  .site-header .nav-pages{gap:7px!important}
  .site-header .nav-pages a{min-height:34px!important;padding:0 9px!important;border-radius:7px;font-size:8px!important;letter-spacing:.06em!important}
  .site-header .nav-actions{gap:6px!important}
  .site-header .nav-actions .nav-instagram{width:34px;height:34px;padding:6px!important}
  .site-header .nav-actions .nav-instagram img{width:22px;height:22px}
  .site-header .nav-actions .nav-cta{min-height:34px!important;padding:0 9px!important;border-radius:7px;font-size:8px!important}
}
@media(max-width:660px){
  .site-header{display:flex!important;align-items:flex-start!important;gap:10px!important;height:auto!important;min-height:68px!important;padding-block:8px!important}
  .site-header .main-nav{gap:4px 8px!important}
  .site-header .nav-pages{gap:12px!important}
  .site-header .nav-pages a,.site-header .nav-actions a{font-size:9px!important;padding:7px 0!important}
  .site-header .nav-actions{gap:9px!important}
  .site-header .nav-actions .nav-cta{min-height:32px!important;padding:0 9px!important}
}
/* AHM-NAV-V3-END */
html,body{max-width:100%;overflow-x:hidden!important}
.site-header .main-nav{display:flex;align-items:center;justify-content:flex-end;gap:16px;min-width:0}
.site-header .nav-pages,.site-header .nav-actions{display:flex;align-items:center;gap:9px;min-width:0}
.site-header .nav-pages a,.site-header .nav-actions a{display:inline-flex!important;align-items:center;justify-content:center;white-space:nowrap;text-decoration:none;text-transform:uppercase}
.site-header .nav-pages a{min-height:40px;padding:0 13px!important;border:2px solid var(--paper,#f5f0e6);border-radius:9px;color:var(--paper,#f5f0e6)!important}
.site-header .nav-pages a:hover{border-color:var(--hot,var(--gold,#d4af37));color:var(--hot,var(--gold,#d4af37))!important}
.site-header .nav-pages a.active{border-color:var(--hot,var(--gold,#d4af37));box-shadow:inset 0 0 0 1px var(--hot,var(--gold,#d4af37));color:var(--hot,var(--gold,#d4af37))!important}
.site-header .nav-actions{padding-left:14px;border-left:1px solid rgba(255,255,255,.15)}
.site-header .nav-actions .nav-instagram{width:42px;height:42px;padding:7px!important;border:0;border-radius:9px;color:var(--paper,#f5f0e6)!important}
.site-header .nav-actions .nav-instagram:hover{background:rgba(255,255,255,.08)}
.site-header .nav-actions .nav-instagram img{display:block;width:26px;height:26px;object-fit:contain}
.site-header .nav-actions .nav-cta{min-height:40px;margin-left:0;padding:0 14px!important;border:2px solid var(--hot,var(--gold,#d4af37));border-radius:9px;color:var(--paper,#f5f0e6)!important}
.site-header .nav-actions .nav-cta:hover{background:var(--hot,var(--gold,#d4af37));color:var(--ink,#070708)!important}
@media(max-width:1180px){
  .site-header{align-items:flex-start!important;height:auto!important;min-height:76px!important;padding-block:8px!important}
  .site-header .main-nav{flex:1;flex-wrap:wrap;gap:6px 12px}
  .site-header .nav-actions{order:1;margin-left:auto;padding-left:0;border-left:0}
  .site-header .nav-pages{order:2;width:100%;overflow-x:auto;gap:8px;padding:2px 0 4px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .site-header .nav-pages::-webkit-scrollbar{display:none}
}
@media(max-width:660px){
  .site-header{display:flex!important;align-items:flex-start!important;gap:10px!important;max-width:100vw!important;min-height:68px!important;overflow-x:hidden!important;padding:8px 12px!important}
  .site-header .brand img,.site-header .brand-logo{width:82px!important;height:50px!important}
  .site-header .main-nav{flex:1 1 0!important;max-width:calc(100% - 92px)!important;gap:4px 8px!important}
  .site-header .nav-pages{max-width:100%!important;gap:7px!important}
  .site-header .nav-pages a{min-height:34px!important;padding:0 9px!important;border-radius:7px;font-size:8px!important;letter-spacing:.06em!important}
  .site-header .nav-actions{gap:6px!important}
  .site-header .nav-actions .nav-instagram{width:34px;height:34px;padding:6px!important}
  .site-header .nav-actions .nav-instagram img{width:22px;height:22px}
  .site-header .nav-actions .nav-cta{min-height:34px!important;padding:0 9px!important;border-radius:7px;font-size:8px!important}
}
