:root{
  --ink:#031019;
  --ink-soft:#071c25;
  --paper:#eaf2ef;
  --paper-2:#dce9e5;
  --teal:#34d9cf;
  --teal-dark:#087f7a;
  --amber:#ffbd42;
  --white:#effafa;
  --muted:#a9bec4;
  --line:rgba(111,195,192,.2);
  --shadow:0 28px 80px rgba(0,0,0,.25);
  --ip-display:"Archivo Narrow",Arial Narrow,sans-serif;
  --ip-body:"DM Sans",Arial,sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:86px}
body{
  margin:0;
  background:var(--paper);
  color:#071820;
  font-family:var(--ip-body);
  font-size:16px;
  line-height:1.6;
  overflow-x:hidden;
}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
button,input{font:inherit}
h1,h2,h3,.ip-links,.ip-nav-cta,.ip-button{font-family:var(--ip-display)}
.ip-header{
  position:fixed;
  z-index:100;
  inset:0 0 auto;
  height:78px;
  background:rgba(3,13,21,.92);
  border-bottom:1px solid rgba(123,216,210,.14);
  backdrop-filter:blur(18px);
}
.ip-nav{
  width:min(1180px,calc(100% - 48px));
  height:100%;
  margin:auto;
  display:flex;
  align-items:center;
  gap:30px;
}
.ip-brand{display:flex;align-items:center;flex:0 0 auto}
.ip-brand img{width:170px;max-height:35px;filter:brightness(0) invert(1)}
.ip-links{
  display:flex;
  align-items:center;
  gap:27px;
  margin-left:auto;
}
.ip-links a{
  color:#c2d2d6;
  font-size:13px;
  font-weight:700;
  transition:color .2s ease;
}
.ip-links a:hover,.ip-links a[aria-current="page"]{color:var(--teal)}
.ip-nav-cta{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:43px;
  padding:0 20px;
  border-radius:999px;
  color:#191305;
  background:var(--amber);
  font-size:13px;
  font-weight:800;
  box-shadow:0 12px 28px rgba(255,189,66,.14);
  transition:transform .2s ease,box-shadow .2s ease;
}
.ip-nav-cta:hover{transform:translateY(-2px);box-shadow:0 16px 34px rgba(255,189,66,.22)}
.ip-menu{
  display:none;
  width:42px;
  height:42px;
  margin-left:auto;
  border:1px solid rgba(116,225,216,.28);
  border-radius:50%;
  background:transparent;
  color:var(--white);
}
.ip-menu span,.ip-menu::before,.ip-menu::after{
  content:"";
  display:block;
  width:17px;
  height:1px;
  margin:4px auto;
  background:currentColor;
  transition:transform .2s ease,opacity .2s ease;
}
.ip-menu[aria-expanded="true"] span{opacity:0}
.ip-menu[aria-expanded="true"]::before{transform:translateY(5px) rotate(45deg)}
.ip-menu[aria-expanded="true"]::after{transform:translateY(-5px) rotate(-45deg)}
.ip-hero{
  position:relative;
  min-height:760px;
  padding:150px 24px 72px;
  overflow:hidden;
  color:var(--white);
  background:
    radial-gradient(circle at 78% 45%,rgba(21,130,135,.22),transparent 30%),
    linear-gradient(145deg,#061823 0%,#020a11 72%);
}
.ip-hero::before{
  content:"";
  position:absolute;
  inset:-42% -12%;
  opacity:.36;
  background-image:
    linear-gradient(rgba(79,207,201,.09) 1px,transparent 1px),
    linear-gradient(90deg,rgba(79,207,201,.09) 1px,transparent 1px);
  background-size:58px 58px;
  transform:perspective(900px) rotateX(64deg) rotateZ(-18deg);
  transform-origin:72% 56%;
  animation:ipGridDrift 20s linear infinite alternate;
}
.ip-hero::after{
  content:"";
  position:absolute;
  width:620px;
  height:620px;
  right:-280px;
  top:70px;
  border:1px solid rgba(52,217,207,.18);
  border-radius:50%;
  box-shadow:0 0 0 95px rgba(52,217,207,.025),0 0 0 190px rgba(255,189,66,.018);
}
.ip-hero-driver{
  background:
    radial-gradient(circle at 79% 46%,rgba(255,181,65,.14),transparent 28%),
    radial-gradient(circle at 69% 38%,rgba(23,132,139,.22),transparent 28%),
    linear-gradient(145deg,#061823 0%,#020a11 72%);
}
.ip-hero-faq{min-height:560px;padding-bottom:90px}
.ip-shell{position:relative;z-index:2;width:min(1180px,100%);margin:auto}
.ip-hero-grid{
  display:grid;
  grid-template-columns:minmax(0,1.03fr) minmax(380px,.97fr);
  gap:72px;
  align-items:center;
}
.ip-eyebrow,.ip-label{
  font-family:var(--ip-body);
  font-size:11px;
  font-weight:500;
  letter-spacing:.13em;
  text-transform:uppercase;
}
.ip-eyebrow{display:flex;align-items:center;gap:11px;color:#a4fff7}
.ip-eyebrow i{
  width:8px;
  height:8px;
  border-radius:50%;
  background:var(--teal);
  box-shadow:0 0 0 5px rgba(52,217,207,.12),0 0 14px var(--teal);
}
.ip-hero h1{
  max-width:760px;
  margin:25px 0 25px;
  font-size:clamp(54px,5.6vw,88px);
  line-height:.95;
  letter-spacing:-.075em;
}
.ip-hero h1 em{color:var(--teal);font-style:normal}
.ip-hero .ip-sub{
  max-width:600px;
  margin:0;
  color:#c4d4d8;
  font-size:18px;
  line-height:1.65;
}
.ip-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}
.ip-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-height:52px;
  padding:0 23px;
  border:1px solid transparent;
  border-radius:999px;
  font-size:13px;
  font-weight:800;
  transition:transform .2s ease,box-shadow .2s ease,background .2s ease;
}
.ip-button:hover{transform:translateY(-2px)}
.ip-button-primary{color:#191305;background:var(--amber);box-shadow:0 14px 34px rgba(255,189,66,.13)}
.ip-button-primary:hover{box-shadow:0 17px 38px rgba(255,189,66,.22)}
.ip-button-ghost{color:#d5fffb;border-color:rgba(75,223,213,.7);background:rgba(2,19,27,.35)}
.ip-button-dark{color:#d7fffb;background:#061923}
.ip-button-outline{color:#073c3d;border-color:#176767;background:transparent}
.ip-micro{
  display:flex;
  align-items:flex-start;
  gap:9px;
  max-width:610px;
  margin:25px 0 0;
  color:#93aab1;
  font-size:12px;
}
.ip-micro i{
  flex:0 0 auto;
  width:7px;
  height:7px;
  margin-top:6px;
  border-radius:50%;
  background:var(--teal);
  box-shadow:0 0 10px var(--teal);
}
.ip-visual{position:relative;min-height:500px}
.ip-visual-frame{
  position:absolute;
  inset:24px 0 20px 18px;
  overflow:hidden;
  border:1px solid rgba(85,235,224,.26);
  border-radius:24px;
  background:#081b24;
  box-shadow:var(--shadow),inset 0 1px rgba(255,255,255,.04);
  clip-path:polygon(0 0,94% 0,100% 7%,100% 100%,6% 100%,0 93%);
}
.ip-visual-frame img{width:100%;height:100%;object-fit:cover}
.ip-visual-frame::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(2,12,18,.02),rgba(2,12,18,.18)),linear-gradient(90deg,rgba(12,98,104,.15),transparent);
}
.ip-scan{
  position:absolute;
  z-index:2;
  left:0;
  right:0;
  height:1px;
  top:20%;
  background:linear-gradient(90deg,transparent,#6efff3,transparent);
  box-shadow:0 0 16px #53e9df;
  opacity:.55;
  animation:ipScan 5.5s ease-in-out infinite;
}
.ip-float{
  position:absolute;
  z-index:3;
  display:flex;
  align-items:center;
  gap:9px;
  padding:9px 12px;
  border:1px solid rgba(85,235,224,.4);
  border-radius:7px;
  color:#a9fff8;
  background:rgba(3,20,28,.86);
  box-shadow:0 13px 30px rgba(0,0,0,.24);
  backdrop-filter:blur(10px);
  font:500 9px/1 var(--ip-body);
  letter-spacing:.04em;
  animation:ipFloat 5s ease-in-out infinite;
}
.ip-float i{width:7px;height:7px;border-radius:50%;background:var(--teal);box-shadow:0 0 9px var(--teal)}
.ip-float-a{left:-7px;top:11%}
.ip-float-b{right:-8px;bottom:22%;animation-delay:-1.8s}
.ip-float-c{left:10%;bottom:4%;animation-delay:-3.1s}
.ip-hero-strip{
  position:absolute;
  z-index:3;
  left:0;
  right:0;
  bottom:0;
  border-top:1px solid rgba(105,199,197,.15);
  background:rgba(2,11,18,.63);
}
.ip-hero-strip .ip-shell{
  min-height:62px;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  align-items:center;
}
.ip-hero-strip span{
  padding:0 20px;
  border-right:1px solid rgba(105,199,197,.13);
  color:#91adb3;
  font:500 9px/1.2 var(--ip-body);
  letter-spacing:.08em;
  text-align:center;
}
.ip-hero-strip span:last-child{border-right:0}
.ip-section{position:relative;padding:110px 24px}
.ip-section-paper{background:var(--paper)}
.ip-section-soft{background:var(--paper-2)}
.ip-section-dark{color:var(--white);background:#06131c}
.ip-section-dark::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:radial-gradient(circle at 76% 45%,rgba(32,164,161,.15),transparent 30%);
}
.ip-label{color:#087c78}
.ip-section-dark .ip-label{color:#8ef4eb}
.ip-section h2{
  max-width:920px;
  margin:22px 0 24px;
  font-size:clamp(38px,4.4vw,65px);
  line-height:1.02;
  letter-spacing:-.055em;
}
.ip-section h2 em{color:var(--teal-dark);font-style:normal}
.ip-section-dark h2 em{color:var(--teal)}
.ip-lead{
  max-width:720px;
  margin:0;
  color:#38535b;
  font-size:18px;
  line-height:1.7;
}
.ip-section-dark .ip-lead{color:#b6c9ce}
.ip-split{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(340px,.82fr);
  gap:82px;
  align-items:start;
}
.ip-big-statement{
  margin:0;
  font-size:clamp(42px,5vw,72px);
  line-height:1;
  letter-spacing:-.065em;
}
.ip-big-statement em{color:var(--teal-dark);font-style:normal}
.ip-signal-grid,.ip-card-grid,.ip-format-grid,.ip-check-grid{
  display:grid;
  gap:16px;
}
.ip-signal-grid{grid-template-columns:repeat(3,1fr);margin-top:60px}
.ip-signal{
  min-height:220px;
  padding:27px;
  border-top:2px solid #0a8e89;
  background:rgba(255,255,255,.42);
}
.ip-signal span,.ip-step span,.ip-format span,.ip-check span{
  color:#087f7a;
  font:500 10px/1 var(--ip-body);
  letter-spacing:.1em;
}
.ip-signal h3,.ip-card h3,.ip-format h3,.ip-check h3{margin:38px 0 10px;font-size:20px;line-height:1.2}
.ip-signal p,.ip-card p,.ip-format p,.ip-check p{margin:0;color:#4f676e;font-size:14px}
.ip-timeline{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  margin-top:58px;
  border-top:1px solid #a7c2bd;
}
.ip-step{
  position:relative;
  min-height:235px;
  padding:29px 27px 25px 0;
}
.ip-step::before{
  content:"";
  position:absolute;
  width:9px;
  height:9px;
  left:0;
  top:-5px;
  border-radius:50%;
  background:var(--teal-dark);
  box-shadow:0 0 0 6px rgba(8,127,122,.1);
}
.ip-step h3{margin:55px 0 10px;font-size:19px}
.ip-step p{max-width:230px;margin:0;color:#4d666d;font-size:14px}
.ip-card-grid{grid-template-columns:repeat(3,1fr);margin-top:56px}
.ip-card{
  position:relative;
  min-height:270px;
  padding:30px;
  overflow:hidden;
  border:1px solid rgba(20,88,87,.17);
  border-radius:17px;
  background:rgba(255,255,255,.4);
  transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease;
}
.ip-card:hover{transform:translateY(-6px);border-color:rgba(8,127,122,.4);box-shadow:0 22px 45px rgba(16,71,73,.09)}
.ip-card::after{
  content:"";
  position:absolute;
  width:150px;
  height:150px;
  right:-85px;
  bottom:-88px;
  border:1px solid rgba(8,127,122,.13);
  border-radius:50%;
  box-shadow:0 0 0 28px rgba(8,127,122,.035);
}
.ip-card h3{margin-top:65px}
.ip-card .ip-card-index{color:#087f7a;font:500 10px var(--ip-body)}
.ip-format-grid{grid-template-columns:1.15fr .85fr .85fr;margin-top:58px}
.ip-format{
  min-height:380px;
  padding:28px;
  border:1px solid rgba(114,217,209,.16);
  border-radius:18px;
  background:#071a23;
  color:var(--white);
}
.ip-format-featured{
  display:flex;
  min-height:420px;
  flex-direction:column;
  background:#0a222b;
}
.ip-format img{
  width:100%;
  height:170px;
  margin-bottom:23px;
  border-radius:10px;
  object-fit:cover;
}
.ip-format-featured img{height:220px}
.ip-format h3{margin:22px 0 10px}
.ip-format p{color:#a9c0c5}
.ip-format a{display:inline-block;margin-top:auto;padding-top:20px;color:#7ef3e9;font-size:12px;font-weight:800}
.ip-dashboard{
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:70px;
  align-items:center;
}
.ip-data-panel{
  overflow:hidden;
  border:1px solid rgba(88,230,220,.28);
  border-radius:19px;
  background:rgba(3,18,25,.78);
  box-shadow:0 30px 70px rgba(0,0,0,.25);
}
.ip-data-head,.ip-data-foot{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:16px 19px;
  color:#8fa8ae;
  font:500 9px var(--ip-body);
}
.ip-data-head{border-bottom:1px solid rgba(88,230,220,.14)}
.ip-data-head b{color:#6af0e4}
.ip-data-body{padding:25px}
.ip-data-metric{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.ip-data-metric div{padding:18px;border:1px solid rgba(111,205,199,.13);background:rgba(12,43,50,.34)}
.ip-data-metric b{display:block;color:#e8ffff;font-size:30px;letter-spacing:-.04em}
.ip-data-metric span{color:#8ba5ab;font-size:11px}
.ip-data-bars{height:170px;display:flex;align-items:end;gap:9px;padding-top:27px}
.ip-data-bars i{
  flex:1;
  min-height:16px;
  background:linear-gradient(180deg,var(--teal),rgba(52,217,207,.12));
  box-shadow:0 0 12px rgba(52,217,207,.13);
  animation:ipBars 4.5s ease-in-out infinite alternate;
}
.ip-data-bars i:nth-child(2n){animation-delay:-1.2s}
.ip-data-bars i:nth-child(3n){animation-delay:-2.5s}
.ip-data-foot{border-top:1px solid rgba(88,230,220,.14)}
.ip-proof-list{display:grid;gap:22px;margin-top:35px}
.ip-proof{
  display:grid;
  grid-template-columns:44px 1fr;
  gap:17px;
  align-items:start;
}
.ip-proof b{
  display:grid;
  width:44px;
  height:44px;
  place-items:center;
  border:1px solid rgba(76,225,215,.36);
  border-radius:50%;
  color:#84f5eb;
  font:500 10px var(--ip-body);
}
.ip-proof h3{margin:1px 0 5px;font-size:17px}
.ip-proof p{margin:0;color:#9fb5bb;font-size:14px}
.ip-marquee{
  display:flex;
  gap:10px;
  margin:55px calc(50% - 50vw) 0;
  padding:15px 20px;
  overflow:hidden;
  border-block:1px solid rgba(9,111,108,.16);
}
.ip-marquee-track{
  display:flex;
  flex:0 0 auto;
  gap:10px;
  min-width:max-content;
  animation:ipMarquee 24s linear infinite;
}
.ip-marquee span{
  padding:11px 16px;
  border:1px solid rgba(9,111,108,.22);
  border-radius:999px;
  color:#22565a;
  background:rgba(255,255,255,.32);
  font:500 10px var(--ip-body);
  letter-spacing:.06em;
}
.ip-device-grid{
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:80px;
  align-items:center;
}
.ip-device{
  position:relative;
  min-height:560px;
  padding:18px;
  border:1px solid rgba(79,225,214,.28);
  border-radius:22px;
  background:rgba(3,20,27,.72);
  box-shadow:var(--shadow);
}
.ip-device img{width:100%;height:524px;border-radius:12px;object-fit:cover}
.ip-device-spec{
  position:absolute;
  padding:8px 11px;
  border:1px solid rgba(82,228,218,.5);
  border-radius:5px;
  color:#a8fff7;
  background:rgba(3,22,28,.88);
  font:500 9px var(--ip-body);
}
.ip-device-spec::before{content:"";position:absolute;height:1px;background:rgba(82,228,218,.5)}
.ip-device-spec-a{left:-42px;top:16%}
.ip-device-spec-a::before{width:38px;right:-38px;top:50%}
.ip-device-spec-b{right:-43px;top:45%}
.ip-device-spec-b::before{width:39px;left:-39px;top:50%}
.ip-device-spec-c{left:-20px;bottom:9%}
.ip-device-spec-c::before{width:21px;right:-21px;top:50%}
.ip-check-grid{grid-template-columns:repeat(2,1fr);margin-top:45px}
.ip-check{
  min-height:155px;
  padding:24px;
  border-left:2px solid var(--teal-dark);
  background:rgba(255,255,255,.35);
}
.ip-check h3{margin:18px 0 7px;font-size:17px}
.ip-faq-list{display:grid;gap:10px;margin-top:38px}
.ip-faq-list details,.ip-faq-item{
  border:1px solid rgba(20,94,91,.18);
  border-radius:13px;
  background:rgba(255,255,255,.4);
}
.ip-faq-list summary,.ip-faq-item summary{
  position:relative;
  padding:21px 56px 21px 22px;
  cursor:pointer;
  list-style:none;
  font-weight:800;
}
.ip-faq-list summary::-webkit-details-marker,.ip-faq-item summary::-webkit-details-marker{display:none}
.ip-faq-list summary::after,.ip-faq-item summary::after{
  content:"+";
  position:absolute;
  right:21px;
  top:50%;
  width:24px;
  height:24px;
  transform:translateY(-50%);
  color:#087f7a;
  font:500 22px/24px var(--ip-body);
  text-align:center;
}
.ip-faq-list details[open] summary::after,.ip-faq-item[open] summary::after{content:"−"}
.ip-faq-list details p,.ip-faq-item p{
  max-width:850px;
  margin:0;
  padding:0 56px 23px 22px;
  color:#4d676d;
  font-size:14px;
}
.ip-faq-hero-grid{display:grid;grid-template-columns:1fr .75fr;gap:70px;align-items:center}
.ip-question-art{position:relative;min-height:310px}
.ip-question-art strong{
  position:absolute;
  right:16%;
  top:-20%;
  color:transparent;
  font-size:360px;
  line-height:1;
  letter-spacing:-.1em;
  -webkit-text-stroke:1px rgba(77,227,216,.28);
  animation:ipFloat 5s ease-in-out infinite;
}
.ip-question-node{
  position:absolute;
  width:12px;
  height:12px;
  border:2px solid var(--teal);
  border-radius:50%;
  box-shadow:0 0 16px var(--teal);
}
.ip-question-node::after{
  content:"";
  position:absolute;
  width:150px;
  height:1px;
  left:10px;
  top:4px;
  transform:rotate(var(--angle));
  transform-origin:left;
  background:linear-gradient(90deg,rgba(52,217,207,.7),transparent);
}
.ip-question-node-a{left:12%;top:25%;--angle:18deg}
.ip-question-node-b{left:30%;bottom:13%;--angle:-34deg}
.ip-question-node-c{right:12%;top:48%;--angle:142deg}
.ip-faq-tools{
  position:sticky;
  z-index:20;
  top:78px;
  padding:18px 24px;
  border-bottom:1px solid rgba(16,98,95,.15);
  background:rgba(234,242,239,.94);
  backdrop-filter:blur(14px);
}
.ip-faq-tools .ip-shell{display:flex;align-items:center;gap:13px}
.ip-search{
  flex:1;
  min-height:48px;
  padding:0 16px;
  border:1px solid rgba(14,100,97,.24);
  border-radius:999px;
  outline:none;
  color:#082128;
  background:rgba(255,255,255,.6);
}
.ip-search:focus{border-color:#0b8b86;box-shadow:0 0 0 4px rgba(11,139,134,.1)}
.ip-filter{
  min-height:42px;
  padding:0 15px;
  border:1px solid rgba(14,100,97,.22);
  border-radius:999px;
  color:#31585b;
  background:transparent;
  cursor:pointer;
  font-size:12px;
  font-weight:800;
}
.ip-filter[aria-pressed="true"]{color:#e9ffff;background:#087f7a;border-color:#087f7a}
.ip-result-count{min-width:90px;color:#527076;font:500 9px var(--ip-body);text-align:right}
.ip-faq-columns{display:grid;grid-template-columns:1fr 1fr;gap:45px;align-items:start}
.ip-faq-group h2{margin-bottom:30px;font-size:clamp(34px,3.8vw,52px)}
.ip-faq-item[hidden]{display:none}
.ip-empty{display:none;padding:40px 0;color:#567076}
.ip-empty[data-visible="true"]{display:block}
.ip-cta{
  position:relative;
  padding:110px 24px;
  overflow:hidden;
  color:var(--white);
  background:#041019;
  text-align:center;
}
.ip-cta::before{
  content:"";
  position:absolute;
  width:700px;
  height:700px;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  border:1px solid rgba(52,217,207,.16);
  border-radius:50%;
  box-shadow:0 0 0 90px rgba(52,217,207,.025),0 0 0 180px rgba(255,189,66,.018);
}
.ip-cta .ip-shell{display:flex;flex-direction:column;align-items:center}
.ip-cta h2{max-width:900px;margin:0;font-size:clamp(46px,5.4vw,78px);line-height:.98;letter-spacing:-.065em}
.ip-cta h2 em{color:var(--teal);font-style:normal}
.ip-cta p{max-width:620px;margin:22px 0 0;color:#a9bec4;font-size:17px}
.ip-footer{padding:38px 24px;color:#9db1b7;background:#020a10;border-top:1px solid rgba(98,190,188,.13)}
.ip-footer .ip-shell{display:grid;grid-template-columns:auto 1fr auto;gap:30px;align-items:center}
.ip-footer img{width:150px;max-height:32px}
.ip-footer p{margin:0;font-size:12px}
.ip-footer nav{display:flex;justify-content:center;gap:24px}
.ip-footer a{font-size:12px;font-weight:700}
.ip-footer .footer-instagram{display:inline-flex;align-items:center;gap:5px;padding:0 11px;border:1px solid rgba(157,177,183,.46);border-radius:4px;color:#e7f8f6;transition:border-color .2s ease,background .2s ease,color .2s ease}
.ip-footer .footer-instagram strong{color:#ffd31a;font-weight:700}
.ip-footer .footer-instagram:hover,.ip-footer .footer-instagram:focus-visible{border-color:#ffd31a;background:rgba(255,211,26,.08);color:#fff}
.ip-mobile-bar{display:none}
[data-reveal]{
  opacity:1;
  transform:none;
}
@keyframes ipGridDrift{to{transform:perspective(900px) rotateX(64deg) rotateZ(-18deg) translate3d(-45px,35px,0)}}
@keyframes ipScan{0%,100%{top:15%;opacity:.15}50%{top:84%;opacity:.65}}
@keyframes ipFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
@keyframes ipBars{to{filter:brightness(1.25);transform:scaleY(.92);transform-origin:bottom}}
@keyframes ipMarquee{to{transform:translateX(calc(-100% - 10px))}}
@media(max-width:980px){
  .ip-menu{display:block}
  .ip-links{
    position:absolute;
    left:24px;
    right:24px;
    top:68px;
    display:none;
    flex-direction:column;
    align-items:stretch;
    gap:0;
    padding:13px;
    border:1px solid rgba(92,221,213,.2);
    border-radius:14px;
    background:rgba(3,16,24,.98);
    box-shadow:0 22px 45px rgba(0,0,0,.35);
  }
  .ip-links[data-open="true"]{display:flex}
  .ip-links a{padding:12px}
  .ip-nav-cta{margin-left:0}
  .ip-hero-grid{grid-template-columns:1fr .8fr;gap:35px}
  .ip-hero h1{font-size:clamp(50px,7vw,72px)}
  .ip-signal-grid,.ip-card-grid{grid-template-columns:repeat(2,1fr)}
  .ip-format-grid{grid-template-columns:1fr 1fr}
  .ip-format-featured{grid-column:1/-1}
  .ip-timeline{grid-template-columns:repeat(2,1fr);border-top:0}
  .ip-step{border-top:1px solid #a7c2bd}
  .ip-dashboard,.ip-device-grid{gap:40px}
}
@media(max-width:760px){
  .ip-header{height:68px}
  .ip-nav{width:calc(100% - 36px);gap:11px}
  .ip-brand img{width:133px}
  .ip-nav-cta{min-height:39px;padding:0 13px;font-size:10px}
  .ip-links{left:18px;right:18px;top:60px}
  .ip-hero{min-height:auto;padding:118px 19px 110px}
  .ip-hero::after{width:420px;height:420px;right:-300px}
  .ip-hero-grid,.ip-faq-hero-grid{grid-template-columns:1fr}
  .ip-hero h1{font-size:clamp(48px,13vw,66px)}
  .ip-hero .ip-sub{font-size:16px}
  .ip-visual{min-height:410px;margin-top:20px}
  .ip-visual-frame{inset:15px 0}
  .ip-float-a{left:0}.ip-float-b{right:0}
  .ip-hero-strip .ip-shell{grid-template-columns:repeat(2,1fr)}
  .ip-hero-strip span{min-height:42px;display:grid;place-items:center}
  .ip-section{padding:78px 19px}
  .ip-split,.ip-dashboard,.ip-device-grid{grid-template-columns:1fr;gap:45px}
  .ip-signal-grid,.ip-card-grid,.ip-format-grid,.ip-check-grid{grid-template-columns:1fr}
  .ip-format-featured{grid-column:auto}
  .ip-timeline{grid-template-columns:1fr}
  .ip-step{min-height:190px}
  .ip-dashboard .ip-data-panel{order:-1}
  .ip-device{width:calc(100% - 40px);min-height:500px;margin:auto}
  .ip-device img{height:465px}
  .ip-device-spec-a{left:-25px}.ip-device-spec-b{right:-25px}
  .ip-question-art{display:none}
  .ip-faq-tools{top:68px;padding:13px 19px}
  .ip-faq-tools .ip-shell{flex-wrap:wrap}
  .ip-search{flex-basis:100%}
  .ip-result-count{margin-left:auto}
  .ip-faq-columns{grid-template-columns:1fr}
  .ip-cta{padding:82px 19px}
  .ip-footer{padding:32px 19px 150px}
  .ip-footer .ip-shell{grid-template-columns:1fr;text-align:center;justify-items:center}
  .ip-footer nav{flex-wrap:wrap}
  .ip-mobile-bar{
    position:fixed;
    z-index:90;
    left:0;
    right:0;
    bottom:0;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px;
    padding:9px 12px;
    background:rgba(3,14,21,.95);
    border-top:1px solid rgba(92,221,213,.2);
    backdrop-filter:blur(14px);
  }
  .ip-mobile-bar .ip-button{min-height:43px;padding:0 12px;font-size:10px}
}
@media(max-width:430px){
  .ip-nav-cta{display:none}
  .ip-menu{margin-left:auto}
  .ip-visual{min-height:360px}
  .ip-device{min-height:440px}
  .ip-device img{height:405px}
  .ip-data-metric{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important}
  [data-reveal]{opacity:1;transform:none}
}

/* TVs indoor — página pública de produto. */
.indoor-hero{background:linear-gradient(120deg,#071b23,#17221f 62%,#0f1917)}
.indoor-hero::before{background:radial-gradient(circle at 78% 35%,rgba(255,196,82,.16),transparent 24%),linear-gradient(120deg,rgba(3,14,20,.9),rgba(3,14,20,.26))}
.indoor-hero-visual{position:relative;min-height:430px;display:grid;place-items:center}
.indoor-hero-room{position:relative;width:min(100%,430px);height:386px;overflow:hidden;border:1px solid rgba(255,216,139,.25);background:linear-gradient(140deg,#373a34 0%,#1a2723 53%,#0b1717 100%);box-shadow:0 30px 70px rgba(0,0,0,.36)}
.indoor-hero-room::before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,234,193,.06) 1px,transparent 1px),linear-gradient(rgba(255,234,193,.04) 1px,transparent 1px);background-size:56px 56px}
.room-light{position:absolute;width:265px;height:265px;left:8%;top:-140px;border-radius:50%;background:radial-gradient(circle,rgba(255,231,178,.32),rgba(255,222,151,0));filter:blur(4px)}
.room-sign{position:absolute;top:27px;left:29px;color:#cbd8cf;font:500 9px/1.7 var(--ip-body);letter-spacing:.1em}.room-sign b{color:#ffc965;font-weight:500}
.room-seat{position:absolute;bottom:46px;left:8%;display:flex;align-items:end;gap:8px;width:207px;height:56px;border-bottom:8px solid #6b614b}.room-seat::before,.room-seat::after{content:'';position:absolute;bottom:-29px;width:8px;height:28px;background:#554e3d}.room-seat::before{left:17px}.room-seat::after{right:17px}.room-seat i{flex:1;height:45px;border:1px solid rgba(255,229,166,.19);border-bottom:0;background:#5a5544}
.room-tv{position:absolute;right:9%;top:44px;width:177px;height:263px;padding:9px;border:5px solid #252d2a;border-radius:6px;background:#051211;box-shadow:0 0 0 1px rgba(255,219,150,.48),0 20px 45px rgba(0,0,0,.55)}
.room-tv::after{content:'';position:absolute;left:42%;bottom:-37px;width:16%;height:34px;background:#252d2a}.room-tv>div{position:relative;display:flex;height:100%;padding:21px 17px;flex-direction:column;justify-content:space-between;overflow:hidden;background:radial-gradient(circle at 76% 14%,#ffd267 0 4%,transparent 18%),linear-gradient(151deg,#197b77,#0a4c51 58%,#d98c34);color:#effffc}.room-tv>div::before{content:'';position:absolute;right:-74px;bottom:-88px;width:180px;height:180px;border:1px solid rgba(222,255,249,.45);border-radius:50%;box-shadow:0 0 0 24px rgba(222,255,249,.07)}.room-tv small,.room-tv span{position:relative;z-index:1;font:500 8px/1.4 var(--ip-body);letter-spacing:.08em}.room-tv b{position:relative;z-index:1;font-size:26px;line-height:.88;letter-spacing:-.08em}.room-tv span{font-size:7px}
.indoor-promise-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:55px}.indoor-promise-grid article{min-height:265px;padding:27px;border:1px solid #bfd7d1;background:#f7fbf9}.indoor-promise-grid b{color:#0b8b83;font:500 11px/1 var(--ip-body)}.indoor-promise-grid h3{margin:53px 0 10px;font-size:23px;line-height:1.05;letter-spacing:-.055em}.indoor-promise-grid p{margin:0;color:#4c666a;font-size:14px}.indoor-contact{padding:124px 0;background:#0b252d;color:#e7f8f6;text-align:center}.indoor-contact .ip-shell{display:flex;flex-direction:column;align-items:center}.indoor-contact h2{max-width:830px;margin:0;font-size:clamp(42px,5vw,70px);line-height:.98;letter-spacing:-.07em}.indoor-contact p:not(.ip-eyebrow){max-width:620px;margin:22px 0 0;color:#a9c6c9;font-size:16px}.indoor-contact .ip-actions{justify-content:center}
@media(max-width:760px){.indoor-hero-visual{min-height:330px}.indoor-hero-room{height:310px}.room-tv{right:7%;top:36px;width:138px;height:209px}.room-tv>div{padding:15px 12px}.room-tv b{font-size:20px}.room-tv::after{bottom:-30px;height:27px}.room-seat{bottom:42px;left:5%;width:151px;height:40px}.room-seat i{height:32px}.room-sign{top:20px;left:20px;font-size:7px}.indoor-promise-grid{grid-template-columns:1fr;margin-top:35px}.indoor-promise-grid article{min-height:205px}.indoor-promise-grid h3{margin-top:35px}.indoor-contact{padding:82px 0}.indoor-contact .ip-actions{flex-direction:column}}

/* Área interativa mínima para navegação por toque nas páginas internas. */
.ip-brand,.ip-nav-cta,.ip-footer a{min-height:44px}
.ip-footer a{display:inline-flex;align-items:center}
.ip-menu{width:44px;height:44px}
