:root{
  --bg:#0b0d12;
  --panel:rgba(255,255,255,.06);
  --panel2:rgba(255,255,255,.09);
  --text:#eef2ff;
  --muted:rgba(238,242,255,.72);
  /* Accent palette (default tuned for MLB-inspired "Major League" look) */
  --gold:#e31837;   /* accent (red) */
  --gold2:#0b2a6f;  /* accent (navy) */
  --accent-rgb: 227,24,55;
  --line:rgba(227,24,55,.28);
  --shadow: 0 18px 60px rgba(0,0,0,.45);
  --radius: 18px;
  /* Display font: MLB-ish headline feel without external font downloads */
  --font-display: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Arial, "Arial Black";
}

html[data-theme="mlb"]{
  --gold:#e31837;
  --gold2:#0b2a6f;
  --accent-rgb: 227,24,55;
  --line:rgba(227,24,55,.28);
}

html[data-theme="cannabis"]{
  --gold:#44ff9a;
  --gold2:#0b2a6f;
  --accent-rgb: 68,255,154;
  --line:rgba(68,255,154,.22);
}

html[data-theme="neon"]{
  --gold:#6ef5ff;
  --gold2:#7a67ff;
  --accent-rgb: 110,245,255;
  --line:rgba(110,245,255,.25);
}

*{box-sizing:border-box}
body{
  margin:0;
  font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Arial;
  color:var(--text);
  background: #07080b;
  overflow-x:hidden;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* Headline system: bolder, slightly condensed “big-league” feel */
h1,h2,h3,.hero-mark-title,.quote-title{
  font-family: var(--font-display);
  letter-spacing: .15px;
  text-rendering: geometricPrecision;
}

h1{letter-spacing:.18px}

/* Make key headings feel more MLB-like without going full ALL CAPS everywhere */
html[data-theme="mlb"] h1,
html[data-theme="mlb"] .hero-mark-title,
html[data-theme="mlb"] .kicker{
  text-transform: uppercase;
}

a{color:inherit}
.wrap{max-width:1180px;margin:0 auto;padding:28px 18px 60px}

.muted{color:var(--muted)}
.small{font-size:.92rem}

.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:.55rem;
  padding:12px 14px;border-radius:999px;border:1px solid var(--line);
  background: linear-gradient(180deg, rgba(var(--accent-rgb),.26), rgba(var(--accent-rgb),.12));
  color:var(--text); text-decoration:none; font-weight:650;
  box-shadow: 0 10px 30px rgba(0,0,0,.25);
  transition: transform .15s ease, filter .15s ease;
}
.btn:hover{transform:translateY(-1px); filter:saturate(1.08)}
.btn.ghost{background:rgba(255,255,255,.04)}
.link{color:var(--gold); text-decoration:none; font-weight:650}
.link:hover{text-decoration:underline}

.top{
  position:sticky;top:0;z-index:30;
  display:flex;justify-content:space-between;align-items:center;
  padding:12px 18px;border-bottom:1px solid rgba(255,255,255,.08);
  backdrop-filter: blur(12px);
  background: rgba(10,12,18,.55);
}
.brand{display:flex;gap:12px;align-items:center;text-decoration:none}
.brand img{width:44px;height:44px;border-radius:12px;object-fit:cover;border:1px solid rgba(255,255,255,.08)}
.brand .name{
  font-weight:900;
  letter-spacing:.35px;
  font-size:1.08rem;
  line-height:1.05;
  text-shadow: 0 2px 10px rgba(0,0,0,.35);
}
.brand .ids{font-size:.86rem;color:var(--muted)}

@media (min-width: 860px){
  .brand .name{font-size:1.18rem}
}
.nav{display:flex;gap:12px;align-items:center}
.nav-links{display:flex;gap:14px;align-items:center}
.nav a{opacity:.92;text-decoration:none;position:relative}
.nav a::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-8px;
  height:2px;
  border-radius:999px;
  background: linear-gradient(90deg, transparent, rgba(var(--accent-rgb),.95), transparent);
  transform: scaleX(0);
  transform-origin: center;
  transition: transform .16s ease;
  opacity:.95;
}
.nav a:hover{opacity:1}
.nav a:hover::after{transform: scaleX(1)}
.nav .nav-mini{
  opacity:.78;
  font-size:.86rem;
  padding:7px 10px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.03);
}
.nav .nav-mini:hover{opacity:1}
.theme{border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.06);color:var(--text);border-radius:999px;padding:10px 12px;cursor:pointer}


/* Mobile menu button + drawer (progressive enhancement: only hides desktop links when JS is enabled) */
.nav-toggle{
  display:none;
  width:44px;height:44px;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.06);
  cursor:pointer;
  align-items:center;
  justify-content:center;
}
.nav-toggle-bars{
  width:18px;height:12px;
  position:relative;
}
.nav-toggle-bars::before,
.nav-toggle-bars::after{
  content:"";
  position:absolute;
  left:0; right:0;
  height:2px;
  border-radius:999px;
  background: rgba(255,255,255,.92);
  box-shadow: 0 0 0 1px rgba(0,0,0,.18);
}
.nav-toggle-bars::before{ top:1px }
.nav-toggle-bars::after{ bottom:1px }

.nav-overlay{
  position:fixed; inset:0;
  z-index:60;
  background: rgba(0,0,0,.62);
  backdrop-filter: blur(6px);
}
.nav-drawer{
  position:fixed;
  top:12px; left:12px; right:12px;
  z-index:61;
  border-radius: 18px;
  border:1px solid rgba(255,255,255,.14);
  background: rgba(10,12,18,.92);
  box-shadow: 0 24px 90px rgba(0,0,0,.55);
  overflow:hidden;
}
.nav-drawer::before{
  content:"";
  position:absolute; inset:0;
  background:
    radial-gradient(900px 400px at 15% 15%, rgba(var(--accent-rgb),.16), transparent 60%),
    radial-gradient(800px 500px at 85% 10%, rgba(11,42,111,.18), transparent 60%),
    radial-gradient(900px 600px at 50% 100%, rgba(255,255,255,.05), transparent 65%),
    repeating-linear-gradient(90deg, rgba(255,255,255,.06) 0 1px, transparent 1px 10px);
  opacity:.8;
  pointer-events:none;
}
.nav-drawer > *{position:relative}

.nav-drawer-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:14px 14px 10px;
}
.nav-drawer-title{
  font-family: var(--font-display);
  font-weight: 900;
  letter-spacing:.6px;
  text-transform: uppercase;
  font-size: 1.05rem;
}
.nav-close{
  width:42px;height:42px;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.06);
  color: var(--text);
  cursor:pointer;
  font-size: 26px;
  line-height: 1;
}

.nav-drawer-links{
  display:grid;
  gap:6px;
  padding: 6px 14px 12px;
}
.nav-drawer-links a{
  text-decoration:none;
  padding:12px 12px;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.04);
}
.nav-drawer-links a.btn{
  border-color: rgba(var(--accent-rgb), .35);
  background: linear-gradient(135deg, rgba(var(--accent-rgb),.22), rgba(11,42,111,.20));
  font-weight: 900;
}
.nav-drawer-links a.nav-mini{
  opacity:.92;
  font-size:.92rem;
}
.nav-drawer-links a:hover{opacity:1}

.nav-drawer-foot{
  display:flex;
  gap:10px;
  padding: 12px 14px 14px;
}
.drawer-pill{
  text-decoration:none;
  padding:10px 12px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.05);
}
.drawer-pill.gold{
  border-color: rgba(var(--accent-rgb), .38);
  background: linear-gradient(135deg, rgba(var(--accent-rgb),.22), rgba(11,42,111,.20));
  font-weight: 900;
}

body.nav-open{overflow:hidden}

.bg-layer{position:fixed;inset:0;z-index:-2;pointer-events:none;
  background:
    radial-gradient(1200px 600px at 20% 20%, color-mix(in srgb, var(--gold) 30%, transparent), transparent 60%),
    radial-gradient(900px 700px at 80% 15%, color-mix(in srgb, var(--gold2) 26%, transparent), transparent 60%),
    radial-gradient(1000px 800px at 55% 85%, rgba(70,245,255,.08), transparent 62%),
    linear-gradient(180deg,#070911,#0b0d14 40%, #070911);
}
.bg-layer::after{
  content:"";
  position:absolute; inset:0;
  background: url("../img/noise.png") repeat;
  opacity:.22;
  mix-blend-mode: overlay;
  pointer-events:none;
}
.bg-layer::before{
  content:"";
  position:absolute; inset:0;
  /* Pinstripes + soft vignette, keeps the site "Major League" without going cheesy */
  background:
    radial-gradient(1200px 700px at 50% 20%, rgba(255,255,255,.06), transparent 55%),
    repeating-linear-gradient(90deg, rgba(255,255,255,.05) 0 1px, transparent 1px 10px);
  pointer-events:none;


/* MLB theme: add a subtle animated "stadium light sweep" over pinstripes */
html[data-theme="mlb"] .bg-layer::before{
  background:
    radial-gradient(1200px 700px at 50% 20%, rgba(255,255,255,.07), transparent 55%),
    repeating-linear-gradient(90deg, rgba(255,255,255,.055) 0 1px, transparent 1px 10px),
    linear-gradient(110deg, transparent 0 34%, rgba(255,255,255,.06) 48%, transparent 62%);
  background-repeat: no-repeat, repeat, no-repeat;
  background-size: auto, auto, 220% 220%;
  background-position: 0 0, 0 0, -120% 0;
  animation: bgSweep 10s linear infinite;
}

@keyframes bgSweep{
  from{ background-position: 0 0, 0 0, -120% 0; }
  to  { background-position: 0 0, 0 0, 220% 0; }
}

@keyframes badgeGlow{
  0%,100%{ transform: scale(1); opacity:.90; filter: blur(10px); }
  50%    { transform: scale(1.06); opacity:1; filter: blur(14px); }
}

@media (prefers-reduced-motion: reduce){
  html[data-theme="mlb"] .bg-layer::before{animation:none !important}
  .hero-logo-wrap::before{animation:none !important}
}
}

/* Subtle "baseball stitch" divider utility (pure CSS, lightweight) */
.stitch{
  height:10px;
  margin:14px 0;
  background:
    linear-gradient(90deg, transparent 0 6px, rgba(var(--accent-rgb),.65) 6px 7px, transparent 7px 16px),
    linear-gradient(90deg, transparent 0 6px, rgba(var(--accent-rgb),.28) 6px 7px, transparent 7px 16px);
  background-size:16px 10px, 16px 10px;
  background-position:0 0, 8px 0;
  opacity:.8;
  filter: drop-shadow(0 2px 6px rgba(0,0,0,.25));
}

@keyframes scan{
  from{transform:translateY(-30vh)}
  to{transform:translateY(140vh)}
}

.sticky-cta{
  position:fixed;
  right:14px; bottom:14px;
  display:flex; gap:10px;
  z-index:40;
}
.cta-pill{
  text-decoration:none;
  padding:10px 12px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.14);
  background: rgba(0,0,0,.35);
  backdrop-filter: blur(10px);
  color: rgba(238,242,255,.92);
  font-weight:750;
  box-shadow: 0 14px 38px rgba(0,0,0,.35);
}
.cta-pill.gold{
  border:1px solid var(--line);
  background: linear-gradient(180deg, rgba(var(--accent-rgb),.25), rgba(var(--accent-rgb),.10));
  color: var(--text);
}

.hero{display:grid;grid-template-columns:1.25fr .9fr;gap:18px;align-items:stretch}
.hero-card{
  border:1px solid rgba(255,255,255,.10);
  background: linear-gradient(180deg, rgba(255,255,255,.09), rgba(255,255,255,.03));
  border-radius: var(--radius);
  padding:26px;
  box-shadow: var(--shadow);
  position:relative;
  overflow:hidden;
}

.hero-mark{display:flex;gap:14px;align-items:center;margin-bottom:12px}
.hero-logo-wrap{position:relative;display:inline-grid;place-items:center}
.hero-logo-wrap::before{
  content:"";
  position:absolute;
  inset: calc(-1 * clamp(18px, 3vw, 42px));
  border-radius: clamp(28px, 4vw, 46px);
  background:
    radial-gradient(closest-side, rgba(255,255,255,.18), transparent 70%),
    radial-gradient(circle at 20% 25%, rgba(11,42,111,.85), transparent 62%),
    radial-gradient(circle at 80% 75%, rgba(227,24,55,.85), transparent 62%);
  filter: blur(10px);
  opacity:.95;
  animation: badgeGlow 4.6s ease-in-out infinite;
}

.hero-logo-wrap::after{
  content:"";
  position:absolute;inset:-2px;
  border-radius:22px;
  background: linear-gradient(135deg, rgba(11,42,111,.55), rgba(227,24,55,.55));
  opacity:.25;
}
.hero-mark-logo{
  position:relative;
  width:clamp(140px, 18vw, 240px);
  height:clamp(140px, 18vw, 240px);
  border-radius:clamp(22px, 3vw, 34px);
  object-fit:cover;
  border:1px solid rgba(255,255,255,.12);
  box-shadow:0 18px 60px rgba(0,0,0,.35);
  filter: drop-shadow(0 0 18px rgba(var(--accent-rgb),.38));
}

/* Make the homepage mark feel like a real badge (bigger + readable) */
.hero .hero-mark{gap:18px}
.hero .hero-mark-logo{
  width: clamp(176px, 14vw, 260px);
  height: clamp(176px, 14vw, 260px);
  border-radius: clamp(26px, 2.2vw, 40px);
  border:1px solid rgba(255,255,255,.14);
}
.hero .hero-mark-title{
  font-size: clamp(1.55rem, 1.55vw, 2.2rem);
  line-height: 1.02;
  text-shadow: 0 2px 14px rgba(0,0,0,.45);
}
.hero-mark-title{font-weight:950;letter-spacing:.2px;font-size:1.05rem;line-height:1.1}
.hero-mark-sub{color:var(--muted);font-size:1.02rem;max-width:40rem}

/* Homepage hero logo: bigger + “stadium lights” glow */
.hero .hero-logo-wrap{position:relative;display:inline-grid;place-items:center}
.hero .hero-logo-wrap::before{
  content:"";
  position:absolute;
  width:140%;
  height:140%;
  border-radius:28px;
  background:
    radial-gradient(circle at 30% 30%, rgba(255,255,255,.22), transparent 55%),
    radial-gradient(circle at 70% 40%, rgba(227,24,55,.55), transparent 60%),
    radial-gradient(circle at 35% 75%, rgba(11,42,111,.55), transparent 60%);
  filter: blur(10px);
  opacity:.95;
  transform: translateZ(0);
}
.hero .hero-logo-wrap::after{
  content:"";
  position:absolute;
  inset:-10px;
  border-radius:30px;
  border:1px solid rgba(255,255,255,.10);
  background: linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.02));
  opacity:.65;
}
.hero .hero-mark-logo{
  position:relative;
  width: clamp(176px, 14vw, 260px);
  height: clamp(176px, 14vw, 260px);
  border-radius: clamp(26px, 2.2vw, 40px);
  border:1px solid rgba(255,255,255,.14);
  box-shadow:
    0 24px 80px rgba(0,0,0,.55),
    0 0 0 1px rgba(255,255,255,.06),
    0 0 34px rgba(227,24,55,.28),
    0 0 44px rgba(11,42,111,.22);
}

@media (max-width: 720px){
  .hero .hero-mark-logo{width:clamp(200px, 58vw, 300px);height:clamp(200px, 58vw, 300px)}
  .hero .hero-mark-title{font-size: clamp(1.55rem, 6.5vw, 2.25rem)}
  .hero-mark-sub{font-size:1.02rem}
}
.hero-media{
  border:1px solid rgba(255,255,255,.10);
  border-radius: var(--radius);
  overflow:hidden;
  box-shadow: var(--shadow);
  background: rgba(255,255,255,.04);
  position:relative;
  min-height: 320px;
}
.hero-media img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(1.06) contrast(1.05)}
.hero-media::after{
  content:"";
  position:absolute; inset:0;
  background: linear-gradient(180deg, rgba(7,8,11,.05), rgba(7,8,11,.65));
}
.hero-badge{
  position:absolute; left:14px; bottom:14px;
  padding:10px 12px;
  border-radius: 16px;
  border:1px solid rgba(255,255,255,.12);
  background: rgba(0,0,0,.35);
  backdrop-filter: blur(10px);
  z-index:2;
}
.hero-badge .t{font-weight:950}
.hero-badge .s{color:rgba(238,242,255,.78);font-size:.92rem;margin-top:2px}
.hero-card::after{
  content:"";
  position:absolute; inset:-60px;
  background: radial-gradient(600px 340px at 20% 30%, rgba(var(--accent-rgb),.18), transparent 65%);
  transform: rotate(-8deg);
  pointer-events:none;
}
.kicker{color:var(--gold);font-weight:800;letter-spacing:.4px; position:relative}
.hero h1{margin:10px 0 10px;font-size:2.35rem;line-height:1.05; position:relative}
.lead{color:var(--muted);font-size:1.08rem;max-width:62ch; position:relative}
.cta-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px; position:relative}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px; position:relative}
.chips span{
  font-size:.86rem;color:rgba(255,255,255,.84);
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.04);
  padding:7px 10px;border-radius:999px
}
.hero-side{display:flex;flex-direction:column;gap:12px}
.glass{
  border:1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.05);
  border-radius: var(--radius);
  padding:18px;
}
.glass-title{font-weight:900;margin-bottom:8px;color:var(--gold)}
.list{margin:0;padding-left:18px;color:var(--muted)}

.mini-gallery{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.thumb{border-radius:16px;overflow:hidden;border:1px solid rgba(255,255,255,.10);text-decoration:none;position:relative}
.thumb img{width:100%;height:150px;object-fit:cover;display:block;filter:saturate(1.07) contrast(1.04)}
.thumb span{
  position:absolute;left:10px;bottom:10px;
  background:rgba(0,0,0,.45);backdrop-filter:blur(8px);
  border:1px solid rgba(255,255,255,.12);
  padding:8px 10px;border-radius:999px;font-weight:800;font-size:.86rem
}

.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:16px}
.card{
  border:1px solid rgba(255,255,255,.10);
  background: linear-gradient(180deg, rgba(255,255,255,.07), rgba(255,255,255,.03));
  border-radius: var(--radius);
  padding:18px;
  box-shadow: 0 12px 40px rgba(0,0,0,.30);
}
.card h2{margin:0 0 8px}
.card h3{margin:18px 0 8px}
.pagehead{margin:14px 0 18px}
.pagehead h1{margin:0 0 8px;font-size:2.05rem}
.split{display:grid;grid-template-columns:1fr 1fr;gap:14px}

.icon-row{display:flex;gap:10px;align-items:center;margin-top:10px}
.icon{
  width:40px;height:40px;border-radius:14px;
  border:1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.04);
  display:grid;place-items:center;
}
.icon img{width:26px;height:26px}

.tags{display:flex;flex-wrap:wrap;gap:8px}
.tags span{border:1px solid rgba(255,255,255,.10);background:rgba(255,255,255,.04);padding:7px 10px;border-radius:999px;color:rgba(255,255,255,.86);font-size:.86rem}
.bullets{margin:0;padding-left:18px;color:var(--muted)}

.wide{margin-top:18px}
.wide-inner{display:grid;grid-template-columns:1.1fr .9fr;gap:14px}
.ticks{display:grid;gap:10px;margin-top:10px}
.ticks > div{
  padding:10px 12px;border-radius:14px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.04);
  color:rgba(255,255,255,.86);
}

.quote-box{border:1px solid rgba(255,255,255,.10);border-radius:var(--radius);background:rgba(255,255,255,.04);padding:18px}
.quote-title{font-weight:950;color:var(--gold);margin-bottom:10px}

.form input,.form textarea{
  width:100%;padding:12px 12px;border-radius:14px;
  border:1px solid rgba(255,255,255,.12);
  background: rgba(0,0,0,.22);
  color:var(--text);
  outline:none;
}
.form textarea{min-height:110px;resize:vertical}
.form .row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.form button{margin-top:10px;width:100%}
.form-msg{margin-top:10px;color:var(--gold);font-weight:750}
.hp{display:none}

.footer{border-top:1px solid rgba(255,255,255,.08);padding:26px 18px;background:rgba(5,6,8,.6)}
.footer-grid{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:14px}
.footer-title{font-weight:950;margin-bottom:6px}
.footer-bottom{max-width:1180px;margin:14px auto 0;display:flex;justify-content:space-between;gap:12px;color:rgba(255,255,255,.74);font-size:.92rem}

.reveal{opacity:0; transform: translateY(10px); transition: opacity .5s ease, transform .5s ease}
.reveal.on{opacity:1; transform: translateY(0)}

.gallery{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.gallery img{
  width:100%;
  height:240px;
  object-fit:cover;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.10);
  box-shadow: 0 18px 55px rgba(0,0,0,.45);
}

.gallery.contain img{
  object-fit:contain;
  background:rgba(0,0,0,.35);
  padding:10px;
}

.gallery.tiles{grid-template-columns:repeat(3,1fr)}
.gallery.tiles img{height:auto;aspect-ratio:4/3;object-fit:cover}
.gallery.tiles.wide img{aspect-ratio:16/10}
.gallery.tiles.two{grid-template-columns:1fr 1fr}
.gallery.tiles.two img{aspect-ratio:16/10}
@media (max-width: 980px){
  .gallery.tiles{grid-template-columns:1fr}
  .gallery.tiles.two{grid-template-columns:1fr}
}

.cert-wrap{margin-top:12px}
.cert-sheet{
  position:relative;
  width:min(980px,100%);
  margin:0 auto;
  border-radius:18px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.12);
  background:#111;
}
.cert-bg{width:100%;display:block}
.cert-text{
  position:absolute;left:8%;top:34%;
  width:84%;
  color:#111;
  font-weight:800;
  display:grid;gap:10px;
}
.cert-text .row{display:flex;gap:10px;align-items:baseline}
.cert-text .lbl{min-width:180px;color:#111;opacity:.85}
.cert-text .val{color:#111;border-bottom:1px solid rgba(0,0,0,.35);flex:1}
.cert-actions{display:flex;gap:10px;justify-content:center;margin:14px 0}

@media (max-width: 980px){
  .hero{grid-template-columns:1fr}
  .grid{grid-template-columns:1fr}
  .split{grid-template-columns:1fr}
  .wide-inner{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr}
  html.js .nav-links{display:none}
  .nav-toggle{display:flex}
  .sticky-cta{left:14px;right:14px;justify-content:space-between}
  .gallery img{height:190px}
}
@media print{
  body{background:#fff}
  .top,.footer,.bg-layer,.scanline,.cert-actions,.sticky-cta,.wrap > :not(.cert-wrap){display:none !important}
  .wrap{padding:0}
  .cert-sheet{border:none}
}

/* --- Fleet media (photos + video) ---------------------------------------- */
.video-frame{
  border-radius:18px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.10);
  background: rgba(0,0,0,.25);
  box-shadow: 0 18px 40px rgba(0,0,0,.35);
}
.video-frame video{
  width:100%;
  height:auto;
  display:block;
}

/* Slightly nicer gallery cards */
.gallery-grid a.card img{border-radius:14px;}
