:root{
  --bg:#0b0f14;
  --bg-2:#0f1621;
  --panel:#121a26;
  --text:#e9edf5;
  --muted:#b7c0cf;
  --line:rgba(255,255,255,.10);

  --brand:#c09a3f;   /* dourado do logo */
  --accent:#93842c;  /* CTA do layout */
  --accent-2:#ffef47;

  --radius:16px;
  --shadow:0 18px 50px rgba(0,0,0,.45);
  --container:1120px;
}

*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,"Apple Color Emoji","Segoe UI Emoji";
  line-height:1.5;
  color:var(--text);
  background:radial-gradient(1200px 600px at 10% 0%, rgb(107 91 35 / 18%), transparent 60%),
             radial-gradient(900px 500px at 90% 10%, rgba(214, 178, 90, .14), transparent 55%),
             var(--bg);
}
img{max-width:100%; height:auto; display:block}
a{color:inherit; text-decoration:none}

/* Remove marcadores (ex.: "º") em listas */
ul[role="list"],
ol[role="list"]{
  list-style:none;
  padding:0;
  margin:0;
}

.container{
  width:min(var(--container), calc(100% - 2rem));
  margin-inline:auto;
}

.skip-link{
  position:absolute;
  left:-999px;
  top:1rem;
  background:#fff;
  color:#000;
  padding:.75rem 1rem;
  border-radius:12px;
  z-index:9999;
}
.skip-link:focus{left:1rem}

/* Header / Nav */
.site-header{
  position:sticky;
  top:0;
  z-index:50;
  background:linear-gradient(to bottom, rgba(11,15,20,.85), rgba(11,15,20,.45), transparent);
  backdrop-filter:saturate(140%) blur(10px);
}
.site-header.is-solid{
  background:rgba(11,15,20,.92);
  border-bottom:1px solid var(--line);
}
.header-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
  padding:.9rem 0;
}
.brand{display:flex; align-items:center}
.brand-logo{height:44px; width:auto}
.brand-wrap{
  display:flex;
  align-items:center;
  gap:.85rem;
  min-width:0;
}
.brand-social{
  display:flex;
  align-items:center;
  gap:.45rem;
  flex-wrap:wrap;
}
.social-icon{
  width:40px;
  height:40px;
  border-radius:999px;
  border:1px solid var(--line);
  background:rgba(255,255,255,.04);
  color:rgba(233,237,245,.92);
  display:grid;
  place-items:center;
  transition:transform .12s ease, background .12s ease, border-color .12s ease, color .12s ease;
}
.social-icon:hover{
  background:rgba(255,255,255,.06);
  border-color:rgb(205 176 36 / 22%);
}
.social-icon:active{transform:translateY(1px)}
.social-icon.whatsapp{
  background:#25D366;
  border-color:rgba(255,255,255,.18);
  color:#0b0f14;
}
.social-icon.whatsapp:hover{filter:brightness(0.98)}

.social-icon.facebook{
  background:#1877F2;
  border-color:rgba(255,255,255,.18);
  color:#ffffff;
}
.social-icon.facebook:hover{filter:brightness(0.98)}

.social-icon.youtube{
  background:#FF0000;
  border-color:rgba(255,255,255,.18);
  color:#ffffff;
}
.social-icon.youtube:hover{filter:brightness(0.98)}

.social-icon.instagram{
  background:#ffffff;
  border-color:rgba(255,255,255,.18);
  color:#0b0f14;
}
.social-icon.instagram:hover{filter:brightness(0.98)}
.social-icon i{
  font-size:1.1rem;
  line-height:1;
}

.nav-toggle{
  display:none;
  width:44px;
  height:44px;
  border-radius:12px;
  border:1px solid var(--line);
  background:rgba(255,255,255,.04);
  color:var(--text);
  cursor:pointer;
}
.nav-toggle-lines{
  display:block;
  width:18px;
  height:12px;
  margin:auto;
  position:relative;
}
.nav-toggle-lines::before,
.nav-toggle-lines::after,
.nav-toggle-lines{
  background:transparent;
}
.nav-toggle-lines::before,
.nav-toggle-lines::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  height:2px;
  background:var(--text);
  border-radius:2px;
}
.nav-toggle-lines::before{top:0}
.nav-toggle-lines::after{bottom:0}
.nav-toggle-lines{
  border-top:2px solid var(--text);
  border-bottom:2px solid var(--text);
  border-radius:2px;
}

.site-nav{
  display:flex;
  align-items:center;
  gap:1rem;
}
.nav-list{
  display:flex;
  align-items:center;
  gap:.25rem;
  padding:0;
  margin:0;
  list-style:none;
}
.nav-item{position:relative}
.nav-link{
  display:inline-flex;
  align-items:center;
  gap:.45rem;
  padding:.6rem .75rem;
  border-radius:12px;
  color:rgba(233,237,245,.92);
  font-weight:600;
}
.nav-link:hover{background:rgba(255,255,255,.05)}
.nav-link.is-active{
  background: rgb(221 189 33 / 14%);
  border: 1px solid rgb(205 176 36 / 22%);
}

.dropdown-toggle{
  border:0;
  background:transparent;
  cursor:pointer;
  font:inherit;
}
.chevron{
  width:.6rem;height:.6rem;
  border-right:2px solid currentColor;
  border-bottom:2px solid currentColor;
  transform:rotate(45deg);
  opacity:.75;
  margin-top:-2px;
}
.has-dropdown .dropdown{
  position:absolute;
  top:calc(100% + .5rem);
  left:0;
  min-width:260px;
  padding:.5rem;
  margin:0;
  border-radius:16px;
  background:rgba(18,26,38,.96);
  border:1px solid var(--line);
  box-shadow:var(--shadow);
  display:none;
}
.has-dropdown.is-open .dropdown{display:block}
.dropdown-link{
  display:block;
  padding:.65rem .75rem;
  border-radius:12px;
  color:rgba(233,237,245,.95);
}
.dropdown-link:hover{
  background:rgba(255,255,255,.05);
}

.nav-cta{display:flex; align-items:center}
.nav-cta .btn{
  padding:.6rem .85rem;
  border-radius:12px;
  font-size:.95rem;
  white-space:nowrap;
}

/* Buttons */
.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.5rem;
  padding:.75rem 1.05rem;
  border-radius:14px;
  font-weight:800;
  letter-spacing:.2px;
  border:1px solid transparent;
  transition:transform .12s ease, background .12s ease, border-color .12s ease;
  user-select:none;
}
.btn:active{transform:translateY(1px)}
.btn-block{width:100%}

.btn-primary{
  background:linear-gradient(135deg, var(--accent), var(--accent-2));
  border-color:rgba(255,255,255,.10);
  color:#120a06;
}
.btn-primary:hover{filter:brightness(1.05)}

.btn-secondary{
  background:rgb(192 154 63 / 16%);
  border-color:rgb(192 154 63 / 28%);
  color:var(--text);
}
.btn-secondary:hover{background:rgb(192 154 63 / 22%)}

.btn-ghost{
  background:rgba(255,255,255,.04);
  border-color:var(--line);
  color:var(--text);
}
.btn-ghost:hover{background:rgba(255,255,255,.06)}

/* Slider (ref.html style) */
.slider{
  position:relative;
  min-height:clamp(520px, 70vh, 720px);
  overflow:hidden;
}
.slider-track{
  height:100%;
  display:flex;
}
.slide{
  width:100%;
  min-height:clamp(520px, 70vh, 720px);
  flex:0 0 100%;
  position:relative;
  display:none;
  background:
    radial-gradient(900px 500px at 65% 35%, rgba(255,255,255,.10), transparent 60%),
    radial-gradient(700px 400px at 20% 10%, rgb(147 132 44 / 22%), transparent 55%),
    linear-gradient(to bottom, rgba(0,0,0,.45), rgba(0,0,0,.78)),
    var(--bg-2);
}
.slide::before{
  content:"";
  position:absolute;
  inset:0;
  background-image:var(--slide-bg);
  background-size:cover;
  background-position:center;
  filter:saturate(1.05) contrast(1.05);
  opacity:.45;
}
.slide.is-active{display:block}
.slide-overlay{
  position:absolute;
  inset:0;
  background:linear-gradient(90deg, rgba(0,0,0,.70) 0%, rgba(0,0,0,.40) 55%, rgba(0,0,0,.25) 100%);
}
.slide-inner{
  position:relative;
  min-height:inherit;
  display:grid;
  align-items:center;
  padding:5.25rem 0 3.25rem;
}
.slide-content{max-width:60ch}
.slide-kicker{
  display:inline-flex;
  align-items:center;
  gap:.5rem;
  padding:.35rem .6rem;
  border-radius:999px;
  background:rgba(0,0,0,.35);
  border:1px solid var(--line);
  color:rgba(233,237,245,.88);
  margin:0 0 .9rem;
  font-weight:800;
  letter-spacing:.6px;
  text-transform:uppercase;
  font-size:.9rem;
}
.slide-title{
  font-size:clamp(2.2rem, 3.8vw, 3.6rem);
  line-height:1.03;
  margin:0 0 1rem;
  letter-spacing:-.6px;
}
.slide-title span{color:var(--accent)}
.slide-text{
  margin:0 0 1.25rem;
  color:rgba(233,237,245,.82);
  max-width:62ch;
}
.slide-actions{display:flex; gap:.75rem; flex-wrap:wrap}

.slider-arrow{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  width:46px;
  height:46px;
  border-radius:14px;
  border:1px solid var(--line);
  background:rgba(11,15,20,.55);
  color:rgba(233,237,245,.92);
  cursor:pointer;
  display:grid;
  place-items:center;
  box-shadow:0 16px 40px rgba(0,0,0,.35);
}
.slider-arrow span{font-size:30px; line-height:1; margin-top:-2px}
.slider-arrow:hover{background:rgba(11,15,20,.72)}
.slider-arrow.prev{left:1rem}
.slider-arrow.next{right:1rem}

.slider-dots{
  position:absolute;
  left:50%;
  bottom:1.1rem;
  transform:translateX(-50%);
  display:flex;
  gap:.5rem;
  padding:.5rem .6rem;
  border-radius:999px;
  border:1px solid var(--line);
  background:rgba(11,15,20,.55);
}
.slider-dot{
  width:10px;
  height:10px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.22);
  background:rgba(255,255,255,.10);
  cursor:pointer;
}
.slider-dot.is-active{
  background:linear-gradient(135deg, var(--accent), var(--accent-2));
  border-color:rgba(255,255,255,.25);
}

/* Capabilities */
.capabilities{
  padding:2.6rem 0;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  background:linear-gradient(180deg, rgba(255,255,255,.02), rgba(255,255,255,0));
}
.cap-grid{
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:1.25rem;
  align-items:start;
}
.cap-left{
  background:rgba(18,26,38,.70);
  border:1px solid var(--line);
  border-radius:var(--radius);
  padding:1.2rem;
  box-shadow:0 10px 30px rgba(0,0,0,.22);
}
.cap-title{margin:.1rem 0 1rem}
.cap-links{padding:0; margin:0; display:grid; gap:.4rem}
.cap-links a{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:.75rem;
  padding:.65rem .75rem;
  border-radius:12px;
  background:rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.06);
}
.cap-links a:hover{background:rgba(255,255,255,.05)}
.cap-right{padding:.25rem 0}
.cap-eyebrow{
  margin:.25rem 0 .5rem;
  color:rgb(192 154 63 / 92%);
  font-weight:900;
  letter-spacing:.8px;
  text-transform:uppercase;
  font-size:.9rem;
}
.cap-headline{
  margin:0 0 .65rem;
  font-size:clamp(1.5rem, 2.5vw, 2.2rem);
  letter-spacing:-.4px;
}
.cap-sub{margin:0 0 1rem; color:rgba(233,237,245,.76); max-width:75ch}
.cap-actions{display:flex; gap:.75rem; flex-wrap:wrap}

/* Sections */
.section{padding:3.25rem 0}
.section-alt{
  background:linear-gradient(180deg, rgba(255,255,255,.02), rgba(255,255,255,0));
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
.section-head{margin-bottom:1.5rem}
.section-title{
  margin:0 0 .4rem;
  font-size:clamp(1.5rem, 2.4vw, 2.1rem);
  letter-spacing:-.4px;
}
.section-subtitle{
  margin:0;
  color:rgba(233,237,245,.76);
  max-width:70ch;
}

.cards-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:1.1rem;
}
.card{
  background:rgba(18,26,38,.75);
  border:1px solid var(--line);
  border-radius:var(--radius);
  padding:1.2rem;
  box-shadow:0 10px 30px rgba(0,0,0,.25);
}
.card-icon{
  width:44px; height:44px;
  border-radius:14px;
  display:grid; place-items:center;
  background:rgb(147 132 44 / 14%);
  border:1px solid rgb(147 132 44 / 22%);
  color:rgba(233,237,245,.92);
  margin-bottom:.85rem;
}
.card-icon svg{width:24px; height:24px}
.card-title{margin:0 0 .35rem}
.card-text{margin:0 0 .85rem; color:rgba(233,237,245,.78)}
.card-link{
  font-weight:800;
  color:var(--brand);
}
.card-link:hover{text-decoration:underline}

.split{
  display:grid;
  grid-template-columns:1.2fr .8fr;
  gap:1.2rem;
  align-items:start;
}
.panel{
  background:rgba(18,26,38,.85);
  border:1px solid var(--line);
  border-radius:var(--radius);
  padding:1.25rem;
  box-shadow:var(--shadow);
}
.panel-title{margin:0 0 .4rem}
.panel-text{margin:0 0 1rem; color:rgba(233,237,245,.78)}
.fineprint{margin:1rem 0 0; color:rgba(233,237,245,.65); font-size:.95rem}

.checklist{
  padding:0;
  margin:1.1rem 0 1.25rem;
  display:grid;
  gap:.5rem;
}
.checklist li{
  padding-left:1.4rem;
  position:relative;
  color:rgba(233,237,245,.85);
}
.checklist li::before{
  content:"";
  position:absolute;
  left:0;
  top:.45rem;
  width:.75rem; height:.75rem;
  border-radius:999px;
  background:rgb(192 154 63 / 22%);
  border:1px solid rgb(192 154 63 / 38%);
}
.stack{display:flex; gap:.75rem; flex-wrap:wrap}

/* FAQ */
.faq{
  display:grid;
  gap:.75rem;
}
.faq-item{
  background:rgba(18,26,38,.65);
  border:1px solid var(--line);
  border-radius:var(--radius);
  padding:.95rem 1.05rem;
}
.faq-item summary{
  cursor:pointer;
  font-weight:800;
}
.faq-item p{color:rgba(233,237,245,.78)}

/* Footer */
.site-footer{
  border-top:1px solid var(--line);
  padding:2.4rem 0 1.4rem;
  background:rgba(0,0,0,.20);
}
.footer-grid{
  display:grid;
  grid-template-columns:1.2fr .8fr .8fr;
  gap:1.2rem;
}
.footer-logo{height:42px; width:auto; margin-bottom:.75rem}
.footer-title{margin:.25rem 0 .65rem}
.footer-text{margin:0; color:rgba(233,237,245,.72)}
.footer-links{padding:0; margin:0; display:grid; gap:.4rem}
.footer-links a{color:rgba(233,237,245,.78)}
.footer-links a:hover{color:var(--text); text-decoration:underline}
.footer-bottom{
  margin-top:1.6rem;
  padding-top:1.1rem;
  border-top:1px solid var(--line);
  color:rgba(233,237,245,.65);
  font-size:.95rem;
}

/* Inner pages */
.page-hero{
  padding:3.75rem 0 1.25rem;
  border-bottom:1px solid var(--line);
  background:linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,0));
}
.breadcrumbs{
  margin:0 0 .65rem;
  color:rgba(233,237,245,.70);
  font-weight:650;
}
.breadcrumbs a{color:rgba(233,237,245,.85)}
.breadcrumbs a:hover{text-decoration:underline}
.page-title{
  margin:0 0 .6rem;
  font-size:clamp(2rem, 3.2vw, 2.8rem);
  letter-spacing:-.6px;
}
.page-subtitle{
  margin:0;
  color:rgba(233,237,245,.78);
  max-width:80ch;
}

/* Gallery */
.gallery-grid{
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:.85rem;
}
.gallery-item{
  display:block;
  border-radius:16px;
  overflow:hidden;
  border:1px solid var(--line);
  background:rgba(255,255,255,.03);
  box-shadow:0 12px 30px rgba(0,0,0,.22);
}
.gallery-item img{
  width:100%;
  height:220px;
  object-fit:cover;
  transform:scale(1.02);
  transition:transform .18s ease;
}
.gallery-item:hover img{transform:scale(1.06)}

/* Lightbox (modal de imagem) */
.lightbox{
  position:fixed;
  inset:0;
  z-index:1000;
  display:none;
}
.lightbox.is-open{display:block}
.lightbox-backdrop{
  position:absolute;
  inset:0;
  background:rgba(0,0,0,.78);
  backdrop-filter:blur(6px);
}
.lightbox-dialog{
  position:relative;
  height:100%;
  display:grid;
  place-items:center;
  padding:1rem;
}
.lightbox-frame{
  width:min(1100px, 100%);
  background:rgba(18,26,38,.92);
  border:1px solid var(--line);
  border-radius:18px;
  box-shadow:var(--shadow);
  overflow:hidden;
}
.lightbox-topbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:.75rem;
  padding:.65rem .8rem;
  border-bottom:1px solid var(--line);
}
.lightbox-caption{
  font-weight:750;
  color:rgba(233,237,245,.82);
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.lightbox-actions{display:flex; gap:.5rem}
.lightbox-btn{
  width:40px;
  height:40px;
  border-radius:12px;
  border:1px solid var(--line);
  background:rgba(255,255,255,.04);
  color:var(--text);
  cursor:pointer;
  display:grid;
  place-items:center;
}
.lightbox-btn:hover{background:rgba(255,255,255,.06)}
.lightbox-body{
  background:rgba(0,0,0,.25);
  display:grid;
  place-items:center;
}
.lightbox-img{
  width:100%;
  height:min(78vh, 700px);
  object-fit:contain;
  background:rgba(0,0,0,.18);
}
.lightbox-nav{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
}
.lightbox-nav.prev{left:.9rem}
.lightbox-nav.next{right:.9rem}

@media (max-width: 760px){
  .lightbox-nav{display:none}
  .lightbox-img{height:min(72vh, 520px)}
}

/* Products */
.product-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:1.1rem;
}
.product-card{
  display:block;
  border-radius:var(--radius);
  overflow:hidden;
  border:1px solid var(--line);
  background:rgba(18,26,38,.65);
  box-shadow:0 12px 34px rgba(0,0,0,.28);
}
.product-thumb img{
  width:100%;
  height:190px;
  object-fit:cover;
}
.product-body{padding:1rem 1.05rem}
.product-title{margin:0 0 .35rem; font-size:1.15rem}
.product-text{margin:0; color:rgba(233,237,245,.76)}
.product-card:hover{border-color:rgb(147 132 44 / 28%)}

/* Product details */
.product-hero{
  padding:3.25rem 0 1.25rem;
  border-bottom:1px solid var(--line);
  background:linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,0));
}
.product-hero-grid{
  display:grid;
  grid-template-columns:1.1fr .9fr;
  gap:1.2rem;
  align-items:start;
}
.product-hero-media{
  border-radius:var(--radius);
  overflow:hidden;
  border:1px solid var(--line);
  background:rgba(18,26,38,.55);
  box-shadow:0 14px 40px rgba(0,0,0,.28);
}
.product-hero-media img{
  width:100%;
  height:360px;
  object-fit:cover;
}
.product-hero-title{
  margin:.35rem 0 .6rem;
  font-size:clamp(2rem, 3.2vw, 2.8rem);
  letter-spacing:-.6px;
}
.pill-row{display:flex; gap:.5rem; flex-wrap:wrap; margin:0 0 .85rem}
.pill{
  display:inline-flex;
  align-items:center;
  padding:.38rem .6rem;
  border-radius:999px;
  border:1px solid var(--line);
  background:rgba(255,255,255,.04);
  color:rgba(233,237,245,.82);
  font-weight:750;
  font-size:.92rem;
}
.spec-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:.75rem;
}
.spec{
  border-radius:var(--radius);
  border:1px solid var(--line);
  background:rgba(18,26,38,.60);
  padding:.95rem;
}
.spec strong{display:block; margin-bottom:.25rem}
.spec p{margin:0; color:rgba(233,237,245,.74)}

/* CTA strip */
.cta-strip{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
  padding:1.1rem 1.15rem;
  border-radius:var(--radius);
  border:1px solid var(--line);
  background:rgba(18,26,38,.65);
}
.cta-title{margin:0 0 .2rem}
.cta-text{margin:0; color:rgba(233,237,245,.74)}

/* Forms */
.form{display:grid; gap:.75rem}
.field{display:grid; gap:.35rem}
.field span{font-weight:750; color:rgba(233,237,245,.85)}
.field input,
.field textarea{
  width:100%;
  padding:.75rem .85rem;
  border-radius:14px;
  border:1px solid var(--line);
  background:rgba(255,255,255,.03);
  color:var(--text);
  outline:none;
}
.field input:focus,
.field textarea:focus{
  border-color:rgb(147 132 44 / 35%);
  box-shadow:0 0 0 4px rgb(147 132 44 / 12%);
}

/* Contact cards */
.contact-cards{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:1rem;
  margin-top:1rem;
}
.contact-card{
  border-radius:var(--radius);
  border:1px solid var(--line);
  background:rgba(18,26,38,.65);
  padding:1.05rem;
  box-shadow:0 10px 28px rgba(0,0,0,.22);
}
.contact-title{margin:0 0 .25rem}
.contact-text{margin:0 0 .85rem; color:rgba(233,237,245,.74)}

/* Floating CTA */
.floating-cta{
  position:fixed;
  right:1.1rem;
  bottom:1.1rem;
  z-index:60;
  padding:.85rem 1.05rem;
  border-radius:999px;
  background:linear-gradient(135deg, var(--accent), var(--accent-2));
  color:#120a06;
  font-weight:900;
  border:1px solid rgba(255,255,255,.14);
  box-shadow:0 18px 40px rgba(0,0,0,.45);
}
.floating-cta:hover{filter:brightness(1.05)}

/* Responsive */
@media (max-width: 960px){
  .cap-grid{grid-template-columns:1fr}
  .split{grid-template-columns:1fr}
  .cards-grid{grid-template-columns:repeat(2, minmax(0, 1fr))}
  .product-grid{grid-template-columns:repeat(2, minmax(0, 1fr))}
  .gallery-grid{grid-template-columns:repeat(3, minmax(0, 1fr))}
  .product-hero-grid{grid-template-columns:1fr}
  .product-hero-media img{height:320px}
  .footer-grid{grid-template-columns:1fr 1fr}
}
@media (max-width: 760px){
  .nav-toggle{display:inline-flex; align-items:center; justify-content:center}
  .site-nav{
    position:fixed;
    inset:72px 1rem auto 1rem;
    max-height:calc(100vh - 92px);
    overflow:auto;
    display:none;
    flex-direction:column;
    align-items:stretch;
    padding:1rem;
    border-radius:18px;
    background:rgba(11,15,20,.96);
    border:1px solid var(--line);
    box-shadow:var(--shadow);
  }
  .site-nav.is-open{display:flex}
  .nav-list{flex-direction:column; align-items:stretch}
  .nav-link{width:100%; justify-content:space-between}
  .nav-cta{padding-top:.25rem}
  .has-dropdown .dropdown{
    position:static;
    display:none;
    min-width:unset;
    box-shadow:none;
    margin-top:.35rem;
    background:rgba(18,26,38,.65);
  }
  .has-dropdown.is-open .dropdown{display:block}
  .cards-grid{grid-template-columns:1fr}
  .product-grid{grid-template-columns:1fr}
  .gallery-grid{grid-template-columns:repeat(2, minmax(0, 1fr))}
  .cta-strip{flex-direction:column; align-items:flex-start}
  .contact-cards{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr}
  .slider-arrow{display:none}
  .slide-inner{padding-top:4.8rem}
}

