:root{
    --bg:#0a0a0a;
    --bg-alt:#131313;
    --panel:#181818;
    --red:#e8132b;
    --red-2:#b80f22;
    --red-dark:#3a0208;
    --white:#f5f4f0;
    --gray:#9a9a95;
    --line:rgba(245,244,240,0.09);
  }
  *{margin:0;padding:0;box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{
    background:var(--bg);
    color:var(--white);
    font-family:'Inter',sans-serif;
    overflow-x:hidden;
  }
  img{max-width:100%;display:block;}
  a{color:inherit;text-decoration:none;}
  .wrap{max-width:1180px;margin:0 auto;padding:0 28px;}
  .eyebrow{
    font-family:'Barlow Condensed',sans-serif;
    font-weight:700;
    letter-spacing:0.28em;
    text-transform:uppercase;
    font-size:16px;
    color:var(--red);
    display:flex;
    align-items:center;
    gap:10px;
  }
  .eyebrow::before{
    content:"";
    width:26px;height:2px;
    background:var(--red);
    display:inline-block;
  }
  h1,h2,h3{
    font-family:'Anton',sans-serif;
    font-weight:400;
    text-transform:uppercase;
    line-height:0.98;
    letter-spacing:0.01em;
  }
  .btn{
    display:inline-flex;
    align-items:center;
    gap:10px;
    padding:16px 30px;
    font-family:'Barlow Condensed',sans-serif;
    font-weight:700;
    font-size:17px;
    letter-spacing:0.06em;
    text-transform:uppercase;
    border-radius:3px;
    border:2px solid transparent;
    cursor:pointer;
    transition:transform .18s ease, background .18s ease, border-color .18s ease;
  }
  .btn:hover{transform:translateY(-2px);}
  .btn-primary{
    background:var(--red);
    color:var(--white);
  }
  .btn-primary:hover{background:var(--red-2);}
  .btn-outline{
    border-color:rgba(245,244,240,0.35);
    color:var(--white);
    background:transparent;
  }
  .btn-outline:hover{border-color:var(--white);}

  /* diagonal chevron stripe motif — pulled from the brand's own promo graphic */
  .chevrons{
    display:flex;
    gap:6px;
  }
  .chevrons span{
    width:8px;height:26px;
    background:var(--red);
    transform:skewX(-20deg);
  }
  .chevrons.small span{height:14px;width:5px;}

  /* ============ NAV ============ */
  header{
    position:fixed;top:0;left:0;right:0;
    z-index:100;
    background:rgba(10,10,10,0.88);
    backdrop-filter:blur(10px);
    border-bottom:1px solid var(--line);
  }
  nav{
    max-width:1180px;margin:0 auto;padding:14px 28px;
    display:flex;align-items:center;justify-content:space-between;
  }
  .brand{display:flex;align-items:center;gap:12px;}
  .brand img{width:42px;height:42px;border-radius:50%;}
  .brand-text{
    font-family:'Anton',sans-serif;
    font-size:20px;
    letter-spacing:0.02em;
    line-height:1;
  }
  .brand-text span{display:block;font-family:'Barlow Condensed',sans-serif;font-size:9px;letter-spacing:0.22em;color:var(--gray);font-weight:600;margin-top:3px;}
  .nav-links{display:flex;gap:34px;font-family:'Barlow Condensed',sans-serif;font-weight:600;letter-spacing:0.08em;text-transform:uppercase;font-size:14.5px;}
  .nav-links a{color:var(--gray);transition:color .15s;}
  .nav-links a:hover{color:var(--white);}
  .nav-cta{display:none;}
  @media(min-width:860px){.nav-cta{display:inline-flex;}}
  .nav-links{display:none;}
  @media(min-width:860px){.nav-links{display:flex;}}

  /* ============ HERO ============ */
  .hero{
    position:relative;
    padding:150px 0 90px;
    background:
      radial-gradient(ellipse 900px 500px at 85% 8%, rgba(232,19,43,0.16), transparent 60%),
      var(--bg);
    overflow:hidden;
  }
  .hero-stripes{
    position:absolute;top:70px;right:-10px;
    display:flex;gap:7px;
    opacity:0.9;
  }
  .hero-stripes span{width:11px;height:44px;background:var(--red);transform:skewX(-20deg);}
  .hero-stripes span:nth-child(1){height:24px;align-self:flex-end;}
  .hero-stripes span:nth-child(6){height:24px;align-self:flex-end;}

  .hero-grid{
    display:grid;
    grid-template-columns:1fr;
    gap:56px;
    align-items:center;
  }
  @media(min-width:920px){
    .hero-grid{grid-template-columns:1.15fr 0.85fr;}
  }
  .hero h1{
    font-size:clamp(46px,8vw,84px);
    margin:18px 0 22px;
  }
  .hero h1 .r{color:var(--red);}
  .hero p.lead{
    font-size:17px;
    color:var(--gray);
    max-width:480px;
    margin-bottom:34px;
    line-height:1.6;
  }
  .hero-ctas{display:flex;flex-wrap:wrap;gap:14px;margin-bottom:44px;}

  .countdown{
    display:flex;gap:14px;flex-wrap:wrap;
  }
  .countdown .box{
    background:var(--panel);
    border:1px solid var(--line);
    border-top:3px solid var(--red);
    padding:14px 18px;
    min-width:76px;
    text-align:center;
    border-radius:4px;
  }
  .countdown .box .num{
    font-family:'Anton',sans-serif;
    font-size:30px;
    color:var(--white);
    line-height:1;
  }
  .countdown .box .lbl{
    font-family:'Barlow Condensed',sans-serif;
    font-size:11px;
    letter-spacing:0.14em;
    color:var(--gray);
    text-transform:uppercase;
    margin-top:6px;
  }

  .hero-media{
    position:relative;
  }
  .hero-media .frame{
    position:relative;
    border-radius:6px;
    overflow:hidden;
    border:1px solid var(--line);
    box-shadow:0 30px 70px -20px rgba(0,0,0,0.7);
  }
  .hero-media img{
    width:100%;height:560px;object-fit:cover;
    display:block;
  }
  .hero-media .frame::after{
    content:"";
    position:absolute;inset:0;
    background:linear-gradient(180deg, rgba(10,10,10,0) 55%, rgba(10,10,10,0.85) 100%);
  }
  .hero-media .badge{
    position:absolute;
    left:-26px;bottom:-26px;
    width:120px;height:120px;
    z-index:5;
    filter:drop-shadow(0 12px 24px rgba(0,0,0,0.6));
  }
  .hero-media .tag{
    position:absolute;
    top:22px;left:22px;
    z-index:5;
    background:rgba(10,10,10,0.7);
    border:1px solid rgba(245,244,240,0.2);
    backdrop-filter:blur(6px);
    padding:8px 14px;
    border-radius:3px;
    font-family:'Barlow Condensed',sans-serif;
    font-size:12.5px;
    letter-spacing:0.14em;
    text-transform:uppercase;
    color:var(--white);
  }

  /* ============ DIVIDER ============ */
  .divider{
    height:64px;
    background:var(--bg);
    display:flex;align-items:center;overflow:hidden;
    position:relative;
  }
  .divider .row{
    display:flex;gap:9px;
    animation:none;
  }
  .divider .row span{
    width:16px;height:34px;
    background:var(--red);
    opacity:0.85;
    transform:skewX(-20deg);
    flex-shrink:0;
  }
  .divider .row span:nth-child(odd){opacity:0.35;}

  /* ============ SECTION BASE ============ */
  section{padding:100px 0;}
  .sec-head{max-width:640px;margin-bottom:56px;}
  .sec-head h2{font-size:clamp(32px,5vw,50px);margin-top:16px;}
  .sec-head p{color:var(--gray);margin-top:16px;font-size:16px;line-height:1.6;}

  /* ============ ESTRUTURA ============ */
  .estrutura{background:var(--bg-alt);}
  .cards{
    display:grid;
    grid-template-columns:repeat(auto-fill,minmax(250px,1fr));
    gap:1px;
    background:var(--line);
    border:1px solid var(--line);
    border-radius:6px;
    overflow:hidden;
  }
  .card{
    background:var(--panel);
    padding:32px 26px;
    transition:background .2s;
  }
  .card:hover{background:#1f1f1f;}
  .card .icon{
    width:48px;height:48px;
    border-radius:50%;
    border:2px solid var(--red);
    display:flex;align-items:center;justify-content:center;
    margin-bottom:18px;
  }
  .card .icon svg{width:22px;height:22px;stroke:var(--red);}
  .card h3{
    font-family:'Barlow Condensed',sans-serif;
    text-transform:uppercase;
    font-weight:700;
    font-size:17px;
    letter-spacing:0.03em;
    margin-bottom:8px;
    color:var(--white);
  }
  .card p{color:var(--gray);font-size:14.5px;line-height:1.55;}

  /* ============ MODALIDADES ============ */
  .modalidades{background:var(--bg);}
  .mod-grid{display:grid;grid-template-columns:1fr;gap:20px;}
  @media(min-width:700px){.mod-grid{grid-template-columns:1fr 1fr;}}
  .mod-card{
    position:relative;
    padding:44px 32px;
    border:1px solid var(--line);
    border-radius:8px;
    background:linear-gradient(155deg, var(--panel) 0%, var(--bg) 100%);
    overflow:hidden;
  }
  .mod-card .num{
    font-family:'Anton',sans-serif;
    font-size:15px;
    color:var(--red);
    letter-spacing:0.12em;
  }
  .mod-card h3{font-size:34px;margin:14px 0 12px;}
  .mod-card p{color:var(--gray);font-size:15px;line-height:1.6;max-width:340px;}
  .mod-card .deco{
    position:absolute;right:-30px;bottom:-30px;
    width:150px;height:150px;
    border:2px solid var(--red);
    border-radius:50%;
    opacity:0.15;
  }

  /* ============ HISTORIA ============ */
  .historia{
    background:
      linear-gradient(180deg, var(--bg) 0%, var(--red-dark) 130%);
    position:relative;
  }
  .historia-grid{
    display:grid;grid-template-columns:1fr;gap:48px;
  }
  @media(min-width:940px){.historia-grid{grid-template-columns:0.9fr 1.1fr;}}
  .quote-mark{
    font-family:'Anton',sans-serif;
    font-size:120px;
    color:var(--red);
    line-height:0.6;
    opacity:0.85;
  }
  .historia-lead{
    font-family:'Anton',sans-serif;
    font-size:clamp(26px,3.4vw,36px);
    text-transform:none;
    line-height:1.15;
    color:var(--white);
    margin-bottom:6px;
  }
  .historia-body p{
    color:#c9c8c3;
    font-size:15.5px;
    line-height:1.85;
    margin-bottom:18px;
  }
  .historia-body strong{color:var(--white);}
  .pullquote{
    margin-top:28px;
    padding:24px 26px;
    border-left:3px solid var(--red);
    background:rgba(245,244,240,0.04);
    border-radius:0 6px 6px 0;
  }
  .pullquote p{
    font-family:'Anton',sans-serif;
    text-transform:uppercase;
    font-size:19px;
    line-height:1.35;
    color:var(--white);
    margin:0;
  }
  .pullquote span{
    display:block;
    margin-top:12px;
    font-family:'Barlow Condensed',sans-serif;
    font-size:13px;
    letter-spacing:0.1em;
    text-transform:uppercase;
    color:var(--gray);
    font-weight:600;
  }
  .signature{
    margin-top:34px;
    font-family:'Barlow Condensed',sans-serif;
    font-size:15px;
    letter-spacing:0.06em;
    color:var(--gray);
  }
  .signature strong{color:var(--white);font-weight:700;}

  /* ============ INAUGURACAO STRIP ============ */
  .strip{
    background:var(--red);
    padding:46px 0;
    position:relative;
    overflow:hidden;
  }
  .strip-inner{
    display:flex;flex-wrap:wrap;gap:24px;
    align-items:center;justify-content:space-between;
  }
  .strip .date-block{display:flex;align-items:baseline;gap:16px;}
  .strip .date-block .big{
    font-family:'Anton',sans-serif;
    font-size:clamp(40px,6vw,64px);
    color:var(--bg);
    line-height:0.9;
  }
  .strip .date-block .txt{
    font-family:'Barlow Condensed',sans-serif;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:0.05em;
    color:rgba(10,10,10,0.85);
    font-size:15px;
    max-width:220px;
    line-height:1.3;
  }
  .strip .btn-outline{border-color:var(--bg);color:var(--bg);}
  .strip .btn-outline:hover{background:var(--bg);color:var(--white);}

  /* ============ LOCALIZACAO ============ */
  .local{background:var(--bg-alt);}
  .local-grid{
    display:grid;grid-template-columns:1fr;gap:1px;
    background:var(--line);border:1px solid var(--line);border-radius:8px;overflow:hidden;
  }
  @media(min-width:820px){.local-grid{grid-template-columns:1.1fr 0.9fr;}}
  .local-info{background:var(--panel);padding:48px 40px;}
  .local-info .item{display:flex;gap:16px;margin-bottom:26px;}
  .local-info .item:last-child{margin-bottom:0;}
  .local-info .item .ic{
    width:40px;height:40px;flex-shrink:0;
    border-radius:50%;background:rgba(232,19,43,0.12);
    display:flex;align-items:center;justify-content:center;
  }
  .local-info .item .ic svg{width:18px;height:18px;stroke:var(--red);}
  .local-info .item h4{
    font-family:'Barlow Condensed',sans-serif;
    text-transform:uppercase;font-weight:700;font-size:14px;
    letter-spacing:0.08em;color:var(--gray);margin-bottom:4px;
  }
  .local-info .item p{font-size:16px;color:var(--white);line-height:1.5;}
  .local-cta{
    background:linear-gradient(160deg,#1c1c1c,var(--bg));
    padding:48px 40px;
    display:flex;flex-direction:column;justify-content:center;
    gap:18px;
  }
  .local-cta h3{font-size:28px;line-height:1.1;}
  .local-cta p{color:var(--gray);font-size:15px;line-height:1.6;}
  .local-cta .btn{justify-content:center;width:100%;}

  /* ============ FOOTER ============ */
  footer{
    padding:40px 0;
    border-top:1px solid var(--line);
  }
  .foot-grid{
    display:flex;flex-wrap:wrap;gap:20px;
    align-items:center;justify-content:space-between;
  }
  .foot-brand{display:flex;align-items:center;gap:12px;}
  .foot-brand img{width:34px;height:34px;border-radius:50%;}
  footer .small{font-family:'Barlow Condensed',sans-serif;font-size:13px;color:var(--gray);letter-spacing:0.04em;}
  .foot-social{
    width:38px;height:38px;border-radius:50%;
    border:1px solid var(--line);
    display:flex;align-items:center;justify-content:center;
  }
  .foot-social svg{width:17px;height:17px;stroke:var(--white);}

  /* ============ FLOAT WHATSAPP ============ */
  .float-wa{
    position:fixed;
    bottom:22px;right:22px;
    z-index:200;
    width:58px;height:58px;
    border-radius:50%;
    background:var(--red);
    display:flex;align-items:center;justify-content:center;
    box-shadow:0 10px 26px -6px rgba(232,19,43,0.6);
  }
  .float-wa svg{width:26px;height:26px;fill:var(--white);}

  @media(prefers-reduced-motion:reduce){
    html{scroll-behavior:auto;}
  }
