/* Gasfitería Las Condes, v4. Mobile first; sheets slide over still photos (sticky, negative margins, radii, shadows). Colour
   transitions start after the first styled frame (html.is-ready). Motion is the last block of this file. */
@font-face{font-family:'Public Sans';src:url(assets/fonts/PublicSans-Regular.latin.2f4f7ac7d403.woff2) format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:'Public Sans';src:url(assets/fonts/PublicSans-SemiBold.latin.c11d98c8b6f3.woff2) format('woff2');font-weight:600;font-display:swap}
@font-face{font-family:Newsreader;src:url(assets/fonts/Newsreader-Italic.latin.f8af4f95b3a9.woff2) format('woff2');font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:'Public Sans Fallback';src:local('Arial'),local('ArialMT');font-weight:400;size-adjust:103.4%;ascent-override:91.9%;descent-override:22.2%;line-gap-override:0%}
@font-face{font-family:'Public Sans Fallback';src:local('Arial Bold'),local('Arial-BoldMT');font-weight:600;size-adjust:97.9%;ascent-override:97%;descent-override:23.5%;line-gap-override:0%}
@font-face{font-family:'Newsreader Fallback';src:local('Georgia Italic'),local('Georgia-Italic');font-weight:400;font-style:italic;size-adjust:90.4%;ascent-override:81.9%;descent-override:28.8%;line-gap-override:0%}

:root{--paper:#f4f3ee;--wash:#ece8e0;--card:#fbfaf6;--sand:#e7e1d5;--ink:#183448;--ink-2:#0f2433;--body:#2b4558;--muted:#526674;--em:#355c7a;--hover:#145ab7;--copper:#9a5a1c;--copper-wash:#8a4f15;--copper-navy:#d08a45;--mist:#c5d2da;--line:#becbd0;--line-wash:#d0c8bb;--line-navy:#536d7e;--control:#6c8292;--focus:#b46e25;--error:#a3261b;--pressed:#0f2433;--pressed-light:#e9e6df;--map-fill:var(--wash);--map-line:var(--line);
  --fs-xs:13px;--fs-sm:15px;--fs-base:17px;--fs-md:19px;--fs-lg:22px;--fs-xl:26px;--fs-h1:clamp(32px,9.6vw,40px);--fs-h2:clamp(32px,9vw,40px);--fs-display:clamp(56px,10vw,120px);
  --lh-display:1.04;--lh-h2:1.08;--lh-tight:1.25;--lh-ui:1.45;--lh-body:1.55;--tracking-display:-.045em;
  --s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:20px;--s-6:24px;--s-8:32px;--s-10:40px;--s-12:48px;--s-16:64px;--s-20:80px;--s-24:96px;--s-32:128px;
  --g:clamp(16px,5vw,24px);--pad:var(--s-10);--section-end:var(--s-16);--r-sm:8px;--r-md:12px;--r-lg:16px;--r-xl:24px;--r-pill:999px;
  --shadow-card:0 1px 2px rgb(15 36 51 / .06),0 12px 32px -20px rgb(15 36 51 / .35);--shadow:0 -14px 30px -18px rgb(15 36 51 / .45);--shadow-dock:0 10px 30px -10px rgb(15 36 51 / .6);
  --ico-sm:18px;--ico:20px;--ico-lg:24px;--ico-xl:32px;
  --sans:'Public Sans','Public Sans Fallback',Arial,sans-serif;--serif:Newsreader,'Newsreader Fallback',Georgia,serif;
  --dur-state:160ms;--dur-enter:240ms;--dur-exit:160ms;--dur-hero:560ms;--rise:12px;--ease:cubic-bezier(.2,0,0,1);--ease-enter:cubic-bezier(.05,.7,.1,1);--ease-exit:cubic-bezier(.3,0,.8,.15)}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font:var(--fs-base)/var(--lh-body) var(--sans)}
h1,h2,h3,p,figure,ul,ol,fieldset,legend{margin:0}
ul,ol{padding:0;list-style:none}
p,.plate-tab{text-wrap:pretty}
h3{text-wrap:balance}
fieldset{min-width:0;padding:0;border:0}
legend{padding:0}
img{display:block;max-width:100%;height:auto}
a{color:inherit}
button,input,textarea{margin:0;font:inherit;color:inherit}
a,button,summary,label,input,textarea{-webkit-tap-highlight-color:transparent;touch-action:manipulation;scroll-margin:8px}
[hidden]{display:none!important}
.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0}
.tel{white-space:nowrap;font-variant-numeric:tabular-nums}
.nw{white-space:nowrap}
:focus-visible{outline:3px solid var(--focus);outline-offset:3px}
main:focus,[tabindex="-1"]:focus{outline:0}
.sheet--navy :focus-visible,.cta-band :focus-visible,.site-footer :focus-visible,.utility :focus-visible,.site-header.is-dark :focus-visible{outline-color:var(--copper-navy)}
.sheet--navy .composer :focus-visible,.sheet--navy .composer-nojs :focus-visible{outline-color:var(--focus)}
.skip-link{position:fixed;z-index:40;top:var(--s-2);left:var(--s-2);padding:var(--s-3) var(--s-5);border-radius:var(--r-md);background:var(--ink);color:var(--paper);font-weight:600;text-decoration:none}
.skip-link:not(:focus){width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}

.ico{flex:none;display:inline-block;width:var(--ico);height:var(--ico);background:currentColor;-webkit-mask:var(--i) center/contain no-repeat;mask:var(--i) center/contain no-repeat}
.ico-ne{--i:url(assets/icons/arrow-ne.2cce38e2d7ed.svg)}
.ico-down{--i:url(assets/icons/arrow-down.c861052546f7.svg)}
.ico-right{--i:url(assets/icons/arrow-right.93c74266282f.svg)}
.ico-plus{--i:url(assets/icons/plus.198f25d5bf1d.svg)}
.ico-check{--i:url(assets/icons/check.7c36fa6da9b3.svg)}
.ico-wa{--i:url(assets/icons/whatsapp.fbe5735e9a2d.svg)}
.ico-drop{--i:url(assets/icons/drop.6da79c1df03c.svg)}
.ico-flame{--i:url(assets/icons/flame.013075d6c91c.svg?v=2)}
.ico-drain{--i:url(assets/icons/drain.8f7ec61db306.svg?v=2)}
.ico-faucet{--i:url(assets/icons/faucet.1733aaf81767.svg?v=2)}
.ico-bath{--i:url(assets/icons/bath.58ee3255f3f8.svg?v=2)}
.ico-chat{--i:url(assets/icons/chat.a4adbc12ca16.svg)}
.ico-alert{--i:url(assets/icons/alert.a971954e8d1e.svg)}
.ico-badge{--i:url(assets/icons/badge.34155e495729.svg)}
.ico-tag{--i:url(assets/icons/tag.ec09049f6b7d.svg)}
.ico-pin{--i:url(assets/icons/pin.7865c564d84c.svg)}
.ico-camera{--i:url(assets/icons/camera.79568c5c6ad1.svg)}
.ico-clipboard{--i:url(assets/icons/clipboard.efc27f7a0f68.svg)}

.utility{display:none}
.site-header{position:relative;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:var(--s-3);height:64px;padding:0 var(--g);background:var(--paper);border-bottom:1px solid var(--line)}
.brand{display:inline-flex;align-items:center;gap:var(--s-2);min-height:44px;color:var(--ink);text-decoration:none}
.brand img{flex:none;width:40px;height:40px;object-fit:contain}
.brand-name{display:flex;flex-direction:column;font-size:18px;font-weight:600;line-height:1.05;letter-spacing:-.04em}
.brand-name span{margin-top:3px;font-size:var(--fs-xs);font-weight:400;letter-spacing:.06em}
.site-nav,.header-num,.header-visit{display:none}
.header-actions{display:flex;align-items:center;gap:var(--s-3)}
.header-wa{display:inline-flex;align-items:center;gap:var(--s-2);min-height:44px;padding:0 var(--s-3) 0 var(--s-4);border:1.5px solid var(--ink);border-radius:var(--r-pill);background:var(--ink);color:var(--paper);font-size:var(--fs-sm);font-weight:600;text-decoration:none}
.header-wa .ico{width:var(--ico-sm);height:var(--ico-sm)}
.progress{position:fixed;z-index:21;top:env(safe-area-inset-top,0);left:0;width:100%;height:2px;background:var(--copper);transform:scaleX(0);transform-origin:0 50%;opacity:0;pointer-events:none;will-change:transform}

.stage{position:relative}
.stage--a{z-index:1}
#por-que{z-index:2}
.stage--b{z-index:3}
#conoceme{z-index:4}
#cobertura{z-index:5}
#preguntas{z-index:6}
.stage--c{z-index:7;background:var(--wash)}
.cta-band{z-index:8}
.site-footer{z-index:9}
.sentinel{height:1px;margin-bottom:-1px}

.hero{padding:var(--s-5) var(--g) 0}
.who{display:inline-flex;align-items:center;gap:var(--s-2);padding:var(--s-1) var(--s-3) var(--s-1) var(--s-1);border-radius:var(--r-pill);background:var(--sand);font-size:var(--fs-sm);font-weight:600;line-height:1.3}
.avatar{flex:none;width:44px;height:44px;border-radius:50%;object-fit:cover;box-shadow:0 0 0 2px var(--paper),0 0 0 3px var(--control)}
.who .avatar{width:32px;height:32px;box-shadow:none}
.kicker{display:flex;align-items:center;gap:var(--s-2);font-size:var(--fs-sm);font-weight:600;line-height:1.4}
.dot{flex:none;width:7px;height:7px;border-radius:50%;background:var(--copper)}
h1{margin-top:var(--s-3);font-size:var(--fs-h1);font-weight:400;line-height:var(--lh-display);letter-spacing:var(--tracking-display)}
.h1-line{display:block}
h2{margin-top:var(--s-2);font-size:var(--fs-h2);font-weight:400;line-height:var(--lh-h2);letter-spacing:-.04em;text-wrap:balance}
h1 em,h2 em{font-family:var(--serif);font-weight:400;line-height:.8;letter-spacing:-.01em;color:var(--em)}
.lede{max-width:38ch;margin-top:var(--s-4);color:var(--body)}
.hero-actions{display:grid;gap:var(--s-2);margin-top:var(--s-5)}
.btn{display:inline-flex;align-items:center;gap:var(--s-3);max-width:100%;min-height:56px;padding:var(--s-2) var(--s-5);border:1.5px solid var(--ink);border-radius:var(--r-md);font-size:var(--fs-base);font-weight:600;line-height:var(--lh-tight);text-align:left;text-decoration:none;cursor:pointer}
.btn-label{flex:1 1 auto;min-width:0}
.btn-primary{background:var(--ink);color:var(--paper)}
.btn-outline{min-height:48px;padding:var(--s-2) var(--s-4);border-color:var(--control);background:transparent;color:var(--ink);font-size:16px}
.btn-paper{background:var(--paper);border-color:var(--paper);color:var(--ink)}
.btn-block{display:flex;width:100%}
.hero-visit{min-height:44px;padding:0;border:0;background:none;color:var(--ink);font-size:var(--fs-base);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px;justify-self:start}

.plate{position:relative;z-index:0;margin:0;overflow:hidden;background:#d6d0c5;contain:paint}
.plate picture,.plate img{display:block;width:100%;height:100%}
.plate img{object-fit:cover}
.plate--retrato{margin-top:var(--s-6);height:min(100vw,420px)}
.plate--retrato img{object-position:50% 30%}
.plate--oficio{height:min(112vw,64svh)}
.plate--oficio img{object-position:50% 0}
.plate--foto{height:min(125vw,72svh)}
.plate--foto img{object-position:50% 0}
.rise{margin-top:calc(-1 * var(--r-xl));border-radius:var(--r-xl) var(--r-xl) 0 0;box-shadow:var(--shadow)}
.plate-tab{position:absolute;left:var(--g);bottom:calc(var(--r-xl) + var(--s-6));max-width:calc(100% - 2 * var(--g));padding:var(--s-3) var(--s-4);border-radius:var(--r-md);background:var(--paper);color:var(--ink);font-size:16px;line-height:var(--lh-ui)}
.sheet{position:relative;z-index:1;margin-top:calc(-1 * var(--r-xl));padding:var(--pad) var(--g) var(--section-end);border-radius:var(--r-xl) var(--r-xl) 0 0;background:var(--paper);box-shadow:var(--shadow)}
.sheet--wash{background:var(--wash)}
.sheet--navy{padding-bottom:var(--s-20);background:var(--ink);color:var(--paper)}
/* Contact follows the FAQ directly, without a photo to overlap. */
.stage--c>.sheet{margin-top:0;box-shadow:none}
@media(max-width:899px) and (min-height:560px) and (prefers-reduced-motion:no-preference){.plate{position:sticky;top:0}}

.trust{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;gap:var(--s-3) var(--s-4);padding:var(--s-6) var(--g) calc(var(--s-6) + var(--r-xl));background:var(--wash);font-size:var(--fs-sm);font-weight:600;line-height:1.35}
.trust li{display:flex;align-items:flex-start;gap:var(--s-2)}
.trust .ico{margin-top:1px;color:var(--copper-wash)}

.lead{max-width:38ch;margin-top:var(--s-4);color:var(--body)}
.sheet--navy .lead{color:var(--mist)}
.sheet--navy h2 em{color:var(--mist)}
.sheet--wash .dot{background:var(--copper-wash)}
.sheet--navy .dot{background:var(--copper-navy)}
.text-link{display:inline-block;padding:var(--s-3) 0;font-weight:600;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
.text-link .ico{margin-left:var(--s-2);vertical-align:-4px}

.urgent{display:grid;grid-template-columns:96px minmax(0,1fr);grid-template-areas:"img body" "text text" "btn btn";align-items:center;gap:var(--s-3) var(--s-4);margin-top:var(--s-8);padding:var(--s-4);border:1.5px solid var(--copper);border-radius:var(--r-lg);background:var(--card);box-shadow:var(--shadow-card)}
.urgent img{grid-area:img;width:96px;height:96px;border-radius:var(--r-md);object-fit:cover}
.urgent-body{grid-area:body}
.kicker--copper{color:var(--copper)}
.kicker--copper .ico{width:var(--ico-sm);height:var(--ico-sm)}
.urgent h3{margin-top:var(--s-1);font-size:var(--fs-md);font-weight:600;line-height:var(--lh-tight)}
.urgent-text{grid-area:text;font-size:16px;line-height:1.5;color:var(--body)}
.urgent .btn{grid-area:btn;justify-self:start}
.services-intro{display:grid;gap:var(--s-6);align-items:center}
.services-intro h2{max-width:19ch}
.services-context{overflow:hidden;border-radius:var(--r-lg);background:var(--wash)}
.services-context img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
.service-catalogue{margin-top:var(--s-8);border-bottom:1px solid var(--line)}
.service-case{display:grid;gap:var(--s-4);padding:var(--s-6) 0;border-top:1px solid var(--line);scroll-margin-top:96px}
.service-heading,.service-detail{min-width:0}
.service-type{display:flex;align-items:baseline;gap:var(--s-3);color:var(--copper);font-size:var(--fs-sm);font-weight:600;line-height:1.4}
.service-type>span{font-family:var(--serif);font-size:22px;font-style:italic;font-weight:400}
.service-heading h3{max-width:25ch;margin-top:var(--s-2);font-size:clamp(26px,2.2vw,40px);font-weight:400;line-height:1.15;letter-spacing:-.025em;text-wrap:pretty}
.service-detail p{max-width:52ch;color:var(--body)}
.service-detail .text-link{min-height:48px;margin-top:var(--s-2);font-size:16px}
.service-other{display:grid;gap:var(--s-2);margin-top:var(--s-6);padding:var(--s-5);border-left:3px solid var(--copper);background:var(--wash)}
.service-other h3{font-size:var(--fs-lg);font-weight:400;line-height:1.25;text-wrap:pretty}
.service-other p{margin-top:var(--s-2);color:var(--body);font-size:16px}
.service-other .text-link{justify-self:start;min-height:48px;font-size:16px}
.services-more{margin-top:var(--s-5)}

.benefits{display:grid;gap:var(--s-6);margin-top:var(--s-8);padding-top:var(--s-6);border-top:1px solid var(--line-wash)}
.benefit{display:grid;align-content:start;grid-template-columns:32px minmax(0,1fr);column-gap:var(--s-4)}
.benefit .ico{grid-row:1/3;width:var(--ico-lg);height:var(--ico-lg);margin-top:2px;color:var(--copper-wash)}
.benefit h3{font-size:var(--fs-md);font-weight:600;line-height:var(--lh-tight)}
.benefit p{margin-top:var(--s-1);color:var(--body)}

.steps{display:grid;gap:var(--s-5);margin-top:var(--s-8);padding-top:var(--s-6);border-top:1px solid var(--line)}
.steps li{display:grid;grid-template-columns:44px minmax(0,1fr)}
.n{font-family:var(--serif);font-style:italic;font-size:var(--fs-xl);line-height:1;color:var(--copper)}
.steps h3{font-size:var(--fs-md);font-weight:600;line-height:1.3}
.steps p{margin-top:var(--s-1);color:var(--body)}
.signature{margin:var(--s-6) 0 var(--s-5);font-family:var(--serif);font-style:italic;font-size:var(--fs-xl);line-height:1.2}

.about-media{position:relative;width:min(100%,420px)}
.about-main{width:100%;border-radius:var(--r-lg)}
.about-copy{margin-top:var(--s-6)}
.about-copy>p:not(.kicker){margin-top:var(--s-4);color:var(--body)}
.about-copy .text-link{margin-top:var(--s-2)}

.coverage{display:grid;gap:var(--s-6)}
.coverage-copy,.coverage-panel{min-width:0}
.coverage-copy h2{max-width:19ch}
.coverage-copy>p:not(.kicker){max-width:38ch;margin-top:var(--s-4);color:var(--body)}
.coverage-copy .text-link{margin-top:var(--s-3)}
.coverage-panel{padding:var(--s-6);border-radius:var(--r-lg);background:var(--ink);color:var(--paper)}
.coverage-label{font-size:var(--fs-sm);font-weight:600;color:var(--mist)}
.communes{display:grid;margin-top:var(--s-4)}
.communes li{min-width:0;padding:var(--s-3) 0;border-bottom:1px solid var(--line-navy);font-size:clamp(24px,2vw,32px);font-weight:400;line-height:1.3;letter-spacing:-.02em}
.coverage-note{max-width:42ch;margin-top:var(--s-6);font-size:16px;line-height:1.55;color:var(--mist)}

.faq-list{margin-top:var(--s-8);border-top:1px solid var(--line-wash)}
.faq-list details{border-bottom:1px solid var(--line-wash)}
summary{list-style:none;cursor:pointer}
summary::-webkit-details-marker{display:none}
.faq-list summary{display:grid;grid-template-columns:minmax(0,1fr) 32px;align-items:center;gap:var(--s-3);min-height:64px;padding:var(--s-4) 0;font-weight:600;line-height:1.4}
.faq-list summary .ico,.composer-more summary .ico{justify-self:end;width:var(--ico-lg);height:var(--ico-lg);color:var(--copper)}
details[open]>summary .ico-plus{transform:rotate(45deg)}
.answer{padding:0 var(--s-10) var(--s-5) 0;color:var(--body)}
.answer p{max-width:64ch}
.answer .text-link{margin-top:var(--s-1);color:var(--ink)}
.faq-close{margin-top:var(--s-5)}

.consulta-head .text-link{margin-top:var(--s-2);color:var(--paper)}
.composer{margin-top:var(--s-6);padding:var(--s-5) var(--s-4) var(--s-4);border-radius:var(--r-lg);background:var(--card);color:var(--ink);scroll-margin-top:var(--s-4)}
.group{scroll-margin-top:var(--s-4)}
.group+.group,.composer-more{margin-top:var(--s-8)}
.group legend{display:flex;align-items:center;gap:var(--s-2);font-size:var(--fs-base);font-weight:600;line-height:1.35}
.legend-check{opacity:0;transform:scale(.6);clip-path:inset(0 100% 0 0)}
.group.is-done .legend-check{opacity:1;transform:none;clip-path:inset(0 -10% 0 0)}
.opts{display:grid;gap:var(--s-2);margin-top:var(--s-3)}
.opts--chips{display:flex;flex-wrap:wrap}
.opt{position:relative;display:grid}
.opt input{position:absolute;z-index:1;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}
.opt-face{position:relative;display:flex;align-items:center;min-height:56px;padding:var(--s-3) var(--s-4) var(--s-3) 48px;border:1.5px solid var(--control);border-radius:var(--r-md);background:#fff;font-size:var(--fs-base);line-height:1.3}
.opt-face::before{content:"";position:absolute;top:50%;left:16px;width:20px;height:20px;margin-top:-10px;border:1.5px solid var(--control);border-radius:50%}
.opt-face::after{content:"";position:absolute;top:50%;left:22px;width:8px;height:8px;margin-top:-4px;border-radius:50%;background:var(--paper);opacity:0;transform:scale(.6)}
.opt--chip .opt-face{min-height:44px;padding:var(--s-2) var(--s-4) var(--s-2) 40px;border-radius:var(--r-pill);font-size:16px;font-weight:600}
.opt--chip .opt-face::before{left:12px}
.opt--chip .opt-face::after{left:18px}
.opt input:checked+.opt-face{border-color:var(--ink);background:var(--ink);color:var(--paper)}
.opt input:checked+.opt-face::before{border-color:var(--paper)}
.opt input:checked+.opt-face::after{opacity:1;transform:none}
.opt input:focus-visible+.opt-face{outline:3px solid var(--focus);outline-offset:3px}
.group.is-invalid{box-shadow:inset 3px 0 0 var(--error);padding-left:var(--s-3);margin-left:calc(-1 * var(--s-3))}
.group.is-invalid>legend{color:var(--error)}
.field-error{display:flex;align-items:flex-start;gap:var(--s-2);margin-top:var(--s-2);color:var(--error);font-size:var(--fs-sm);font-weight:600;line-height:1.4;animation:rise-in var(--dur-state) var(--ease-enter)}
.err-mark{flex:none;display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:var(--error);color:#fff;font-size:var(--fs-sm);line-height:1}
.hint,.help{margin-top:var(--s-3);font-size:var(--fs-sm);line-height:var(--lh-ui);color:var(--muted)}
.hint{min-height:2.9em}
.help--tight{margin-top:var(--s-1)}
.otra{display:none;margin-top:var(--s-4);animation:drop-in var(--dur-state) var(--ease-enter)}
#grupo-comuna.is-otra .otra{display:block}
#grupo-comuna:has(input[value=otra]:checked) .otra{display:block}
.otra label,.field label{display:block;font-size:var(--fs-base);font-weight:600}
.otra input,.field input,.field textarea{display:block;width:100%;min-height:52px;margin-top:var(--s-2);padding:var(--s-3) var(--s-4);border:1.5px solid var(--control);border-radius:var(--r-md);background:#fff;font-size:var(--fs-base);line-height:1.4}
.field textarea{resize:none;overflow-y:auto}
.field{margin-top:var(--s-6)}
::placeholder{color:var(--muted);opacity:1}
input[aria-invalid=true]{border-color:var(--error)}
.composer-more{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.composer-more>summary{display:flex;align-items:center;justify-content:space-between;gap:var(--s-3);min-height:56px;font-size:var(--fs-base);font-weight:600}
.optional{font-weight:400;color:var(--muted)}
.more-body{padding:var(--s-1) 0 var(--s-6)}
.more-body .group{margin-top:var(--s-5)}
.composer-rail{display:contents}
.preview{margin-top:var(--s-8)}
.preview h3{font-size:var(--fs-sm);font-weight:600;color:var(--muted)}
.preview-bubble{width:fit-content;max-width:92%;margin:var(--s-3) 0 0 auto;padding:var(--s-3) var(--s-4);border-radius:18px 18px 4px 18px;background:var(--wash);font-size:var(--fs-base);line-height:1.5;white-space:pre-line;overflow-wrap:anywhere}
.preview-note{margin-top:var(--s-2);font-size:var(--fs-sm);color:var(--muted);text-align:right}
.composer-send{position:sticky;z-index:2;bottom:0;margin:var(--s-4) calc(-1 * var(--s-4)) 0;padding:var(--s-4) var(--s-4) max(var(--s-3),env(safe-area-inset-bottom));background:linear-gradient(rgb(251 250 246 / 0),var(--card) 14px)}
.composer.is-typing .composer-send{position:static}
.composer:has(input[type=text]:focus) .composer-send{position:static}
.composer:has(textarea:focus) .composer-send{position:static}
.microcopy{margin-top:var(--s-2);font-size:var(--fs-sm);line-height:var(--lh-ui);color:var(--muted)}
.status{min-height:0;margin-top:var(--s-3);font-size:var(--fs-sm);font-weight:600;line-height:var(--lh-ui)}
.status:empty{margin-top:0}
.composer-alt{display:flex;flex-wrap:wrap;align-items:center;gap:0 var(--s-3);margin-top:var(--s-2);font-size:var(--fs-sm)}
.composer-alt .text-link{font-size:var(--fs-sm)}
.btn-text{min-height:48px;padding:0;border:0;background:none;font-size:var(--fs-sm);font-weight:600;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px;cursor:pointer}
.sep{color:var(--muted)}
.composer-nojs{display:none;margin-top:var(--s-6);padding:var(--s-5) var(--s-4);border-radius:var(--r-lg);background:var(--card);color:var(--ink)}
.composer-nojs h3{font-size:var(--fs-md);font-weight:600}
.composer-nojs p{margin-top:var(--s-2)}
.composer-nojs .btn{margin-top:var(--s-4)}
@media(scripting:none){#armador{display:none}.composer-nojs{display:block}}

.cta-band{position:relative;padding:var(--s-16) var(--g);background:var(--ink);color:var(--paper)}
.footer-cta{position:relative;display:block;margin:0;font-family:var(--serif);font-style:italic;font-size:var(--fs-display);font-weight:400;line-height:1;letter-spacing:0;text-wrap:initial;color:var(--paper);overflow-wrap:anywhere}
.kern-i{letter-spacing:.07em}
.band-lead{max-width:38ch;margin-top:var(--s-5);color:var(--mist)}
.band-copy .btn{margin-top:var(--s-6)}
.band-num{display:flex;flex-direction:column;margin-top:var(--s-6)}
.footer-label{font-size:var(--fs-sm);color:var(--mist)}
.band-num .footer-num{font-size:clamp(26px,7vw,36px);line-height:1.15;letter-spacing:-.02em;white-space:normal;overflow-wrap:anywhere}

.site-footer{position:relative;padding:var(--s-12) var(--g) var(--s-24);background:var(--ink-2);color:var(--paper)}
.footer-inner{display:grid;gap:var(--s-8);padding-top:var(--s-8);border-top:1px solid var(--line-navy)}
.site-footer .brand{color:var(--paper)}
.site-footer .brand img{border-radius:var(--r-sm);background:var(--paper)}
.footer-brand>p{max-width:36ch;margin-top:var(--s-3);font-size:var(--fs-sm);line-height:var(--lh-ui);color:var(--mist)}
.footer-col h3{font-size:var(--fs-sm);font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--mist)}
.footer-col ul{margin-top:var(--s-2)}
.footer-list li{display:flex;align-items:center;min-height:36px;font-size:var(--fs-sm);line-height:var(--lh-ui)}
.footer-list--2{display:grid;grid-template-columns:1fr 1fr;column-gap:var(--s-4)}
.footer-list a{display:inline-flex;align-items:center;min-height:44px;font-weight:600;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
.footer-contact,.footer-link{display:inline-flex;flex-wrap:wrap;align-items:center;gap:var(--s-1) var(--s-2);min-height:48px;color:var(--paper);text-decoration:none}
.footer-col .footer-label{flex-basis:100%}
.footer-contact .footer-num,.footer-link .nw{font-size:var(--fs-md);font-weight:600;letter-spacing:-.01em;white-space:normal;overflow-wrap:anywhere;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
.legal{margin-top:var(--s-2);font-size:var(--fs-xs);color:var(--mist)}

.dock{position:fixed;z-index:30;left:var(--s-2);right:var(--s-2);bottom:max(var(--s-2),env(safe-area-inset-bottom));display:none}
.dock[data-shown]{display:block;animation:dock-in var(--dur-enter) var(--ease-enter)}
.dock:not([data-shown]){opacity:0;transform:translateY(16px)}
.dock-link{display:flex;align-items:center;gap:var(--s-2);min-height:56px;padding:var(--s-2) var(--s-4) var(--s-2) var(--s-2);border-radius:var(--r-lg);background:var(--ink);color:var(--paper);font-size:var(--fs-base);font-weight:600;line-height:var(--lh-tight);text-decoration:none;box-shadow:var(--shadow-dock)}
.dock .avatar{width:40px;height:40px;box-shadow:0 0 0 2px var(--paper)}
@media(scripting:none) and (max-width:899px){.dock,.dock:not([data-shown]){display:block;opacity:1;transform:none}}
@media(max-width:899px){html{scroll-padding-bottom:88px}}

.has-rule{position:relative;border-top-color:transparent}
.has-rule::before{content:"";position:absolute;top:-1px;left:0;right:0;height:1px;background:var(--line);transform-origin:0 50%;pointer-events:none}
.sheet--wash .has-rule::before{background:var(--line-wash)}
.has-rule.is-primed::before{transform:scaleX(.12);opacity:.4}

@keyframes dock-in{from{opacity:0;transform:translateY(16px)}}
@keyframes rise-in{from{opacity:0;transform:translateY(4px)}}
@keyframes drop-in{from{opacity:0;transform:translateY(-4px)}}
.is-ready :is(.btn,.header-wa,.header-visit,.utility-wa,.site-header,.opt-face,.text-link,.btn-text,.site-nav a,.svc,.footer-contact,.footer-link,.footer-list a,.dock-link,.faq-list summary){transition:color var(--dur-state) var(--ease),background-color var(--dur-state) var(--ease),border-color var(--dur-state) var(--ease),translate var(--dur-state) var(--ease),scale var(--dur-state) var(--ease)}
.is-ready .ico,.is-ready .opt-face::after,.is-ready .site-nav a::after{transition:transform var(--dur-state) var(--ease),opacity var(--dur-state) var(--ease)}
.is-ready details .ico-plus{transition-duration:200ms}
.is-ready .dock{transition:opacity var(--dur-exit) var(--ease-exit),transform var(--dur-exit) var(--ease-exit),display var(--dur-exit) allow-discrete}
.btn-primary:active,.dock-link:active{background:var(--pressed);border-color:var(--pressed)}
.btn-outline:active,.header-wa:active,.header-visit:active,.opt input:not(:checked):active+.opt-face{background:var(--pressed-light)}
@media(hover:hover) and (pointer:fine){
  .btn-primary:hover{background:var(--hover);border-color:var(--hover)}
  .btn-paper:hover{background:#fff;border-color:#fff}
  .btn-outline:hover,.header-visit:hover,.opt:hover .opt-face,.svc:hover{border-color:var(--ink)}
  .header-wa:hover{background:var(--hover);border-color:var(--hover)}
  .is-dark .header-wa:hover{background:#fff;border-color:#fff}
  .text-link:hover,.btn-text:hover,.site-nav a:hover,.faq-list summary:hover{color:var(--hover)}
  .consulta-head .text-link:hover,.site-footer a:hover,.utility-wa:hover,.is-dark .site-nav a:hover{color:#c7ddef}
  .btn-primary:hover,.btn-paper:hover,.btn-outline:hover,.header-wa:hover,.header-visit:hover,.svc:hover{translate:0 -2px}
  :is(.btn-primary,.btn-paper,.header-wa,.svc):hover::after{opacity:1}
  .site-nav a:hover::after{transform:none}
  a:hover>.ico-ne{transform:translate(2px,-2px)}
  a:hover>.ico-down{transform:translateY(2px)}
  a:hover>.ico-right{transform:translateX(2px)}
}
a:focus-visible>.ico-ne{transform:translate(2px,-2px)}
a:focus-visible>.ico-down{transform:translateY(2px)}
a:focus-visible>.ico-right{transform:translateX(2px)}

@media(max-width:360px){.hero-actions .ico-wa,.dock .ico-wa,.header-wa>.ico-ne{display:none}.dock-link{font-size:16px}.btn{padding-left:var(--s-4);padding-right:var(--s-4)}.site-header{gap:var(--s-2)}.brand img{width:36px;height:36px}.brand-name{font-size:16px}.header-wa{padding-inline:10px}}
@media(max-width:899px) and (max-height:600px){.hero{padding-top:var(--s-3)}.hero h1{margin-top:var(--s-2)}.lede{margin-top:var(--s-3)}.hero-actions{gap:var(--s-1);margin-top:var(--s-4)}.plate--retrato{margin-top:var(--s-4)}}
@media(min-width:600px){
  .opts--caso{grid-template-columns:1fr 1fr}
  .urgent{grid-template-columns:120px minmax(0,1fr);column-gap:var(--s-5);padding:var(--s-5)}
  .urgent img{width:120px;height:120px}
  .benefits{grid-template-columns:repeat(2,minmax(0,1fr))}
  .service-case{grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:var(--s-6)}
  .service-other{grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:var(--s-6)}
  .benefits{gap:var(--s-8) var(--s-8)}
  .about{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);column-gap:var(--s-8);align-items:center}
  .about-copy{margin-top:0}
  .communes{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:var(--s-6)}
  .footer-inner{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .footer-brand{grid-column:auto}
  .legal{grid-column:1/-1}
}
@media(min-width:600px) and (max-width:899px){
  .hero,.sheet,.trust,.cta-band,.site-footer{padding-left:max(var(--g),calc(50% - 320px));padding-right:max(var(--g),calc(50% - 320px))}
  .hero .btn-primary{max-width:420px}
  .plate--oficio,.plate--foto{max-height:520px}
  .plate-tab{left:max(var(--g),calc(50% - 320px));max-width:min(640px,calc(100% - 2 * var(--g)))}
}
@media(min-width:700px) and (max-width:899px){
  .stage--a{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);column-gap:var(--s-8);align-items:center;padding:0 var(--g)}
  .hero{grid-column:1;grid-row:1;padding:var(--s-8) 0}
  .plate--retrato{grid-column:2;grid-row:1;position:relative;top:auto;height:auto;aspect-ratio:4/5;margin:var(--s-8) 0;border-radius:var(--r-lg)}
  .trust{grid-column:1/-1;grid-row:2;grid-template-columns:repeat(4,minmax(0,1fr));margin:0 calc(-1 * var(--g));padding:var(--s-5) var(--g) calc(var(--s-5) + var(--r-xl));border-radius:0;box-shadow:none}
  .stage--a>.sheet{grid-column:1/-1;grid-row:3;margin:calc(-1 * var(--r-xl)) calc(-1 * var(--g)) 0}
}
@media(max-width:899px) and (orientation:landscape){.plate--foto{height:min(100vw,72svh)}.plate--foto img{object-position:50% 15%}.plate-tab{bottom:40px;max-width:40vw}}

/* Desktop: utility bar, sticky header with two actions, two-column stages, sticky columns inside their own section,
   no dock. One content edge for every section: --edge equals the gutter of a centred 1600 px .sheet-inner. */
@media(min-width:900px){
  :root{--g:clamp(32px,5vw,96px);--pad:clamp(80px,8vw,128px);--edge:max(var(--g),calc(50% - 800px));--fs-base:18px;--fs-md:20px;--fs-lg:24px;--fs-h1:clamp(46px,4.5vw,80px);--fs-h2:clamp(44px,3.6vw,64px);--section-end:var(--s-24);--rise:16px}
  html{scroll-padding-top:88px}
  .utility{display:flex;align-items:center;justify-content:space-between;gap:var(--s-6);min-height:36px;padding:0 var(--edge);background:var(--ink-2);color:var(--paper);font-size:var(--fs-sm);font-weight:600;line-height:1.3}
  .utility-zone{display:flex;align-items:center;gap:var(--s-2)}
  .utility .ico{width:var(--ico-sm);height:var(--ico-sm)}
  .utility-zone .ico{color:var(--copper-navy)}
  .utility-wa{display:inline-flex;align-items:center;gap:var(--s-2);min-height:36px;text-decoration:none}
  .site-header{position:sticky;top:0;height:72px;padding:0 var(--edge)}
  .brand img{width:44px;height:44px}
  .site-nav{display:flex;gap:var(--s-6);margin-inline:auto}
  .brand-name,.site-nav a,.header-visit{white-space:nowrap}
  .site-nav a{position:relative;display:inline-flex;align-items:center;min-height:44px;color:var(--ink);font-size:16px;font-weight:600;text-decoration:none}
  .is-dark .site-nav a{color:var(--paper)}
  .site-nav a::after{content:"";position:absolute;left:0;right:0;bottom:6px;height:2px;background:var(--copper);transform:scaleX(0);transform-origin:0 50%}
  .site-nav a[aria-current]::after{transform:none}
  .header-visit{display:inline-flex;align-items:center;gap:var(--s-2);min-height:48px;padding:0 var(--s-4);border:1.5px solid var(--control);border-radius:var(--r-md);color:var(--ink);font-size:16px;font-weight:600;text-decoration:none}
  .header-wa{min-height:48px;padding:0 var(--s-4) 0 var(--s-5);border-radius:var(--r-md);font-size:16px}
  .header-num{display:inline}
  .site-header.is-dark{border-bottom-color:var(--line-navy);background:var(--ink);color:var(--paper)}
  .is-dark .brand{color:var(--paper)}
  .is-dark .brand img{border-radius:var(--r-sm);background:var(--paper)}
  .is-dark .header-wa{border-color:var(--paper);background:var(--paper);color:var(--ink)}
  .is-dark .header-visit{border-color:var(--line-navy);color:var(--paper)}
  .is-dark .site-nav a::after{background:var(--copper-navy)}
  .stage--a{display:grid;grid-template-columns:var(--edge) minmax(0,1.05fr) 5vw minmax(0,.95fr) var(--edge);align-items:center}
  .hero{grid-column:2;grid-row:1;padding:var(--s-12) 0 var(--s-16)}
  .who{font-size:16px}
  .lede{max-width:36ch;margin-top:var(--s-5);font-size:20px}
  .hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s-3);margin-top:var(--s-8)}
  .hero-visit{min-height:48px;padding:var(--s-2) var(--s-4);border:1.5px solid var(--control);background:transparent;text-decoration:none}
  .plate--retrato{grid-column:4;grid-row:1;align-self:center;justify-self:end;width:min(100%,calc(min(72svh,640px) * .8));height:auto;aspect-ratio:4/5;margin:var(--s-10) 0;border-radius:var(--r-lg)}
  .rise{margin-top:-32px;border-radius:32px 32px 0 0}
  .trust{grid-column:1/-1;grid-row:2;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--s-4) var(--s-6);margin:0;padding:var(--s-5) var(--edge) calc(var(--s-5) + 32px);border-top:1px solid var(--line-wash);border-radius:0;box-shadow:none}
  .trust li{align-items:center}
  .stage--a>.sheet{grid-column:1/-1;grid-row:3;margin:-32px 0 0}
  .sheet{margin-top:-32px;padding:var(--pad) var(--g);border-radius:32px 32px 0 0}
  .sheet-inner{max-width:1600px;margin-inline:auto}
  .sheet-head{max-width:860px}
  .split{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);column-gap:6vw;align-items:start}
  .urgent{grid-template-columns:120px minmax(0,1fr) auto;grid-template-areas:"img body btn" "img text btn";margin-top:var(--s-10);padding:var(--s-5) var(--s-6)}
  .urgent .btn{align-self:center}
  .services-intro{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);column-gap:6vw}
  .services-context{justify-self:end;width:min(100%,520px)}
  .service-catalogue{margin-top:var(--s-10)}
  .service-case{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);column-gap:6vw;padding:var(--s-8) 0;align-items:center}
  .service-other{padding:var(--s-6) var(--s-8)}
  .benefits{margin-top:var(--s-10);padding-top:var(--s-8);gap:var(--s-8) var(--s-10)}
  .stage--b{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);column-gap:6vw;align-items:start;margin-top:-32px;padding:var(--pad) var(--edge);border-radius:32px 32px 0 0;background:var(--paper);box-shadow:var(--shadow)}
  .stage--b>.plate--oficio{position:sticky;top:104px;height:auto;aspect-ratio:3/4;max-height:calc(100svh - 136px);margin:0;border-radius:var(--r-lg);box-shadow:none}
  .stage--b>.sheet{margin:0;padding:0;border-radius:0;background:none;box-shadow:none}
  .stage--b .sheet-inner{max-width:680px;margin-left:0}
  .steps{gap:var(--s-6)}
  .steps li{grid-template-columns:64px minmax(0,1fr)}
  .about{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);column-gap:6vw}
  .about-media{width:min(100%,480px)}
  .coverage{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);column-gap:6vw;align-items:center}
  .coverage-panel{padding:var(--s-8)}
  .faq-head{position:sticky;top:104px;grid-column:1;grid-row:1/3}
  .faq-list{grid-column:2;grid-row:1;margin-top:0}
  .faq-close{grid-column:2;grid-row:2;justify-self:start}
  .plate--foto{height:clamp(360px,max(56svh,33vw + 32px),720px)}
  .plate--foto img{object-position:50% 15%}
  .plate-tab{left:var(--edge);bottom:56px;max-width:min(420px,30vw);font-size:18px}
  .consulta-head>*{max-width:640px}
  .composer{max-width:1120px;margin-top:var(--s-10);padding:var(--s-8)}
  .opts--caso{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}
  .hint{min-height:2.9em}
  .composer-send{position:static;margin:var(--s-4) 0 0;padding:0;background:none}
  .cta-band{padding:var(--s-20) var(--g)}
  .band-inner{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);column-gap:6vw;align-items:center;max-width:1600px;margin-inline:auto}
  .band-lead{margin-top:0;font-size:20px}
  .site-footer{padding:var(--s-16) var(--g)}
  .footer-inner{gap:var(--s-10) var(--s-8);max-width:1600px;margin-inline:auto}
  .footer-brand{grid-column:auto}
  .footer-list--2{grid-template-columns:1fr}
  .dock,.dock[data-shown],.dock:not([data-shown]){display:none}
}
@media(min-width:900px) and (scripting:enabled){.site-header:not(.is-stuck):not(.is-dark){border-bottom-color:transparent}}
@media(min-width:900px) and (max-width:1299px){.site-nav{gap:var(--s-4)}.header-num{display:none}.header-wa{padding-left:var(--s-4)}}
@media(min-width:900px) and (max-width:1099px){.header-visit{display:none}}
@media(min-width:900px) and (max-height:800px){.hero{padding:var(--s-8) 0 var(--s-12)}.hero h1{font-size:clamp(44px,min(4.5vw,9vh),80px)}.lede{margin-top:var(--s-4);font-size:18px}.hero-actions{margin-top:var(--s-5)}.plate--retrato{margin:var(--s-6) 0}}
@media(min-width:1200px){
  .footer-inner{grid-template-columns:minmax(0,.95fr) minmax(0,1.25fr) minmax(0,.8fr) minmax(0,1.15fr)}
  .benefits{grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--s-8)}
  .benefit{grid-template-columns:minmax(0,1fr)}
  .benefit .ico{grid-row:auto;margin:0 0 var(--s-3)}
  .composer{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);column-gap:var(--s-12);align-items:start}
  .composer-rail{display:block}
  .preview{margin-top:0}
}
@media(min-width:1200px) and (min-height:700px){.composer-rail{position:sticky;top:104px}}
@media(min-width:1600px){:root{--fs-base:19px}.lede{font-size:21px}}
@media(min-width:2000px){:root{--edge:max(var(--g),calc(50% - 880px))}.sheet-inner,.band-inner,.footer-inner{max-width:1760px}}

@media(forced-colors:active){
  .has-rule::before{content:none}
  .has-rule{border-top-color:CanvasText}
  .ico{forced-color-adjust:none;background:CanvasText}
  .opt-face::after{forced-color-adjust:none;background:currentColor}
  .opt input:checked+.opt-face{forced-color-adjust:none;border-color:Highlight;background:Highlight;color:HighlightText}
  .preview-bubble,.plate-tab,.urgent,.svc,.dock-link,.who,.communes li{border:1px solid CanvasText}
  .progress{display:none}
  .plate::before,.plate::after{content:none}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.plate,.stage--b>.plate--oficio{position:relative}details::details-content{transition:none!important}}
@media print{.dock,.site-nav,.header-wa,.header-visit,.utility,.composer,.skip-link,.progress{display:none}.plate{position:relative}}

/* Motion (v4 step 2). A: state. B: hero by @starting-style; [data-reveal] groups primed off-screen by motion.js (.is-primed =
   keyframe 0) and staggered. C: scroll-driven in @supports, one-shot fallback in motion.js. Nothing moves under reduced motion. */
.btn,.header-wa,.svc,.steps li{position:relative}
:is(.btn-primary,.btn-paper,.header-wa,.svc)::after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:0 14px 30px -14px rgb(15 36 51 / .55);opacity:0;pointer-events:none;transition:opacity var(--dur-state) var(--ease)}
.is-ready :is(.btn,.header-wa,.header-visit,.btn-text,.dock-link):active,.is-ready .opt input:active+.opt-face{scale:.97;transition-duration:0s}
.is-ready .legend-check,.is-ready .composer-send .ico-ne{transition:all var(--dur-enter) var(--ease-enter)}
.is-complete .ico-ne{color:var(--copper-navy);translate:2px -2px}
.is-ready .preview-note{transition:opacity var(--dur-exit) var(--ease-exit),display var(--dur-exit) allow-discrete}
.preview-note[hidden]{opacity:0}
.dock[data-shown] .avatar{animation:pop var(--dur-enter) var(--ease-enter) 60ms backwards}
@keyframes pop{from{opacity:0;transform:scale(.8)}}
@supports selector(::details-content){@media(prefers-reduced-motion:no-preference){
  .faq-list details::details-content{display:grid;grid-template-rows:0fr;transition:grid-template-rows var(--dur-enter) var(--ease),content-visibility var(--dur-enter) allow-discrete}
  .faq-list details[open]::details-content{grid-template-rows:1fr}
  .faq-list .answer{min-height:0;overflow:hidden}
}}
.steps li:not(:last-child)::after{content:"";position:absolute;left:12px;top:30px;bottom:calc(4px - var(--s-5));width:1px;background:var(--line);transform-origin:50% 0}
[data-reveal].is-primed>*,.is-primed [data-reveal-item],.is-primed[data-reveal=self]{opacity:0;transform:translateY(var(--rise));transition:none}
[data-reveal].is-primed>:has([data-reveal-item]),.is-primed[data-reveal=self]>*,[data-reveal].is-primed>.footer-cta{opacity:1;transform:none}
[data-reveal].is-primed>.footer-cta,.signature.is-primed{clip-path:inset(0 100% 0 0)}
.plate.is-primed img{transform:scale(1.06)}
/* Hero entrance as CSS animations (not @starting-style transitions): Chrome can style these elements before the stylesheet
   lands, and then @starting-style never fires; an animation starts whenever its name first applies. */
@media(prefers-reduced-motion:no-preference){
  .who,.hero-actions{animation:hero-up 480ms var(--ease-enter) backwards}
  .hero-actions{animation-delay:280ms}
  .h1-line,.lede{clip-path:inset(-10% -4% -12% -4%);animation:hero-mask var(--dur-hero) var(--ease-enter) 60ms backwards}
  .h1-line:nth-child(2){animation-delay:130ms}
  .lede{--from:8px;animation-delay:200ms}
  .plate--retrato img{animation:hero-settle 900ms var(--ease-enter) 120ms backwards}
  .plate--retrato::before{content:"";position:absolute;z-index:1;inset:0;background:var(--paper);opacity:0;pointer-events:none;animation:hero-veil 600ms var(--ease-enter) 120ms backwards}
  @keyframes hero-up{from{opacity:0;translate:0 12px}}
  @keyframes hero-mask{from{clip-path:inset(0 0 100% 0);translate:0 var(--from,.35em)}}
  @keyframes hero-settle{from{scale:1.045}}
  @keyframes hero-veil{from{opacity:.35}}
  @media(min-width:700px){
    .stage--a .trust li{animation:hero-up 420ms var(--ease-enter) 340ms backwards}
    .trust :nth-child(2){animation-delay:380ms}
    .trust :nth-child(3){animation-delay:420ms}
    .trust :nth-child(4){animation-delay:460ms}
  }
}
@supports(animation-timeline:view()){@media(prefers-reduced-motion:no-preference){
  .progress{animation:bar linear both;animation-timeline:scroll(root)}
  .plate{view-timeline:--plate}
  .plate.rise img{animation:settle linear both;animation-timeline:--plate;animation-range:entry 0% entry 100%}
  .plate-tab{animation:tab linear both;animation-timeline:--plate;animation-range:entry 60% entry 85%}
  .cta-band{view-timeline:--band}
  .footer-cta{transform-origin:0 50%;animation:word linear both;animation-timeline:--band;animation-range:entry 0% entry 100%}
  .steps li{view-timeline:--step}
  .steps li:not(:last-child)::after{animation:rail linear both;animation-timeline:--step;animation-range:cover 18% cover 42%}
  @media(max-width:899px){
    .stage{timeline-scope:--cover}
    .stage--b>.sheet,.stage--c>.sheet{view-timeline:--cover}
    .stage--a{--cf:38%;--ct:86%}
    .stage--b{--cf:42%}
    .stage--c{--cf:36%}
    .plate::after{content:"";position:absolute;inset:0;background:linear-gradient(rgb(15 36 51 / .55),var(--ink-2));opacity:0;pointer-events:none;animation:dim linear both;animation-timeline:--cover;animation-range:entry var(--cf) entry var(--ct,100%)}
    .plate--retrato img{animation:hero-settle 900ms var(--ease-enter) 120ms backwards,recede linear both;animation-timeline:auto,--cover;animation-range:normal,entry var(--cf) entry var(--ct,100%)}
    .plate.rise img{animation:settle linear both,recede linear both;animation-timeline:--plate,--cover;animation-range:entry 0% entry 100%,entry var(--cf) entry var(--ct,100%)}
  }
  @media(max-width:699px){.stage--a>.sheet{view-timeline:--cover}}
  @media(min-width:900px){
    .plate--retrato img{height:110%;animation:hero-settle 900ms var(--ease-enter) 120ms backwards,drift linear both;animation-timeline:auto,--plate;animation-range:normal,exit 0% exit 100%}
    .site-header,.site-header.is-stuck,.site-header.is-dark{border-bottom-color:transparent}
    .site-header::after{content:"";position:absolute;inset:auto 0 0 0;height:1px;background:var(--line);box-shadow:0 6px 18px -12px rgb(15 36 51 / .35);opacity:0;animation:fade linear both;animation-timeline:scroll(root);animation-range:0 80px}
    .is-dark::after{background:var(--line-navy)}
  }
  @keyframes bar{4%{opacity:1}to{transform:scaleX(1);opacity:1}}
  @keyframes settle{from{scale:1.06}}
  @keyframes recede{to{translate:0 -4%}}
  @keyframes dim{to{opacity:.3}}
  @keyframes tab{from{opacity:0;translate:0 12px}}
  @keyframes word{from{scale:.97}}
  @keyframes rail{from{transform:scaleY(0)}}
  @keyframes fade{to{opacity:1}}
  @keyframes drift{to{translate:0 5%}}
}}
