@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap');
:root {
  --orange:#ff7900;
  --gold:#ffa61a;
  --dark:#090d14
}

* {
  box-sizing:border-box
}

html {
  scroll-behavior:smooth
}

body {
  margin:0;
  background:#080c12;
  color:#fff;
  font-family:Inter,Arial,sans-serif;
  overflow-x:hidden
}

a {
  text-decoration:none;
  color:inherit
}

button,input {
  font:inherit
}

button {
  cursor:pointer
}

#reading {
  position:fixed;
  top:0;
  left:0;
  height:3px;
  background:var(--orange);
  z-index:100;
  width:0
}

.topbar {
  height:78px;
  background:linear-gradient(105deg,#05090f,#141922 65%,#080b10);
  display:flex;
  align-items:center;
  gap:24px;
  padding:0 4.8%;
  position:relative;
  z-index:20;
  box-shadow:0 8px 35px #0008
}

.brand {
  width:230px;
  flex-shrink:0
}

.brand img {
  display:block;
  width:100%;
  height:auto
}

.topbar nav {
  display:flex;
  align-items:center;
  gap:27px;
  margin:auto;
  white-space:nowrap
}

.topbar nav a {
  font-size:13px;
  font-weight:600;
  transition:color .25s;
  position:relative
}

.topbar nav a:hover {
  color:#ff9b30
}

.topbar nav a.current:after {
  content:'';
  position:absolute;
  bottom:-17px;
  left:0;
  width:100%;
  height:3px;
  background:var(--orange);
  box-shadow:0 0 15px var(--orange)
}

.top-right {
  display:flex;
  align-items:center;
  gap:15px
}

.top-location {
  display:flex;
  gap:8px;
  align-items:center;
  white-space:nowrap
}

.top-location>b {
  font-size:26px;
  color:var(--orange)
}

.top-location span {
  font-size:12px;
  font-weight:700
}

.top-location small {
  display:block;
  font-size:10px;
  font-weight:400;
  color:#b8bbc2
}

.top-phone {
  border:1px solid var(--orange);
  border-radius:30px;
  padding:10px 13px;
  font-size:11px;
  font-weight:800;
  white-space:nowrap
}

.quote,.primary {
  border:1px solid #ffae44;
  color:#fff;
  border-radius:28px;
  background:linear-gradient(180deg,#ffad38,#ff7800 58%,#ef5500);
  box-shadow:0 6px 24px #ff69004d,inset 0 1px #ffdf9a;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:14px;
  font-size:13px;
  font-weight:800;
  padding:15px 22px;
  white-space:nowrap;
  transition:transform .3s,box-shadow .3s
}

.quote {
  color:#140b00;
  padding:12px 16px;
  font-size:11px
}

.quote:hover,.primary:hover {
  transform:translateY(-4px);
  box-shadow:0 12px 38px #ff780085
}

.hamb {
  display:none;
  background:none;
  border:0;
  color:#fff;
  font-size:28px
}

.hero {
  height:555px;
  position:relative;
  isolation:isolate;
  background:#0a0c11;
  overflow:hidden
}

.hero-photo {
  position:absolute;
  inset:0;
  background-image:url('assets/lojainteira.png');
  background-size:cover;
  background-position:center 46%;
  transform:scale(1.06);
  animation:heroZoom 17s ease-in-out infinite alternate
}

.hero-vignette {
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,#050910 0%,#070c17ee 26%,#080d1699 44%,#05080c08 73%),linear-gradient(0deg,#070a11 0%,transparent 50%)
}

.hero-spot {
  position:absolute;
  inset:0;
  pointer-events:none;
  background:radial-gradient(370px circle at var(--mx,75%) var(--my,35%),#ff8c1625,transparent 70%);
  mix-blend-mode:screen
}

.hero-content {
  position:relative;
  padding:44px 6% 0;
  max-width:830px;
  z-index:2
}

.micro,.eyebrow {
  font-size:11px;
  letter-spacing:4px;
  color:#ff8d18;
  font-weight:900
}

.micro i {
  font-style:normal;
  padding:0 12px
}

.hero h1 {
  font-size:clamp(45px,5.15vw,85px);
  line-height:.99;
  letter-spacing:-4px;
  font-weight:900;
  font-style:italic;
  margin:17px 0 15px;
  text-shadow:0 7px 18px #0009
}

.hero h1 em,.section-head h2 em,.about h2 em,.contact h2 em {
  font-style:italic;
  color:#ff7b0b
}

.hero-content p {
  max-width:510px;
  font-size:19px;
  line-height:1.45;
  margin:0 0 22px;
  color:#f0f0f1
}

.hero-buttons {
  display:flex;
  gap:13px;
  flex-wrap:wrap
}

.secondary {
  border:1px solid #ffffffd6;
  background:#11182399;
  backdrop-filter:blur(10px);
  border-radius:30px;
  padding:14px 22px;
  font-size:13px;
  font-weight:700;
  transition:.3s
}

.secondary:hover {
  background:#fff;
  color:#111
}

.hero-edge {
  position:absolute;
  bottom:0;
  left:0;
  width:100%;
  height:100px;
  background:linear-gradient(0deg,#0b0e16,#0b0e1600)
}

.category-wrap {
  position:absolute;
  bottom:0;
  left:4.5%;
  width:91%;
  z-index:4
}

.category-track {
  display:grid;
  grid-template-columns:repeat(8,minmax(0,1fr));
  gap:10px
}

.cat {
  height:116px;
  border:1px solid #ffffff55;
  border-radius:20px;
  background:linear-gradient(150deg,#2a2c36ba,#10131aab);
  backdrop-filter:blur(16px);
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  gap:8px;
  position:relative;
  transition:transform .35s,box-shadow .35s,border .35s
}

.cat:hover,.cat.active {
  border-color:#ff8800;
  box-shadow:0 0 0 1px #ff790088,inset 0 0 30px #ff790022,0 0 24px #ff790050;
  transform:translateY(-5px)
}

.cat-icon {
  font-size:34px;
  line-height:1;
  color:#fff;
  font-weight:400
}

.cat b {
  font-size:12px;
  line-height:1.2
}

.cat-arrow {
  color:#ff8a00;
  position:absolute;
  right:11px;
  bottom:12px;
  font-size:17px
}

.category-dots {
  display:flex;
  gap:5px;
  justify-content:center;
  padding:12px
}

.category-dots span {
  width:11px;
  height:4px;
  border-radius:9px;
  background:#666
}

.category-dots span:first-child {
  width:25px;
  background:#ff8300;
  box-shadow:0 0 12px #ff8300
}

.light-feature {
  margin:0 1.5%;
  border:1px solid #ffffff65;
  border-radius:24px;
  min-height:250px;
  display:grid;
  grid-template-columns:43% 57%;
  overflow:hidden;
  background:#10151f;
  box-shadow:0 0 28px #000a;
  position:relative
}

.feature-left {
  position:relative;
  background:linear-gradient(90deg,#070d18 0%,#111721 100%);
  min-height:250px
}

.feature-copy {
  position:relative;
  z-index:1;
  padding:35px 30px 20px 48%;
  height:100%;
  background:linear-gradient(90deg,transparent 0%,#080e19 45%,#080e19 100%)
}

.feature-copy h2 {
  font-style:italic;
  font-size:31px;
  letter-spacing:-1.5px;
  margin:10px 0
}

.feature-copy p {
  font-size:13px;
  line-height:1.5;
  color:#e4e5e8
}

.feature-scene {
  position:absolute;
  left:0;
  top:0;
  bottom:0;
  width:62%;
  z-index:-1
}

.feature-scene img {
  width:100%;
  height:100%;
  object-fit:cover
}

.scene-filter {
  position:absolute;
  inset:0;
  background:#ffb253;
  opacity:.15;
  mix-blend-mode:color;
  transition:background .35s,opacity .35s
}

.feature-right {
  position:relative;
  background:linear-gradient(100deg,#a84a0c 0%,#ff9c3c 21%,#e6c6a0 48%,#b7cde1 72%,#3466a1 100%);
  color:#111;
  padding:20px 35px 12px;
  display:flex;
  flex-direction:column;
  justify-content:center
}

.feature-right:before {
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(0deg,#0003,transparent 70%);
  pointer-events:none
}

.bulb {
  position:absolute;
  top:6px;
  left:50%;
  transform:translateX(-50%);
  font-size:31px;
  filter:drop-shadow(0 0 15px #fff)
}

.temperature-top {
  display:flex;
  justify-content:space-between;
  text-align:center;
  margin:35px 0 15px;
  position:relative
}

.temperature-top div {
  width:33%
}

.temperature-top b,.temperature-top strong,.temperature-top small {
  display:block
}

.temperature-top b {
  font-size:17px
}

.temperature-top strong {
  font-size:12px
}

.temperature-top small {
  font-size:11px;
  margin-top:7px
}

.slider-box {
  position:relative;
  padding:0 10px
}

.slider-box input {
  width:100%;
  accent-color:#ff7900;
  cursor:grab;
  height:12px;
  filter:drop-shadow(0 0 5px #fff)
}

.slider-box input:active {
  cursor:grabbing
}

.kelvin-status {
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  font-size:11px;
  position:relative;
  margin-top:8px
}

.kelvin-status strong {
  font-size:15px
}

.preset-row {
  display:flex;
  gap:8px;
  justify-content:center;
  margin-top:12px;
  position:relative
}

.preset-row button {
  background:#10141d99;
  border:1px solid #ffffff80;
  color:white;
  border-radius:20px;
  padding:5px 14px;
  font-size:11px
}

.preset-row button.chosen {
  background:#ff8000;
  border-color:#ff8000
}

.benefits {
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:0;
  padding:20px 5%;
  background:#090e16
}

.benefits>div {
  display:flex;
  align-items:center;
  justify-content:center;
  gap:18px;
  border-right:1px solid #ffffff60
}

.benefits>div:last-child {
  border:0
}

.benefits span {
  color:#ff8609;
  font-size:36px
}

.benefits p {
  font-size:13px;
  line-height:1.5;
  color:#d5d6da
}

.benefits b {
  color:white
}

.discover {
  padding:100px 5% 110px;
  background:radial-gradient(circle at 50% 0,#20242c,#0b0e14 60%)
}

.section-head {
  text-align:center;
  margin-bottom:42px
}

.section-head h2,.about h2,.contact h2 {
  font-size:clamp(35px,4.2vw,62px);
  line-height:1.07;
  letter-spacing:-2px;
  margin:15px 0;
  font-weight:900
}

.section-head p {
  color:#c4c7ce
}

.discover-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:22px
}

.discover-card {
  height:390px;
  position:relative;
  overflow:hidden;
  border:1px solid #ffffff40;
  border-radius:22px
}

.discover-card img {
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .7s
}

.discover-card:hover img {
  transform:scale(1.12)
}

.discover-card:after {
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(0deg,#030407eb,transparent 65%)
}

.discover-card>div {
  position:absolute;
  bottom:24px;
  left:26px;
  z-index:2
}

.discover-card small {
  color:#ff9a26;
  font-weight:800;
  letter-spacing:2px
}

.discover-card h3 {
  font-size:26px;
  margin:10px 0
}

.discover-card a {
  font-size:13px;
  border-bottom:1px solid #ff8b14;
  padding-bottom:5px
}

.about {
  display:grid;
  grid-template-columns:1fr 1fr;
  align-items:center;
  background:#141820
}

.about-art {
  height:550px;
  overflow:hidden
}

.about-art img {
  width:100%;
  height:100%;
  object-fit:cover
}

.about-text {
  padding:8% 10%
}

.about-text p {
  color:#cbd0d8;
  line-height:1.8
}

.about-text .primary {
  margin-top:20px
}

.contact {
  display:grid;
  grid-template-columns:1fr 1fr;
  background:#0a0e15
}

.contact-intro {
  padding:85px 10%
}

.contact-intro p {
  line-height:1.7;
  color:#cbd0d8
}

.contact-buttons {
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-top:30px
}

.map iframe {
  width:100%;
  height:100%;
  min-height:400px;
  border:0;
  filter:grayscale(.6) contrast(1.1)
}

footer {
  padding:45px 6%;
  background:#05070a;
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:20px;
  justify-content:space-between
}

footer img {
  width:230px
}

footer p {
  color:#c7c7c7;
  font-size:12px
}

footer a {
  color:#ff8a0c;
  font-weight:800;
  font-size:13px
}

footer small {
  width:100%;
  color:#888;
  border-top:1px solid #ffffff22;
  padding-top:20px
}

.whatsapp-float {
  position:fixed;
  right:24px;
  bottom:23px;
  z-index:40;
  width:56px;
  height:56px;
  display:grid;
  place-items:center;
  background:#ff7900;
  color:#fff;
  border-radius:50%;
  font-size:30px;
  box-shadow:0 8px 25px #ff790088
}

.reveal {
  opacity:0;
  transform:translateY(30px);
  transition:opacity .7s,transform .7s
}

.reveal.visible {
  opacity:1;
  transform:none
}

@keyframes heroZoom {
  to {
    transform:scale(1.14)
  }
}

@media(max-width:1450px) {
  .topbar {
    padding:0 3%;
    gap:12px
  }
  .brand {
    width:190px
  }
  .topbar nav {
    gap:15px
  }
  .topbar nav a {
    font-size:11px
  }
  .top-location {
    display:none
  }
  .top-phone {
    font-size:10px
  }
  .quote {
    padding:10px
  }
  .cat b {
    font-size:11px
  }
}

@media(max-width:1100px) {
  .hamb {
    display:block;
    margin-left:auto
  }
  .topbar nav {
    display:none;
    position:absolute;
    top:78px;
    left:0;
    right:0;
    background:#10141d;
    flex-direction:column;
    align-items:stretch;
    padding:20px 7%;
    gap:20px
  }
  .topbar nav.open {
    display:flex
  }
  .topbar nav a.current:after {
    bottom:-7px
  }
  .top-right {
    display:none
  }
  .hero {
    height:690px
  }
  .category-track {
    grid-template-columns:repeat(4,1fr)
  }
  .category-wrap {
    bottom:0
  }
  .cat {
    height:95px
  }
  .light-feature {
    grid-template-columns:1fr
  }
  .feature-left {
    min-height:220px
  }
  .feature-right {
    min-height:260px
  }
  .benefits {
    grid-template-columns:repeat(2,1fr);
    gap:15px
  }
  .benefits>div:nth-child(2) {
    border:0
  }
}

@media(max-width:650px) {
  .topbar {
    height:68px;
    padding:0 5%
  }
  .brand {
    width:185px
  }
  .topbar nav {
    top:68px
  }
  .hero {
    height:750px
  }
  .hero-photo {
    background-position:65% center
  }
  .hero-vignette {
    background:linear-gradient(90deg,#050910f5,#0509109c 70%),linear-gradient(0deg,#080c12,transparent 70%)
  }
  .hero-content {
    padding:48px 6%
  }
  .hero h1 {
    font-size:48px;
    letter-spacing:-2px
  }
  .hero-content p {
    font-size:15px;
    max-width:330px
  }
  .micro {
    font-size:9px;
    letter-spacing:2px
  }
  .micro i {
    padding:0 3px
  }
  .hero-buttons {
    gap:10px
  }
  .hero-buttons a {
    font-size:11px;
    padding:13px 14px
  }
  .category-wrap {
    left:4%;
    width:92%
  }
  .category-track {
    grid-template-columns:repeat(4,1fr);
    gap:6px
  }
  .cat {
    height:94px;
    border-radius:13px;
    gap:5px
  }
  .cat-icon {
    font-size:24px
  }
  .cat b {
    font-size:9px
  }
  .cat-arrow {
    font-size:12px;
    right:5px;
    bottom:5px
  }
  .light-feature {
    margin:0 3%;
    border-radius:17px
  }
  .feature-copy {
    padding:28px 20px 30px 42%
  }
  .feature-copy h2 {
    font-size:24px
  }
  .feature-copy p {
    font-size:11px
  }
  .feature-right {
    padding:22px 12px
  }
  .temperature-top b {
    font-size:14px
  }
  .temperature-top small {
    font-size:10px
  }
  .kelvin-status {
    flex-direction:column;
    text-align:center
  }
  .benefits {
    padding:22px 4%
  }
  .benefits>div {
    gap:9px;
    justify-content:flex-start
  }
  .benefits span {
    font-size:26px
  }
  .benefits p {
    font-size:10px
  }
  .discover {
    padding:70px 5%
  }
  .discover-grid {
    grid-template-columns:1fr
  }
  .discover-card {
    height:310px
  }
  .about,.contact {
    grid-template-columns:1fr
  }
  .about-art {
    height:320px
  }
  .about-text,.contact-intro {
    padding:65px 7%
  }
  .map iframe {
    min-height:300px
  }
  footer {
    justify-content:flex-start
  }
  footer img {
    width:180px
  }
}

@media(prefers-reduced-motion:reduce) {
  *,*:before,*:after {
    animation:none!important;
    transition:none!important;
    scroll-behavior:auto!important
  }
  .reveal {
    opacity:1;
    transform:none
  }
}

/* Experience Plus */
.hero {
  min-height:690px;
  height:auto;
  padding-bottom:165px
}

.hero-photo {
  background-color:#15191e
}

.hero-vignette {
  background:linear-gradient(90deg,#050910 0%,#070c17f7 30%,#080d16a3 55%,#05080c18 100%),linear-gradient(0deg,#070a11 0%,transparent 65%)
}

.hero-content {
  padding-bottom:50px
}

.hero-content h1,.hero-content p,.micro {
  filter:drop-shadow(0 2px 10px #000b)
}

.category-wrap {
  bottom:8px
}

.hero:after {
  content:'';
  position:absolute;
  bottom:0;
  left:0;
  right:0;
  height:150px;
  background:linear-gradient(transparent,#090d14);
  pointer-events:none;
  z-index:0
}

.light-feature {
  margin-top:18px
}

.feature-copy {
  background:linear-gradient(90deg,#090e17c7,#080e19 58%)
}

.feature-scene {
  z-index:-1
}

.feature-right {
  min-height:310px;
  overflow:hidden
}

.bulb-real {
  height:155px;
  width:150px;
  position:relative;
  margin:-10px auto -15px;
  z-index:1;
  filter:drop-shadow(0 0 16px var(--bulb-color,#ffe2ae));
  transition:filter .25s
}

.bulb-real svg {
  width:100%;
  height:100%;
  overflow:visible
}

.bulb-live {
  position:absolute;
  bottom:5px;
  left:50%;
  transform:translateX(-50%);
  font-size:8px;
  letter-spacing:1.5px;
  white-space:nowrap;
  background:#111b;
  padding:5px 9px;
  border-radius:15px;
  color:white
}

.temperature-top {
  margin:4px 0 15px
}

.solutions,.tools-section,.guide {
  padding:95px 6%;
  background:#0c1018
}

.solutions {
  background:radial-gradient(ellipse at 85% 10%,#392013,#0b0f16 65%)
}

.solution-grid,.guide-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px
}

.solution-card {
  border:1px solid #ffffff2c;
  background:linear-gradient(145deg,#26262b,#10141c);
  padding:36px;
  border-radius:24px;
  min-height:290px;
  position:relative;
  overflow:hidden;
  transition:transform .35s,border-color .35s
}

.solution-card:hover {
  transform:translateY(-9px);
  border-color:#ff8000
}

.solution-card:before {
  content:'';
  position:absolute;
  right:-80px;
  top:-80px;
  width:200px;
  height:200px;
  background:radial-gradient(#ff80003c,transparent 70%)
}

.solution-card span,.tool-title {
  font-size:11px;
  letter-spacing:2px;
  color:#ff922b;
  font-weight:800
}

.solution-card h3 {
  font-size:clamp(23px,2.2vw,33px);
  line-height:1.15
}

.solution-card p,.guide-grid p {
  line-height:1.7;
  color:#c4c8d0;
  font-size:14px
}

.solution-card a {
  display:inline-block;
  color:#ff9b35;
  font-weight:800;
  margin-top:12px
}

.tools-section {
  background:#12161d
}

.tool-grid {
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:24px
}

.tool-card {
  background:#1d222b;
  border:1px solid #ffffff27;
  border-radius:25px;
  padding:35px
}

.tool-card h3 {
  font-size:25px;
  max-width:400px
}

.tool-card label {
  display:flex;
  justify-content:space-between;
  gap:12px;
  font-size:13px;
  margin:18px 0 10px
}

.tool-card label strong {
  color:#ff9b35
}

.tool-card input[type=range] {
  width:100%;
  accent-color:#ff7900
}

.tool-card select,.tool-card input[type=number] {
  width:100%;
  background:#10151d;
  color:#fff;
  border:1px solid #ffffff44;
  border-radius:12px;
  padding:12px
}

.tool-result {
  margin-top:23px;
  border-radius:18px;
  background:linear-gradient(130deg,#ff790022,#ff790008);
  border:1px solid #ff790055;
  padding:22px;
  display:flex;
  flex-direction:column;
  gap:8px
}

.tool-result span {
  font-size:12px;
  color:#f3c4a1
}

.tool-result strong {
  font-size:clamp(24px,3vw,38px)
}

.tool-result small {
  font-size:11px;
  color:#c5c7cc;
  line-height:1.6
}

.guide {
  background:#0d1017
}

.guide-grid article {
  padding:25px;
  border-top:2px solid #ff7900
}

.guide-grid b {
  color:#ff7900;
  font-size:13px
}

.guide-grid h3 {
  font-size:23px
}

.faq {
  max-width:920px;
  margin:50px auto 0
}

.faq h3 {
  font-size:30px
}

.faq details {
  border-bottom:1px solid #ffffff33;
  padding:19px 0
}

.faq summary {
  cursor:pointer;
  font-weight:700;
  list-style:none;
  display:flex;
  justify-content:space-between;
  gap:12px
}

.faq summary:after {
  content:'+';
  color:#ff8c22;
  font-size:22px
}

.faq details[open] summary:after {
  content:'−'
}

.faq details p {
  color:#c7cbd2;
  line-height:1.7
}

.cat:focus-visible,.primary:focus-visible,button:focus-visible,input:focus-visible {
  outline:3px solid #ffa647;
  outline-offset:3px
}

@media(max-width:1100px) {
  .hero {
    min-height:840px;
    padding-bottom:240px
  }
  .solution-grid,.guide-grid {
    grid-template-columns:1fr 1fr
  }
  .feature-right {
    min-height:350px
  }
}

@media(max-width:650px) {
  .hero {
    min-height:900px;
    padding-bottom:365px
  }
  .hero-content {
    padding-bottom:10px
  }
  .hero-content h1 {
    font-size:clamp(42px,11vw,55px)
  }
  .hero-vignette {
    background:linear-gradient(90deg,#050910f2,#050910bd 78%),linear-gradient(0deg,#080c12,transparent 65%)
  }
  .category-wrap {
    bottom:12px
  }
  .light-feature {
    margin-top:14px
  }
  .feature-right {
    min-height:360px
  }
  .solution-grid,.guide-grid,.tool-grid {
    grid-template-columns:1fr
  }
  .solutions,.tools-section,.guide {
    padding:70px 5%
  }
  .solution-card {
    min-height:unset
  }
  .tool-card {
    padding:22px
  }
  .feature-copy {
    background:linear-gradient(90deg,#090e1799,#080e19 63%)
  }
  .feature-copy h2 {
    font-size:23px
  }
  .feature-scene {
    width:70%
  }
}

/* Light Lab v2: estrutura independente, sem cortes ou textos sobre a fotografia */
.lightlab-v2 {
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1.55fr)!important;
  gap:0!important;
  min-height:0!important;
  height:auto!important;
  overflow:hidden!important;
  margin:26px 3.5% 0!important;
  background:#0b1018!important;
  border:1px solid #ffffff35!important;
  border-radius:26px!important;
  isolation:isolate
}

.lightlab-v2 .lab-intro {
  grid-column:1;
  grid-row:1;
  background:radial-gradient(ellipse at 0 0,#352017,#0c1018 75%);
  padding:clamp(30px,4vw,66px);
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-height:430px;
  position:relative;
  z-index:2
}

.lightlab-v2 .lab-intro h2 {
  font-size:clamp(32px,3.3vw,57px);
  line-height:1.06;
  letter-spacing:-1.5px;
  margin:22px 0 20px;
  color:#fff;
  font-weight:900
}

.lightlab-v2 .lab-intro h2 em {
  color:#ff871e;
  font-style:italic
}

.lightlab-v2 .lab-intro p {
  font-size:clamp(14px,1.15vw,17px);
  line-height:1.75;
  color:#d3d7df;
  max-width:470px
}

.lab-note {
  display:flex;
  align-items:center;
  gap:10px;
  font-size:10px;
  font-weight:800;
  letter-spacing:1.5px;
  color:#ffab65;
  margin-top:24px
}

.lab-live-dot {
  height:8px;
  width:8px;
  border-radius:50%;
  background:#ff8b25;
  box-shadow:0 0 16px #ff8b25;
  animation:labPulse 2s infinite alternate
}

@keyframes labPulse {
  to {
    opacity:.45;
    box-shadow:0 0 5px #ff8b25
  }
}

.lightlab-v2 .lab-stage {
  grid-column:2;
  grid-row:1;
  min-width:0;
  min-height:430px;
  position:relative;
  overflow:hidden;
  background:#22252b;
  isolation:isolate
}

.lab-room {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center center;
  filter:brightness(.88) contrast(1.06) saturate(.83);
  transition:filter .2s linear;
  z-index:0
}

.lab-light-wash {
  position:absolute;
  inset:0;
  z-index:1;
  background:rgb(255,229,195);
  opacity:.28;
  mix-blend-mode:color;
  pointer-events:none;
  transition:background-color .13s linear,opacity .13s linear
}

.lab-light-wash:after {
  content:'';
  position:absolute;
  inset:0;
  background:radial-gradient(ellipse at 53% 15%,rgba(255,231,179,.65),transparent 75%);
  mix-blend-mode:screen
}

.lab-vignette {
  position:absolute;
  inset:0;
  z-index:2;
  background:linear-gradient(180deg,#05090caa,transparent 25%,transparent 60%,#05090cc9);
  pointer-events:none
}

.lab-stage-top,.lab-stage-bottom {
  position:absolute;
  z-index:3;
  left:26px;
  right:26px;
  color:#fff;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:15px;
  text-shadow:0 2px 8px #000
}

.lab-stage-top {
  top:23px;
  font-size:10px;
  letter-spacing:1.3px;
  font-weight:800
}

.lab-stage-top span:last-child {
  padding:8px 13px;
  border:1px solid #ffffff88;
  border-radius:40px;
  background:#080c12aa
}

.lab-stage-bottom {
  bottom:24px;
  align-items:flex-end
}

.lab-stage-bottom strong {
  font-size:clamp(28px,3vw,46px);
  font-weight:900
}

.lab-stage-bottom span {
  font-size:12px;
  font-weight:700
}

.lab-console {
  grid-column:1/-1;
  grid-row:2;
  padding:28px clamp(24px,4vw,60px) 26px;
  background:linear-gradient(135deg,#151a23,#0a0e15);
  border-top:1px solid #ffffff25;
  position:relative;
  z-index:3
}

.lab-console-head {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:25px;
  margin-bottom:25px
}

.lab-console-head h3 {
  font-size:clamp(21px,2.2vw,29px);
  margin:7px 0 0
}

.lab-readout {
  text-align:right;
  display:flex;
  flex-direction:column;
  gap:5px
}

.lab-readout strong {
  color:#ff9a37;
  font-size:clamp(24px,2.4vw,36px);
  font-variant-numeric:tabular-nums
}

.lab-readout span {
  color:#c8ced9;
  font-size:12px
}

.lab-range-labels {
  display:flex;
  justify-content:space-between;
  gap:12px;
  margin-bottom:13px
}

.lab-range-labels span {
  display:flex;
  flex-direction:column;
  gap:5px
}

.lab-range-labels span:nth-child(2) {
  text-align:center
}

.lab-range-labels span:nth-child(3) {
  text-align:right
}

.lab-range-labels b {
  font-size:12px
}

.lab-range-labels small {
  color:#aeb7c6;
  font-size:11px
}

.lightlab-v2 #kelvin {
  appearance:none;
  -webkit-appearance:none;
  display:block;
  width:100%;
  height:13px;
  border-radius:30px;
  cursor:ew-resize;
  background:linear-gradient(90deg,#ff8317,#ffcb79 27%,#fff0d2 49%,#d6e7ff 73%,#84b9ff);
  border:1px solid #ffffff55;
  box-shadow:0 0 15px #ff900032
}

.lightlab-v2 #kelvin::-webkit-slider-thumb {
  appearance:none;
  -webkit-appearance:none;
  width:29px;
  height:29px;
  border-radius:50%;
  border:5px solid #fff;
  background:#ff8b1d;
  box-shadow:0 0 0 5px #ff8b1d45,0 0 24px #ff8b1db0;
  cursor:grab
}

.lightlab-v2 #kelvin::-moz-range-thumb {
  width:21px;
  height:21px;
  border-radius:50%;
  border:5px solid #fff;
  background:#ff8b1d;
  box-shadow:0 0 0 5px #ff8b1d45;
  cursor:grab
}

.lab-actions {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  flex-wrap:wrap;
  margin-top:26px
}

.lightlab-v2 .preset-row {
  display:flex;
  gap:9px;
  margin:0
}

.lightlab-v2 .preset-row button {
  background:#252c38;
  border:1px solid #ffffff44;
  border-radius:30px;
  padding:10px 17px;
  color:#fff;
  font-weight:700;
  font-size:12px;
  transition:.2s
}

.lightlab-v2 .preset-row button:hover,.lightlab-v2 .preset-row button.chosen {
  background:#ff861b;
  color:#120c06;
  border-color:#ff861b;
  transform:translateY(-2px)
}

.lab-cta {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:12px 18px;
  border-radius:30px;
  border:1px solid #ff923c;
  color:#ffad64;
  font-size:12px;
  font-weight:800;
  transition:.2s
}

.lab-cta:hover {
  background:#ff861b;
  color:#15100b
}

.lab-disclaimer {
  margin:22px 0 0;
  color:#8f98a8;
  font-size:11px;
  line-height:1.5
}

@media(max-width:900px) {
  .lightlab-v2 {
    grid-template-columns:1fr!important
  }
  .lightlab-v2 .lab-intro {
    grid-column:1;
    grid-row:1;
    min-height:0;
    padding:32px
  }
  .lightlab-v2 .lab-stage {
    grid-column:1;
    grid-row:2;
    min-height:330px
  }
  .lightlab-v2 .lab-console {
    grid-column:1;
    grid-row:3
  }
}

@media(max-width:600px) {
  .lightlab-v2 {
    margin:16px 3% 0!important;
    border-radius:18px!important
  }
  .lightlab-v2 .lab-intro {
    padding:27px 22px
  }
  .lightlab-v2 .lab-intro h2 {
    font-size:34px
  }
  .lightlab-v2 .lab-stage {
    min-height:265px
  }
  .lab-stage-top,.lab-stage-bottom {
    left:16px;
    right:16px
  }
  .lab-stage-top {
    top:14px;
    font-size:8px
  }
  .lab-stage-bottom {
    bottom:14px
  }
  .lab-stage-bottom span {
    font-size:10px
  }
  .lab-console {
    padding:26px 18px
  }
  .lab-console-head {
    align-items:flex-start
  }
  .lab-readout span {
    max-width:140px
  }
  .lab-range-labels small {
    font-size:9px
  }
  .lab-actions {
    flex-direction:column;
    align-items:stretch
  }
  .lightlab-v2 .preset-row {
    justify-content:space-between
  }
  .lightlab-v2 .preset-row button {
    padding:10px 11px;
    font-size:11px
  }
  .lab-cta {
    text-align:center
  }
}

/* Rodapé premium C5 — isolado dos estilos antigos */
.c5-footer {
  position:relative;
  isolation:isolate;
  overflow:hidden;
  background:#07090d;
  padding:0 5.2% 24px;
  display:block;
  color:#fff
}

.c5-footer .footer-ambient {
  position:absolute;
  inset:0;
  z-index:-2;
  background:radial-gradient(ellipse at 85% 4%,#ff79001b,transparent 39%),radial-gradient(ellipse at 10% 70%,#192534,transparent 48%),#07090d
}

.c5-footer .footer-orb {
  position:absolute;
  border-radius:50%;
  filter:blur(4px);
  pointer-events:none;
  z-index:-1
}

.footer-orb-a {
  height:320px;
  width:320px;
  right:-190px;
  top:100px;
  border:1px solid #ff850040;
  box-shadow:0 0 110px #ff790018,inset 0 0 70px #ff790015;
  animation:footerFloat 12s ease-in-out infinite alternate
}

.footer-orb-b {
  height:180px;
  width:180px;
  left:-100px;
  bottom:40px;
  border:1px solid #ff850033;
  animation:footerFloat 9s ease-in-out infinite alternate-reverse
}

@keyframes footerFloat {
  to {
    transform:translate(15px,-35px) rotate(12deg)
  }
}

.c5-footer .footer-top {
  padding:75px 0 65px;
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:40px
}

.footer-kicker {
  display:inline-flex;
  align-items:center;
  gap:10px;
  font-size:11px;
  letter-spacing:2.3px;
  font-weight:800;
  color:#ffa04a
}

.footer-live {
  width:8px;
  height:8px;
  flex:none;
  border-radius:50%;
  background:#ff861d;
  box-shadow:0 0 0 4px #ff861d22,0 0 18px #ff861d;
  animation:footerLive 2s infinite alternate
}

@keyframes footerLive {
  to {
    opacity:.45;
    box-shadow:0 0 0 7px #ff861d0a,0 0 5px #ff861d
  }
}

.c5-footer .footer-top h2 {
  font-size:clamp(35px,4.7vw,74px);
  letter-spacing:-2.5px;
  line-height:1.05;
  margin:20px 0;
  font-weight:900
}

.footer-top h2 em {
  font-style:italic;
  color:#ff861d
}

.c5-footer .footer-top p {
  max-width:530px;
  font-size:15px;
  line-height:1.8;
  color:#adb6c3;
  margin:0
}

.c5-footer .footer-cta {
  display:inline-flex;
  align-items:center;
  justify-content:space-between;
  gap:36px;
  min-width:245px;
  padding:19px 22px;
  background:linear-gradient(135deg,#ffab38,#ff7900);
  border:1px solid #ffc177;
  color:#170b03;
  border-radius:14px;
  font-weight:900;
  box-shadow:0 12px 35px #ff79002c;
  transition:transform .3s,box-shadow .3s
}

.c5-footer .footer-cta:hover {
  transform:translateY(-6px);
  box-shadow:0 20px 42px #ff79005e
}

.footer-cta span {
  font-size:24px;
  transition:transform .3s
}

.footer-cta:hover span {
  transform:translate(4px,-4px)
}

.footer-divider-glow {
  height:1px;
  background:linear-gradient(90deg,transparent,#ff861d 20%,#ffffff25 60%,transparent);
  box-shadow:0 0 17px #ff790055
}

.footer-grid {
  display:grid;
  grid-template-columns:minmax(250px,1.55fr) minmax(130px,.8fr) minmax(130px,.8fr) minmax(190px,1fr);
  gap:clamp(24px,4vw,72px);
  padding:64px 0 68px
}

.c5-footer .footer-brand-col img {
  width:min(270px,100%);
  height:auto;
  display:block
}

.footer-brand-col>p {
  font-size:13px;
  line-height:1.8;
  color:#9fa9b8;
  max-width:320px;
  margin:25px 0
}

.footer-socials {
  display:flex;
  flex-wrap:wrap;
  gap:10px
}

.c5-footer .footer-social {
  display:flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  padding:12px 14px;
  background:#141920;
  border:1px solid #ffffff21;
  border-radius:12px;
  color:#dce1e8;
  font-size:11px;
  font-weight:700;
  transition:transform .3s,background .3s,border-color .3s,box-shadow .3s
}

.footer-social svg {
  width:18px;
  height:18px;
  flex:none
}

.c5-footer .footer-social:hover {
  transform:translateY(-6px);
  background:#ff7900;
  color:#101010;
  border-color:#ff9d4b;
  box-shadow:0 10px 30px #ff790048
}

.c5-footer h3 {
  font-size:13px;
  letter-spacing:.5px;
  margin:4px 0 25px;
  color:#fff
}

.footer-links {
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:15px
}

.c5-footer .footer-links a {
  color:#9fa9b8;
  font-size:13px;
  font-weight:500;
  display:flex;
  justify-content:space-between;
  gap:10px;
  transition:color .2s,transform .2s
}

.footer-links a span {
  opacity:0;
  transform:translate(-5px,5px);
  transition:.2s;
  color:#ff861d
}

.c5-footer .footer-links a:hover {
  color:#fff;
  transform:translateX(4px)
}

.footer-links a:hover span {
  opacity:1;
  transform:none
}

.footer-visit p {
  font-size:13px;
  line-height:1.8;
  color:#aeb6c2
}

.footer-visit p>span {
  color:#ff861d;
  font-size:23px;
  float:left;
  margin-right:10px
}

.c5-footer .footer-map-link {
  font-size:12px;
  font-weight:800;
  color:#ff9a40;
  display:inline-flex;
  gap:12px;
  border-bottom:1px solid #ff9a4088;
  padding-bottom:8px;
  transition:gap .2s
}

.footer-map-link:hover {
  gap:20px
}

.footer-contact-pill {
  display:flex;
  align-items:center;
  gap:10px;
  margin-top:24px;
  padding:12px 13px;
  border-radius:12px;
  background:#161b21;
  border:1px solid #ffffff1e;
  color:#d4dbe4;
  font-size:10px;
  max-width:max-content
}

.c5-footer .footer-bottom {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:22px;
  padding:22px 0;
  border-top:1px solid #ffffff21;
  border-bottom:1px solid #ffffff12;
  color:#8f99a8;
  font-size:11px;
  flex-wrap:wrap
}

.footer-dev {
  display:inline-flex;
  align-items:center;
  flex-wrap:wrap;
  gap:8px;
  letter-spacing:1.1px;
  font-size:10px
}

.footer-dev strong {
  color:#fff;
  letter-spacing:.5px;
  transition:color .3s
}

.footer-dev:hover strong {
  color:#ff942e
}

.dev-spark {
  color:#ff861d;
  animation:footerSpark 3s infinite
}

@keyframes footerSpark {
  50% {
    opacity:.35;
    transform:rotate(60deg) scale(.8)
  }
}

.c5-footer .footer-backtop {
  border:1px solid #ffffff35;
  background:#151a22;
  color:#fff;
  border-radius:50px;
  padding:10px 15px;
  font-size:13px;
  display:flex;
  align-items:center;
  gap:9px;
  transition:.3s
}

.footer-backtop:hover {
  background:#ff7900;
  border-color:#ff7900;
  color:#121212;
  transform:translateY(-4px)
}

.footer-backtop span {
  font-size:11px;
  font-weight:700
}

.c5-footer .footer-disclaimer {
  color:#66717f;
  font-size:10px;
  line-height:1.6;
  margin:18px 0 0
}

@media(max-width:1000px) {
  .footer-grid {
    grid-template-columns:repeat(2,minmax(0,1fr))
  }
  .c5-footer .footer-top {
    align-items:start;
    flex-direction:column
  }
  .c5-footer .footer-top {
    padding:60px 0 45px
  }
}

@media(max-width:560px) {
  .c5-footer {
    padding:0 6% 22px
  }
  .footer-grid {
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:40px 22px;
    padding:45px 0
  }
  .footer-brand-col,.footer-visit {
    grid-column:1/-1
  }
  .c5-footer .footer-top h2 {
    font-size:clamp(35px,9vw,50px);
    letter-spacing:-1.5px
  }
  .c5-footer .footer-cta {
    width:100%
  }
  .footer-socials {
    gap:8px
  }
  .c5-footer .footer-social {
    padding:11px
  }
  .footer-bottom {
    align-items:flex-start
  }
  .footer-dev {
    order:3;
    width:100%;
    line-height:1.8
  }
  .footer-backtop {
    margin-left:auto
  }
}

@media(prefers-reduced-motion:reduce) {
  .c5-footer * {
    animation:none!important;
    transition:none!important
  }
}

/* C5 IMMERSIVE — camada visual e responsiva */
:root {
  --c5-glow:#ff8215;
  --ease-out:cubic-bezier(.2,.8,.2,1)
}

html {
  scroll-padding-top:88px
}

body {
  background:#090d13
}

body.menu-open {
  overflow:hidden
}

:focus-visible {
  outline:3px solid #ffab54!important;
  outline-offset:4px
}

button,a,input,select {
  touch-action:manipulation
}

.topbar {
  position:sticky;
  top:0;
  z-index:110;
  background:#080b10ed;
  backdrop-filter:blur(22px);
  -webkit-backdrop-filter:blur(22px);
  border-bottom:1px solid #ffffff18;
  transition:box-shadow .3s,background .3s
}

.topbar.scrolled {
  box-shadow:0 14px 40px #0009;
  background:#090c12f8
}

.topbar nav a:not(.mobile-nav-cta):after {
  content:'';
  position:absolute;
  bottom:-9px;
  left:0;
  width:100%;
  height:2px;
  transform:scaleX(0);
  transform-origin:left;
  background:#ff8c22;
  transition:transform .3s
}

.topbar nav a:hover:after,.topbar nav a.current:after {
  transform:scaleX(1)
}

.hero {
  isolation:isolate
}

.hero-photo {
  will-change:transform
}

.hero-content {
  animation:heroArrival 1s var(--ease-out) both
}

.hero-content p {
  max-width:530px;
  text-shadow:0 2px 14px #000
}

.hero-content h1 {
  filter:drop-shadow(0 8px 12px #0008)
}

.hero-scroll-hint {
  display:flex;
  align-items:center;
  gap:12px;
  margin-top:23px;
  font-size:9px;
  letter-spacing:2.5px;
  font-weight:800;
  color:#c8cbd0
}

.scroll-wheel {
  height:27px;
  width:17px;
  border:1px solid #ff9a3b;
  border-radius:20px;
  position:relative
}

.scroll-wheel:after {
  content:'';
  position:absolute;
  left:7px;
  top:5px;
  width:2px;
  height:6px;
  background:#ff9a3b;
  border-radius:2px;
  animation:wheel 1.7s infinite
}

@keyframes wheel {
  to {
    transform:translateY(9px);
    opacity:0
  }
}

@keyframes heroArrival {
  from {
    opacity:0;
    transform:translateY(35px);
    filter:blur(8px)
  }
  to {
    opacity:1;
    transform:none;
    filter:blur(0)
  }
}

.energy-lines {
  position:absolute;
  inset:0;
  pointer-events:none;
  z-index:1;
  overflow:hidden
}

.energy-lines i {
  position:absolute;
  width:2px;
  height:180px;
  background:linear-gradient(transparent,#ff9a2d,transparent);
  opacity:.42;
  filter:drop-shadow(0 0 8px #ff7a00);
  transform:rotate(35deg);
  animation:energyDrift 11s linear infinite
}

.energy-lines i:nth-child(1) {
  left:62%;
  top:-35%;
  animation-delay:-3s
}

.energy-lines i:nth-child(2) {
  left:85%;
  top:-45%;
  animation-delay:-8s
}

.energy-lines i:nth-child(3) {
  left:43%;
  top:-60%;
  animation-delay:-5s
}

@keyframes energyDrift {
  to {
    translate:-270px 1050px;
    opacity:0
  }
}

.quote,.primary,.secondary,.lab-cta,.footer-cta,.cat,.solution-card,.tool-card,.discover-card {
  position:relative;
  isolation:isolate
}

.quote,.primary,.secondary,.lab-cta,.footer-cta {
  overflow:hidden;
  transition:transform .3s var(--ease-out),box-shadow .3s,border-color .3s
}

.quote:before,.primary:before,.footer-cta:before {
  content:'';
  position:absolute;
  inset:-120% auto -120% -80%;
  width:35%;
  transform:rotate(23deg);
  background:linear-gradient(90deg,transparent,#fff9,transparent);
  transition:left .65s var(--ease-out);
  pointer-events:none
}

.quote:hover:before,.primary:hover:before,.footer-cta:hover:before {
  left:140%
}

.secondary:hover,.lab-cta:hover {
  box-shadow:0 0 25px #ff790038;
  transform:translateY(-3px)
}

.ripple {
  position:absolute;
  z-index:10;
  pointer-events:none;
  width:20px;
  height:20px;
  border-radius:50%;
  background:#ffffff75;
  transform:translate(-50%,-50%) scale(0);
  animation:rippleOut .65s ease-out forwards
}

@keyframes rippleOut {
  to {
    transform:translate(-50%,-50%) scale(22);
    opacity:0
  }
}

.cursor-aura {
  position:fixed;
  left:0;
  top:0;
  width:340px;
  height:340px;
  border-radius:50%;
  background:radial-gradient(circle,#ff7b0018,transparent 65%);
  pointer-events:none;
  z-index:9;
  translate:-50% -50%;
  opacity:0;
  transition:opacity .4s;
  will-change:transform
}

.cursor-aura.active {
  opacity:1
}

.interactive-surface {
  transition:transform .45s var(--ease-out),border-color .35s,box-shadow .35s
}

.interactive-surface:hover {
  border-color:#ff932f85;
  box-shadow:0 20px 65px #0005,0 0 32px #ff810015
}

.solution-card:before,.tool-card:before {
  content:'';
  position:absolute;
  inset:0;
  border-radius:inherit;
  background:radial-gradient(340px circle at var(--hover-x,50%) var(--hover-y,50%),#ff9a2420,transparent 75%);
  pointer-events:none;
  opacity:0;
  transition:opacity .3s
}

.solution-card:hover:before,.tool-card:hover:before {
  opacity:1
}

.section-sheen {
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:.4;
  background:radial-gradient(ellipse at 90% 0%,#ff7b000a,transparent 45%)
}

section {
  position:relative
}

.lightlab-v2 {
  box-shadow:0 20px 80px #0008,0 0 0 1px #ff790016
}

.lab-stage {
  overflow:hidden
}

.lab-room {
  transition:filter .25s,transform 1s!important
}

.lab-stage:hover .lab-room {
  transform:scale(1.035)
}

.lab-light-wash {
  transition:background-color .2s,opacity .2s
}

.lightlab-v2 #kelvin {
  touch-action:pan-y
}

.tool-card input[type=range] {
  accent-color:#ff861b
}

.discover-card img {
  will-change:transform
}

.reveal {
  transition:opacity .85s var(--ease-out),transform .85s var(--ease-out),filter .85s;
  filter:blur(7px)
}

.reveal.visible {
  filter:blur(0)
}

.benefits>div {
  border-radius:12px
}

.benefits>div:hover {
  background:#ff7c000c;
  transform:translateY(-4px)
}

.footer-social:hover svg {
  transform:rotate(-8deg) scale(1.13)
}

.footer-social svg {
  transition:transform .3s
}

.whatsapp-float {
  animation:whatsPulse 3.5s infinite
}

.whatsapp-float:hover {
  transform:scale(1.1) rotate(-7deg)
}

@keyframes whatsPulse {
  50% {
    box-shadow:0 8px 30px #ff790080,0 0 0 11px #ff790010
  }
}

.mobile-backdrop {
  display:none
}

.mobile-nav-cta {
  display:none!important
}

@media(min-width:1101px) {
  [data-magnetic] {
    --tx:0px;
    --ty:0px;
    transform:translate(var(--tx),var(--ty))
  }
  .quote:hover,.primary:hover,.footer-cta:hover {
    transform:translate(var(--tx),calc(var(--ty) - 3px))
  }
}

@media(max-width:1250px) {
  .topbar {
    padding-inline:3%
  }
  .top-location {
    display:none
  }
  .topbar nav {
    gap:12px
  }
  .top-right {
    gap:8px
  }
  .brand {
    width:170px
  }
}

@media(max-width:1100px) {
  .topbar {
    height:74px;
    padding:0 4%;
    justify-content:space-between
  }
  .brand {
    width:min(205px,42vw)
  }
  .top-right {
    margin-left:auto
  }
  .top-phone {
    display:none
  }
  .topbar .hamb {
    display:flex!important;
    flex-direction:column;
    justify-content:center;
    gap:5px;
    order:3;
    z-index:125;
    align-items:center;
    width:46px;
    height:46px;
    border:1px solid #ffffff35;
    border-radius:12px;
    background:#171a21;
    color:#fff;
    padding:10px
  }
  .hamb span {
    display:block;
    width:23px;
    height:2px;
    background:#fff;
    border-radius:5px;
    transition:transform .3s,opacity .3s
  }
  .hamb[aria-expanded=true] span:nth-child(1) {
    transform:translateY(7px) rotate(45deg)
  }
  .hamb[aria-expanded=true] span:nth-child(2) {
    opacity:0
  }
  .hamb[aria-expanded=true] span:nth-child(3) {
    transform:translateY(-7px) rotate(-45deg)
  }
  .topbar nav {
    display:flex!important;
    position:fixed;
    z-index:120;
    top:74px;
    right:0;
    left:auto;
    width:min(390px,92vw);
    height:calc(100dvh - 74px);
    background:#0d121bf8;
    backdrop-filter:blur(24px);
    flex-direction:column;
    align-items:stretch;
    justify-content:flex-start;
    gap:0;
    padding:28px 22px 55px;
    overflow-y:auto;
    box-shadow:-20px 20px 70px #0009;
    transform:translateX(110%);
    opacity:0;
    visibility:hidden;
    transition:transform .42s var(--ease-out),opacity .3s,visibility .3s
  }
  .topbar nav.open {
    transform:translateX(0);
    opacity:1;
    visibility:visible
  }
  .topbar nav a {
    font-size:17px!important;
    padding:17px 12px;
    border-bottom:1px solid #ffffff14
  }
  .topbar nav .mobile-nav-cta {
    display:block!important;
    background:#ff8215;
    color:#140900;
    text-align:center;
    margin-top:24px;
    border-radius:12px;
    font-weight:900
  }
  .mobile-backdrop {
    display:block;
    position:fixed;
    inset:74px 0 0;
    z-index:105;
    background:#0009;
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transition:opacity .3s,visibility .3s
  }
  .mobile-backdrop.open {
    opacity:1;
    visibility:visible;
    pointer-events:auto
  }
  .topbar nav a.current:after {
    display:none
  }
  .category-track {
    display:flex;
    overflow-x:auto;
    scroll-snap-type:x mandatory;
    scrollbar-width:none;
    padding:5px 3px 10px
  }
  .category-track::-webkit-scrollbar {
    display:none
  }
  .cat {
    min-width:150px;
    flex:0 0 150px;
    scroll-snap-align:start
  }
  .category-wrap {
    left:4%;
    width:92%
  }
  .hero {
    height:620px
  }
  .hero-content {
    padding-top:55px
  }
  .hero h1 {
    font-size:clamp(45px,6vw,74px)
  }
  .category-dots {
    display:none
  }
}

@media(max-width:760px) {
  .topbar {
    height:68px;
    padding:0 16px
  }
  .topbar nav {
    top:68px;
    height:calc(100dvh - 68px)
  }
  .mobile-backdrop {
    top:68px
  }
  .brand {
    width:165px
  }
  .topbar .quote {
    font-size:0;
    padding:12px 11px;
    border-radius:12px
  }
  .topbar .quote span {
    font-size:20px
  }
  .hero {
    height:auto;
    min-height:760px;
    padding-bottom:162px
  }
  .hero-photo {
    background-position:64% center
  }
  .hero-vignette {
    background:linear-gradient(90deg,#050910e8,#070c17a8 67%,#05080c30),linear-gradient(0deg,#070a11 0%,transparent 80%)
  }
  .hero-content {
    padding:62px 6% 0
  }
  .hero h1 {
    font-size:clamp(42px,10vw,69px);
    letter-spacing:-2.5px;
    line-height:1.04
  }
  .hero-content p {
    font-size:16px;
    max-width:430px
  }
  .micro {
    letter-spacing:2px;
    font-size:9px
  }
  .micro i {
    padding:0 5px
  }
  .hero-buttons {
    flex-direction:column;
    align-items:stretch;
    max-width:400px
  }
  .hero-buttons a {
    white-space:normal;
    text-align:center;
    min-height:49px
  }
  .hero-scroll-hint {
    margin-top:22px
  }
  .category-wrap {
    bottom:10px
  }
  .cat {
    height:115px;
    min-width:144px;
    flex-basis:144px
  }
  .lightlab-v2 {
    margin-top:18px!important
  }
  .benefits {
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
    padding:20px 4%
  }
  .benefits>div {
    justify-content:flex-start;
    border:1px solid #ffffff20;
    padding:15px 12px;
    gap:10px
  }
  .benefits span {
    font-size:27px
  }
  .benefits p {
    font-size:11px
  }
  .discover {
    padding:65px 5%
  }
  .discover-grid {
    grid-template-columns:1fr;
    gap:16px
  }
  .discover-card {
    height:320px
  }
  .section-head h2,.about h2,.contact h2 {
    font-size:clamp(34px,8vw,48px);
    letter-spacing:-1.5px
  }
  .about,.contact {
    grid-template-columns:1fr
  }
  .about-art {
    height:300px
  }
  .about-text,.contact-intro {
    padding:52px 7%
  }
  .map iframe {
    min-height:300px
  }
  .whatsapp-float {
    width:52px;
    height:52px;
    bottom:16px;
    right:16px
  }
  .footer-bottom {
    padding-bottom:75px!important
  }
}

@media(max-width:400px) {
  .topbar .quote {
    display:none
  }
  .hero {
    min-height:770px
  }
  .hero h1 {
    font-size:42px
  }
  .hero-content {
    padding-top:50px
  }
  .lab-stage {
    min-height:240px!important
  }
  .lab-console-head {
    flex-direction:column;
    gap:12px
  }
  .lab-readout {
    text-align:left
  }
  .lab-range-labels small {
    font-size:8px
  }
}

@media(hover:none),(pointer:coarse) {
  .cursor-aura {
    display:none
  }
  .cat:hover,.interactive-surface:hover {
    transform:none
  }
  .whatsapp-float {
    animation:none
  }
}

@media(prefers-reduced-motion:reduce) {
  *,*:before,*:after {
    animation-duration:.01ms!important;
    animation-iteration-count:1!important;
    scroll-behavior:auto!important;
    transition-duration:.01ms!important
  }
  .reveal {
    opacity:1!important;
    filter:none!important;
    transform:none!important
  }
  .cursor-aura,.energy-lines {
    display:none
  }
}

/* =============================================================
   ELETRO C5 V2 — EXPERIÊNCIA, MARCAS, LIGHT SWITCH E CUPOM
   ============================================================= */
.hero {
  min-height:720px!important;
  padding-bottom:176px!important
}

.hero-content {
  max-width:980px;
  padding:clamp(70px,8vw,122px) 7% 30px!important
}

.hero h1 {
  font-style:normal!important;
  font-size:clamp(52px,5.6vw,91px)!important;
  line-height:1.02!important;
  letter-spacing:-.065em!important;
  max-width:880px;
  margin:24px 0!important;
  text-wrap:balance
}

.hero-title-accent {
  display:block;
  color:#ff8a20;
  background:linear-gradient(110deg,#ffad4b,#ff6a00);
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent
}

.hero-content p {
  max-width:610px;
  font-size:clamp(16px,1.4vw,20px)!important;
  line-height:1.65!important
}

.category-wrap {
  bottom:16px!important;
  left:7%!important;
  width:86%!important
}

.category-track {
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:16px!important;
  overflow:visible!important
}

.cat {
  min-width:0!important;
  width:100%;
  height:126px!important;
  flex-basis:auto!important;
  display:flex!important;
  flex-direction:row!important;
  justify-content:flex-start!important;
  gap:18px!important;
  padding:24px!important;
  text-align:left!important;
  border-radius:20px!important;
  background:linear-gradient(125deg,#171c26e8,#11151ddf)!important
}

.cat-icon {
  font-size:38px!important;
  color:#ff963b!important;
  flex-shrink:0
}

.cat b {
  font-size:clamp(13px,1.05vw,17px)!important;
  line-height:1.25
}

.cat-arrow {
  right:17px!important;
  bottom:17px!important;
  font-size:18px!important
}

.brands-section {
  position:relative;
  background:#0a0e16;
  padding:32px 0 22px;
  border-bottom:1px solid #ffffff1b;
  overflow:hidden
}

.brands-top,.brands-footer {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:0 7%
}

.brands-top-caption {
  font-size:12px;
  color:#b8becb
}

.brands-top-caption span {
  color:#ff8d21
}

.brands-marquee {
  margin:27px 0 16px;
  overflow:hidden;
  position:relative;
  outline-offset:4px;
  mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)
}

.brands-track {
  display:flex;
  width:max-content;
  animation:brandsMove 37s linear infinite
}

.brands-group {
  display:flex;
  align-items:center;
  flex-shrink:0;
  gap:18px;
  padding-right:18px
}

.brand-name {
  white-space:nowrap;
  padding:18px 27px;
  min-width:150px;
  text-align:center;
  border:1px solid #ffffff1c;
  border-radius:14px;
  background:linear-gradient(135deg,#1d2430,#111722);
  color:#e6e9ef;
  font-size:clamp(16px,1.4vw,22px);
  font-weight:850;
  letter-spacing:-.045em;
  transition:color .25s,border-color .25s,background .25s,transform .25s
}

.brand-name:hover {
  color:#ff9737;
  border-color:#ff8a2788;
  background:#241b17;
  transform:translateY(-4px)
}

.brands-marquee:hover .brands-track,.brands-marquee:focus-within .brands-track,.brands-marquee:focus .brands-track {
  animation-play-state:paused
}

@keyframes brandsMove {
  to {
    transform:translateX(-50%)
  }
}

.brands-footer {
  font-size:10px;
  letter-spacing:2px;
  color:#818b9d
}

.brands-footer span:last-child {
  color:#ff9132
}

/* menu com logo e acabamento premium */
.topbar {
  position:sticky!important;
  top:0;
  z-index:130!important
}

.topbar .brand img {
  filter:drop-shadow(0 4px 12px #0006)
}

.topbar nav {
  gap:clamp(10px,1.5vw,24px)
}

.topbar nav a:not(.mobile-nav-cta) {
  transition:color .25s,transform .25s
}

.topbar nav a:not(.mobile-nav-cta):hover {
  transform:translateY(-2px)
}

.nav-brand,.nav-foot {
  display:none
}

@media(min-width:1101px) {
  .topbar nav a:not(.mobile-nav-cta) {
    padding:12px 0
  }
  .topbar nav a:not(.mobile-nav-cta):after {
    bottom:0
  }
}

@media(max-width:1100px) {
  .topbar nav {
    padding:26px!important;
    background:linear-gradient(145deg,#131a27fa,#080d15fa)!important;
    border-left:1px solid #ff872a44;
    box-shadow:-30px 0 90px #000c!important
  }
  .nav-brand {
    display:flex;
    flex-direction:column;
    gap:14px;
    padding:4px 10px 28px;
    border-bottom:1px solid #ffffff26;
    margin-bottom:10px
  }
  .nav-brand img {
    width:190px;
    max-width:80%;
    height:auto
  }
  .nav-brand span {
    color:#9ba8b9;
    font-size:12px;
    letter-spacing:1px
  }
  .topbar nav a:not(.mobile-nav-cta) {
    border-radius:12px!important;
    border-bottom:1px solid #ffffff0c!important;
    padding:15px!important;
    transition:background .25s,color .25s,transform .25s
  }
  .topbar nav a:not(.mobile-nav-cta):hover,.topbar nav a.current {
    background:#ff8c1819!important;
    color:#ff9a3c!important;
    transform:translateX(5px)
  }
  .nav-foot {
    display:flex;
    align-items:center;
    gap:9px;
    flex-wrap:wrap;
    margin-top:auto;
    padding:26px 10px 0;
    color:#ff9637;
    font-size:10px;
    letter-spacing:1.4px
  }
  .nav-foot span:last-child {
    width:100%;
    color:#7f8a9a
  }
  .nav-foot-dot {
    width:7px;
    height:7px;
    border-radius:50%;
    background:#ff901c;
    box-shadow:0 0 12px #ff901c
  }
}

/* escritório com interruptor e luz controlada */
.lab-stage {
  position:relative
}

.lab-room {
  filter:brightness(.8) contrast(1.08);
  transition:filter .55s ease!important
}

.lab-stage.is-off .lab-room {
  filter:brightness(.12) saturate(.55) contrast(1.25)!important
}

.lab-stage.is-off .lab-light-wash {
  opacity:0!important
}

.lab-stage.is-off .lab-vignette {
  background:linear-gradient(180deg,#05090cdd,#03050ab0 60%,#05090ce8)
}

.lab-stage.is-off .lab-stage-bottom {
  opacity:.25
}

.lab-stage-top,.lab-stage-bottom {
  transition:opacity .35s
}

.lab-switch {
  position:absolute;
  z-index:7;
  top:50%;
  right:26px;
  transform:translateY(-50%);
  border:1px solid #ffffff55;
  border-radius:18px;
  background:linear-gradient(145deg,#202632ef,#10151fef);
  box-shadow:0 15px 50px #000a,0 0 0 6px #ffffff0b;
  display:flex;
  align-items:center;
  gap:14px;
  padding:15px 18px;
  color:#fff;
  transition:box-shadow .3s,background .3s,scale .3s;
  cursor:pointer
}

.lab-switch:hover {
  box-shadow:0 16px 45px #000b,0 0 24px #ff8b2660;
  scale:1.04
}

.switch-icon {
  display:grid;
  place-items:center;
  width:47px;
  height:60px;
  border-radius:9px;
  border:2px solid #697382;
  background:linear-gradient(140deg,#e4e7ed,#aeb7c2);
  box-shadow:inset 0 0 0 3px #ffffffa0
}

.switch-notch {
  width:21px;
  height:35px;
  border-radius:4px;
  background:linear-gradient(180deg,#636e7d,#cdd4dc);
  box-shadow:inset 0 3px 7px #0006,0 2px 3px #fff8;
  transition:transform .25s,background .25s
}

.lab-switch[aria-pressed=true] .switch-notch {
  transform:rotateX(22deg);
  background:linear-gradient(180deg,#e6ecf4,#8493a4)
}

.switch-copy {
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:4px
}

.switch-copy strong {
  font-size:12px
}

.switch-copy small {
  font-size:10px;
  color:#b6c0ce
}

.switch-led {
  width:8px;
  height:8px;
  background:#727d8c;
  border-radius:50%;
  transition:.3s
}

.lab-switch[aria-pressed=true] .switch-led {
  background:#ff9a30;
  box-shadow:0 0 15px #ff8b1c
}

.lab-stage.is-off:after {
  content:'CLIQUE PARA ACENDER';
  position:absolute;
  bottom:30%;
  left:20px;
  color:#fff9;
  font-size:11px;
  letter-spacing:2px;
  font-weight:800;
  z-index:4;
  pointer-events:none
}

/* galeria com tratamento cinematográfico */
.discover-card {
  box-shadow:0 15px 45px #0005
}

.discover-card img {
  filter:brightness(.8) saturate(.93)
}

.discover-card:hover img {
  filter:brightness(.98) saturate(1.12)
}

.discover-card>div {
  right:20px
}

.discover-card h3 {
  font-size:clamp(24px,2vw,31px)
}

/* WhatsApp oficial flutuante */
.whatsapp-float {
  width:70px!important;
  height:70px!important;
  right:25px!important;
  bottom:25px!important;
  background:#25d366!important;
  border:3px solid #d9ffe7!important;
  box-shadow:0 12px 40px #25d36670,0 0 0 7px #25d3661c!important;
  transition:transform .3s,box-shadow .3s!important
}

.whatsapp-float svg {
  width:42px;
  height:42px;
  display:block
}

.whatsapp-float:hover {
  transform:translateY(-7px) scale(1.07);
  box-shadow:0 18px 48px #25d3669c!important
}

/* popup do cupom */
.coupon-overlay,.privacy-modal {
  position:fixed;
  inset:0;
  z-index:1000;
  background:#03060bcc;
  backdrop-filter:blur(14px);
  display:grid;
  place-items:center;
  padding:20px;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .35s,visibility .35s
}

.coupon-overlay.open,.privacy-modal.open {
  opacity:1;
  visibility:visible;
  pointer-events:auto
}

.coupon-modal {
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
  width:min(940px,100%);
  max-height:min(92dvh,850px);
  overflow:auto;
  background:#121823;
  border:1px solid #ff9b3c55;
  border-radius:26px;
  box-shadow:0 35px 110px #000e;
  transform:translateY(28px) scale(.97);
  transition:transform .4s
}

.coupon-overlay.open .coupon-modal {
  transform:none
}

.coupon-close {
  position:absolute;
  z-index:5;
  top:16px;
  right:16px;
  border:1px solid #ffffff40;
  border-radius:50%;
  width:37px;
  height:37px;
  background:#1b2430;
  color:#fff;
  font-size:25px;
  line-height:1
}

.coupon-art {
  min-height:520px;
  background:radial-gradient(circle at 45% 45%,#ff9d24,#e96805 50%,#602105 100%);
  position:relative;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  padding:30px
}

.coupon-art:before {
  content:'';
  position:absolute;
  inset:8%;
  border:1px solid #ffffff4b;
  border-radius:50%;
  box-shadow:0 0 0 38px #ffffff0c,0 0 0 80px #ffffff08
}

.coupon-art img {
  width:195px;
  max-width:90%;
  position:absolute;
  top:38px;
  filter:drop-shadow(0 5px 12px #0005)
}

.coupon-small {
  position:relative;
  z-index:1;
  letter-spacing:2.5px;
  font-size:11px;
  font-weight:900
}

.coupon-art strong {
  position:relative;
  z-index:1;
  font-size:clamp(110px,12vw,172px);
  font-weight:950;
  letter-spacing:-.09em;
  line-height:1;
  text-shadow:0 13px 20px #0003
}

.coupon-art strong span {
  font-size:.46em;
  vertical-align:top;
  letter-spacing:-.05em
}

.coupon-off {
  font-size:20px;
  font-weight:900;
  letter-spacing:3px
}

.coupon-spark {
  position:absolute;
  right:18%;
  bottom:18%;
  font-size:50px;
  color:#ffdc8c;
  animation:labPulse 2s infinite alternate
}

.coupon-content {
  padding:clamp(28px,4vw,54px);
  display:flex;
  flex-direction:column;
  justify-content:center
}

.coupon-content h2 {
  font-size:clamp(28px,2.8vw,41px);
  line-height:1.12;
  letter-spacing:-1.5px;
  margin:14px 0
}

.coupon-content h2 em {
  color:#ff9835;
  font-style:normal
}

.coupon-content>p {
  font-size:13px;
  color:#bbc3d0;
  line-height:1.6;
  margin:0 0 16px
}

.coupon-content form {
  display:flex;
  flex-direction:column;
  gap:8px
}

.coupon-content form>label,.coupon-fields label {
  font-size:12px;
  font-weight:750;
  color:#dfe4ed
}

.coupon-content input:not([type=checkbox]),.coupon-content select {
  height:43px;
  width:100%;
  border-radius:10px;
  border:1px solid #ffffff32;
  background:#080d15;
  color:#fff;
  padding:0 13px;
  outline:none;
  transition:border-color .2s,box-shadow .2s
}

.coupon-content input:focus,.coupon-content select:focus {
  border-color:#ff983c;
  box-shadow:0 0 0 3px #ff983c26
}

.coupon-content input::placeholder {
  color:#748092
}

.coupon-fields {
  display:grid;
  grid-template-columns:1fr 115px;
  gap:12px
}

.coupon-fields>div {
  display:flex;
  flex-direction:column;
  gap:8px
}

.coupon-consent {
  display:flex!important;
  align-items:flex-start;
  gap:9px;
  line-height:1.5;
  font-size:11px!important;
  font-weight:400!important;
  color:#aab5c5!important;
  margin:10px 0 0
}

.coupon-consent input {
  accent-color:#ff8c20;
  margin:2px 0 0;
  flex-shrink:0
}

.coupon-consent a {
  color:#ffab60;
  text-decoration:underline
}

.coupon-submit {
  margin-top:6px;
  min-height:48px;
  border:0;
  border-radius:12px;
  background:linear-gradient(120deg,#ffab42,#ff7900);
  font-size:13px;
  font-weight:900;
  color:#160d04;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:20px;
  box-shadow:0 9px 25px #ff7a0040;
  transition:transform .25s,filter .25s
}

.coupon-submit:hover {
  transform:translateY(-2px);
  filter:brightness(1.08)
}

.coupon-submit:disabled {
  opacity:.65;
  cursor:wait
}

.coupon-feedback {
  font-size:12px;
  line-height:1.5;
  color:#ffb15b;
  min-height:0
}

.coupon-terms {
  font-size:10px;
  color:#8995a5;
  line-height:1.5
}

.privacy-dialog {
  width:min(500px,100%);
  padding:35px;
  border-radius:18px;
  border:1px solid #ffffff30;
  background:#111924;
  position:relative
}

.privacy-dialog h2 {
  font-size:23px
}

.privacy-dialog p {
  font-size:14px;
  line-height:1.7;
  color:#c7ced8
}

.privacy-dialog button {
  position:absolute;
  right:13px;
  top:12px;
  border:0;
  background:none;
  color:#fff;
  font-size:26px
}

.coupon-success {
  color:#b6ffc9;
  font-weight:700
}

@media(max-width:1100px) {
  .hero {
    min-height:760px!important;
    padding-bottom:180px!important
  }
  .hero-content {
    padding-top:78px!important
  }
  .category-track {
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:9px!important
  }
  .cat {
    height:115px!important;
    padding:15px!important;
    flex-direction:column!important;
    justify-content:center!important;
    gap:5px!important;
    text-align:center!important
  }
  .cat-icon {
    font-size:27px!important
  }
  .cat b {
    font-size:12px!important
  }
}

@media(max-width:760px) {
  .hero {
    min-height:795px!important;
    padding-bottom:260px!important
  }
  .hero-content {
    padding:65px 6% 0!important
  }
  .hero h1 {
    font-size:clamp(46px,10vw,67px)!important;
    letter-spacing:-.055em!important;
    max-width:560px
  }
  .hero-title-accent {
    display:inline
  }
  .category-wrap {
    left:5%!important;
    width:90%!important;
    bottom:18px!important
  }
  .category-track {
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    overflow:visible!important;
    gap:10px!important
  }
  .cat {
    height:110px!important;
    flex-direction:row!important;
    justify-content:flex-start!important;
    gap:12px!important;
    text-align:left!important
  }
  .cat-icon {
    font-size:28px!important
  }
  .cat b {
    font-size:12px!important
  }
  .brands-section {
    padding-top:24px
  }
  .brands-top,.brands-footer {
    padding:0 5%
  }
  .brands-top-caption {
    display:none
  }
  .brands-track {
    animation-duration:28s
  }
  .brand-name {
    min-width:130px;
    padding:15px 20px
  }
  .lab-switch {
    right:12px;
    top:51%;
    padding:9px;
    gap:7px
  }
  .switch-icon {
    width:38px;
    height:48px
  }
  .switch-notch {
    height:27px;
    width:17px
  }
  .switch-copy {
    display:none
  }
  .lab-stage.is-off:after {
    font-size:9px;
    bottom:15%;
    left:14px
  }
  .whatsapp-float {
    width:64px!important;
    height:64px!important;
    bottom:18px!important;
    right:18px!important
  }
  .whatsapp-float svg {
    width:39px;
    height:39px
  }
  .coupon-modal {
    grid-template-columns:1fr;
    max-height:92dvh
  }
  .coupon-art {
    min-height:150px;
    flex-direction:row;
    gap:12px;
    padding:24px
  }
  .coupon-art img {
    width:110px;
    top:12px;
    left:16px
  }
  .coupon-art strong {
    font-size:80px;
    margin-left:auto
  }
  .coupon-small,.coupon-off,.coupon-spark {
    display:none
  }
  .coupon-content {
    padding:24px
  }
  .coupon-content h2 {
    font-size:29px
  }
  .coupon-content>p {
    margin-bottom:8px
  }
}

@media(max-width:380px) {
  .hero {
    min-height:840px!important
  }
  .hero h1 {
    font-size:42px!important
  }
  .cat {
    padding:11px!important
  }
  .cat-icon {
    font-size:24px!important
  }
  .cat b {
    font-size:11px!important
  }
  .coupon-fields {
    grid-template-columns:1fr 95px
  }
  .coupon-art {
    min-height:120px
  }
  .coupon-art strong {
    font-size:70px
  }
}

@media(prefers-reduced-motion:reduce) {
  .brands-track {
    animation:none!important
  }
  .coupon-modal {
    transform:none!important
  }
}

/* =================== C5 FINAL 2026 =================== */
.hero-photo {
  background-image:url('assets/fachada-hero.webp')!important;
  background-position:center 46%!important;
  filter:brightness(.79) contrast(1.07) saturate(1.07)
}

.hero-vignette {
  background:linear-gradient(90deg,#050810f2 0%,#070b14e6 29%,#090d16aa 49%,#05080c14 100%),linear-gradient(0deg,#080c13 0%,transparent 45%)!important
}

.hero-content {
  max-width:960px!important
}

.hero h1 {
  font-size:clamp(46px,5.4vw,83px)!important;
  max-width:850px;
  letter-spacing:-.065em!important
}

.hero-title-accent {
  display:block!important
}

.topbar nav a {
  letter-spacing:.01em
}

.topbar nav a:focus-visible,.tour-photo:focus-visible {
  outline:2px solid #ff932f;
  outline-offset:4px
}

.store-tour,.quote-builder {
  padding:85px 6%;
  background:radial-gradient(ellipse at 75% 0%,#25202a,#0a0e16 65%)
}

.store-tour {
  background:#10151d
}

.tour-grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:15px
}

.tour-photo {
  position:relative;
  display:block;
  min-height:230px;
  border:1px solid #ffffff35;
  border-radius:19px;
  overflow:hidden;
  background:#171c24;
  padding:0;
  text-align:left;
  transition:transform .3s,border-color .3s
}

.tour-photo:first-child {
  grid-column:span 2;
  grid-row:span 2
}

.tour-photo:hover {
  transform:translateY(-5px);
  border-color:#ff8a28
}

.tour-photo img {
  width:100%;
  height:100%;
  min-height:230px;
  object-fit:cover;
  position:absolute;
  inset:0;
  transition:transform .65s
}

.tour-photo:hover img {
  transform:scale(1.07)
}

.tour-photo:after {
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(0deg,#020509c9,transparent 55%)
}

.tour-photo span {
  position:absolute;
  z-index:1;
  left:18px;
  bottom:18px;
  font-size:14px;
  font-weight:800;
  color:#fff
}

.tour-overlay {
  position:fixed;
  inset:0;
  z-index:1500;
  background:#03060cf5;
  display:none;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:65px 3%;
  backdrop-filter:blur(20px)
}

.tour-overlay.open {
  display:flex
}

.tour-overlay figure {
  margin:0;
  max-width:calc(100% - 140px);
  height:100%;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:12px
}

.tour-overlay img {
  max-height:calc(100% - 35px);
  max-width:100%;
  object-fit:contain;
  border-radius:14px
}

.tour-overlay figcaption {
  color:#fff;
  font-size:14px
}

.tour-overlay button {
  flex:0 0 48px;
  width:48px;
  height:48px;
  border:1px solid #ffffff65;
  border-radius:50%;
  background:#1b2332;
  color:#fff;
  font-size:32px
}

.tour-overlay #tourClose {
  position:absolute;
  top:17px;
  right:22px
}

.quote-layout {
  display:grid;
  grid-template-columns:1fr 1.1fr;
  gap:22px;
  max-width:1050px;
  margin:auto
}

.material-form,.material-cart {
  border:1px solid #ffffff2a;
  border-radius:24px;
  background:#1a202b;
  padding:28px;
  display:flex;
  flex-direction:column;
  gap:13px
}

.material-form label {
  font-size:12px;
  font-weight:750;
  color:#cbd2df
}

.material-form input,.material-form select {
  padding:14px;
  background:#0d131d;
  color:#fff;
  border:1px solid #ffffff40;
  border-radius:11px;
  width:100%;
  font:inherit
}

.material-form .primary {
  margin-top:12px;
  cursor:pointer
}

.cart-header {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px
}

.cart-header h3 {
  font-size:22px;
  margin:0
}

.cart-header h3 span {
  color:#ff963a
}

.cart-header button,.cart-item button {
  background:transparent;
  border:1px solid #ffffff3d;
  border-radius:10px;
  color:#d3d8e1;
  padding:8px 12px
}

.cart-item {
  display:flex;
  justify-content:space-between;
  gap:10px;
  padding:13px 0;
  border-bottom:1px solid #ffffff23
}

.cart-item strong {
  display:block;
  font-size:14px
}

.cart-item small {
  color:#ffae69;
  font-size:11px
}

.cart-empty {
  color:#9da8b9
}

.material-cart #sendCart {
  margin-top:auto;
  text-align:center
}

.lab-scene-options {
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:22px
}

.lab-scene-options button {
  border:1px solid #ffffff45;
  background:#202631;
  color:#fff;
  padding:10px 15px;
  border-radius:30px;
  font-size:12px;
  font-weight:700
}

.lab-scene-options button.selected {
  background:#ff8a22;
  color:#191009;
  border-color:#ff8a22
}

.help-widget {
  position:fixed;
  bottom:106px;
  right:25px;
  z-index:120;
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:10px
}

.help-widget>button {
  border:1px solid #ffae5a80;
  background:#171e29;
  color:#fff;
  padding:12px 17px;
  border-radius:30px;
  box-shadow:0 8px 28px #0008;
  font-size:12px;
  font-weight:800;
  cursor:pointer
}

.help-widget>button:hover {
  background:#ff8b24;
  color:#101014
}

.help-panel {
  width:min(320px,calc(100vw - 40px));
  padding:19px;
  background:#151c27;
  border:1px solid #ff8b276b;
  border-radius:20px;
  box-shadow:0 20px 60px #000b
}

.help-panel[hidden] {
  display:none
}

.help-panel strong {
  font-size:17px
}

.help-panel p {
  font-size:12px;
  color:#b8c0cd
}

.help-panel a {
  display:block;
  padding:11px;
  border-radius:9px;
  background:#242c39;
  margin-top:7px;
  font-size:13px;
  transition:background .2s
}

.help-panel a:hover {
  background:#38445a
}

@media(max-width:900px) {
  .tour-grid {
    grid-template-columns:repeat(2,minmax(0,1fr))
  }
  .quote-layout {
    grid-template-columns:1fr
  }
  .tour-photo:first-child {
    grid-column:span 2;
    grid-row:span 1;
    min-height:310px
  }
}

@media(max-width:650px) {
  .hero-photo {
    background-position:54% center!important
  }
  .hero-vignette {
    background:linear-gradient(90deg,#050810e8,#050810ac 75%),linear-gradient(0deg,#080c12,transparent 55%)!important
  }
  .hero h1 {
    font-size:clamp(43px,10vw,59px)!important
  }
  .hero-title-accent {
    display:block!important
  }
  .tour-grid {
    gap:9px
  }
  .tour-photo {
    min-height:175px
  }
  .tour-photo img {
    min-height:175px
  }
  .tour-photo:first-child {
    min-height:230px
  }
  .store-tour,.quote-builder {
    padding:65px 5%
  }
  .material-form,.material-cart {
    padding:20px
  }
  .tour-overlay {
    gap:4px;
    padding:65px 8px
  }
  .tour-overlay figure {
    max-width:calc(100% - 92px)
  }
  .tour-overlay button {
    flex-basis:40px;
    width:40px;
    height:40px
  }
  .help-widget {
    bottom:94px;
    right:15px
  }
  .help-widget>button {
    font-size:11px;
    padding:10px 12px
  }
}

@media(prefers-reduced-motion:reduce) {
  .tour-photo,.tour-photo img {
    transition:none!important
  }
}

/* Fachada em alta resolução — fotografias originais fornecidas pela loja */
.hero-photo {
  background-image:url("assets/lojainteira.png")!important
}

