@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&display=swap');
/* ===========================================================
   Merab Dvalishvili — shared stylesheet  v4 "MODERN GLASS"
   Modern gaming/fighter: rounded, glassy, neon cyan + crimson,
   championship gold kept for title accents. No framework.
   =========================================================== */

:root{
  /* base */
  --bg:#0a0b12; --bg2:#0e1019; --ink:#eef1f7; --muted:#99a2b6; --dim:#69728a;
  --surface:rgba(22,25,36,.72); --surface-solid:#12141d; --line:rgba(255,255,255,.08);
  /* energy */
  --red:#e51d2a; --red-lt:#ff5862; --red-dk:#9c0f18;
  --cyan:#e51d2a; --cyan-lt:#ff6b74; --cyan-dk:#9c0f18;
  --gold:#eef1f6; --gold-lt:#ffffff; --gold-dk:#aab0bd;
  --violet:#7b5cff;
  /* shape */
  --r-sm:12px; --r:18px; --r-lg:26px; --r-pill:999px;
  --nav-h:84px;
  /* glow */
  --glow-cyan:0 0 26px rgba(229,29,42,.40);
  --glow-red:0 0 26px rgba(229,29,42,.42);
  --glow-gold:0 0 26px rgba(255,255,255,.34);
  --shadow:0 24px 60px rgba(0,0,0,.55);
}

*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{margin:0;background:var(--bg);}
::selection{background:var(--cyan);color:#ffffff;}
a{text-decoration:none;color:inherit;}
#merab-root section{scroll-margin-top:var(--nav-h);}

.root{position:relative;background:var(--bg);color:var(--ink);
  font-family:'Archivo',system-ui,sans-serif;min-height:100vh;overflow-x:hidden;}

/* faint global scanlines + grid for the HUD vibe */
.root::before{content:"";position:fixed;inset:0;z-index:92;pointer-events:none;opacity:.5;
  background:
    repeating-linear-gradient(0deg,rgba(255,255,255,.018) 0 1px,transparent 1px 3px),
    radial-gradient(120% 80% at 50% -10%,rgba(229,29,42,.05),transparent 60%);}

/* shapes — chamfers are now ROUNDED (modern). Override any inline polygon clips. */
.chamfer{clip-path:none !important;border-radius:var(--r-lg);}
.chamfer-sm{clip-path:none !important;border-radius:var(--r-sm);}
#merab-root [style*="clip-path:polygon"]:not(section):not(.octa){
  clip-path:none !important;border-radius:var(--r-sm) !important;}
.octa{clip-path:polygon(29% 0,71% 0,100% 29%,100% 71%,71% 100%,29% 100%,0 71%,0 29%);}

/* neon glow on big display headings */
#merab-root h1,#merab-root h2,.h2,.page-hero h1{
  text-shadow:0 0 1px rgba(255,255,255,.2),0 6px 30px rgba(229,29,42,.10);}

/* ---- animations ---- */
@keyframes marqueeScroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@keyframes goldPulse{0%,100%{opacity:.4;transform:translateX(-50%) scale(1)}50%{opacity:.85;transform:translateX(-50%) scale(1.05)}}
@keyframes redPulse{0%,100%{opacity:.25}50%{opacity:.6}}
@keyframes floatY{0%,100%{transform:translateY(0)}50%{transform:translateY(-15px)}}
@keyframes octSpin{to{transform:rotate(360deg)}}
@keyframes octSpinRev{to{transform:rotate(-360deg)}}
@keyframes introFade{to{opacity:1}}
@keyframes introSlam{0%{opacity:0;transform:scale(1.35) skewX(-8deg);filter:blur(12px)}60%{opacity:1;filter:blur(0)}100%{opacity:1;transform:scale(1) skewX(-8deg)}}
@keyframes introLine{to{width:min(380px,72vw)}}
@keyframes slashSweep{0%{transform:translateX(-160%) skewX(-18deg)}100%{transform:translateX(260%) skewX(-18deg)}}
@keyframes scanGold{0%{transform:translateX(-130%)}100%{transform:translateX(130%)}}
@keyframes introZoom{from{transform:scale(1.14)}to{transform:scale(1)}}
@keyframes borderRot{to{transform:rotate(360deg)}}
@keyframes hudPulse{0%,100%{opacity:.55}50%{opacity:1}}

/* ===================== NAV ===================== */
.nav{position:fixed;top:0;left:0;right:0;z-index:80;display:flex;align-items:center;
  justify-content:space-between;padding:14px clamp(16px,5vw,56px);
  backdrop-filter:blur(14px);background:linear-gradient(180deg,rgba(10,11,18,.86),rgba(10,11,18,.2));
  border-bottom:1px solid var(--line);}
.brand{display:flex;align-items:center;gap:12px;}
.brand-bar{display:none;}
.brand::before{content:"";display:block;width:48px;height:48px;flex:none;
  background:url("MerabLogo.webp") center/contain no-repeat;
  filter:drop-shadow(0 0 10px rgba(229,29,42,.35));}
/* UFC title belts shown next to the logo — 4 vertical belts, left to right */
.nav-belts{display:flex;align-items:center;gap:6px;margin-left:12px;flex:none;}
.nav-belts img{height:34px;width:auto;display:block;filter:drop-shadow(0 1px 3px rgba(0,0,0,.5));}
@media(max-width:600px){.nav-belts{display:none;}}
.brand-name{font-family:'Anton';font-size:24px;letter-spacing:.02em;color:#fff;line-height:1;}
.brand-sub{font-family:'Saira Condensed';font-weight:700;font-size:9px;letter-spacing:.42em;
  color:var(--cyan);margin-top:4px;}
.nav-links{display:flex;align-items:center;gap:8px;font-family:'Saira Condensed';font-weight:600;
  font-size:13px;letter-spacing:.18em;}
.nav-links a{display:inline-flex;flex-direction:column;align-items:center;gap:3px;line-height:1;
  color:#c7cdda;padding:8px 15px;border-radius:var(--r-pill);transition:.25s;position:relative;}
.nav-links a:hover{color:#fff;background:rgba(229,29,42,.10);}
.nav-links a[aria-current="page"]{color:#ffffff;background:var(--cyan);box-shadow:var(--glow-cyan);}
/* gated (not-yet-live) pages: dimmed + tiny "SOON" note underneath */
.nav-links a:not([aria-current="page"]){opacity:.42;}
.nav-links a:not([aria-current="page"]):hover{opacity:.9;}
.nav-links a:not([aria-current="page"])::after{content:"SOON";font-family:'Saira Condensed';font-weight:700;
  font-size:7px;letter-spacing:.22em;color:var(--red-lt);opacity:.9;}
.nav-mobile a:not([aria-current="page"]){opacity:.55;}
.nav-mobile a:not([aria-current="page"])::after{content:" · SOON";font-family:'Saira Condensed';font-weight:700;
  font-size:9px;letter-spacing:.16em;color:var(--red-lt);}
.nav-cta{display:none;align-items:center;gap:9px;background:rgba(229,29,42,.12);
  border:1px solid rgba(229,29,42,.5);padding:9px 16px;border-radius:var(--r-pill);
  font-family:'Saira Condensed';font-weight:700;font-size:13px;letter-spacing:.2em;color:#fff;}
.nav-cta .dot{width:7px;height:7px;background:var(--red);border-radius:50%;
  box-shadow:0 0 10px var(--red);animation:hudPulse 1.6s ease-in-out infinite;}
.lang-switch{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:var(--r-pill);
  overflow:hidden;margin-left:10px;flex:none;}
.lang-switch button{display:inline-flex;align-items:center;gap:7px;background:transparent;border:0;cursor:pointer;
  font-family:'Saira Condensed';font-weight:700;font-size:12px;letter-spacing:.08em;color:#c7cdda;padding:7px 12px;transition:.2s;}
.lang-switch button:hover{color:#fff;}
.lang-switch svg{width:20px;height:13px;border-radius:2px;display:block;flex:none;box-shadow:0 0 0 1px rgba(0,0,0,.3);}
.lang-switch[data-lang="en"] button[data-l="en"],
.lang-switch[data-lang="ka"] button[data-l="ka"]{background:var(--red);color:#fff;}
.nav-burger{display:none;flex-direction:column;gap:5px;width:42px;height:38px;justify-content:center;
  align-items:center;background:rgba(229,29,42,.10);border:1px solid rgba(229,29,42,.4);
  border-radius:12px;cursor:pointer;}
.nav-burger span{display:block;width:20px;height:2px;background:#fff;border-radius:2px;transition:.3s;}
.nav-burger.open span:nth-child(1){transform:translateY(7px) rotate(45deg);}
.nav-burger.open span:nth-child(2){opacity:0;}
.nav-burger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}
.nav-mobile{position:fixed;top:var(--nav-h);left:12px;right:12px;z-index:79;display:none;flex-direction:column;
  background:rgba(12,14,22,.97);backdrop-filter:blur(14px);border:1px solid var(--line);
  border-radius:var(--r);padding:10px;box-shadow:var(--shadow);}
.nav-mobile.open{display:flex;}
.nav-mobile a{font-family:'Saira Condensed';font-weight:600;font-size:16px;letter-spacing:.16em;
  color:#c7cdda;padding:14px 14px;border-radius:12px;}
.nav-mobile a[aria-current="page"]{color:var(--cyan);background:rgba(229,29,42,.08);}

/* ===================== layout helpers ===================== */
.wrap{max-width:1240px;margin:0 auto;position:relative;}
.section{position:relative;padding:clamp(86px,11vw,150px) clamp(22px,8vw,120px);}
/* tighter vertical rhythm — smaller gaps between sections (all pages) */
#merab-root section:not(#hero){padding-top:clamp(50px,6.5vw,92px) !important;padding-bottom:clamp(50px,6.5vw,92px) !important;}
.kicker{display:inline-flex;align-items:center;gap:10px;margin-bottom:14px;
  padding:7px 14px;border:1px solid rgba(229,29,42,.32);border-radius:var(--r-pill);
  background:rgba(229,29,42,.06);}
.kicker .bar{width:16px;height:2px;background:var(--cyan);border-radius:2px;box-shadow:0 0 8px var(--cyan);}
.kicker .label{font-family:'Saira Condensed';font-weight:700;letter-spacing:.32em;font-size:12px;color:var(--cyan-lt);}
.h2{font-family:'Anton';font-size:clamp(42px,7vw,92px);line-height:.92;margin:0;color:#fff;letter-spacing:.01em;}
.lead{font-size:clamp(16px,1.7vw,20px);line-height:1.6;color:#cfd4e0;}

/* HERO — desktop: fit exactly one viewport below the fixed nav (stats bar never cut).
   Caps the figure and the big name to the viewport HEIGHT so everything fits. */
@media(min-width:981px){
  #hero{flex-direction:column;justify-content:center;min-height:100svh !important;
    padding-top:calc(var(--nav-h) + 14px) !important;padding-bottom:clamp(14px,2.5vh,28px) !important;}
  #hero-grid{flex:1 1 auto;width:100%;align-self:center;align-items:center;
    padding-top:0 !important;padding-bottom:clamp(14px,2.5vh,44px) !important;}
  #hero-name{font-size:clamp(46px,min(9.2vw,12vh),150px) !important;}
  #hero-figure img{max-height:62svh !important;width:auto !important;max-width:100% !important;}
  #hero-stats{position:relative !important;bottom:auto !important;left:auto !important;transform:none !important;margin:0 auto !important;}
}

/* ============================================================
   v4 — MODERN GLASS  (layered on top): Plus Jakarta Sans,
   soft glassmorphism, big squircle radius, no HUD / dashes,
   flatter (no italic skew on headings).
   ============================================================ */
:root{ --r-sm:16px; --r:22px; --r-lg:32px; }

/* — typography: clean geometric sans everywhere — */
body,.root{font-family:'Plus Jakarta Sans',system-ui,-apple-system,sans-serif;}
#merab-root{font-family:'Plus Jakarta Sans',system-ui,-apple-system,sans-serif !important;}
#merab-root [style*="Anton"]{font-family:'Plus Jakarta Sans',system-ui,sans-serif !important;font-weight:800 !important;letter-spacing:-.025em !important;}
#merab-root [style*="Saira Condensed"]{font-family:'Plus Jakarta Sans',system-ui,sans-serif !important;}
.h2,.page-hero h1,.brand-name,.brand-sub,.nav-links,.nav-mobile a,.kicker .label,.lead,
.sponsor-name,.sponsor-cat,.sponsor-visit,.shop-title,.shop-desc,.shop-btn,.shop-code,
.gym-card .tag,.gym-card h3,.gym-card .addr,.gym-card .maps,.video-meta .t,.video-meta .src,
.social-card .net,.social-card .handle,.footer-name,.footer-tag,.footer-links a,.footer-bot,
.newsletter input,.newsletter button,.newsletter-done,.lang-switch button,.rec-chip{
  font-family:'Plus Jakarta Sans',system-ui,sans-serif !important;}
.h2,.page-hero h1,.sponsor-name,.shop-title,.gym-card h3,.social-card .net,.footer-name,.brand-name{
  font-weight:800 !important;letter-spacing:-.025em !important;}
.kicker .label,.brand-sub{font-weight:700 !important;}

/* — flatten the slanted/italic look on headings — */
#merab-root h1,#merab-root h2,.intro-title,.h2,.page-hero h1{transform:none !important;}

/* — kill HUD corner brackets, scanlines, thin red dash "lines" — */
.sponsor-card::before,.sponsor-card::after,.video-card::before,.video-card::after,
.social-card::before,.social-card::after,.gym-card::before,.gym-card::after,
.shop-card::before,.shop-card::after,.card::before,.card::after{content:none !important;}
.root::before{display:none !important;}
#merab-root span[style*="height:3px"][style*="var(--red)"]{display:none !important;}
.kicker .bar{display:none !important;}

/* — glassmorphism blocks: frosted, big squircle, soft shadow — */
.card,.sponsor-card,.shop-card,.gym-card,.video-card,.social-card{
  background:rgba(255,255,255,.045) !important;
  -webkit-backdrop-filter:blur(20px) saturate(1.25);backdrop-filter:blur(20px) saturate(1.25);
  border:1px solid rgba(255,255,255,.10) !important;border-radius:26px !important;
  box-shadow:0 22px 50px rgba(0,0,0,.5),inset 0 1px 0 rgba(255,255,255,.10) !important;}
.chamfer{border-radius:32px !important;}
.chamfer-sm{border-radius:18px !important;}

/* — nav as frosted glass — */
.nav{background:rgba(12,14,22,.5) !important;
  -webkit-backdrop-filter:blur(26px) saturate(1.3);backdrop-filter:blur(26px) saturate(1.3);
  border-bottom:1px solid rgba(255,255,255,.08) !important;}

/* — kicker → clean soft pill — */
.kicker{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:999px;}
.kicker .label{color:#eef1f7 !important;letter-spacing:.12em !important;}

/* — fully-round pills — */
.shop-btn,.sponsor-visit,.gym-card .maps,.newsletter button{border-radius:999px !important;}

/* inner-page hero band */
.page-hero{position:relative;padding:calc(var(--nav-h) + 72px) clamp(22px,8vw,120px) 66px;overflow:hidden;
  background:
    radial-gradient(90% 80% at 78% 20%,rgba(229,29,42,.12),transparent 55%),
    radial-gradient(80% 80% at 12% 95%,rgba(229,29,42,.16),transparent 55%),
    linear-gradient(180deg,var(--bg2),var(--bg));}
.page-hero .grid-bg{position:absolute;inset:0;opacity:.6;pointer-events:none;
  background-image:linear-gradient(rgba(255,255,255,.022) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.022) 1px,transparent 1px);
  background-size:54px 54px;
  -webkit-mask-image:radial-gradient(120% 100% at 50% 0%,#000,transparent 80%);mask-image:radial-gradient(120% 100% at 50% 0%,#000,transparent 80%);}
.page-hero .octa-ring{position:absolute;right:-8%;top:50%;transform:translateY(-50%);
  width:min(540px,68vw);height:min(540px,68vw);border:1.5px solid rgba(229,29,42,.16);
  border-radius:42px;animation:octSpin 70s linear infinite;pointer-events:none;}
.page-hero h1{font-family:'Anton';font-weight:400;font-size:clamp(52px,8vw,116px);line-height:.86;
  margin:8px 0 0;color:#fff;letter-spacing:.005em;}
.page-hero h1 .gold{background:linear-gradient(110deg,var(--cyan-lt),var(--cyan) 50%,var(--cyan-dk));
  -webkit-background-clip:text;background-clip:text;color:transparent;
  filter:drop-shadow(0 4px 24px rgba(229,29,42,.3));}
.page-hero p{max-width:560px;margin:20px 0 0;font-size:15px;line-height:1.7;color:#aeb6c6;}

/* ===================== cards + HUD corner brackets ===================== */
.card{position:relative;background:var(--surface);border:1px solid var(--line);
  border-radius:var(--r);box-shadow:var(--shadow);}
.card.gold{border-color:rgba(255,255,255,.35);}

/* HUD corner brackets on every card-like surface (no HTML change needed) */
.sponsor-card,.video-card,.social-card,.gym-card,.shop-card,.card{position:relative;}
.sponsor-card::before,.video-card::before,.social-card::before,.gym-card::before,.shop-card::before,
.sponsor-card::after,.video-card::after,.social-card::after,.gym-card::after,.shop-card::after{
  content:"";position:absolute;width:14px;height:14px;border:2px solid var(--cyan);opacity:.5;
  transition:opacity .3s,width .3s,height .3s;pointer-events:none;}
.sponsor-card::before,.video-card::before,.social-card::before,.gym-card::before,.shop-card::before{
  top:9px;left:9px;border-right:0;border-bottom:0;border-radius:6px 0 0 0;}
.sponsor-card::after,.video-card::after,.social-card::after,.gym-card::after,.shop-card::after{
  bottom:9px;right:9px;border-left:0;border-top:0;border-radius:0 0 6px 0;}
.sponsor-card:hover::before,.video-card:hover::before,.social-card:hover::before,.gym-card:hover::before,.shop-card:hover::before,
.sponsor-card:hover::after,.video-card:hover::after,.social-card:hover::after,.gym-card:hover::after,.shop-card:hover::after{
  opacity:1;width:20px;height:20px;}

/* ===================== Sponsors ===================== */
.sponsor-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px;}
.sponsor-card{display:flex;flex-direction:column;align-items:center;justify-content:space-between;gap:16px;
  padding:30px 24px;text-align:center;background:var(--surface);border:1px solid var(--line);
  border-radius:var(--r);transition:transform .35s cubic-bezier(.16,1,.3,1),border-color .3s,box-shadow .3s;}
.sponsor-card:hover{transform:translateY(-6px);border-color:rgba(229,29,42,.5);
  box-shadow:0 18px 44px rgba(0,0,0,.55),var(--glow-cyan);}
.sponsor-logo{height:90px;width:100%;display:flex;align-items:center;justify-content:center;
  background:#f4f2ec;border-radius:14px;padding:14px;box-shadow:inset 0 0 0 1px rgba(0,0,0,.06);}
.sponsor-logo img{max-height:100%;max-width:82%;width:auto;height:auto;object-fit:contain;}
.sponsor-logo.text{background:none;box-shadow:none;}
.sponsor-logo .wm{font-family:'Anton';font-size:clamp(22px,2.4vw,30px);color:var(--cyan);
  text-align:center;line-height:1;letter-spacing:.01em;text-shadow:var(--glow-cyan);}
.sponsor-name{font-family:'Anton';font-size:20px;color:#fff;line-height:1;}
.sponsor-cat{font-family:'Saira Condensed';font-weight:600;letter-spacing:.14em;font-size:11px;color:var(--muted);
  text-transform:uppercase;margin-top:7px;}
.sponsor-visit{font-family:'Saira Condensed';font-weight:800;letter-spacing:.12em;font-size:11px;color:var(--cyan);
  border:1px solid rgba(229,29,42,.45);padding:8px 15px;border-radius:var(--r-pill);transition:.25s;}
.sponsor-card:hover .sponsor-visit{background:var(--cyan);color:#ffffff;box-shadow:var(--glow-cyan);}

/* ===================== Shop / affiliates ===================== */
.shop-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
.shop-card{position:relative;display:flex;flex-direction:column;gap:16px;padding:30px 26px;overflow:hidden;
  background:linear-gradient(160deg,rgba(229,29,42,.06),var(--surface));border:1px solid var(--line);
  border-radius:var(--r);transition:transform .35s cubic-bezier(.16,1,.3,1),box-shadow .3s,border-color .3s;}
.shop-card:hover{transform:translateY(-6px);border-color:rgba(229,29,42,.5);box-shadow:0 20px 48px rgba(0,0,0,.55),var(--glow-cyan);}
.shop-card .topbar{position:absolute;top:0;left:24px;right:24px;height:2px;border-radius:2px;
  background:linear-gradient(90deg,transparent,var(--cyan),transparent);}
.shop-logo{height:50px;display:flex;align-items:center;background:#f4f2ec;border-radius:12px;padding:8px 12px;align-self:flex-start;}
.shop-logo img{max-height:34px;max-width:160px;object-fit:contain;}
.shop-title{font-family:'Anton';font-size:24px;color:#fff;}
.shop-desc{font-size:13px;line-height:1.6;color:#aeb6c6;}
.shop-code{display:inline-block;font-family:'Saira Condensed';font-weight:800;letter-spacing:.14em;font-size:12px;
  color:#ffffff;background:var(--cyan);padding:7px 13px;border-radius:var(--r-pill);box-shadow:var(--glow-cyan);}
.shop-btn{margin-top:auto;align-self:flex-start;font-family:'Saira Condensed';font-weight:800;letter-spacing:.14em;
  font-size:13px;color:#ffffff;background:var(--cyan);padding:13px 24px;border-radius:var(--r-pill);transition:.25s;}
.shop-btn:hover{box-shadow:var(--glow-cyan);transform:translateY(-2px);}

/* ===================== Gyms ===================== */
.gym-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;}
.gym-card{position:relative;padding:30px 28px;background:var(--surface);border:1px solid var(--line);
  border-radius:var(--r);transition:transform .35s cubic-bezier(.16,1,.3,1),border-color .3s,box-shadow .3s;}
.gym-card:hover{transform:translateY(-4px);border-color:rgba(229,29,42,.45);box-shadow:0 18px 40px rgba(0,0,0,.5),var(--glow-red);}
.gym-logo{width:120px;height:104px;display:flex;align-items:center;justify-content:center;
  background:#f4f2ec;border-radius:14px;padding:12px;margin-bottom:18px;box-shadow:inset 0 0 0 1px rgba(0,0,0,.06);}
.gym-logo img{max-height:100%;max-width:100%;object-fit:contain;}
.gym-card .tag{font-family:'Saira Condensed';font-weight:800;letter-spacing:.2em;font-size:11px;color:var(--red-lt);}
.gym-card h3{font-family:'Anton';font-size:clamp(24px,3vw,34px);color:#fff;margin:10px 0 6px;}
.gym-card .addr{font-size:14px;line-height:1.6;color:#aeb6c6;}
.gym-card .maps{display:inline-block;margin-top:16px;font-family:'Saira Condensed';font-weight:800;letter-spacing:.12em;
  font-size:11px;color:var(--cyan);border:1px solid rgba(229,29,42,.45);padding:9px 16px;border-radius:var(--r-pill);transition:.25s;}
.gym-card .maps:hover{background:var(--cyan);color:#ffffff;box-shadow:var(--glow-cyan);}

/* ===================== Media / videos ===================== */
.video-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;}
.video-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;
  transition:transform .35s cubic-bezier(.16,1,.3,1),border-color .3s,box-shadow .3s;}
.video-card:hover{transform:translateY(-4px);border-color:rgba(229,29,42,.5);box-shadow:0 18px 44px rgba(0,0,0,.55),var(--glow-cyan);}
.video-embed{position:relative;width:100%;aspect-ratio:16/9;background:#000;overflow:hidden;}
.video-embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0;}
.video-meta{padding:16px 18px;}
.video-meta .t{font-family:'Saira Condensed';font-weight:700;font-size:15px;color:#fff;line-height:1.3;}
.video-meta .src{display:inline-block;font-family:'Saira Condensed';font-weight:700;letter-spacing:.12em;font-size:10px;
  color:var(--cyan);text-transform:uppercase;margin-top:9px;border:1px solid rgba(229,29,42,.3);padding:3px 9px;border-radius:var(--r-pill);}

/* ===================== Contact / social ===================== */
.social-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}
.social-card{display:flex;align-items:center;gap:16px;padding:24px;background:var(--surface);
  border:1px solid var(--line);border-radius:var(--r);transition:transform .35s cubic-bezier(.16,1,.3,1),border-color .3s,box-shadow .3s;}
.social-card:hover{transform:translateY(-5px);border-color:rgba(229,29,42,.55);box-shadow:0 18px 40px rgba(0,0,0,.5),var(--glow-cyan);}
.social-card .ic{width:48px;height:48px;flex:none;display:flex;align-items:center;justify-content:center;
  background:rgba(229,29,42,.1);border:1px solid rgba(229,29,42,.35);border-radius:14px;}
.social-card .ic svg{width:22px;height:22px;fill:var(--cyan);}
.social-card:hover .ic{background:var(--cyan);}
.social-card:hover .ic svg{fill:#ffffff;}
.social-card .net{font-family:'Anton';font-size:20px;color:#fff;line-height:1;}
.social-card .handle{font-family:'Saira Condensed';font-weight:600;font-size:12px;letter-spacing:.06em;color:var(--muted);margin-top:5px;}

/* Newsletter */
.newsletter{display:flex;gap:0;border:1px solid rgba(255,255,255,.18);border-radius:var(--r-pill);
  overflow:hidden;max-width:440px;background:rgba(255,255,255,.03);}
.newsletter input{flex:1;background:transparent;border:none;outline:none;color:#fff;font-family:'Archivo';font-size:14px;padding:14px 20px;}
.newsletter button{background:var(--cyan);color:#ffffff;border:none;font-family:'Saira Condensed';font-weight:800;
  letter-spacing:.1em;font-size:13px;padding:0 26px;cursor:pointer;transition:.25s;}
.newsletter button:hover{box-shadow:var(--glow-cyan);}
.newsletter-done{display:none;font-family:'Saira Condensed';font-weight:700;letter-spacing:.1em;color:var(--cyan);
  font-size:14px;margin-top:14px;}

/* ===================== Instagram feed ===================== */
.ig-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;}
.ig-tile{position:relative;display:block;aspect-ratio:1/1;border-radius:var(--r-sm);overflow:hidden;
  border:1px solid var(--line);background:#10131c;}
.ig-tile img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s cubic-bezier(.16,1,.3,1);}
.ig-tile:hover img{transform:scale(1.07);}
.ig-ov{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;opacity:0;
  background:rgba(10,11,18,.42);transition:opacity .3s;}
.ig-tile:hover .ig-ov{opacity:1;}
.ig-ov svg{filter:drop-shadow(0 2px 8px rgba(0,0,0,.6));}
@media(max-width:980px){.ig-grid{grid-template-columns:repeat(2,1fr);}}

/* ===================== Rankings flags + W/L form ===================== */
.rk-flag{width:24px;height:16px;border-radius:3px;object-fit:cover;flex:none;box-shadow:0 0 0 1px rgba(0,0,0,.4);}
.rk-form{display:inline-flex;gap:3px;flex:none;margin-left:auto;padding-left:14px;}
.rk-form i{font-style:normal;width:18px;height:18px;border-radius:6px;display:inline-flex;align-items:center;
  justify-content:center;font-family:'Saira Condensed';font-weight:800;font-size:9px;}
.rk-form i.w{background:rgba(34,197,94,.16);color:#5fe08a;box-shadow:inset 0 0 0 1px rgba(34,197,94,.42);}
.rk-form i.l{background:rgba(229,29,42,.16);color:#ff6b74;box-shadow:inset 0 0 0 1px rgba(229,29,42,.42);}
/* THE RECORD — former-champion chips */
.rec-chip{display:inline-flex;align-items:center;gap:8px;font-family:'Saira Condensed';font-weight:600;font-size:14px;
  letter-spacing:.03em;color:#fff;border:1px solid rgba(229,29,42,.4);border-radius:var(--r-pill);padding:9px 16px;
  background:rgba(229,29,42,.06);transition:transform .25s,border-color .25s,background .25s;}
.rec-chip:hover{border-color:rgba(229,29,42,.75);background:rgba(229,29,42,.14);transform:translateY(-2px);}
.rec-chip b{color:var(--red-lt);font-weight:800;font-size:12px;}
@media(max-width:380px){.rk-form{display:none;}}

/* ===================== Intro — mobile fit ===================== */
@media(max-width:560px){
  #merab-intro .intro-title{font-size:clamp(30px,11vw,72px) !important;}
  #merab-intro .intro-kicker{flex-wrap:wrap;gap:6px !important;}
  #merab-intro .intro-kicker span:nth-child(2){font-size:9px !important;letter-spacing:.16em !important;}
  #merab-intro .intro-kicker span:nth-child(1),#merab-intro .intro-kicker span:nth-child(3){width:18px !important;}
  #merab-intro .intro-stats{gap:10px !important;}
  #merab-intro .intro-stats > div > div:first-child{font-size:17px !important;}
  #merab-intro .intro-stats > div > div:last-child{font-size:8px !important;letter-spacing:.1em !important;}
}

/* ===================== Footer ===================== */
.footer{position:relative;padding:clamp(60px,8vw,100px) clamp(22px,8vw,120px) 40px;background:#070810;
  border-top:1px solid var(--line);overflow:hidden;}
.footer::before{content:"";position:absolute;top:-1px;left:0;right:0;height:2px;
  background:linear-gradient(90deg,transparent,var(--red),var(--cyan),transparent);opacity:.7;}
.footer .ghost{position:absolute;bottom:-4vw;left:50%;transform:translateX(-50%);
  font-family:'Anton';font-size:17vw;color:rgba(255,255,255,.02);white-space:nowrap;pointer-events:none;}
.footer-top{display:flex;justify-content:space-between;align-items:flex-start;gap:40px;flex-wrap:wrap;
  border-bottom:1px solid var(--line);padding-bottom:40px;}
.footer-name{font-family:'Anton';font-size:clamp(32px,4vw,52px);color:#fff;line-height:.88;}
.footer-name span{color:var(--cyan);}
.footer-name::before{content:"";display:block;width:78px;height:78px;margin-bottom:16px;
  background:url("MerabLogo.webp") center/contain no-repeat;filter:drop-shadow(0 0 12px rgba(229,29,42,.3));}
.footer-tag{font-family:'Saira Condensed';font-weight:600;letter-spacing:.28em;font-size:12px;color:var(--dim);margin-top:16px;}
.footer-links{display:flex;gap:10px;margin-top:20px;flex-wrap:wrap;}
.footer-links a{font-family:'Saira Condensed';font-weight:600;letter-spacing:.14em;font-size:12px;color:var(--muted);
  border:1px solid var(--line);padding:8px 14px;border-radius:var(--r-pill);transition:.25s;}
.footer-links a:hover{color:var(--cyan);border-color:rgba(229,29,42,.45);}
.footer-bot{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-top:24px;font-size:12px;
  color:#586079;font-family:'Saira Condensed';font-weight:500;letter-spacing:.08em;}

/* ===================== Responsive ===================== */
@media(max-width:980px){
  #hero-grid{grid-template-columns:1fr !important;text-align:center;padding-top:118px !important;}
  #hero-figure{margin:0 auto;order:-1;max-width:340px !important;}
  #hero-stats{position:static !important;transform:none !important;margin:34px auto 0 !important;}
  #vindex,.nav-links,.nav-cta{display:none !important;}
  .nav-burger{display:flex;}
  #champ-grid,#tape-grid,#story-grid,#record-grid{grid-template-columns:1fr !important;}
  #reign-grid{grid-template-columns:1fr 1fr !important;}
  #gallery-grid{grid-template-columns:1fr 1fr !important;}
  #hero-name{font-size:clamp(58px,17vw,96px) !important;}
  .hero-kicker{justify-content:center;}
  .shop-grid,.social-grid{grid-template-columns:1fr !important;}
  .video-grid{grid-template-columns:1fr !important;}
  .gym-grid{grid-template-columns:1fr !important;}
}
@media(max-width:560px){
  #reign-grid,#gallery-grid{grid-template-columns:1fr !important;}
  .sponsor-grid{grid-template-columns:1fr 1fr !important;}
}

/* ============================================================
   BENTO — premium dashboard-style stat grid (tape + record)
   ============================================================ */
.bento{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;grid-auto-rows:minmax(118px,auto);}
.bt{position:relative;border-radius:26px;padding:24px;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end;
  background:rgba(255,255,255,.045);-webkit-backdrop-filter:blur(20px) saturate(1.2);backdrop-filter:blur(20px) saturate(1.2);
  border:1px solid rgba(255,255,255,.10);box-shadow:0 22px 50px rgba(0,0,0,.5),inset 0 1px 0 rgba(255,255,255,.08);
  transition:transform .4s cubic-bezier(.16,1,.3,1),border-color .3s,box-shadow .3s;}
.bt:hover{transform:translateY(-5px);border-color:rgba(229,29,42,.45);box-shadow:0 26px 60px rgba(0,0,0,.55),var(--glow-red);}
.bt .num{font-family:'Plus Jakarta Sans',sans-serif;font-weight:800;font-size:clamp(40px,5vw,70px);line-height:.88;letter-spacing:-.035em;color:#fff;}
.bt .lab{font-family:'Plus Jakarta Sans',sans-serif;font-weight:600;font-size:11.5px;letter-spacing:.06em;color:#9aa3b6;margin-top:10px;text-transform:uppercase;}
.bt .tag{align-self:flex-start;margin-top:13px;font-family:'Plus Jakarta Sans',sans-serif;font-weight:700;font-size:10px;letter-spacing:.1em;
  padding:5px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.2);color:#cfd4e0;text-transform:uppercase;}
.bt.red{background:linear-gradient(150deg,var(--red),#7c0c1c);border-color:transparent;box-shadow:0 24px 54px rgba(229,29,42,.28),inset 0 1px 0 rgba(255,255,255,.18);}
.bt.red .num{color:#fff;} .bt.red .lab{color:rgba(255,255,255,.85);} .bt.red .tag{border-color:rgba(255,255,255,.55);color:#fff;}
.bt.feature{padding:0;justify-content:flex-end;min-height:300px;}
.bt.feature img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 12%;}
.bt.feature .ov{position:relative;z-index:1;padding:24px;width:100%;
  background:linear-gradient(to top,rgba(8,8,12,.94),rgba(8,8,12,.15) 58%,transparent);}
.bt.feature .nm{font-family:'Plus Jakarta Sans',sans-serif;font-weight:800;font-size:clamp(22px,2.3vw,30px);letter-spacing:-.02em;color:#fff;line-height:1;}
.bt.feature .sub{font-family:'Plus Jakarta Sans',sans-serif;font-weight:700;font-size:11px;letter-spacing:.14em;color:var(--red-lt);margin-top:7px;text-transform:uppercase;}
.bt-chips{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px;}
.bt-chips span{font-family:'Plus Jakarta Sans',sans-serif;font-weight:600;font-size:11px;color:#cfd4e0;padding:5px 11px;border-radius:999px;border:1px solid rgba(255,255,255,.16);}
.bt.strip{flex-direction:row;flex-wrap:wrap;padding:0;}
.bt.strip .m{flex:1 1 30%;min-width:140px;padding:18px 22px;}
.bt.strip .m .k{font-family:'Plus Jakarta Sans',sans-serif;font-weight:700;font-size:11px;letter-spacing:.1em;color:var(--red-lt);text-transform:uppercase;}
.bt.strip .m .v{font-family:'Plus Jakarta Sans',sans-serif;font-weight:800;font-size:clamp(16px,1.5vw,20px);color:#fff;margin-top:6px;letter-spacing:-.01em;}
.col2{grid-column:span 2;} .col4{grid-column:span 4;} .row2{grid-row:span 2;}
@media(max-width:920px){
  .bento{grid-template-columns:repeat(2,1fr);}
  .col2{grid-column:span 2;} .col4{grid-column:span 2;} .row2{grid-row:auto;}
  .bt.feature{grid-column:span 2;min-height:340px;}
}
@media(max-width:520px){ .bento{grid-template-columns:1fr;} .col2,.col4,.bt.feature{grid-column:auto;} }

/* — bento polish: watermark icons, donut chart, feature duotone — */
.bt-ic{position:absolute;top:20px;right:20px;width:42px;height:42px;opacity:.15;stroke:#fff;stroke-width:1.6;
  fill:none;pointer-events:none;z-index:1;}
.bt.red .bt-ic{opacity:.32;}
.bt.feature img{z-index:0;}
.bt.feature::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;
  background:linear-gradient(120deg,rgba(229,29,42,.30),transparent 55%);}
.bt.feature .ov{z-index:2;}
.donut{width:132px;height:132px;border-radius:50%;flex:none;position:relative;
  filter:drop-shadow(0 8px 20px rgba(229,29,42,.25));}
.donut::after{content:attr(data-c);position:absolute;inset:16px;border-radius:50%;background:#0e1018;
  display:flex;align-items:center;justify-content:center;font-family:'Plus Jakarta Sans',sans-serif;
  font-weight:800;font-size:22px;color:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.06);}
.dleg{display:flex;flex-direction:column;gap:12px;min-width:150px;}
.dleg .row{display:flex;align-items:center;gap:11px;font-family:'Plus Jakarta Sans',sans-serif;font-weight:600;font-size:13px;color:#cfd4e0;}
.dleg .dot{width:11px;height:11px;border-radius:4px;flex:none;}
.dleg b{margin-left:auto;color:#fff;font-weight:800;}

/* — mobile hero fit (Plus Jakarta is wider than the old condensed font) — */
@media(max-width:980px){
  #hero-name{font-size:clamp(38px,10vw,72px) !important;}
}
@media(max-width:560px){
  #hero-grid{padding-left:18px !important;padding-right:18px !important;}
  #merab-root [style*="Saira Condensed"]{letter-spacing:.08em !important;}
  #hero-name{font-size:clamp(34px,10.5vw,60px) !important;}
}

/* — cleaner mobile header — */
@media(max-width:600px){
  .nav{padding:12px 18px;}
  .brand-name,.brand-sub{display:none;}          /* logo already reads "THE MACHINE" */
  .brand::before{width:44px;height:44px;}
  .lang-switch{margin-left:auto;margin-right:10px;}   /* group with the burger on the right */
  .lang-switch button{padding:7px 9px;gap:0;}
  .lang-switch button span{display:none;}        /* flags only, compact */
  .lang-switch svg{width:23px;height:15px;}
  .nav-burger{display:flex !important;flex:none;background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.2);}
}

/* — kill horizontal overflow on mobile (was pushing the nav/burger off-screen) — */
html,body{overflow-x:hidden;}
@media(max-width:600px){
  .page-hero .octa-ring{display:none;}
}

/* — mobile hero: centered full-width text + record bar at the very end — */
@media(max-width:980px){
  #hero{flex-direction:column !important;justify-content:flex-start !important;
    min-height:100vh !important;padding-bottom:46px !important;}
  /* first screen = figure + identity, vertically centered in the 100vh (small
     balanced margins, name fully visible); description is moved out, after it */
  #hero-grid{display:flex !important;flex-direction:column !important;justify-content:center !important;
    width:100%;order:1;min-height:100vh !important;padding:88px 18px 20px !important;}
  #hero-figure{order:-1;max-width:none !important;margin:0 auto !important;}
  #hero-figure img{max-height:52vh !important;height:auto !important;width:auto !important;max-width:84vw !important;}
  #hero-grid > div:first-child{flex:0 0 auto;display:flex;flex-direction:column;align-items:center;text-align:center;width:100%;}
  #hero-grid > div:first-child > div{justify-content:center;}
  .hero-kicker{justify-content:center !important;}
  /* description + CTAs: moved OUT of the 100vh by JS; relative+z-index keeps them above the hero bg */
  .hero-extra{order:5;position:relative;z-index:6;width:100%;max-width:560px;margin:20px auto 0;padding:0 20px;text-align:center;}
  .hero-extra p{margin:0 auto !important;max-width:520px;}
  .hero-extra > div{justify-content:center !important;}
  #hero-stats{position:static !important;order:9 !important;z-index:6 !important;left:auto !important;transform:none !important;
    width:100% !important;max-width:540px !important;margin:22px auto 0 !important;}
}

/* — mobile RECORD bar: 2x2 grid, no skewed dividers, each value on one line — */
@media(max-width:560px){
  #hero-stats{margin-top:16px !important;}
  #hero-stats > div > div{display:grid !important;grid-template-columns:1fr 1fr !important;
    gap:18px 14px !important;justify-content:initial !important;padding:24px !important;text-align:center !important;}
  #hero-stats > div > div > div[style*="width:2px"]{display:none !important;}
}
