:root{
  --lime:#d7f200;
  --lime-dark:#a9c200;
  --teal-1:#12504c;
  --teal-2:#0a3230;
  --teal-3:#061f1d;
  --ink:#07211f;
  --gold:#d9b273;
  --mint:#7fe3cf;
  --maxw:1240px;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth; scroll-padding-top:70px;}
body{
  margin:0; background:var(--teal-2); color:#fff;
  font-family:'Barlow Condensed','Arial Narrow',Arial,sans-serif;
  font-size:16px; line-height:1.5;
}
a{color:inherit;}
img{max-width:100%; display:block;}
h1,h2,h3{font-family:'Oswald',sans-serif; margin:0;}
.container{max-width:var(--maxw); margin:0 auto; padding:0 20px;}
.texture{
  background-image:url('assets/texture_teal.jpg');
  background-size:cover; background-position:center;
}

/* ---- HEADER ---- */
header{
  position:sticky; top:0; z-index:100;
  background:rgba(6,31,29,.92); backdrop-filter:blur(6px);
  border-bottom:1px solid rgba(215,242,0,.15);
}
.nav{display:flex; align-items:center; justify-content:space-between; padding:12px 20px; max-width:var(--maxw); margin:0 auto;}
.nav .brand img{height:42px;}
.nav-links{display:none; align-items:center; gap:28px; font-family:'Oswald',sans-serif; font-size:13px; letter-spacing:1.5px; text-transform:uppercase;}
.nav-links a{text-decoration:none; opacity:.85; transition:opacity .15s;}
.nav-links a:hover{opacity:1; color:var(--lime);}
.nav .btn-pdf{
  display:none; background:var(--lime); color:var(--ink); font-family:'Oswald',sans-serif; font-weight:600;
  font-size:12px; letter-spacing:1px; text-transform:uppercase; padding:9px 16px; border-radius:3px; text-decoration:none;
}
.burger{background:none; border:0; color:#fff; font-size:26px; cursor:pointer; line-height:1; padding:4px 8px;}
.mobile-menu{display:none; flex-direction:column; padding:0 20px 18px; gap:2px; background:rgba(6,31,29,.98);}
.mobile-menu.open{display:flex;}
.mobile-menu a{
  padding:12px 4px; border-bottom:1px solid rgba(255,255,255,.08); text-decoration:none;
  font-family:'Oswald',sans-serif; letter-spacing:1px; text-transform:uppercase; font-size:14px;
}
.mobile-menu a.pdf{color:var(--lime); font-weight:600;}

@media (min-width:860px){
  .nav-links{display:flex;}
  .nav .btn-pdf{display:inline-block;}
  .burger{display:none;}
}

/* ---- HERO ---- */
.hero{
  position:relative; min-height:min(92vh,780px); display:flex; flex-direction:column; justify-content:center;
  padding:80px 24px 60px; text-align:right; overflow:hidden;
}
.hero-line{position:absolute; left:0; top:56%; width:70%; height:3px; background:var(--lime);}
.hero-title{position:relative; z-index:2; max-width:640px; margin-left:auto;}
.hero-title .l1{
  font-weight:700; font-size:clamp(38px,9vw,80px); line-height:1; letter-spacing:2px; text-transform:uppercase; color:#fff;
  -webkit-text-stroke:1.2px #04211f; filter:drop-shadow(2px 3px 3px rgba(0,0,0,.45));
}
.hero-title .l2{display:flex; align-items:center; justify-content:flex-end; gap:16px; margin-top:6px;}
.hero-title .l2 img{height:clamp(22px,4vw,34px);}
.hero-title .l2 .year{
  font-weight:700; font-size:clamp(46px,11vw,104px); line-height:1; color:#fff;
  -webkit-text-stroke:1.8px #04211f; filter:drop-shadow(2px 3px 3px rgba(0,0,0,.45));
}
.hero-sub{
  position:relative; z-index:2; margin-top:22px; margin-left:auto; font-family:'Oswald',sans-serif; font-size:14px;
  letter-spacing:2px; text-transform:uppercase; color:rgba(255,255,255,.75); max-width:520px;
}
.hero-cta{position:relative; z-index:2; margin-top:30px; display:flex; gap:14px; flex-wrap:wrap; justify-content:flex-end;}
.btn{
  font-family:'Oswald',sans-serif; font-weight:600; font-size:13px; letter-spacing:1.5px; text-transform:uppercase;
  padding:13px 22px; border-radius:3px; text-decoration:none; display:inline-block; cursor:pointer; border:1px solid transparent;
}
.btn-primary{background:var(--lime); color:var(--ink);}
.btn-ghost{background:transparent; color:#fff; border-color:rgba(255,255,255,.5);}
.btn:hover{filter:brightness(1.08);}

/* ---- SECTION HEADERS ---- */
.section{padding:70px 0;}
.section-head{padding:0 4px; margin-bottom:34px;}
.eyebrow{font-family:'Oswald',sans-serif; color:var(--lime); font-size:12px; letter-spacing:3px; text-transform:uppercase; margin-bottom:10px;}
.section-head h2{font-style:italic; font-weight:700; font-size:clamp(30px,6vw,48px); color:#fff;}
.section-head p{margin-top:12px; max-width:640px; color:rgba(255,255,255,.72); font-size:16px;}

/* ---- TABS ---- */
.tabs{display:flex; gap:10px; margin:26px 0 6px; flex-wrap:wrap;}
.tab-btn{
  font-family:'Oswald',sans-serif; font-weight:600; font-size:12px; letter-spacing:1.5px; text-transform:uppercase;
  background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.18); color:#fff;
  padding:10px 18px; border-radius:20px; cursor:pointer;
}
.tab-btn.active{background:var(--lime); color:var(--ink); border-color:var(--lime);}

/* ---- SECTION DIVIDER (linha / personalizações) ---- */
.section-divider{display:flex; align-items:center; gap:16px; margin:46px 0 22px;}
.section-divider:first-of-type{margin-top:26px;}
.sd-label{
  font-family:'Oswald',sans-serif; font-style:italic; font-weight:700; font-size:clamp(20px,3vw,26px);
  text-transform:uppercase; color:#fff; white-space:nowrap;
}
.sd-line{flex:1; height:2px; background:linear-gradient(90deg, var(--lime), rgba(215,242,0,.05));}
.sd-count{
  font-family:'Oswald',sans-serif; font-weight:600; font-size:11px; letter-spacing:2px; text-transform:uppercase;
  color:var(--lime); white-space:nowrap;
}

/* ---- GRID ---- */
.grid{
  display:grid; grid-template-columns:repeat(2,1fr); gap:14px; margin-top:20px;
}
@media (min-width:600px){.grid{grid-template-columns:repeat(3,1fr); gap:18px;}}
@media (min-width:900px){.grid{grid-template-columns:repeat(4,1fr);}}
@media (min-width:1200px){.grid{grid-template-columns:repeat(5,1fr);}}
.grid.grid-wide{grid-template-columns:repeat(1,1fr);}
@media (min-width:600px){.grid.grid-wide{grid-template-columns:repeat(2,1fr);}}
@media (min-width:1100px){.grid.grid-wide{grid-template-columns:repeat(3,1fr);}}

.card{
  background:rgba(255,255,255,.045); border:1px solid rgba(215,242,0,.18); border-radius:8px;
  overflow:hidden; cursor:pointer; transition:transform .18s, border-color .18s; text-align:left;
}
.card:hover{transform:translateY(-3px); border-color:rgba(215,242,0,.5);}
.card .thumb{aspect-ratio:3/4; background:#08302d; display:flex; align-items:center; justify-content:center; overflow:hidden; padding:6px;}
.grid-wide .card .thumb{aspect-ratio:4/3;}
.card .thumb img{width:100%; height:100%; object-fit:contain;}
.card .lbl{
  padding:10px 12px; font-family:'Oswald',sans-serif; font-size:12px; letter-spacing:.5px; text-transform:uppercase;
  font-weight:600; color:#fff;
}

/* ---- GUIDE / MEASURE ---- */
.guide-wrap{display:flex; justify-content:center;}
.guide-wrap img{max-width:100%; border-radius:6px; box-shadow:0 12px 30px rgba(0,0,0,.5);}
.guide-caption{margin-top:18px; text-align:center; font-size:16px; color:rgba(255,255,255,.85); max-width:640px; margin-left:auto; margin-right:auto;}

/* ---- FOOTER ---- */
footer{padding:70px 0 34px; text-align:center; position:relative;}
footer .logo{height:44px; margin:0 auto 26px;}
.footer-contact{display:flex; flex-wrap:wrap; gap:8px 26px; justify-content:center; font-family:'Oswald',sans-serif; font-size:14px; letter-spacing:.5px;}
.footer-contact a{text-decoration:none; border-bottom:1px dotted rgba(255,255,255,.4); padding-bottom:1px;}
.footer-pdf{margin-top:30px; display:flex; gap:12px; justify-content:center; flex-wrap:wrap;}
.footer-legal{margin-top:36px; font-size:11px; letter-spacing:1px; color:rgba(255,255,255,.4); text-transform:uppercase;}
.stripe{height:8px; width:100%; background:repeating-linear-gradient(-55deg, var(--lime) 0 12px, var(--teal-3) 12px 24px); margin-top:40px;}

/* ---- FAB ---- */
.fab{
  position:fixed; right:18px; bottom:18px; z-index:90;
  background:var(--lime); color:var(--ink); font-family:'Oswald',sans-serif; font-weight:700; font-size:13px;
  letter-spacing:1px; text-transform:uppercase; padding:14px 20px; border-radius:30px; text-decoration:none;
  box-shadow:0 6px 20px rgba(0,0,0,.4); display:flex; align-items:center; gap:8px;
}

/* ---- LIGHTBOX ---- */
.lightbox{
  position:fixed; inset:0; background:rgba(4,20,19,.94); z-index:200; display:none;
  align-items:center; justify-content:center; padding:24px;
}
.lightbox.open{display:flex;}
.lightbox figure{margin:0; max-width:min(90vw,900px); text-align:center;}
.lightbox img{max-width:100%; max-height:80vh; border-radius:6px; box-shadow:0 20px 60px rgba(0,0,0,.6); margin:0 auto;}
.lightbox figcaption{
  margin-top:16px; font-family:'Oswald',sans-serif; font-weight:600; letter-spacing:1px; text-transform:uppercase; color:#fff;
}
.lb-close, .lb-prev, .lb-next{
  position:absolute; background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.25); color:#fff;
  width:44px; height:44px; border-radius:50%; font-size:20px; cursor:pointer; display:flex; align-items:center; justify-content:center;
}
.lb-close{top:20px; right:20px;}
.lb-prev{left:20px; top:50%; transform:translateY(-50%);}
.lb-next{right:20px; top:50%; transform:translateY(-50%);}
@media (max-width:700px){.lb-prev,.lb-next{width:38px; height:38px; font-size:16px;}}

.skip{position:absolute; left:-9999px;}
.skip:focus{left:10px; top:10px; background:#fff; color:#000; padding:8px 14px; z-index:999;}
