/* Solarium v1.4.14 — Observatório de Tecnologia Óptica */
.optical-observatory{
  --oo-ink:#0b1720;
  --oo-orange:#ff6500;
  position:relative;
  isolation:isolate;
  overflow:hidden;
  padding:112px 0 96px;
  color:var(--oo-ink);
  background:
    radial-gradient(circle at 50% 8%,rgba(52,189,255,.09),transparent 22%),
    radial-gradient(circle at 50% 92%,rgba(255,101,0,.08),transparent 24%),
    linear-gradient(180deg,#fbfcfc,#eef3f5 52%,#fff);
}
.optical-observatory::before{
  content:"";
  position:absolute;
  z-index:-1;
  inset:0;
  opacity:.48;
  background:
    repeating-linear-gradient(90deg,transparent 0 159px,rgba(14,32,43,.035) 160px),
    repeating-linear-gradient(0deg,transparent 0 159px,rgba(14,32,43,.026) 160px);
  mask-image:linear-gradient(transparent,#000 12%,#000 88%,transparent);
}
.optical-observatory__intro{
  display:grid;
  grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);
  align-items:end;
  gap:80px;
  max-width:1320px;
  margin-bottom:48px;
}
.optical-observatory__eyebrow{
  display:flex;
  align-items:center;
  gap:16px;
  margin-bottom:20px;
  color:#eb5a00;
  font-size:12px;
  font-weight:850;
  letter-spacing:.22em;
  text-transform:uppercase;
}
.optical-observatory__eyebrow::before{content:"";width:42px;height:2px;background:#ff6500;box-shadow:0 0 14px rgba(255,101,0,.4)}
.optical-observatory__intro h2{max-width:850px;margin:0;font-size:clamp(44px,5.7vw,86px);font-weight:810;line-height:.94;letter-spacing:-.06em}
.optical-observatory__intro p{margin:0 0 5px;color:#52616a;font-size:17px;line-height:1.65}
.optical-observatory__legend{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:32px;
  max-width:960px;
  min-height:54px;
  margin-bottom:26px;
  padding:12px 26px;
  border:1px solid rgba(20,42,55,.09);
  border-radius:999px;
  background:rgba(255,255,255,.78);
  box-shadow:0 16px 45px rgba(15,32,43,.07),inset 0 1px 0 #fff;
  backdrop-filter:blur(16px);
}
.optical-observatory__legend span,.optical-observatory__legend b{display:flex;align-items:center;gap:9px;color:#42525c;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.optical-observatory__legend i{display:block;width:27px;height:3px;border-radius:5px}
.optical-observatory__legend .is-uv i{background:#895cff;box-shadow:0 0 11px #895cff}
.optical-observatory__legend .is-visible i{background:#42d8ff;box-shadow:0 0 11px #42d8ff}
.optical-observatory__legend .is-ir i{background:#ff762c;box-shadow:0 0 11px #ff762c}
.optical-observatory__legend b{margin-left:16px;color:#172630}
.optical-observatory__legend b i{width:7px;height:7px;border-radius:50%;background:#38da9d;box-shadow:0 0 0 5px rgba(56,218,157,.12),0 0 15px #38da9d;animation:ooStatus 1.8s ease-in-out infinite}

.optical-observatory__field{position:relative;max-width:1580px;margin:auto;padding:48px 34px 70px}
.optical-observatory__field::before,.optical-observatory__field::after{content:"";position:absolute;z-index:-1;left:4%;right:4%;height:300px;border-radius:50%;filter:blur(2px)}
.optical-observatory__field::before{top:3%;background:radial-gradient(ellipse,rgba(79,191,255,.11),transparent 68%)}
.optical-observatory__field::after{bottom:2%;background:radial-gradient(ellipse,rgba(255,137,59,.1),transparent 68%)}

.optical-observatory__core{
  --core-accent:#2fceff;
  position:absolute;
  z-index:8;
  left:50%;
  top:12px;
  bottom:18px;
  width:148px;
  transform:translateX(-50%);
  pointer-events:none;
  transition:filter .5s ease;
}
.optical-observatory__core::before{content:"";position:absolute;left:50%;top:5%;bottom:5%;width:270px;transform:translateX(-50%);background:radial-gradient(ellipse at center,rgba(55,204,255,.15),transparent 68%);filter:blur(22px)}
.optical-observatory__core-cap{
  position:absolute;
  z-index:3;
  left:50%;
  top:0;
  display:flex;
  width:148px;
  height:64px;
  align-items:center;
  justify-content:center;
  gap:9px;
  transform:translateX(-50%);
  border:1px solid rgba(255,255,255,.82);
  border-radius:50%;
  color:#152732;
  background:linear-gradient(180deg,#fff,#cdd7dc 46%,#8c9aa1 52%,#eff4f5 78%,#b6c1c7);
  box-shadow:0 18px 25px rgba(7,22,31,.2),inset 0 2px 4px #fff;
}
.optical-observatory__core-cap span{display:grid;width:31px;height:31px;place-items:center;border-radius:50%;color:#fff;background:#152832;font-size:18px;font-style:italic;font-weight:900;box-shadow:0 0 0 3px rgba(255,255,255,.7)}
.optical-observatory__core-cap b{font-size:12px;letter-spacing:.13em;text-transform:uppercase}
.optical-observatory__core-tube{
  position:absolute;
  z-index:2;
  left:50%;
  top:31px;
  bottom:28px;
  width:68px;
  overflow:hidden;
  transform:translateX(-50%);
  border:1px solid rgba(255,255,255,.88);
  border-radius:34px;
  background:
    linear-gradient(90deg,rgba(255,255,255,.9),rgba(137,214,245,.17) 18%,rgba(255,255,255,.42) 31%,rgba(8,37,55,.15) 52%,rgba(255,255,255,.74) 76%,rgba(255,255,255,.9)),
    linear-gradient(180deg,rgba(82,223,255,.13),rgba(255,255,255,.7),rgba(255,132,53,.13));
  box-shadow:inset 0 0 21px rgba(255,255,255,.95),0 0 0 5px rgba(187,221,234,.25),0 0 35px rgba(38,190,246,.23);
}
.optical-observatory__core-ray{position:absolute;top:-15%;bottom:-15%;width:10px;border-radius:50%;filter:blur(.3px);animation:ooCoreFlow 4.8s linear infinite}
.optical-observatory__core-ray.is-uv{left:12px;background:linear-gradient(transparent,#8b5bff 12%,#d4c7ff 48%,#8458ff 84%,transparent);box-shadow:0 0 16px #875bff}
.optical-observatory__core-ray.is-visible{left:29px;background:linear-gradient(transparent,#4eeaff 14%,#fff 49%,#51e8ff 84%,transparent);box-shadow:0 0 18px #4eeaff;animation-delay:-1.5s}
.optical-observatory__core-ray.is-ir{right:11px;background:linear-gradient(transparent,#ff6d22 12%,#ffd19c 49%,#ff6c20 84%,transparent);box-shadow:0 0 16px #ff7128;animation-delay:-3s}
.optical-observatory__core-scan{position:absolute;left:0;right:0;height:120px;background:linear-gradient(transparent,rgba(255,255,255,.82),transparent);filter:blur(5px);animation:ooCoreScan 5.2s ease-in-out infinite}
.optical-observatory__core-base{position:absolute;z-index:4;left:50%;bottom:0;width:158px;height:55px;transform:translateX(-50%);border:1px solid rgba(255,255,255,.8);border-radius:50%;background:linear-gradient(180deg,#eaf0f2,#8e9ba2 45%,#e9eff1 75%);box-shadow:0 18px 34px rgba(8,24,34,.23),0 0 25px color-mix(in srgb,var(--core-accent) 35%,transparent)}
.optical-observatory__core-base span{position:absolute;left:50%;bottom:9px;width:92px;height:16px;transform:translateX(-50%);border-radius:50%;background:var(--core-accent);opacity:.28;filter:blur(7px);animation:ooBasePulse 2.3s ease-in-out infinite}

.optical-node{
  --node-accent:#2b8fff;
  position:relative;
  min-height:350px;
  display:flex;
  align-items:center;
  opacity:.72;
  transition:opacity .55s ease,filter .55s ease;
  perspective:1400px;
}
.optical-node+.optical-node{margin-top:10px}
.optical-node--sunblue{--node-accent:#197dff}
.optical-node--sunblack{--node-accent:#f14231}
.optical-node--sunblock{--node-accent:#ff7417}
.optical-node--diamond{--node-accent:#c95145}
.optical-node--platinum{--node-accent:#8e989f}
.optical-node--silver{--node-accent:#4f606d}
.optical-node__scene{position:absolute;z-index:-2;inset:9px 0;overflow:hidden;border-radius:54px;opacity:.53;transition:opacity .6s ease}
.optical-node__scene::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(248,251,252,.99),rgba(248,251,252,.84) 43%,rgba(248,251,252,.16) 78%),linear-gradient(180deg,rgba(255,255,255,.46),transparent 35%,rgba(235,241,243,.7))}
.optical-node--right .optical-node__scene::after{background:linear-gradient(270deg,rgba(248,251,252,.99),rgba(248,251,252,.84) 43%,rgba(248,251,252,.16) 78%),linear-gradient(180deg,rgba(255,255,255,.46),transparent 35%,rgba(235,241,243,.7))}
.optical-node__scene img{width:100%;height:100%;object-fit:cover;filter:saturate(.78) contrast(.95);transform:scale(1.03);transition:transform 1.2s cubic-bezier(.2,.7,.2,1),filter .7s ease}
.optical-node__panel{
  --rx:0deg;
  --ry:0deg;
  position:relative;
  z-index:5;
  width:calc(50% - 128px);
  min-height:272px;
  padding:30px clamp(26px,3vw,46px);
  overflow:hidden;
  border:1px solid rgba(255,255,255,.82);
  border-radius:30px;
  background:linear-gradient(135deg,rgba(255,255,255,.94),rgba(246,250,251,.72));
  box-shadow:0 20px 58px rgba(17,35,46,.1),inset 0 1px 0 #fff;
  backdrop-filter:blur(20px) saturate(1.22);
  transform:rotateX(var(--rx)) rotateY(var(--ry));
  transform-style:preserve-3d;
  transition:transform .26s ease,box-shadow .55s ease,border-color .55s ease;
}
.optical-node--right .optical-node__panel{margin-left:auto}
.optical-node__panel::before{content:"";position:absolute;left:0;top:0;width:4px;height:100%;background:linear-gradient(transparent,var(--node-accent) 20% 78%,transparent);box-shadow:0 0 22px color-mix(in srgb,var(--node-accent) 65%,transparent)}
.optical-node__panel::after{content:"";position:absolute;inset:-80% -30%;pointer-events:none;background:linear-gradient(115deg,transparent 42%,rgba(255,255,255,.72) 49%,transparent 56%);transform:translateX(-45%);transition:transform .8s ease}
.optical-node__number{position:absolute;right:25px;top:21px;color:rgba(20,38,48,.17);font-size:49px;font-weight:850;letter-spacing:-.08em}
.optical-node__kicker{display:block;margin-bottom:13px;color:#53626a;font-size:11px;font-weight:850;letter-spacing:.19em;text-transform:uppercase}
.optical-node__logo{display:block;width:auto;height:48px;max-width:270px;object-fit:contain;object-position:left center;filter:drop-shadow(0 3px 8px rgba(9,25,34,.1))}
.optical-node__panel>p{max-width:430px;margin:12px 0 19px;color:#3c4b53;font-size:16px;line-height:1.48}
.optical-node__panel dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:0 0 18px;padding:14px 0;border-block:1px solid rgba(22,42,53,.1)}
.optical-node__panel dl>div{min-width:0;padding:0 13px;border-left:1px solid rgba(22,42,53,.12)}
.optical-node__panel dl>div:first-child{padding-left:0;border-left:0}
.optical-node__panel dt{color:#6b7880;font-size:10px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.optical-node__panel dd{margin:5px 0 2px;color:#0c1820;font-size:clamp(18px,1.55vw,26px);font-weight:830;line-height:1;letter-spacing:-.04em;overflow-wrap:anywhere}
.optical-node__panel small{display:block;color:#7c898f;font-size:10px;font-weight:750;letter-spacing:.1em;text-transform:uppercase}
.optical-node__panel>a{position:relative;z-index:2;display:inline-flex;min-height:43px;align-items:center;gap:14px;padding:0 20px;border-radius:999px;color:#fff;background:linear-gradient(135deg,#ff7a1a,#f25600);box-shadow:0 11px 25px rgba(241,91,0,.24),inset 0 1px 0 rgba(255,255,255,.35);font-size:12px;font-weight:850;letter-spacing:.12em;text-decoration:none;text-transform:uppercase}
.optical-node__panel>a span{font-size:18px;transition:transform .25s ease}
.optical-node__panel>a:hover span{transform:translateX(4px)}

.optical-node__optic{
  position:absolute;
  z-index:7;
  left:calc(50% - 96px);
  top:50%;
  width:92px;
  height:158px;
  transform:translateY(-50%) rotateY(-19deg) rotateX(3deg);
  transform-style:preserve-3d;
  transition:transform .7s cubic-bezier(.2,.75,.2,1),filter .7s ease;
}
.optical-node--right .optical-node__optic{left:calc(50% + 5px);transform:translateY(-50%) rotateY(19deg) rotateX(3deg)}
.optical-node__glass{position:absolute;inset:0;border:1px solid rgba(255,255,255,.92);border-radius:28px 10px 28px 10px;background:linear-gradient(135deg,rgba(255,255,255,.85),color-mix(in srgb,var(--node-accent) 22%,transparent) 42%,rgba(16,35,47,.3));box-shadow:inset 10px 0 22px rgba(255,255,255,.7),inset -10px 0 24px color-mix(in srgb,var(--node-accent) 20%,transparent),0 24px 33px rgba(7,25,36,.2),0 0 30px color-mix(in srgb,var(--node-accent) 23%,transparent);backdrop-filter:blur(4px)}
.optical-node--sunblock .optical-node__glass{background:linear-gradient(135deg,rgba(255,255,255,.82),rgba(255,117,24,.17) 40%,rgba(27,43,47,.34)),repeating-radial-gradient(circle at 12px 12px,rgba(20,33,39,.22) 0 3px,transparent 4px 13px)}
.optical-node--diamond .optical-node__glass{clip-path:polygon(50% 0,94% 25%,86% 82%,50% 100%,10% 80%,3% 28%);border-radius:0;background:linear-gradient(135deg,rgba(255,255,255,.88),rgba(53,68,78,.48) 48%,rgba(208,74,55,.26)),repeating-linear-gradient(55deg,transparent 0 16px,rgba(255,255,255,.4) 17px 18px)}
.optical-node--platinum .optical-node__glass{border-radius:8px;background:linear-gradient(110deg,rgba(255,255,255,.95),rgba(146,163,173,.48),rgba(255,255,255,.75),rgba(74,94,104,.38))}
.optical-node--silver .optical-node__glass{border-radius:40px 8px;background:linear-gradient(120deg,rgba(255,255,255,.86),rgba(68,87,99,.62) 45%,rgba(255,255,255,.78) 53%,rgba(32,48,57,.55))}
.optical-node__optic>i{position:absolute;z-index:3;left:-18px;right:-18px;height:3px;border-radius:6px;opacity:.35;transform:translateX(-32px);transition:opacity .45s ease;animation:ooOpticRay 2.9s ease-in-out infinite}
.optical-node__optic>i:nth-of-type(1){top:34%;background:#8e5cff;box-shadow:0 0 11px #8e5cff}
.optical-node__optic>i:nth-of-type(2){top:49%;background:#50e6ff;box-shadow:0 0 11px #50e6ff;animation-delay:-.9s}
.optical-node__optic>i:nth-of-type(3){top:64%;background:#ff7229;box-shadow:0 0 11px #ff7229;animation-delay:-1.8s}

.optical-node__beam{position:absolute;z-index:4;top:50%;left:calc(50% - 22px);width:calc(50% - 98px);height:76px;transform:translateY(-50%);pointer-events:none}
.optical-node--left .optical-node__beam{left:auto;right:calc(50% - 22px);transform:translateY(-50%) scaleX(-1)}
.optical-node__beam>i{position:absolute;left:0;width:100%;height:2px;opacity:.12;transform:scaleX(.15);transform-origin:left center;transition:opacity .5s ease;animation:ooBeam 3.4s ease-in-out infinite}
.optical-node__beam .is-uv{top:15px;background:linear-gradient(90deg,#9b75ff,transparent 92%);box-shadow:0 0 12px #8b5fff}
.optical-node__beam .is-visible{top:36px;background:linear-gradient(90deg,#50e7ff,transparent 92%);box-shadow:0 0 13px #45ddff;animation-delay:-1s}
.optical-node__beam .is-ir{top:57px;background:linear-gradient(90deg,#ff7531,transparent 92%);box-shadow:0 0 12px #ff6c25;animation-delay:-2s}
.optical-node__beam b{position:absolute;left:4px;top:0;width:26px;height:76px;border-radius:50%;background:var(--node-accent);opacity:.12;filter:blur(13px)}

.optical-node.is-active{opacity:1}
.optical-node.is-active .optical-node__scene{opacity:.79}
.optical-node.is-active .optical-node__scene img{transform:scale(1);filter:saturate(1.03) contrast(1)}
.optical-node.is-active .optical-node__panel{border-color:color-mix(in srgb,var(--node-accent) 30%,#fff);box-shadow:0 32px 78px rgba(11,31,43,.16),0 0 42px color-mix(in srgb,var(--node-accent) 9%,transparent),inset 0 1px 0 #fff}
.optical-node.is-active .optical-node__panel::after{transform:translateX(45%)}
.optical-node.is-active .optical-node__optic{filter:brightness(1.12) saturate(1.12);transform:translateY(-52%) rotateY(-8deg) rotateX(0) scale(1.06)}
.optical-node--right.is-active .optical-node__optic{transform:translateY(-52%) rotateY(8deg) rotateX(0) scale(1.06)}
.optical-node.is-active .optical-node__optic>i{opacity:1}
.optical-node.is-active .optical-node__beam>i{opacity:.94}

.optical-observatory[data-active="sunblue"] .optical-observatory__core{--core-accent:#197dff}
.optical-observatory[data-active="sunblack"] .optical-observatory__core{--core-accent:#f14231}
.optical-observatory[data-active="sunblock"] .optical-observatory__core{--core-accent:#ff7417}
.optical-observatory[data-active="diamond"] .optical-observatory__core{--core-accent:#c95145}
.optical-observatory[data-active="platinum"] .optical-observatory__core{--core-accent:#a7b2b8}
.optical-observatory[data-active="silver"] .optical-observatory__core{--core-accent:#617783}

.optical-observatory__closing{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:24px;max-width:1180px;margin-top:36px;padding:31px 38px;border:1px solid rgba(20,42,53,.09);border-radius:24px;background:rgba(255,255,255,.82);box-shadow:0 22px 55px rgba(15,33,44,.08)}
.optical-observatory__closing span{color:#64727a;font-size:12px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
.optical-observatory__closing strong{font-size:clamp(23px,2.4vw,35px);letter-spacing:-.04em}
.optical-observatory__closing a{display:flex;align-items:center;gap:13px;color:#e95c00;font-size:12px;font-weight:850;letter-spacing:.12em;text-decoration:none;text-transform:uppercase}
.optical-observatory__closing a i{font-size:20px;font-style:normal}

@keyframes ooStatus{50%{opacity:.45;transform:scale(.78)}}
@keyframes ooCoreFlow{to{transform:translateY(30%)}}
@keyframes ooCoreScan{0%,100%{top:-6%;opacity:.25}50%{top:88%;opacity:.86}}
@keyframes ooBasePulse{50%{opacity:.65;transform:translateX(-50%) scale(1.18)}}
@keyframes ooOpticRay{0%,100%{transform:translateX(-34px);opacity:.2}50%{transform:translateX(34px);opacity:1}}
@keyframes ooBeam{0%,100%{transform:scaleX(.12);filter:brightness(.75)}55%{transform:scaleX(1);filter:brightness(1.55)}}

@media(max-width:1180px){
  .optical-observatory__field{padding-inline:20px}
  .optical-observatory__core{width:116px}
  .optical-observatory__core-cap{width:120px}
  .optical-observatory__core-base{width:130px}
  .optical-node__panel{width:calc(50% - 100px);padding-inline:25px}
  .optical-node__logo{height:42px;max-width:230px}
  .optical-node__optic{left:calc(50% - 79px);width:75px;height:136px}
  .optical-node--right .optical-node__optic{left:calc(50% + 4px)}
  .optical-node__beam{width:calc(50% - 78px)}
}
@media(max-width:850px){
  .optical-observatory{padding:78px 0 68px}
  .optical-observatory__intro{grid-template-columns:1fr;gap:24px;padding-inline:22px}
  .optical-observatory__intro h2{font-size:clamp(40px,11vw,60px)}
  .optical-observatory__intro p{font-size:16px}
  .optical-observatory__legend{width:calc(100% - 30px);justify-content:flex-start;gap:17px;overflow-x:auto;padding-inline:18px}
  .optical-observatory__legend b{margin-left:auto;white-space:nowrap}
  .optical-observatory__field{padding:110px 14px 30px}
  .optical-observatory__core{top:8px;bottom:auto;width:calc(100% - 38px);height:72px;left:50%}
  .optical-observatory__core::before{top:50%;bottom:auto;width:75%;height:80px}
  .optical-observatory__core-cap{left:7px;top:5px;width:112px;height:58px;transform:none}
  .optical-observatory__core-tube{left:105px;right:20px;top:17px;bottom:auto;width:auto;height:37px;transform:none;border-radius:20px}
  .optical-observatory__core-ray{top:5px;bottom:5px;width:auto;height:7px;left:-15%!important;right:-15%!important;animation-name:ooCoreFlowMobile}
  .optical-observatory__core-ray.is-uv{top:4px}.optical-observatory__core-ray.is-visible{top:14px}.optical-observatory__core-ray.is-ir{top:24px}
  .optical-observatory__core-base{display:none}
  .optical-node{min-height:0;padding-bottom:20px;opacity:1}
  .optical-node+.optical-node{margin-top:0}
  .optical-node__scene{inset:0 0 20px;border-radius:30px;opacity:.58}
  .optical-node__scene::after,.optical-node--right .optical-node__scene::after{background:linear-gradient(180deg,rgba(248,251,252,.95),rgba(248,251,252,.79) 67%,rgba(248,251,252,.42))}
  .optical-node__panel,.optical-node--right .optical-node__panel{width:100%;min-height:0;margin:0;padding:31px 23px 28px;border-radius:25px}
  .optical-node__number{font-size:42px}
  .optical-node__logo{height:45px;max-width:250px}
  .optical-node__panel>p{padding-right:70px;font-size:16px}
  .optical-node__optic,.optical-node--right .optical-node__optic{left:auto;right:20px;top:94px;width:54px;height:88px;transform:rotateY(-11deg)!important}
  .optical-node__beam{display:none}
  .optical-observatory__closing{grid-template-columns:1fr;margin-inline:14px;padding:27px 25px}
}
@media(max-width:520px){
  .optical-observatory__legend span{font-size:9px}
  .optical-observatory__legend span i{width:17px}
  .optical-observatory__legend b{display:none}
  .optical-node__panel dl{grid-template-columns:repeat(3,minmax(0,1fr))}
  .optical-node__panel dl>div{padding-inline:8px}
  .optical-node__panel dd{font-size:17px}
  .optical-node__panel small{font-size:9px}
}
@media(prefers-reduced-motion:reduce){
  .optical-observatory *{scroll-behavior:auto!important}
  .optical-observatory__legend b i,.optical-observatory__core-ray,.optical-observatory__core-scan,.optical-observatory__core-base span,.optical-node__optic>i,.optical-node__beam>i{animation:none!important}
  .optical-node,.optical-node__scene img,.optical-node__panel,.optical-node__optic{transition:none!important}
}
@keyframes ooCoreFlowMobile{to{transform:translateX(30%)}}
