:root{
  --ink:#0F1210;--ink2:#1A1F1B;--paper:#F3F1EA;--paper2:#E8E5DA;--card:#FBFAF6;
  --line:rgba(15,18,16,.12);--line-d:rgba(243,241,234,.16);
  --green:#178A35;--green-d:#0D5C1A;--yellow:#F2C916;--mist:#A9AEA6;--mut:#5E655E;
  --f:"Geist",ui-sans-serif,system-ui,-apple-system,sans-serif;--fm:"Geist Mono",ui-monospace,monospace;
  --ease:cubic-bezier(.2,.8,.2,1);--r:22px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{background:var(--ink);-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{background:var(--ink);color:var(--paper);font-family:var(--f);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased;overflow-x:clip}
img,video{display:block;max-width:100%}
a{color:inherit}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
input,select{font:inherit;color:inherit}
em{font-style:normal;color:var(--yellow)}
.light em{color:var(--green)}
.mono{font-family:var(--fm);font-size:11px;letter-spacing:.14em;text-transform:uppercase}
[hidden]{display:none!important}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.wrap{max-width:1320px;margin:0 auto;padding:0 clamp(18px,4vw,44px)}
.kicker{display:flex;align-items:center;gap:10px;color:var(--mist);margin-bottom:18px}
.light .kicker{color:var(--mut)}
.dot{width:7px;height:7px;border-radius:9px;background:var(--yellow);box-shadow:0 0 10px var(--yellow);flex:none}
.light .dot{background:var(--green);box-shadow:none}
.sec-h{font-weight:650;font-size:clamp(38px,5.4vw,84px);line-height:1;letter-spacing:-.045em;text-wrap:balance}
.logo{display:block;width:118px;height:32px;background:currentColor;-webkit-mask:url(/assets/brand/rentall-logo.png) center/contain no-repeat;mask:url(/assets/brand/rentall-logo.png) center/contain no-repeat}
:focus-visible{outline:2px solid var(--yellow);outline-offset:3px;border-radius:8px}

/* botones */
.btn{white-space:nowrap;display:inline-flex;align-items:center;justify-content:center;gap:10px;height:50px;padding:0 24px;border-radius:99px;font-weight:600;font-size:15px;text-decoration:none;letter-spacing:-.01em;transition:transform .35s var(--ease),background .25s,color .25s,border-color .25s}
.btn:hover{transform:translateY(-2px)}
.btn.pri{background:var(--green);color:#fff}
.btn.pri:hover{background:var(--green-d)}
.btn.yel{background:var(--yellow);color:var(--ink)}
.btn.ghost{border:1px solid var(--line);background:transparent}
.btn.ghost:hover{border-color:var(--ink)}
.btn.glass{border:1px solid var(--line-d);background:rgba(15,18,16,.35);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.btn.lg{height:58px;padding:0 30px;font-size:16px}
.btn.wide{flex:1}

/* intro */
.intro{position:fixed;inset:0;z-index:100;background:var(--ink);display:grid;place-items:center;align-content:center;gap:16px;transition:opacity .8s ease,visibility .8s}
.intro .logo{width:190px;height:52px;color:var(--paper);opacity:0;animation:in 1s .1s var(--ease) forwards}
.intro-clock{color:var(--yellow);font-size:13px;opacity:0;animation:in 1s .3s var(--ease) forwards}
.intro.out{opacity:0;visibility:hidden}
@keyframes in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}

/* nav */
.nav{position:fixed;z-index:50;top:0;left:0;right:0;display:flex;align-items:center;gap:22px;padding:14px clamp(18px,3vw,36px);transition:background .4s,backdrop-filter .4s,color .4s}
.nav.solid{background:rgba(15,18,16,.72);backdrop-filter:blur(14px) saturate(1.2);-webkit-backdrop-filter:blur(14px) saturate(1.2)}
.nav.on-light{background:rgba(243,241,234,.82);color:var(--ink)}
.nav-logo .logo{width:112px;height:31px}
.nav-links{display:flex;gap:24px;margin-left:12px;font-size:14px}
.nav-links a{text-decoration:none;opacity:.78;transition:opacity .2s}
.nav-links a:hover{opacity:1}
.hud{margin-left:auto;display:flex;align-items:center;gap:9px;height:36px;padding:0 14px;border-radius:99px;border:1px solid var(--line-d);background:rgba(15,18,16,.3);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.hud b{color:var(--yellow);font-weight:500}
.nav.on-light .hud{border-color:var(--line);background:rgba(255,255,255,.5)}
.nav.on-light .hud b{color:var(--green)}
.nav.on-light .hud .dot{background:var(--green);box-shadow:none}
.nav-cta{position:relative;height:40px;padding:0 20px;border-radius:99px;background:var(--yellow);color:var(--ink);font-weight:600;font-size:14px;display:flex;align-items:center;gap:8px}
.badge{min-width:20px;height:20px;border-radius:99px;background:var(--ink);color:var(--yellow);font-size:11px;display:grid;place-items:center;padding:0 6px}

/* medios */
.media{position:absolute;inset:0;overflow:hidden;background:var(--ink2)}
.media picture,.media img,.media video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.media video{opacity:0;transition:opacity 1s ease}
.media video.on{opacity:1}

/* hero */
.hero{position:relative;height:150svh}
.hero-stage{position:sticky;top:0;height:100svh;overflow:hidden}
.hero .media{will-change:transform}
.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(15,18,16,.82) 0%,rgba(15,18,16,.45) 42%,rgba(15,18,16,0) 70%),linear-gradient(0deg,rgba(15,18,16,.85) 0%,rgba(15,18,16,0) 32%),linear-gradient(180deg,rgba(15,18,16,.5),rgba(15,18,16,0) 22%)}
.hero-copy{position:absolute;left:clamp(18px,4vw,56px);bottom:clamp(96px,15svh,150px);max-width:940px;opacity:0;transform:translateY(24px);transition:opacity 1s var(--ease),transform 1.2s var(--ease)}
.hero-copy.on{opacity:1;transform:none}
.hero-h{font-weight:700;font-size:clamp(56px,8vw,128px);line-height:.93;letter-spacing:-.055em;margin-bottom:22px}
.ln{display:block;overflow:hidden;padding:.04em 0 .1em;margin:-.04em 0 -.1em}
.ln>span{display:inline-block;transform:translateY(105%);transition:transform 1.1s var(--ease)}
.hero-copy.on .ln>span{transform:none}
.hero-copy.on .ln+.ln>span{transition-delay:.08s}
.hero-lead{font-size:clamp(17px,1.4vw,20px);color:#DAD8D0;max-width:560px;margin-bottom:26px}
.finder{display:flex;align-items:center;gap:10px;max-width:620px;height:62px;padding:0 8px 0 20px;border-radius:99px;background:rgba(243,241,234,.96);color:var(--ink);box-shadow:0 30px 80px -30px rgba(0,0,0,.6)}
.finder svg{width:20px;height:20px;fill:none;stroke:var(--mut);stroke-width:2;flex:none}
.finder input{flex:1;min-width:0;border:0;background:transparent;font-size:16px;outline:none}
.finder button{height:46px;padding:0 20px;border-radius:99px;background:var(--green);color:#fff;font-weight:600;font-size:14px;white-space:nowrap}
.finder-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.finder-chips button{height:34px;padding:0 14px;border-radius:99px;border:1px solid var(--line-d);background:rgba(15,18,16,.35);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);font-size:13px;color:#E8E6DE;transition:background .2s,color .2s}
.finder-chips button:hover{background:var(--paper);color:var(--ink)}
.hero-facts{position:absolute;left:0;right:0;bottom:0;display:flex;gap:0;list-style:none;border-top:1px solid var(--line-d);color:#CFCDC4;opacity:0;transition:opacity 1s .4s}
.hero-copy.on~.hero-facts{opacity:1}
.hero-facts li{flex:1;padding:18px clamp(18px,4vw,56px);border-right:1px solid var(--line-d)}
.hero-facts li:last-child{border:0}
.hero-facts b{color:var(--yellow);font-weight:500}

/* día de obra */
.day{position:relative;background:var(--ink)}
.day-head{padding:clamp(110px,16vh,180px) clamp(18px,4vw,56px) clamp(40px,8vh,90px);max-width:1320px}
.cap{position:relative;height:260svh}
.cap-stage{position:sticky;top:0;height:100svh;overflow:hidden}
.cap-frame{position:absolute;inset:0;clip-path:inset(16% 22% 16% 22% round 26px);will-change:clip-path}
.cap-frame .media{transform:scale(1.25);will-change:transform}
.corner{position:absolute;width:34px;height:34px;border:2px solid var(--yellow);z-index:2;transition:opacity .4s}
.corner.tl{left:calc(22% + 14px);top:calc(16% + 14px);border-right:0;border-bottom:0}
.corner.tr{right:calc(22% + 14px);top:calc(16% + 14px);border-left:0;border-bottom:0}
.corner.bl{left:calc(22% + 14px);bottom:calc(16% + 14px);border-right:0;border-top:0}
.corner.br{right:calc(22% + 14px);bottom:calc(16% + 14px);border-left:0;border-top:0}
.cap-shade{position:absolute;inset:0;opacity:0;background:linear-gradient(90deg,rgba(15,18,16,.85) 0%,rgba(15,18,16,.35) 46%,rgba(15,18,16,0) 70%),linear-gradient(0deg,rgba(15,18,16,.7),rgba(15,18,16,0) 40%);pointer-events:none}
.cap-copy{position:absolute;left:clamp(18px,4vw,56px);bottom:clamp(60px,11svh,110px);max-width:800px;z-index:3}
.cap-time{display:flex;align-items:baseline;gap:16px;margin-bottom:14px;color:var(--yellow)}
.cap-time span:first-child{font-size:clamp(40px,4.4vw,64px);letter-spacing:-.02em;font-weight:500}
.cap-n{color:var(--mist)}
.cap-h{font-weight:650;font-size:clamp(40px,5vw,78px);line-height:.98;letter-spacing:-.045em;margin-bottom:16px}
.cap-lead{color:#D9D7CF;font-size:17px;max-width:500px}
.cap-copy .kicker{margin-bottom:12px}
.cap-card{position:absolute;right:clamp(18px,3vw,44px);bottom:clamp(40px,8svh,80px);width:min(400px,32vw);z-index:3;padding:16px;border-radius:24px;background:rgba(15,18,16,.55);border:1px solid var(--line-d);backdrop-filter:blur(18px) saturate(1.2);-webkit-backdrop-filter:blur(18px) saturate(1.2);opacity:0;transform:translateY(30px)}
.cap-card-h{display:flex;justify-content:space-between;color:var(--mist);padding:2px 4px 12px}
.cap-card-h a{color:var(--yellow);text-decoration:none}
.feat{display:grid;gap:8px}
.fi{display:grid;grid-template-columns:56px 1fr auto;gap:12px;align-items:center;padding:8px;border-radius:16px;background:rgba(243,241,234,.06);transition:background .2s}
.fi:hover{background:rgba(243,241,234,.12)}
.fi img{width:56px;height:56px;border-radius:12px;object-fit:cover;background:#EFEEEA}
.fi b{display:block;font-weight:600;font-size:14px;line-height:1.2;letter-spacing:-.01em}
.fi small{color:var(--mist);font-size:12.5px}
.add{height:34px;padding:0 14px;border-radius:99px;background:var(--paper);color:var(--ink);font-size:13px;font-weight:600;white-space:nowrap;transition:background .2s,color .2s}
.add:hover{background:var(--yellow)}
.add.in{background:transparent;color:var(--mist);border:1px solid var(--line-d)}
.light .add{background:var(--ink);color:var(--paper)}
.light .add:hover{background:var(--green)}
.light .add.in{background:transparent;color:var(--mut);border:1px solid var(--line)}

/* catálogo */
.light{background:var(--paper);color:var(--ink)}
.cat{position:relative;z-index:2;padding:clamp(100px,14vh,160px) 0 clamp(60px,10vh,110px);border-radius:32px 32px 0 0;margin-top:-32px}
.cat-head{display:grid;grid-template-columns:1.3fr 1fr;gap:40px;align-items:end;margin-bottom:40px}
.cat-intro{color:var(--mut);font-size:17px;max-width:460px}
.cat-tools{position:sticky;top:64px;z-index:5;display:flex;flex-wrap:wrap;gap:12px;align-items:center;padding:14px 0;background:linear-gradient(var(--paper) 80%,rgba(243,241,234,0))}
.search{display:flex;align-items:center;gap:10px;height:46px;padding:0 16px;border-radius:99px;background:var(--card);border:1px solid var(--line);width:min(340px,100%)}
.search svg{width:18px;height:18px;fill:none;stroke:var(--mut);stroke-width:2;flex:none}
.search input{border:0;background:transparent;outline:none;flex:1;min-width:0;font-size:15px}
.chips{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none}
.chips::-webkit-scrollbar{display:none}
.chip{height:40px;padding:0 15px;border-radius:99px;font-size:14px;white-space:nowrap;color:var(--mut);transition:background .2s,color .2s}
.chip:hover{color:var(--ink)}
.chip.on{background:var(--ink);color:var(--paper)}
.chip i{font-style:normal;opacity:.55;margin-left:5px;font-size:12px}
.cat-empty{padding:40px 0;color:var(--mut)}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px;margin-top:10px}
.card{display:flex;flex-direction:column;border-radius:var(--r);background:var(--card);border:1px solid var(--line);overflow:hidden;transition:transform .35s var(--ease),box-shadow .35s}
.card:hover{transform:translateY(-3px);box-shadow:0 24px 50px -30px rgba(15,18,16,.35)}
.card-img{position:relative;aspect-ratio:4/3;background:#EFEEEA;overflow:hidden}
.card-img img{width:100%;height:100%;object-fit:contain;transform:scale(1.04);transition:transform .6s var(--ease)}
.card:hover .card-img img{transform:scale(1.1)}
.card-cat{position:absolute;left:12px;top:12px;font-family:var(--fm);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--mut);background:rgba(251,250,246,.85);padding:5px 9px;border-radius:99px}
.card-b{display:flex;flex-direction:column;gap:10px;padding:16px 18px 18px;flex:1}
.card-n{font-weight:600;font-size:17px;line-height:1.2;letter-spacing:-.02em}
.price{display:flex;align-items:baseline;gap:6px}
.price b{font-size:26px;font-weight:650;letter-spacing:-.03em}
.price span{color:var(--mut);font-size:14px}
.tiers{display:flex;gap:6px;flex-wrap:wrap;font-size:12.5px;color:var(--mut)}
.tiers span{padding:3px 9px;border-radius:99px;background:var(--paper2)}
.card-note{font-size:12.5px;color:var(--mut)}
.card-f{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto;padding-top:6px}
.card-f .lnk{font-size:13px;color:var(--mut);text-decoration:underline;text-underline-offset:3px}
.acc{margin-top:60px}
.acc-h{font-size:22px;font-weight:650;letter-spacing:-.02em;margin-bottom:14px}
.acc-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:8px}
.ar{display:grid;grid-template-columns:44px 1fr auto;gap:12px;align-items:center;padding:8px 10px;border-radius:16px;background:var(--card);border:1px solid var(--line)}
.ar img{width:44px;height:44px;border-radius:10px;object-fit:contain;background:#fff}
.ar b{display:block;font-size:14px;font-weight:600;line-height:1.2}
.ar small{color:var(--mut);font-size:12.5px}
.sale{display:flex;justify-content:space-between;align-items:center;gap:30px;margin-top:60px;padding:30px 34px;border-radius:28px;background:var(--paper2)}
.sale h3{font-size:28px;letter-spacing:-.03em;margin-bottom:6px}
.sale p{color:var(--mut);max-width:560px}
.sale .kicker{margin-bottom:10px}

/* pasos */
.steps{padding:clamp(60px,10vh,120px) 0;border-top:1px solid var(--line)}
.steps-head{margin-bottom:50px}
.step-list{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:50px}
.step-list li{padding:28px;border-radius:var(--r);background:var(--card);border:1px solid var(--line)}
.step-n{color:var(--green);display:block;margin-bottom:40px}
.step-list h3{font-size:24px;letter-spacing:-.03em;margin-bottom:8px}
.step-list p{color:var(--mut)}
.req{padding:34px;border-radius:28px;background:var(--ink);color:var(--paper)}
.req-head{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;margin-bottom:24px}
.req-head h3{font-size:30px;letter-spacing:-.03em}
.seg{display:flex;padding:4px;border-radius:99px;background:rgba(243,241,234,.08)}
.seg button{height:38px;padding:0 16px;border-radius:99px;font-size:14px;color:var(--mist)}
.seg button[aria-selected=true]{background:var(--paper);color:var(--ink)}
.req-list{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:10px 30px;margin-bottom:28px}
.req-list li{position:relative;padding:14px 0 14px 28px;border-top:1px solid var(--line-d);color:#E3E1D9}
.req-list li::before{content:"";position:absolute;left:2px;top:22px;width:8px;height:8px;border-radius:9px;background:var(--yellow)}
.req-list li.note{grid-column:1/-1;color:var(--mist);font-size:14.5px}
.req-list li.note::before{background:transparent;border:1px solid var(--mist)}

/* zonas */
.zones{padding:clamp(40px,8vh,100px) 0 clamp(80px,12vh,140px)}
.zones-head{margin-bottom:40px}
.zones-sub{color:var(--mut);margin-top:18px;max-width:520px;font-size:17px}
.zone-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.zone{position:relative;padding:24px;border-radius:var(--r);background:var(--card);border:1px solid var(--line);overflow:hidden}
.zone-ring{width:84px;height:84px;margin-bottom:22px}
.zone h3{font-size:22px;letter-spacing:-.03em}
.zone .km{color:var(--mut);font-size:14px;margin-bottom:14px}
.zone .fl{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 6px;margin-bottom:14px}
.zone .fl b{font-size:28px;letter-spacing:-.03em}
.zone .fl span{color:var(--mut);font-size:13px}
.zone p{font-size:13.5px;color:var(--mut);line-height:1.45}

/* taller */
.shop{display:grid;grid-template-columns:1.1fr 1fr;min-height:100svh;background:var(--ink)}
.shop-media{position:relative;min-height:60svh}
.shop-copy{padding:clamp(60px,10vh,120px) clamp(24px,5vw,80px);display:flex;flex-direction:column;justify-content:center}
.shop-lead{color:#D6D4CB;font-size:17px;margin:22px 0 28px;max-width:520px}
.shop-steps{list-style:none;counter-reset:s;display:grid;gap:2px;margin-bottom:22px}
.shop-steps li{counter-increment:s;display:block;padding:13px 0 13px 34px;position:relative;border-top:1px solid var(--line-d);color:#CFCDC5}
.shop-steps li::before{content:"0" counter(s);position:absolute;left:0;top:16px;font-family:var(--fm);font-size:12px;color:var(--yellow)}
.shop-steps b{color:var(--paper);font-weight:600}
.shop-war{color:var(--mist);margin-bottom:26px;line-height:1.7}
.shop .btn{align-self:flex-start}

/* final */
.end{position:relative;min-height:100svh;padding:clamp(120px,18vh,200px) 0 40px;overflow:hidden}
.end-media img{animation:kb 30s ease-in-out infinite alternate}
@keyframes kb{from{transform:scale(1)}to{transform:scale(1.12) translateY(-2%)}}
.end-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(15,18,16,.7) 0%,rgba(15,18,16,.35) 35%,rgba(15,18,16,.92) 72%,var(--ink) 100%)}
.end-in{position:relative}
.end-h{font-weight:700;font-size:clamp(46px,7vw,112px);line-height:.95;letter-spacing:-.055em;max-width:1000px;margin-bottom:34px}
.end-cta{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:clamp(70px,14vh,140px)}
.contact{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;padding-top:30px;border-top:1px solid var(--line-d)}
.contact h4{color:var(--mist);margin-bottom:12px;font-weight:400}
.contact p{color:#E3E1D9;line-height:1.7}
.contact a{text-decoration:none}
.contact a:hover{color:var(--yellow)}
.contact div>a{display:inline-block;margin-top:8px;color:var(--yellow);font-size:14px}
.end-foot{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;margin-top:50px;padding-top:24px;border-top:1px solid var(--line-d)}
.assoc{display:flex;align-items:center;gap:22px;color:var(--mist)}
.assoc img{height:44px;width:auto;padding:7px 12px;border-radius:12px;background:#fff}
.end-links{display:flex;gap:22px;color:var(--mist)}
.end-links a{text-decoration:none}
.end-links a:hover{color:var(--paper)}
.foot{display:flex;align-items:center;gap:20px;justify-content:space-between;flex-wrap:wrap;padding:22px clamp(18px,4vw,44px) calc(22px + env(safe-area-inset-bottom));color:var(--mist);border-top:1px solid var(--line-d)}
.foot .logo{width:90px;height:25px;color:var(--mist)}

/* píldora de cotización */
.qpill{position:fixed;z-index:40;left:50%;bottom:calc(18px + env(safe-area-inset-bottom));transform:translate(-50%,calc(100% + 40px));display:flex;align-items:center;gap:14px;height:56px;padding:0 8px 0 22px;border-radius:99px;background:var(--ink);color:var(--paper);border:1px solid var(--line-d);box-shadow:0 20px 50px -20px rgba(0,0,0,.6);transition:transform .5s var(--ease);font-size:14px;white-space:nowrap}
.qpill.on{transform:translate(-50%,0)}
.qpill b{color:var(--yellow);font-weight:600}
.qpill-go{height:42px;padding:0 18px;border-radius:99px;background:var(--yellow);color:var(--ink);font-weight:600;display:flex;align-items:center}

/* cajón */
.drawer{position:fixed;inset:0;z-index:80;visibility:hidden}
.drawer.on{visibility:visible}
.drawer-bg{position:absolute;inset:0;background:rgba(15,18,16,.5);opacity:0;transition:opacity .4s}
.drawer.on .drawer-bg{opacity:1}
.drawer-panel{position:absolute;top:10px;right:10px;bottom:10px;width:min(480px,calc(100% - 20px));display:flex;flex-direction:column;border-radius:28px;background:var(--paper);color:var(--ink);transform:translateX(110%);transition:transform .55s var(--ease);overflow:hidden}
.drawer.on .drawer-panel{transform:none}
.dq-head{display:flex;justify-content:space-between;align-items:flex-start;padding:24px 24px 14px}
.dq-head .kicker{margin-bottom:6px;color:var(--mut)}
.dq-head h2{font-size:30px;letter-spacing:-.04em}
.x{width:40px;height:40px;border-radius:99px;background:var(--paper2);font-size:22px;line-height:1}
.dq-body{flex:1;overflow-y:auto;padding:0 24px 18px;overscroll-behavior:contain}
.dq-empty{padding:40px 0;text-align:center;color:var(--mut);display:grid;gap:18px;justify-items:center}
.dq-items{list-style:none;display:grid;gap:10px}
.qi{display:grid;grid-template-columns:52px 1fr;gap:12px;padding:12px;border-radius:18px;background:var(--card);border:1px solid var(--line)}
.qi img{width:52px;height:52px;border-radius:12px;object-fit:contain;background:#EFEEEA}
.qi-n{display:flex;justify-content:space-between;gap:10px;font-weight:600;font-size:14.5px;line-height:1.25}
.qi-n button{color:var(--mut);font-size:12.5px;font-weight:400;text-decoration:underline;text-underline-offset:2px}
.qi-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px}
.qi select{height:34px;border-radius:99px;border:1px solid var(--line);background:#fff;padding:0 10px;font-size:13px}
.step{display:flex;align-items:center;height:34px;border-radius:99px;border:1px solid var(--line);background:#fff}
.step button{width:30px;height:32px;font-size:16px;color:var(--mut)}
.step span{min-width:52px;text-align:center;font-size:13px}
.qi-t{margin-left:auto;font-weight:650;font-size:15px}
.dq-form{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:16px}
.fld{display:grid;gap:5px;font-size:12px;color:var(--mut)}
.fld input,.fld select{height:44px;border-radius:14px;border:1px solid var(--line);background:#fff;padding:0 12px;font-size:14.5px;color:var(--ink);width:100%}
.dq-foot{padding:16px 24px calc(20px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--card)}
.dq-sum{display:grid;grid-template-columns:repeat(3,1fr);gap:4px 12px;font-size:14px;margin-bottom:12px}
.dq-sum div{display:flex;flex-direction:column}
.dq-sum dt{font-size:11.5px}
.dq-sum .tot,.dq-sum .dep{grid-column:1/-1;flex-direction:row;justify-content:space-between;align-items:baseline}
.dq-sum .dep dt{font-size:13px}
.dq-sum dt{color:var(--mut)}
.dq-sum .tot{font-size:20px;font-weight:650;letter-spacing:-.02em;padding-top:6px;border-top:1px solid var(--line);margin-top:4px}
.dq-sum .tot dt{color:var(--ink)}
.dq-sum .dep{font-size:13px}
.dq-actions{display:flex;gap:8px}
.dq-actions .btn{height:50px}
.dq-note{margin-top:10px;font-size:11.5px;color:var(--mut);line-height:1.45}
.dq-off .dq-form,.dq-off .dq-foot{display:none}

/* reveals */
.rv{opacity:0;transform:translateY(26px);transition:opacity .9s var(--ease) var(--d,0s),transform 1s var(--ease) var(--d,0s)}
.rv.on{opacity:1;transform:none}

/* impresión */
.print-sheet{display:none}
@media print{
  body>*:not(.print-sheet){display:none!important}
  html,body{background:#fff;color:#111}
  .print-sheet{display:block;font-family:var(--f);color:#111;padding:10mm}
  .ps-h{display:flex;justify-content:space-between;align-items:flex-start;border-bottom:2px solid #178A35;padding-bottom:12px;margin-bottom:18px}
  .ps-h .logo{color:#111;width:150px;height:41px}
  .print-sheet table{width:100%;border-collapse:collapse;font-size:12px}
  .print-sheet th,.print-sheet td{text-align:left;padding:8px 6px;border-bottom:1px solid #ddd}
  .print-sheet td.r,.print-sheet th.r{text-align:right}
  .ps-tot{margin-left:auto;width:300px;margin-top:14px;font-size:13px}
  .ps-tot div{display:flex;justify-content:space-between;padding:4px 0}
  .ps-tot .t{font-weight:700;font-size:16px;border-top:2px solid #111;margin-top:4px;padding-top:8px}
  .ps-f{margin-top:28px;font-size:11px;color:#555;line-height:1.6}
}

/* escritorio estrecho */
@media (max-width:1100px){.nav-links{display:none}.cap-card{width:min(380px,42vw)}.zone-grid{grid-template-columns:repeat(2,1fr)}}
@media (prefers-reduced-motion:reduce){
  .hero,.cap{height:auto}.hero-stage,.cap-stage{position:relative}
  .cap-frame{clip-path:none}.cap-frame .media{transform:none}.cap-card{opacity:1;transform:none}.cap-shade{opacity:1}.corner{display:none}
  .rv{opacity:1;transform:none}
}

/* ===== móvil: experiencia propia ===== */
@media (max-width:820px){
  .nav{gap:10px;padding:10px 14px;padding-top:calc(10px + env(safe-area-inset-top))}
  .nav-logo .logo{width:92px;height:25px}
  .nav-links{display:none}
  .hud{height:32px;padding:0 11px;gap:7px}
  .hud [data-hud-label]{display:none}
  .nav-cta{height:36px;padding:0 15px}
  .hero{height:100svh}
  .hero-shade{background:linear-gradient(0deg,rgba(15,18,16,.95) 0%,rgba(15,18,16,.6) 38%,rgba(15,18,16,0) 62%),linear-gradient(180deg,rgba(15,18,16,.55),rgba(15,18,16,0) 18%)}
  .hero-copy{left:16px;right:16px;bottom:calc(22px + env(safe-area-inset-bottom))}
  .hero-h{font-size:clamp(50px,14.5vw,68px);margin-bottom:14px}
  .hero-lead{font-size:16px;margin-bottom:18px}
  .finder{height:56px;padding-left:16px}
  .finder button{height:42px;padding:0 16px}
  .finder-chips{flex-wrap:nowrap;overflow-x:auto;margin:12px -16px 0;padding:0 16px;scrollbar-width:none}
  .finder-chips::-webkit-scrollbar{display:none}
  .finder-chips button{flex:none}
  .hero-facts{display:none}
  .day-head{padding:90px 16px 40px}
  .cap{height:auto}
  .cap-stage{position:relative;height:auto;min-height:100svh;display:flex;flex-direction:column;justify-content:flex-end;padding:0 0 96px}
  .cap-frame{clip-path:none!important}
  .cap-frame .media{transform:none!important}
  .corner{display:none}
  .cap-shade{opacity:1!important;background:linear-gradient(0deg,rgba(15,18,16,.97) 0%,rgba(15,18,16,.75) 34%,rgba(15,18,16,0) 60%)}
  .cap-copy{position:relative;left:auto;bottom:auto;padding:0 16px;margin-top:52svh}
  .cap-time span:first-child{font-size:44px}
  .cap-h{font-size:clamp(40px,11vw,54px)}
  .cap-lead{font-size:15.5px}
  .cap-card{position:relative;right:auto;bottom:auto;width:auto;margin-top:20px;padding:0;background:none;border:0;backdrop-filter:none;-webkit-backdrop-filter:none;opacity:1;transform:none}
  .cap-card-h{padding:0 16px 10px}
  .feat{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;padding:0 16px;scrollbar-width:none}
  .feat::-webkit-scrollbar{display:none}
  .fi{flex:none;width:78vw;scroll-snap-align:center;background:rgba(15,18,16,.6);border:1px solid var(--line-d);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
  .cap .cap-copy,.cap .cap-card{transition:opacity .9s var(--ease),transform 1s var(--ease)}
  .cap:not(.on) .cap-copy,.cap:not(.on) .cap-card{opacity:0;transform:translateY(28px)}
  .cap.on .cap-card{transition-delay:.15s}
  .cat{padding:80px 0 60px;border-radius:24px 24px 0 0;margin-top:-24px}
  .cat-head{grid-template-columns:1fr;gap:16px;margin-bottom:22px}
  .cat-intro{font-size:15.5px}
  .cat-tools{top:56px;margin:0 -16px;padding:10px 16px}
  .search{width:100%}
  .chips{margin:0 -16px;padding:0 16px}
  .grid{grid-template-columns:1fr;gap:10px}
  .card{flex-direction:row}
  .card-img{flex:none;width:118px;aspect-ratio:auto}
  .card-cat{display:none}
  .card-b{padding:13px 14px;gap:7px}
  .card-n{font-size:15.5px}
  .price b{font-size:21px}
  .tiers{font-size:11.5px}
  .tiers span{padding:2px 7px}
  .card-f .lnk{display:none}
  .acc-list{grid-template-columns:1fr}
  .sale{flex-direction:column;align-items:flex-start;padding:24px;gap:18px}
  .steps{padding:60px 0}
  .step-list{grid-template-columns:1fr}
  .step-n{margin-bottom:16px}
  .req{padding:24px 20px}
  .req-head h3{font-size:24px}
  .req-list{grid-template-columns:1fr}
  .req .btn{width:100%}
  .zone-grid{grid-template-columns:1fr 1fr;gap:10px}
  .zone{padding:18px}
  .zone-ring{width:60px;height:60px;margin-bottom:14px}
  .zone p{display:none}
  .shop{grid-template-columns:1fr}
  .shop-media{min-height:62svh}
  .shop-copy{padding:44px 16px 64px}
  .shop .btn{width:100%}
  .end{padding:110px 0 30px}
  .end-h{font-size:clamp(44px,12vw,60px)}
  .end-cta .btn{width:100%}
  .contact{grid-template-columns:1fr;gap:24px}
  .assoc img{height:38px}
  .qpill{left:12px;right:12px;transform:translateY(130%);justify-content:space-between}
  .qpill.on{transform:none}
  .qpill-go{padding:0 14px}
  .drawer-panel{top:auto;left:0;right:0;bottom:0;width:100%;height:92svh;border-radius:26px 26px 0 0;transform:translateY(105%)}
  .dq-head{padding:20px 18px 12px}
  .dq-body{padding:0 18px 16px}
  .dq-foot{padding:14px 18px calc(16px + env(safe-area-inset-bottom))}
  .dq-form{grid-template-columns:1fr}
  .dq-actions .btn{font-size:14.5px;padding:0 18px}
}
@media (max-width:820px) and (max-height:700px){.hero-lead{display:none}.hero-h{font-size:48px}.cap-copy{margin-top:40svh}}
