
:root{--bg:#07070a;--panel:#111117;--panel2:#17171e;--text:#f7f7f8;--muted:#a9abb4;--red:#ef233c;--red2:#9d1022;--line:rgba(255,255,255,.1);--max:1200px;--r:24px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{
  margin:0;
  min-height:100vh;
  background:
    radial-gradient(circle at 82% 8%,rgba(239,35,60,.18),transparent 24%),
    radial-gradient(circle at 18% 30%,rgba(125,0,18,.18),transparent 28%),
    radial-gradient(circle at 50% 100%,rgba(90,0,12,.26),transparent 38%),
    linear-gradient(180deg,#09090d 0%,#060608 58%,#09070a 100%);
  color:var(--text);
  font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;
  line-height:1.55;
  overflow-x:hidden;
  position:relative;
}
body:before{
  content:"";
  position:fixed;
  inset:0;
  z-index:-5;
  opacity:.17;
  background-image:
    linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);
  background-size:58px 58px;
  mask-image:linear-gradient(to bottom,rgba(0,0,0,.9),rgba(0,0,0,.25));
}
body:after{
  content:"";
  position:fixed;
  inset:-12%;
  z-index:-6;
  pointer-events:none;
  background:
    radial-gradient(ellipse at 12% 16%,rgba(239,35,60,.13),transparent 18%),
    radial-gradient(ellipse at 88% 72%,rgba(239,35,60,.1),transparent 22%),
    radial-gradient(ellipse at 56% 44%,rgba(255,255,255,.03),transparent 30%);
  filter:blur(28px);
  animation:higanbanaMist 18s ease-in-out infinite alternate;
}a{color:inherit}img{max-width:100%;display:block}.container{width:min(var(--max),calc(100% - 40px));margin:auto}.site-header{position:sticky;top:0;z-index:50;border-bottom:1px solid var(--line);background:rgba(7,7,10,.84);backdrop-filter:blur(18px)}.header-inner{height:78px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:20px}.menu-button{width:44px;height:44px;border:1px solid rgba(239,35,60,.45);border-radius:50%;background:rgba(239,35,60,.08);color:#fff;font-size:20px;cursor:pointer}.brand{justify-self:center}.brand img{width:250px;height:62px;object-fit:contain}.live-pill{display:inline-flex;gap:8px;align-items:center;padding:10px 15px;border:1px solid rgba(239,35,60,.45);border-radius:999px;text-decoration:none;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.8px}.dot{width:8px;height:8px;border-radius:50%;background:var(--red);box-shadow:0 0 0 5px rgba(239,35,60,.12)}.menu-overlay{position:fixed;inset:0;z-index:80;background:rgba(0,0,0,.7);opacity:0;visibility:hidden;transition:.2s}.menu-overlay.open{opacity:1;visibility:visible}.side-menu{position:fixed;inset:0 auto 0 0;z-index:90;width:min(390px,90vw);padding:90px 26px 30px;background:#0b0b10;border-right:1px solid var(--line);transform:translateX(-102%);transition:.25s;overflow:auto}.side-menu.open{transform:none}.close-menu{position:absolute;right:20px;top:18px;border:0;background:none;color:white;font-size:36px;cursor:pointer}.menu-label,.kicker{color:#ff6678;font-size:11px;font-weight:900;letter-spacing:1.8px;text-transform:uppercase}.menu-links{display:grid;gap:7px}.menu-links a{padding:13px 15px;border:1px solid transparent;border-radius:14px;text-decoration:none;font-weight:800;background:rgba(255,255,255,.025)}.menu-links a:hover,.menu-links a.active{border-color:rgba(239,35,60,.48);background:rgba(239,35,60,.08)}.menu-socials{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:22px}.menu-socials a{padding:10px;border:1px solid var(--line);border-radius:12px;text-align:center;text-decoration:none;font-size:13px}.hero{min-height:calc(100vh - 78px);display:grid;grid-template-columns:1.1fr .9fr;gap:50px;align-items:center;padding:72px 0}.hero h1,.page-hero h1{margin:18px 0;font-size:clamp(48px,8vw,102px);line-height:.88;letter-spacing:-5px;text-transform:uppercase}.hero h1 span,.page-hero h1 span,.red{color:var(--red)}.lead{max-width:680px;color:#c7c8ce;font-size:clamp(17px,2vw,21px)}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:49px;padding:0 21px;border:0;border-radius:999px;background:linear-gradient(135deg,var(--red),var(--red2));color:#fff;text-decoration:none;text-transform:uppercase;font-size:12px;font-weight:900;letter-spacing:1px;box-shadow:0 14px 32px rgba(239,35,60,.2)}.btn.secondary{background:rgba(255,255,255,.04);border:1px solid var(--line);box-shadow:none}.hero-card{min-height:510px;position:relative;display:flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:34px;background:radial-gradient(circle,rgba(239,35,60,.24),transparent 35%),linear-gradient(145deg,#19151b,#09090d);overflow:hidden}.hero-card:after{content:"47";position:absolute;right:-5px;bottom:-85px;color:rgba(255,255,255,.035);font-size:300px;font-weight:950}.hero-card img{width:88%;position:relative;z-index:2}.status-card{position:absolute;left:20px;right:20px;bottom:20px;z-index:3;padding:17px 18px;border:1px solid var(--line);border-radius:18px;background:rgba(5,5,8,.78);backdrop-filter:blur(12px)}.status-card strong{display:block}.status-card span{color:var(--muted);font-size:13px}.section{padding:82px 0}.section.compact{padding-top:30px}.section-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:26px}.section-title{margin:0;font-size:clamp(34px,5vw,58px);line-height:.95;letter-spacing:-2px;text-transform:uppercase}.text-link{color:#ddd;text-decoration:none;font-weight:800}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.grid.two{grid-template-columns:repeat(2,1fr)}.card{padding:25px;border:1px solid var(--line);border-radius:var(--r);background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.02))}.card h2,.card h3{margin:5px 0 10px}.card p{color:var(--muted);margin-bottom:0}.card .btn{margin-top:18px}.video-card{display:grid;grid-template-columns:1.2fr .8fr;overflow:hidden;padding:0}.video-placeholder{min-height:330px;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle,rgba(239,35,60,.22),transparent 38%),#0d0d12;font-size:80px}.video-copy{padding:32px;align-self:center}.social-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.social-card{padding:20px 10px;border:1px solid var(--line);border-radius:18px;text-align:center;text-decoration:none;font-weight:900;background:rgba(255,255,255,.03)}.social-card:hover{transform:translateY(-3px);border-color:rgba(239,35,60,.5)}.page-hero{padding:90px 0 45px}.page-hero h1{font-size:clamp(48px,7vw,86px);max-width:1000px}.page-hero p{max-width:760px;color:var(--muted);font-size:19px}.schedule{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.schedule strong{color:#ff697b}.notice{padding:16px 18px;border-left:3px solid var(--red);background:rgba(239,35,60,.07);color:#d6d7dc;border-radius:0 14px 14px 0}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.gallery-item{aspect-ratio:4/3;display:flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:22px;background:radial-gradient(circle,rgba(239,35,60,.18),transparent 38%),#101016;overflow:hidden}.gallery-item img{width:72%}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}.stat{padding:24px;border:1px solid var(--line);border-radius:20px;background:rgba(255,255,255,.03)}.stat strong{display:block;font-size:30px}.stat span{color:var(--muted)}form{display:grid;gap:12px}input,textarea{width:100%;padding:15px 16px;border:1px solid var(--line);border-radius:14px;background:#0b0b10;color:white;font:inherit}textarea{min-height:150px;resize:vertical}.footer{margin-top:70px;padding:35px 0;border-top:1px solid var(--line);color:var(--muted);font-size:13px}.footer-inner{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}.footer a{text-decoration:none}.muted{color:var(--muted)}@media(max-width:900px){.hero{grid-template-columns:1fr;min-height:auto}.hero-card{min-height:360px}.grid,.grid.two,.schedule,.stats{grid-template-columns:1fr 1fr}.social-grid{grid-template-columns:repeat(3,1fr)}.video-card{grid-template-columns:1fr}.video-placeholder{min-height:250px}}@media(max-width:620px){.container{width:min(100% - 26px,var(--max))}.header-inner{grid-template-columns:auto 1fr auto}.brand img{width:150px}.live-pill{padding:9px}.live-pill .label{display:none}.hero{padding:48px 0}.hero h1,.page-hero h1{letter-spacing:-3px}.hero-card{min-height:280px}.grid,.grid.two,.schedule,.stats,.gallery{grid-template-columns:1fr}.social-grid{grid-template-columns:1fr 1fr}.section{padding:62px 0}.section-head{align-items:start;flex-direction:column}}


/* ===== HIGANBANA BACKGROUND ===== */
@keyframes higanbanaMist{
  0%{transform:translate3d(-1%,0,0) scale(1)}
  100%{transform:translate3d(1.8%,-1.4%,0) scale(1.05)}
}

.higanbana-layer{
  position:fixed;
  inset:0;
  z-index:-2;
  pointer-events:none;
  overflow:hidden;
}

.higanbana-glow{
  position:absolute;
  border-radius:50%;
  filter:blur(70px);
  opacity:.13;
  animation:glowDrift 14s ease-in-out infinite alternate;
}

.higanbana-glow.one{
  width:320px;
  height:320px;
  left:-80px;
  top:18%;
  background:#ef233c;
}

.higanbana-glow.two{
  width:280px;
  height:280px;
  right:-70px;
  top:58%;
  background:#9d1022;
  animation-delay:-5s;
}

@keyframes glowDrift{
  from{transform:translate3d(0,0,0) scale(1)}
  to{transform:translate3d(28px,-18px,0) scale(1.08)}
}

.higanbana-petal{
  position:absolute;
  top:-12vh;
  width:14px;
  height:26px;
  border-radius:80% 10% 80% 10%;
  background:
    linear-gradient(150deg,rgba(255,95,110,.95),rgba(239,35,60,.9) 45%,rgba(110,0,18,.72));
  box-shadow:0 0 14px rgba(239,35,60,.18);
  opacity:.28;
  transform:rotate(35deg);
  animation-name:petalFall,petalSway;
  animation-timing-function:linear,ease-in-out;
  animation-iteration-count:infinite,infinite;
  will-change:transform;
}

@keyframes petalFall{
  0%{translate:0 -14vh;rotate:0deg}
  100%{translate:0 118vh;rotate:420deg}
}

@keyframes petalSway{
  0%,100%{margin-left:0}
  50%{margin-left:48px}
}

/* ===== GLASSMORPHISM MENU ===== */
.site-header{
  background:rgba(7,7,10,.72);
  backdrop-filter:blur(22px) saturate(125%);
  -webkit-backdrop-filter:blur(22px) saturate(125%);
  box-shadow:0 12px 34px rgba(0,0,0,.2);
}

.menu-overlay{
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
  background:
    radial-gradient(circle at 10% 50%,rgba(239,35,60,.14),transparent 28%),
    rgba(0,0,0,.72);
  transition:opacity .32s ease,visibility .32s ease;
}

.side-menu{
  width:min(410px,92vw);
  padding:92px 28px 32px;
  background:
    linear-gradient(180deg,rgba(18,18,25,.82),rgba(8,8,12,.88)),
    radial-gradient(circle at 0% 10%,rgba(239,35,60,.16),transparent 30%);
  backdrop-filter:blur(28px) saturate(135%);
  -webkit-backdrop-filter:blur(28px) saturate(135%);
  border-right:1px solid rgba(255,255,255,.09);
  box-shadow:28px 0 80px rgba(0,0,0,.5),inset -1px 0 0 rgba(239,35,60,.08);
  transform:translateX(-104%);
  transition:transform .42s cubic-bezier(.22,.8,.26,1);
}

.side-menu:before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(120deg,rgba(255,255,255,.035),transparent 28%),
    radial-gradient(circle at 16% 84%,rgba(239,35,60,.08),transparent 24%);
}

.side-menu:after{
  content:"47";
  position:absolute;
  right:18px;
  bottom:24px;
  color:rgba(255,255,255,.04);
  font-size:44px;
  font-weight:900;
  letter-spacing:8px;
  writing-mode:vertical-rl;
  pointer-events:none;
}

.side-menu.open{transform:translateX(0)}

.menu-button{
  transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease,background .25s ease;
}

.menu-button:hover{
  transform:translateY(-2px);
  border-color:rgba(239,35,60,.85);
  background:rgba(239,35,60,.14);
  box-shadow:0 0 28px rgba(239,35,60,.18);
}

.close-menu{
  width:46px;
  height:46px;
  display:grid;
  place-items:center;
  right:18px;
  top:16px;
  border:1px solid rgba(255,255,255,.1);
  border-radius:50%;
  background:rgba(255,255,255,.035);
  transition:transform .25s ease,border-color .25s ease,background .25s ease;
}

.close-menu:hover{
  transform:rotate(90deg);
  border-color:rgba(239,35,60,.55);
  background:rgba(239,35,60,.1);
}

.menu-label{
  position:relative;
  margin:0 0 18px;
  padding-bottom:14px;
}

.menu-label:after{
  content:"";
  position:absolute;
  left:0;
  bottom:0;
  width:64px;
  height:2px;
  background:linear-gradient(90deg,var(--red),transparent);
  box-shadow:0 0 14px rgba(239,35,60,.32);
}

.menu-links{gap:9px}

.menu-links a{
  position:relative;
  padding:15px 16px 15px 18px;
  border:1px solid rgba(255,255,255,.055);
  border-radius:16px;
  background:linear-gradient(145deg,rgba(255,255,255,.04),rgba(255,255,255,.015));
  transition:transform .22s ease,border-color .22s ease,background .22s ease,box-shadow .22s ease;
  overflow:hidden;
}

.menu-links a:before{
  content:"";
  position:absolute;
  left:0;
  top:50%;
  width:3px;
  height:0;
  border-radius:999px;
  background:var(--red);
  box-shadow:0 0 14px rgba(239,35,60,.55);
  transform:translateY(-50%);
  transition:height .22s ease;
}

.menu-links a:hover,
.menu-links a.active{
  transform:translateX(5px);
  border-color:rgba(239,35,60,.45);
  background:linear-gradient(145deg,rgba(239,35,60,.12),rgba(255,255,255,.025));
  box-shadow:0 10px 26px rgba(0,0,0,.18),0 0 20px rgba(239,35,60,.08);
}

.menu-links a:hover:before,
.menu-links a.active:before{height:52%}

.menu-socials{
  position:relative;
  margin-top:26px;
  padding-top:20px;
  border-top:1px solid rgba(255,255,255,.075);
}

.menu-socials a{
  background:rgba(255,255,255,.025);
  transition:transform .22s ease,border-color .22s ease,background .22s ease;
}

.menu-socials a:hover{
  transform:translateY(-2px);
  border-color:rgba(239,35,60,.42);
  background:rgba(239,35,60,.08);
}

@media(max-width:620px){
  .higanbana-petal{opacity:.18}
  .side-menu{padding-left:20px;padding-right:20px}
  .side-menu:after{font-size:34px}
}

@media(prefers-reduced-motion:reduce){
  body:after,
  .higanbana-glow,
  .higanbana-petal,
  .side-menu,
  .menu-button,
  .menu-links a,
  .close-menu{
    animation:none!important;
    transition:none!important;
  }
}


/* ===== COERENZA VISIVA PAGINE INTERNE ===== */
main{
  position:relative;
  isolation:isolate;
  background:
    radial-gradient(circle at 86% 10%,rgba(239,35,60,.15),transparent 24%),
    radial-gradient(circle at 12% 62%,rgba(157,16,34,.14),transparent 29%),
    linear-gradient(180deg,rgba(12,10,14,.28),rgba(6,6,8,.08));
}

main::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  pointer-events:none;
  background:
    linear-gradient(180deg,rgba(239,35,60,.025),transparent 22%),
    radial-gradient(circle at 50% 85%,rgba(239,35,60,.05),transparent 34%);
}

.page-hero{
  position:relative;
  overflow:hidden;
}

.page-hero::before{
  content:"";
  position:absolute;
  width:380px;
  height:380px;
  right:-30px;
  top:-40px;
  border-radius:50%;
  background:rgba(239,35,60,.13);
  filter:blur(88px);
  pointer-events:none;
  z-index:-1;
}

.page-hero::after{
  content:"";
  position:absolute;
  width:220px;
  height:220px;
  left:-80px;
  bottom:-70px;
  border-radius:50%;
  background:rgba(157,16,34,.11);
  filter:blur(72px);
  pointer-events:none;
  z-index:-1;
}

.page-hero h1 span{
  text-shadow:0 0 36px rgba(239,35,60,.34);
}

.section{
  position:relative;
}

.card,
.stat,
.gallery-item,
.video-card,
.notice{
  background:
    radial-gradient(circle at 92% 0%,rgba(239,35,60,.085),transparent 34%),
    linear-gradient(145deg,rgba(255,255,255,.058),rgba(255,255,255,.018));
  border-color:rgba(255,255,255,.1);
  box-shadow:
    0 20px 55px rgba(0,0,0,.2),
    inset 0 1px 0 rgba(255,255,255,.025);
}

.card:hover,
.gallery-item:hover,
.stat:hover{
  border-color:rgba(239,35,60,.32);
  box-shadow:
    0 22px 60px rgba(0,0,0,.24),
    0 0 28px rgba(239,35,60,.06);
}

.footer{
  background:linear-gradient(180deg,rgba(7,7,10,.18),rgba(5,5,7,.72));
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}

@media(max-width:620px){
  .page-hero::before{
    width:260px;
    height:260px;
    right:-80px;
    top:-20px;
  }
}


/* Rimuove il pulsante Twitch in alto a destra */
.live-pill{
  display:none!important;
}

/* Header riequilibrato senza il pulsante Twitch */
.header-inner{
  grid-template-columns:auto 1fr auto;
}

.header-inner::after{
  content:"";
  width:44px;
  height:44px;
}

/* Menu ISOXLVII più pulito */
.side-menu{
  width:min(380px,92vw);
  padding:88px 24px 28px;
  background:
    radial-gradient(circle at 15% 10%,rgba(239,35,60,.14),transparent 30%),
    linear-gradient(180deg,rgba(14,14,20,.94),rgba(7,7,10,.97));
  border-right:1px solid rgba(239,35,60,.18);
  box-shadow:24px 0 70px rgba(0,0,0,.48);
}

.side-menu::after{
  content:"47";
  right:18px;
  bottom:12px;
  color:rgba(239,35,60,.075);
  font-family:Inter,system-ui,sans-serif;
  font-size:118px;
  line-height:1;
  font-weight:950;
  letter-spacing:-10px;
  writing-mode:horizontal-tb;
}

.menu-label{
  color:#ff6b7d;
  letter-spacing:2.2px;
  margin-bottom:20px;
}

.menu-links{
  gap:10px;
}

.menu-links a{
  padding:14px 16px;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.055);
  background:rgba(255,255,255,.022);
  font-size:15px;
  letter-spacing:.2px;
}

.menu-links a:hover,
.menu-links a.active{
  transform:translateX(3px);
  border-color:rgba(239,35,60,.42);
  background:
    linear-gradient(90deg,rgba(239,35,60,.13),rgba(255,255,255,.025));
  box-shadow:0 10px 24px rgba(0,0,0,.18);
}

.menu-links a::before{
  width:2px;
  left:0;
}

.menu-socials{
  grid-template-columns:repeat(2,1fr);
  gap:10px;
}

.menu-socials a{
  border-radius:14px;
  padding:11px 10px;
  font-weight:800;
}

@media(max-width:620px){
  .header-inner::after{
    width:44px;
  }

  .side-menu::after{
    font-size:88px;
    right:14px;
  }
}


/* ===== MENU PREMIUM ISOXLVII ===== */
.site-header{
  background:rgba(7,7,10,.68);
  backdrop-filter:blur(22px) saturate(130%);
  -webkit-backdrop-filter:blur(22px) saturate(130%);
  border-bottom:1px solid rgba(255,255,255,.07);
}

.menu-button{
  position:relative;
  width:46px;
  height:46px;
  padding:0;
  border-radius:14px;
  font-size:0;
  background:rgba(255,255,255,.025);
  border:1px solid rgba(255,255,255,.09);
  box-shadow:0 12px 30px rgba(0,0,0,.18);
}

.menu-button::before,
.menu-button::after{
  content:"";
  position:absolute;
  left:50%;
  width:20px;
  height:2px;
  border-radius:999px;
  background:#fff;
  transform:translateX(-50%);
  transition:transform .28s ease,top .28s ease,opacity .28s ease,background .28s ease;
}

.menu-button::before{top:17px}
.menu-button::after{top:27px}

.menu-button span{
  position:absolute;
  left:50%;
  top:22px;
  width:20px;
  height:2px;
  border-radius:999px;
  background:#fff;
  transform:translateX(-50%);
  transition:opacity .2s ease,background .2s ease;
}

.menu-button:hover::before,
.menu-button:hover::after,
.menu-button:hover span{
  background:var(--red);
}

.menu-button[aria-expanded="true"]::before{
  top:22px;
  transform:translateX(-50%) rotate(45deg);
}

.menu-button[aria-expanded="true"]::after{
  top:22px;
  transform:translateX(-50%) rotate(-45deg);
}

.menu-button[aria-expanded="true"] span{
  opacity:0;
}

.menu-overlay{
  background:
    radial-gradient(circle at 14% 50%,rgba(239,35,60,.16),transparent 30%),
    rgba(0,0,0,.74);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}

.side-menu{
  width:min(430px,94vw);
  padding:26px 28px 30px;
  background:
    linear-gradient(180deg,rgba(16,16,23,.88),rgba(7,7,10,.96)),
    radial-gradient(circle at 10% 8%,rgba(239,35,60,.16),transparent 30%);
  backdrop-filter:blur(30px) saturate(140%);
  -webkit-backdrop-filter:blur(30px) saturate(140%);
  border-right:1px solid rgba(239,35,60,.18);
  box-shadow:30px 0 90px rgba(0,0,0,.56),inset -1px 0 0 rgba(255,255,255,.03);
  overflow:hidden auto;
}

.side-menu::before{
  content:"47";
  position:absolute;
  right:-12px;
  bottom:-22px;
  font-family:Inter,system-ui,sans-serif;
  font-size:190px;
  line-height:1;
  font-weight:950;
  letter-spacing:-18px;
  color:rgba(239,35,60,.055);
  pointer-events:none;
  z-index:0;
}

.side-menu::after{
  display:none;
}

.menu-brand{
  position:relative;
  z-index:2;
  display:flex;
  justify-content:center;
  align-items:center;
  min-height:102px;
  margin:4px 0 18px;
  padding:8px 54px 18px;
  border-bottom:1px solid rgba(255,255,255,.075);
}

.menu-brand img{
  display:block;
  width:min(280px,78vw);
  max-height:76px;
  object-fit:contain;
  filter:drop-shadow(0 0 24px rgba(239,35,60,.18));
}

.close-menu{
  z-index:3;
  width:42px;
  height:42px;
  top:18px;
  right:18px;
  font-size:0;
  border-radius:13px;
}

.close-menu::before,
.close-menu::after{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  width:18px;
  height:2px;
  border-radius:999px;
  background:#fff;
}

.close-menu::before{
  transform:translate(-50%,-50%) rotate(45deg);
}

.close-menu::after{
  transform:translate(-50%,-50%) rotate(-45deg);
}

.close-menu:hover{
  transform:none;
  border-color:rgba(239,35,60,.5);
  background:rgba(239,35,60,.1);
}

.menu-label{
  position:relative;
  z-index:2;
  margin:0 0 10px;
  padding:0 2px 10px;
  color:#ff7484;
  letter-spacing:2.4px;
}

.menu-label::after{
  width:48px;
}

.menu-links{
  position:relative;
  z-index:2;
  display:grid;
  gap:0;
}

.menu-links a{
  position:relative;
  padding:15px 6px 15px 20px;
  border:0;
  border-bottom:1px solid rgba(255,255,255,.065);
  border-radius:0;
  background:transparent;
  font-size:15px;
  font-weight:850;
  letter-spacing:.8px;
  text-transform:uppercase;
  transition:padding-left .22s ease,color .22s ease,background .22s ease;
}

.menu-links a::before{
  content:"";
  position:absolute;
  left:0;
  top:50%;
  width:10px;
  height:1px;
  background:rgba(239,35,60,.45);
  box-shadow:0 0 12px rgba(239,35,60,.28);
  transform:translateY(-50%);
  transition:width .22s ease,background .22s ease;
}

.menu-links a::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(239,35,60,.11),transparent 70%);
  opacity:0;
  transform:none;
  transition:opacity .22s ease;
}

.menu-links a:hover,
.menu-links a.active{
  padding-left:30px;
  transform:none;
  color:#fff;
  border-color:rgba(255,255,255,.075);
  background:transparent;
  box-shadow:none;
}

.menu-links a:hover::before,
.menu-links a.active::before{
  width:20px;
  height:1px;
  background:var(--red);
}

.menu-links a:hover::after,
.menu-links a.active::after{
  opacity:1;
}

.menu-socials{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:9px;
  margin-top:22px;
  padding-top:18px;
  border-top:1px solid rgba(255,255,255,.075);
}

.menu-socials a{
  padding:11px 10px;
  border:1px solid rgba(255,255,255,.075);
  border-radius:13px;
  background:rgba(255,255,255,.025);
  font-size:12px;
  font-weight:850;
  letter-spacing:.5px;
  text-transform:uppercase;
}

.menu-socials a:hover{
  transform:translateY(-2px);
  border-color:rgba(239,35,60,.38);
  background:rgba(239,35,60,.08);
}

@media(max-width:620px){
  .side-menu{
    padding:20px 20px 26px;
  }

  .menu-brand{
    min-height:92px;
    padding-left:48px;
    padding-right:48px;
  }

  .menu-brand img{
    width:min(235px,72vw);
  }

  .side-menu::before{
    font-size:145px;
  }
}
