:root{
  /* MueDE · blancos y grises neutros + naranja de marca */
  --bone:#FFFFFF;--paper:#F9F9F9;--ink:#2E2E31;--mute:#666666;--gris:#85898D;
  --line:#CCCCCC;--ctrl:#999999;
  --dark:#F4F4F4;--surf:#F4F4F4;--dmute:#666666;--dline:#CCCCCC;
  --ph:#F1F1F1;--accent:#F1452C;--on-acc:#111111;
  --sans:'Inter Tight','Inter',system-ui,'Helvetica Neue',Arial,sans-serif;
  --gut:clamp(24px,3.4vw,48px);
  color-scheme:light;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bone);color:var(--ink);font-family:var(--sans);font-size:17px;line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
[hidden]{display:none!important}
img{max-width:100%}
a{color:inherit;text-decoration:none}
button{font-family:inherit;cursor:pointer}
h1,h2,h3,p,ul,figure{margin:0}
ul,ol{padding:0;margin:0;list-style:none}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px;box-shadow:0 0 0 5px var(--bone)}
.dk :focus-visible{box-shadow:0 0 0 5px var(--dark)}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}

/* layout */
.in{max-width:1344px;margin-inline:auto;position:relative}
.sec{padding:clamp(56px,7vw,96px) var(--gut)}
.dk{background:var(--dark);color:var(--ink)}
[id]{scroll-margin-top:84px}
.num{font-variant-numeric:tabular-nums}

/* type */
.lbl{display:flex;align-items:center;gap:10px;font-size:13px;font-weight:500;letter-spacing:.08em;text-transform:uppercase}
.lbl::before{content:'';width:10px;height:10px;border-radius:50%;background:var(--accent);flex:none}
.h1{font-size:clamp(46px,28.9px + 4.38vw,92px);line-height:.95;letter-spacing:-.02em;font-weight:800;text-wrap:balance}
.h1 span{display:block}
.h2{font-size:clamp(40px,25px + 3.81vw,80px);line-height:1;letter-spacing:-.02em;font-weight:800;text-wrap:balance}
.it{font-style:normal;color:var(--accent)}
.lead{font-size:clamp(17px,.5vw + 14px,19px);line-height:1.5;color:var(--mute);max-width:560px}
.dk .lead{color:var(--dmute)}
.stack-lbl{margin-bottom:clamp(16px,2vw,24px)}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;height:56px;padding:0 28px;border-radius:999px;border:1.5px solid transparent;font:700 17px/1 var(--sans);letter-spacing:0;white-space:nowrap;transition:transform .2s ease}
.btn:hover{transform:translateY(-2px)}
.btn-acc{background:var(--accent);color:var(--on-acc)}
.btn-ink{background:var(--ink);color:var(--bone)}
.hdr-wa{background:var(--accent);color:var(--on-acc)}
.btn-ghost{border-color:var(--ink);color:var(--ink);background:transparent}
.btn-sm{height:48px;padding:0 22px;font-size:15px}
.btn-block{width:100%}
.tlink{display:inline-flex;align-items:center;gap:10px;font-size:17px;font-weight:700;border-bottom:1.5px solid currentColor;padding-bottom:5px}
.long{display:inline}.short{display:none}

/* header */
.hdr{position:sticky;top:env(safe-area-inset-top,0px);z-index:50;background:var(--bone);border-bottom:1px solid transparent;transition:border-color .2s}
.hdr.scrolled{border-color:var(--line)}
.hdr-in{display:flex;align-items:center;justify-content:space-between;gap:16px;height:72px}
.hdr{padding-inline:var(--gut)}
.logo{display:inline-flex;align-items:center;gap:12px;color:var(--accent);line-height:1;padding-block:8px}
.logo svg{display:block;flex:none;height:32px;width:auto}
.wmk{font-weight:800;letter-spacing:-.05em;font-size:34px;line-height:1;text-transform:none;white-space:nowrap}
.wmk sup{font-size:.3em;font-weight:700;letter-spacing:0;vertical-align:top;position:relative;top:.12em;margin-left:.08em}
.nav{display:flex;gap:36px}
.nl{font-size:15px;font-weight:500;padding-block:6px}
.nl[aria-current="page"]{text-decoration:underline;text-decoration-color:var(--accent);text-decoration-thickness:2px;text-underline-offset:8px}
.hdr-r{display:flex;align-items:center;gap:4px}
.menu-btn{display:none;width:44px;height:44px;border:0;background:transparent;color:var(--ink);align-items:center;justify-content:center}
.mnav{position:absolute;left:0;right:0;top:100%;background:var(--bone);border-bottom:1px solid var(--line);padding:8px var(--gut) 24px;display:flex;flex-direction:column}
.mnav a{font-size:28px;font-weight:700;letter-spacing:-.02em;padding:14px 0;border-bottom:1px solid var(--line)}

/* crosses */
.xh{position:absolute;width:15px;height:15px;pointer-events:none;opacity:.55}
.xh::before,.xh::after{content:'';position:absolute;background:currentColor}
.xh::before{left:7px;top:0;width:1px;height:15px}
.xh::after{left:0;top:7px;width:15px;height:1px}

/* hero */
.hero{padding:clamp(24px,4vw,48px) var(--gut) 0;overflow:hidden}
.hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,584px);gap:48px}
.hero-l{display:flex;flex-direction:column;justify-content:space-between;gap:32px}
.hero-l .h1{margin-top:32px}
.ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}
.plan{border:1px solid var(--line);background:var(--paper);color:var(--ink);display:flex;flex-direction:column}
.plan-h{display:flex;justify-content:space-between;align-items:center;gap:12px;height:48px;padding:0 20px;border-bottom:1px solid var(--line);font-size:13px;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}
.plan-h b{font-weight:500}
.plan-h span{color:var(--mute)}
.plan svg{display:block;width:100%;height:auto}
.pl-s{stroke:var(--accent)}.pl-f{fill:var(--accent)}
.plan-k{display:flex;flex-wrap:wrap;align-items:center;gap:8px 24px;padding:12px 20px;font-size:14px;color:var(--mute)}
.plan-k span{display:inline-flex;align-items:center;gap:8px}
.plan-k i{width:14px;height:14px;display:block}
.sw-f{background:var(--accent)}.sw-o{border:3px solid var(--accent)}
.wm-wrap{container-type:inline-size;overflow:hidden;margin-top:clamp(24px,3vw,40px)}
.wm sup{font-size:.13em;font-weight:800;letter-spacing:0;vertical-align:top;position:relative;top:2em;margin-left:.1em}
.wm{display:inline-block;font-size:28cqw;line-height:.86;font-weight:900;letter-spacing:-.04em;color:var(--accent);white-space:nowrap;margin-left:-.03em;padding-bottom:.02em;user-select:none}
.rt-short{display:none}

/* segments */
.seg-sec .h2{margin-top:24px}
.seg-list{margin-top:clamp(32px,4vw,56px);border-bottom:1px solid var(--dline)}
.seg{display:grid;grid-template-columns:72px minmax(0,auto) minmax(24px,1fr) auto 56px;align-items:center;column-gap:clamp(16px,2vw,28px);min-height:clamp(132px,12.2vw,176px);border-top:1px solid var(--dline);transition:background .25s ease}
.seg:hover{background:#ECECEC}
.seg-n{font-size:15px;color:var(--dmute)}
.seg-t{font-size:clamp(28px,-3px + 5.4vw,64px);font-weight:700;letter-spacing:-.02em;line-height:1.02;transition:transform .3s ease;text-wrap:balance}
.seg-l{height:1px;background:var(--dline)}
.seg-r{font-size:17px;color:var(--dmute);text-align:right}
.seg-c{width:56px;height:56px;border-radius:50%;border:1px solid var(--dline);display:inline-flex;align-items:center;justify-content:center}
@media (hover:hover){.seg:hover .seg-t{transform:translateX(16px)}}

/* frames / cases */
.hd-row{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap}
.hd-row .h2{margin-top:24px;max-width:900px}
.frames{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:clamp(32px,4vw,56px)}
.frame{position:relative;aspect-ratio:496/520;background-color:var(--ph);background-image:repeating-linear-gradient(135deg,transparent 0,transparent 16px,rgba(17,17,17,.06) 16px,rgba(17,17,17,.06) 17px);display:flex;align-items:center;justify-content:center;overflow:hidden;max-width:100%}
.frame.wide{aspect-ratio:660/440}
.frame-l{font-size:12px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--mute);background:var(--bone);padding:8px 12px;text-align:center;margin:0 12px}
.frame .xh{color:var(--mute)}
.chip{position:absolute;left:20px;top:20px;height:32px;padding:0 14px;display:inline-flex;align-items:center;border-radius:999px;font-size:13px;font-weight:600;letter-spacing:.06em;text-transform:uppercase}
.chip-ink{background:var(--ink);color:var(--bone)}.chip-acc{background:var(--accent);color:var(--on-acc)}
.meta{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;padding-top:24px;margin-top:32px;border-top:1px solid var(--line)}
.meta dt{font-size:13px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--mute)}
.meta dd{margin:8px 0 0;font-size:clamp(18px,1.2vw + 8px,22px);line-height:1.25;letter-spacing:-.02em;font-weight:500}
.meta{margin-bottom:0}

/* packages */
.pk-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:clamp(32px,4vw,56px)}
.pk{background:var(--bone);border:1px solid var(--dline);padding:clamp(24px,2.2vw,32px);display:flex;flex-direction:column;gap:20px}
.pk-top{display:flex;justify-content:space-between;align-items:center;font-size:15px;color:var(--dmute)}
.tag{height:32px;padding:0 14px;display:inline-flex;align-items:center;border-radius:999px;border:1px solid var(--dline);font-size:13px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--ink)}
.pk h3{font-size:clamp(30px,1.6vw + 18px,44px);font-weight:700;letter-spacing:-.02em;line-height:1.05;text-wrap:balance}
.pk .desc{font-size:16px;line-height:1.5;color:var(--dmute)}
.price-b{display:flex;flex-direction:column;gap:8px;padding:20px 0;border-block:1px solid var(--dline)}
.k{font-size:13px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--dmute)}
.price{font-size:clamp(26px,1.3vw + 13px,32px);font-weight:700;letter-spacing:-.02em;line-height:1.1;color:var(--accent);font-variant-numeric:tabular-nums;text-wrap:balance}
.price-s{font-size:14px;color:var(--dmute)}
.ck-list{display:flex;flex-direction:column;gap:12px;margin-bottom:auto}
.ck-list li{display:flex;gap:12px;align-items:flex-start;font-size:16px;line-height:1.35}
.ck-list svg{flex:none;margin-top:2px}
.ck{stroke:var(--accent)}
.pk .btn{margin-top:8px}

/* calculator */
.sec-cal{background:var(--dark)}
.sec-cal .panel{background:var(--bone)}
.cal-grid{display:grid;grid-template-columns:minmax(0,500px) minmax(0,760px);justify-content:space-between;gap:48px;align-items:start}
.cal-grid .h2{margin-top:24px;font-size:clamp(44px,26px + 4.5vw,88px);line-height:.98;letter-spacing:-.02em}
.cal-grid .lead{margin-top:28px;max-width:440px}
.cal-grid>*,.ag-grid>*,.hero-grid>*{min-width:0}
.panel{background:var(--paper);border:1px solid var(--line);padding:clamp(24px,2.8vw,40px);display:flex;flex-direction:column;gap:32px}
.st{display:flex;gap:12px;align-items:center;font-size:13px;font-weight:600;letter-spacing:.08em;text-transform:uppercase}
.st b{font-weight:600;color:var(--mute);letter-spacing:0}
.tgs{display:flex;gap:8px;margin-top:14px}
.tg{flex:1;min-width:0;height:56px;padding:0 12px;border-radius:999px;border:1.5px solid var(--ctrl);background:transparent;color:var(--ink);font:600 16px/1 var(--sans);transition:background .15s,color .15s}
.tg[aria-pressed="true"]{background:var(--accent);color:var(--on-acc);border-color:var(--accent)}
.tg:not([aria-pressed="true"]):hover{border-color:var(--ink)}
.m2-out{display:flex;align-items:baseline;gap:10px;margin-top:10px;font-size:clamp(56px,3.4vw + 44px,72px);font-weight:700;letter-spacing:-.02em;line-height:1;font-variant-numeric:tabular-nums}
.m2-out small{font-size:clamp(24px,1vw + 20px,28px);font-weight:500;color:var(--mute);letter-spacing:-.02em}
input[type=range]{-webkit-appearance:none;appearance:none;width:100%;height:44px;margin:6px 0 0;background:transparent;--p:35%}
input[type=range]::-webkit-slider-runnable-track{height:6px;border-radius:3px;background:linear-gradient(to right,var(--accent) var(--p),rgba(17,17,17,.16) var(--p))}
input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:26px;height:26px;margin-top:-10px;border-radius:50%;background:var(--accent);border:3px solid var(--paper);box-shadow:0 0 0 1.5px var(--ink)}
input[type=range]::-moz-range-track{height:6px;border-radius:3px;background:rgba(17,17,17,.16)}
input[type=range]::-moz-range-progress{height:6px;border-radius:3px;background:var(--accent)}
input[type=range]::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:var(--accent);border:3px solid var(--paper);box-shadow:0 0 0 1.5px var(--ink)}
.rng-l{display:flex;justify-content:space-between;font-size:14px;color:var(--mute)}
.res{background:var(--surf);color:var(--ink);border:1px solid var(--line);padding:clamp(20px,2.2vw,28px)}
.res .k{color:var(--dmute)}
.res-n{margin-top:12px;font-size:clamp(30px,1.6vw + 24px,56px);font-weight:700;letter-spacing:-.02em;line-height:1.05;color:var(--accent);font-variant-numeric:tabular-nums;text-wrap:balance}
.res-c{margin-top:12px;font-size:15px;line-height:1.4}
.res-s{margin-top:6px;font-size:15px;line-height:1.4;color:var(--dmute)}
.acts{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}

/* booking */
.ag-grid{display:grid;grid-template-columns:minmax(0,600px) minmax(0,640px);justify-content:space-between;gap:48px;align-items:start}
.ag-grid .h2{margin-top:24px;font-size:clamp(44px,26px + 4.5vw,88px);line-height:.98;letter-spacing:-.02em}
.ag-grid .lead{margin-top:28px;max-width:480px}
.days{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:14px}
.day{height:88px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:0;border-radius:16px;border:1.5px solid var(--ctrl);background:transparent;color:var(--ink);transition:background .15s,color .15s}
.day span{font-size:13px;font-weight:600;letter-spacing:.06em;text-transform:uppercase}
.day b{font-size:30px;font-weight:700;letter-spacing:-.02em;line-height:1;font-variant-numeric:tabular-nums}
.day[aria-pressed="true"]{background:var(--accent);color:var(--on-acc);border-color:var(--accent)}
.slots{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:14px}
.slots .tg{font-size:17px;font-variant-numeric:tabular-nums}
.sum{padding:20px 0;border-block:1px solid var(--line)}
.sum .k{color:var(--mute)}
.sum-v{margin-top:8px;font-size:clamp(22px,.8vw + 16px,26px);font-weight:700;letter-spacing:-.02em;line-height:1.25}
.fine{margin-top:14px;text-align:center;font-size:14px;color:var(--mute)}

/* page headers (paquetes / casos) */
.pg-hd{padding:clamp(40px,5vw,64px) var(--gut) clamp(40px,5vw,72px)}
.pg-hd-row{display:flex;justify-content:space-between;align-items:flex-end;gap:32px;flex-wrap:wrap}
.pg-h{margin-top:32px;font-size:clamp(56px,-3px + 15.2vw,176px);line-height:.92;letter-spacing:-.02em;font-weight:800}
.pg-h span{display:block}
.pg-p{max-width:380px;font-size:19px;line-height:1.5;color:var(--mute)}

.rows{border-bottom:1px solid var(--dline)}
.row{display:grid;grid-template-columns:minmax(0,460px) minmax(0,1fr) minmax(0,420px);gap:48px;padding-block:48px;border-top:1px solid var(--dline)}
.row .n{font-size:15px;color:var(--dmute)}
.row h2{margin-top:20px;font-size:clamp(34px,1.8vw + 22px,44px);font-weight:700;letter-spacing:-.02em;line-height:1.05;text-wrap:balance}
.row .desc{margin-top:20px;font-size:18px;line-height:1.5;color:var(--dmute);max-width:400px}
.row .tag{margin-top:20px}
.row .k{margin-bottom:20px}
.row .price{margin-top:12px;font-size:clamp(28px,1.6vw + 16px,40px)}
.row .btns{display:flex;flex-direction:column;align-items:flex-start;gap:20px;margin-top:32px}
.case{padding-block:clamp(40px,5vw,64px);border-top:1px solid var(--line)}
.case-h{display:flex;justify-content:space-between;align-items:flex-end;gap:16px 24px;flex-wrap:wrap}
.case-h h2{display:flex;align-items:baseline;gap:24px;font-size:clamp(32px,1.6vw + 22px,56px);font-weight:700;letter-spacing:-.02em;line-height:1}
.case-h h2 small{font-size:15px;font-weight:400;color:var(--mute);letter-spacing:0}
.case-h p{font-size:19px;color:var(--mute)}
.case .meta dd{font-size:clamp(17px,1vw + 8px,20px)}

/* footer */
.ft{padding:clamp(56px,7vw,96px) var(--gut) 40px;border-top:1px solid var(--dline)}
.ft-top{display:flex;justify-content:space-between;align-items:flex-end;gap:32px;flex-wrap:wrap}
.ft-h{font-size:clamp(40px,16px + 6.1vw,104px);line-height:.95;letter-spacing:-.02em;font-weight:800}
.ft-h span{display:block}
.ft-cols{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px;padding-top:48px;margin-top:clamp(40px,5vw,72px);border-top:1px solid var(--dline)}
.ft-cols h4{margin:0 0 20px;font-size:13px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--dmute)}
.ft-cols ul{display:flex;flex-direction:column;gap:12px;font-size:18px;line-height:1.3}
.ft-brand .logo{padding:0}.ft-brand .logo svg{height:44px}.ft-brand .wmk{font-size:48px}
.ft-brand p{margin-top:16px;max-width:280px;font-size:16px;color:var(--dmute)}
.ft-bot{display:flex;justify-content:space-between;gap:16px;margin-top:clamp(40px,5vw,72px);font-size:14px;color:var(--dmute)}

/* mobile whatsapp bar */
.wa-bar{display:none}

@media (max-width:1180px){
  .pk-grid{grid-template-columns:1fr}
  .row{grid-template-columns:1fr;gap:32px}
}
@media (max-width:960px){
  .hero-grid{grid-template-columns:1fr;gap:32px}
  .hero-l{gap:28px}
  .cal-grid,.ag-grid{grid-template-columns:1fr;gap:32px}
  .cal-grid .lead,.ag-grid .lead{margin-top:16px}
  .ft-cols{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 16px}
  .ft-brand{display:none}
  .ft-cols>div:last-child{grid-column:1/span 2}
}
@media (max-width:900px){
  .hdr-wa .long{display:none}.hdr-wa .short{display:inline}
  .nav{display:none}
  .menu-btn{display:inline-flex}
  
  .hdr-in{height:64px}
  [id]{scroll-margin-top:72px}
  .logo svg{height:28px}.wmk{font-size:30px}
}
@media (max-width:700px){
  .seg{grid-template-columns:minmax(0,1fr) 44px;grid-template-areas:"n c" "t c" "r c";row-gap:6px;min-height:152px}
  .seg-n{grid-area:n;font-size:14px}.seg-t{grid-area:t}.seg-r{grid-area:r;text-align:left;font-size:15px}.seg-c{grid-area:c;width:44px;height:44px}.seg-l{display:none}
  .frames{gap:12px}
  .frame{aspect-ratio:165/220}
  .frame.wide{aspect-ratio:165/220}
  .chip{left:12px;top:12px}
  .meta{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ctas .btn{width:100%}
  .tgs .tg{font-size:15px;padding:0 6px}
  .tgs .long,.tg .long{display:none}.tgs .short,.tg .short{display:inline}
  .day{height:72px;border-radius:14px}.day b{font-size:24px}.day span{font-size:12px;letter-spacing:.04em}
  .days{gap:6px}
  .slots{grid-template-columns:repeat(2,minmax(0,1fr))}
  .acts{flex-direction:column;align-items:stretch;gap:8px}
  .acts .btn{width:100%}
  .acts .long{display:none}.acts .short{display:inline}
  .acts .tlink{align-self:center;border:0;height:44px;padding:0}
  .ft-top .btn{width:100%}
  .ft-bot{flex-direction:column;gap:8px}
  .wa-bar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:60;padding:10px var(--gut) calc(10px + env(safe-area-inset-bottom,0px));background:var(--bone);border-top:1px solid var(--line)}
  .wa-bar .btn{width:100%}
  .ft{padding-bottom:104px}
  .case-h h2{flex-direction:column;gap:8px;align-items:flex-start}
  .plan-h{padding:0 16px;font-size:12px;height:44px}
  .plan-k{padding:12px 16px}
  .rt-long{display:none}.rt-short{display:inline}
}
@media (max-width:420px){.tgs .tg{font-size:14px;padding:0 4px}}

/* ---------- plano 3D (Diagnóstico) ---------- */
@property --rot{syntax:'<angle>';inherits:true;initial-value:-38deg}
@property --tilt{syntax:'<angle>';inherits:true;initial-value:58deg}
.dx-grid{display:grid;grid-template-columns:minmax(0,470px) minmax(0,1fr);gap:clamp(32px,4.5vw,72px);align-items:start}
.dx-l .h2{margin-top:24px;font-size:clamp(42px,24px + 4.4vw,80px);line-height:.98;letter-spacing:-.02em}
.dx-l .lead{margin-top:24px}
.steps{margin-top:32px;border-top:1px solid var(--line)}
.steps li{display:grid;grid-template-columns:44px minmax(0,1fr);gap:12px;padding:16px 0;border-bottom:1px solid var(--line);font-size:17px;line-height:1.4}
.steps b{font-weight:500;color:var(--accent);font-variant-numeric:tabular-nums}
.dx-acts{display:flex;flex-wrap:wrap;align-items:center;gap:16px 28px;margin-top:32px}
.iso-card{border:1px solid var(--line);background:var(--paper);min-width:0}
.iso-h{display:flex;justify-content:space-between;align-items:center;gap:12px;height:48px;padding:0 20px;border-bottom:1px solid var(--line);font-size:13px;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}
.iso-h b{font-weight:500}.iso-h span{color:var(--mute)}
.iso-stage{position:relative;container-type:inline-size;aspect-ratio:100/72;overflow:hidden;cursor:grab;touch-action:pan-y;user-select:none;-webkit-user-select:none;
  background:radial-gradient(90% 80% at 50% 45%,#F1F1F1 0,#E2E2E2 80%);
  transition:--rot .8s cubic-bezier(.2,.7,.2,1),--tilt .8s cubic-bezier(.2,.7,.2,1)}
.iso-stage.drag{cursor:grabbing;transition:none}
.iso-scene{position:absolute;inset:0;perspective:1700px;--m:7cqw}
.iso-plane{position:absolute;left:50%;top:50%;width:calc(var(--m)*10);height:calc(var(--m)*5);margin:calc(var(--m)*-2.5) 0 0 calc(var(--m)*-5);transform-style:preserve-3d;transform:translateY(calc(var(--m)*.6)) rotateX(var(--tilt)) rotateZ(var(--rot))}
.rm{position:absolute;left:calc(var(--m)*var(--x));top:calc(var(--m)*var(--y));width:calc(var(--m)*var(--w));height:calc(var(--m)*var(--h));background:#FFFFFF;box-shadow:inset 0 0 0 1px rgba(17,17,17,.12);transition:background .3s,box-shadow .3s}
.rm.on{background:rgba(241,69,44,.16);box-shadow:inset 0 0 0 2px var(--accent)}
.bx{position:absolute;left:calc(var(--m)*var(--x));top:calc(var(--m)*var(--y));width:calc(var(--m)*var(--w));height:calc(var(--m)*var(--d));--hh:calc(var(--m)*var(--h));transform-style:preserve-3d;pointer-events:none}
.bx>i{position:absolute;display:block;background:var(--c)}
.bx .t{inset:0;transform:translateZ(var(--hh));background:color-mix(in srgb,var(--c),#fff 7%)}
.bx .f{left:0;top:100%;width:100%;height:var(--hh);transform-origin:0 0;transform:rotateX(90deg);background:color-mix(in srgb,var(--c),#000 26%)}
.bx .b{left:0;top:0;width:100%;height:var(--hh);transform-origin:0 0;transform:rotateX(90deg);background:color-mix(in srgb,var(--c),#000 44%)}
.bx .l{left:0;top:0;width:var(--hh);height:100%;transform-origin:0 0;transform:rotateY(-90deg);background:color-mix(in srgb,var(--c),#000 36%)}
.bx .r{left:100%;top:0;width:var(--hh);height:100%;transform-origin:0 0;transform:rotateY(-90deg);background:color-mix(in srgb,var(--c),#000 16%)}
.bx.wl{--c:#D2D2D2}
.hs{position:absolute;left:calc(var(--m)*var(--x));top:calc(var(--m)*var(--y));transform-origin:0 0;transform:translateZ(calc(var(--m)*2.1)) rotateZ(calc(var(--rot)*-1)) rotateX(calc(var(--tilt)*-1)) translate(-50%,-50%)}
.hs button{display:flex;align-items:center;gap:8px;height:32px;padding:0 14px 0 4px;border-radius:999px;border:1px solid var(--line);background:rgba(255,255,255,.95);color:var(--ink);font:600 12px/1 var(--sans);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;transition:background .2s,color .2s,border-color .2s}
.hs i{width:24px;height:24px;border-radius:50%;background:var(--accent);color:var(--on-acc);display:grid;place-items:center;font-style:normal;font-size:12px;font-variant-numeric:tabular-nums}
.hs button:hover{border-color:var(--accent)}
.hs.on button{background:var(--accent);color:var(--on-acc);border-color:var(--accent)}
.hs.on i{background:var(--on-acc);color:var(--accent)}
.hs span{display:none}
.hs button{padding:3px;height:32px;min-width:32px}
.hs.on button,.hs button:hover,.hs button:focus-visible{padding:0 14px 0 4px}
.hs.on span,.hs button:hover span,.hs button:focus-visible span{display:inline}
@container (max-width:520px){.hs.on span{display:none}.hs.on button{padding:3px}}
.iso-ctrl{display:flex;align-items:center;flex-wrap:wrap;gap:12px 28px;padding:14px 20px;border-top:1px solid var(--line)}
.iso-ctrl .seg2{display:flex;gap:8px}
.iso-ctrl .tg{flex:none;height:44px;padding:0 20px;font-size:15px}
.rot{display:flex;align-items:center;gap:14px;flex:1;min-width:180px;font-size:13px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--mute)}
.rot input{flex:1;margin:0}
.rm-tabs{display:flex;gap:8px;padding:0 20px 16px;overflow-x:auto;scrollbar-width:none}
.rm-tabs::-webkit-scrollbar{display:none}
.rm-tabs .tg{flex:none;height:40px;padding:0 16px;font-size:14px;white-space:nowrap}
.iso-info{display:grid;grid-template-columns:auto minmax(0,1fr);gap:4px 24px;align-items:start;padding:20px;border-top:1px solid var(--line)}
.iso-m2{font-size:clamp(44px,3vw + 30px,64px);font-weight:700;letter-spacing:-.02em;line-height:1;color:var(--accent);font-variant-numeric:tabular-nums;white-space:nowrap}
.iso-m2 small{font-size:.42em;font-weight:500;letter-spacing:-.01em;margin-left:6px;color:var(--mute)}
.iso-info h3{font-size:22px;font-weight:700;letter-spacing:-.02em;line-height:1.2}
.iso-info p{margin-top:6px;font-size:16px;line-height:1.5;color:var(--mute)}
.iso-info .tlink{margin-top:14px;font-size:15px}

/* ---------- catálogo ---------- */
.cat-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:clamp(32px,4vw,56px)}
.prod{border:1px solid var(--dline);background:var(--bone);display:flex;flex-direction:column;min-width:0}
.prod-vis{position:relative;aspect-ratio:640/440;overflow:hidden;border-bottom:1px solid var(--dline);background:radial-gradient(100% 85% at 50% 42%,#F4F4F4 0,#E2E2E2 78%)}
.prod-vis svg{position:absolute;inset:0;width:100%;height:100%;display:block}
.prod-vis .chip{left:16px;top:16px}
.prod-live{position:absolute;left:16px;bottom:16px;right:16px;display:flex;align-items:center;gap:10px;width:max-content;max-width:calc(100% - 32px);height:36px;padding:0 16px 0 8px;border-radius:999px;background:rgba(255,255,255,.94);color:var(--ink);border:1px solid var(--dline);font-size:13px;font-weight:500;letter-spacing:.02em;white-space:nowrap;overflow:hidden}
.prod-live i{width:20px;height:20px;border-radius:50%;flex:none;box-shadow:inset 0 0 0 1px rgba(17,17,17,.22)}
.prod-live span{overflow:hidden;text-overflow:ellipsis}
.prod-body{padding:clamp(20px,2.4vw,32px);display:flex;flex-direction:column;gap:26px;flex:1}
.prod-hd{display:flex;flex-direction:column;gap:10px}
.prod-hd .n{font-size:15px;color:var(--dmute)}
.prod h3{font-size:clamp(28px,1.5vw + 18px,42px);font-weight:700;letter-spacing:-.02em;line-height:1.05;text-wrap:balance}
.prod-hd p{font-size:16px;line-height:1.5;color:var(--dmute);max-width:520px}
.st .fab-now{margin-left:auto;font-weight:600;letter-spacing:.01em;text-transform:none;font-size:14px;color:var(--ink)}
.opts{display:grid;gap:8px;margin-top:14px}
.opts.c3{grid-template-columns:repeat(3,minmax(0,1fr))}
.opts.c2{grid-template-columns:repeat(2,minmax(0,1fr))}
.opt{min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-height:60px;padding:10px 8px;border-radius:16px;border:1.5px solid var(--ctrl);background:transparent;color:var(--ink);text-align:center;transition:background .15s,color .15s,border-color .15s}
.opt b{font-size:16px;font-weight:600;letter-spacing:-.01em;line-height:1.15}
.opt small{font-size:13px;color:var(--mute);line-height:1.2;font-variant-numeric:tabular-nums}
.opt:not([aria-pressed="true"]):hover{border-color:var(--ink)}
.opt[aria-pressed="true"]{background:var(--accent);color:var(--on-acc);border-color:var(--accent)}
.opt[aria-pressed="true"] small{color:rgba(17,17,17,.72)}
.opt.leg{flex-direction:row;gap:10px;min-height:56px}
.opt .ldot{width:18px;height:18px;border-radius:50%;flex:none;box-shadow:inset 0 0 0 1px rgba(17,17,17,.28)}
.sw-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px}
.swb{min-width:0;display:flex;flex-direction:column;align-items:center;gap:10px;padding:6px 2px 4px;border:0;background:transparent;color:var(--mute);font-size:13px;line-height:1.25;text-align:center;font-weight:500}
.swb .dot{width:60px;height:60px;border-radius:50%;background-color:var(--c);background-image:var(--tx);box-shadow:inset 0 0 0 1px rgba(17,17,17,.16),0 2px 8px rgba(17,17,17,.16);transition:transform .2s}
.swb:hover .dot{transform:scale(1.06)}
.swb[aria-pressed="true"]{color:var(--ink)}
.swb[aria-pressed="true"] .dot{outline:2px solid var(--accent);outline-offset:4px}
.prod-sum{margin-top:auto;padding-top:20px;border-top:1px solid var(--dline)}
.prod-sum .k{display:block}
.prod-sum p{margin-top:8px;font-size:clamp(18px,.8vw + 12px,22px);font-weight:700;letter-spacing:-.02em;line-height:1.3}
.prod-cta{display:flex;flex-direction:column;gap:12px}
.prod-cta .fine{margin:0}

@media (max-width:1180px){.cat-grid{grid-template-columns:minmax(0,1fr)}}
@media (max-width:960px){
  .dx-grid{grid-template-columns:minmax(0,1fr);gap:32px}
  .dx-l .lead{margin-top:16px}
}
@media (max-width:700px){
  .iso-h{padding:0 16px;font-size:12px;height:44px}
  .iso-ctrl{padding:12px 16px;gap:12px 16px}
  .rm-tabs{padding:0 16px 14px}
  .iso-info{padding:16px;grid-template-columns:minmax(0,1fr);gap:8px}
  .iso-scene{--m:7.1cqw}
  .dx-acts .btn{width:100%}
  .prod-body{padding:20px 16px 24px}
  .swb .dot{width:52px;height:52px}
  .opt{padding:10px 4px}.opt b{font-size:15px}.opt small{font-size:12px;white-space:nowrap}
  .opt.leg{gap:8px;padding:10px 6px}.opt.leg b{font-size:14px}
  .dx-acts .long,.prod-cta .long{display:none}.dx-acts .short,.prod-cta .short{display:inline}
}

/* ---------- manual de marca: rango siempre visible ---------- */
.prod-rng{display:flex;flex-direction:column;gap:6px;padding:16px 0;border-block:1px solid var(--dline)}
.prod-rng .price{font-size:clamp(22px,1vw + 14px,28px)}
.prod-rng .price-s{font-size:14px}