/* VISIÓN PATAGONIA · VP-01 · 4 NOV 2026. RITMO aporta fuentes y colores;
   la composición es propia. Cielo sólo en las dos acciones principales. */
:root{--tenant:#1a5fd0;--on-tenant:#f4f3ed;--vp-gutter:clamp(24px,5.55vw,80px);--vp-max:1440px}
@media(prefers-color-scheme:dark){:root:not([data-mundo="dia"]){--tenant:#5aa9ff;--on-tenant:#101e1c}}
:root[data-mundo="noche"]{--tenant:#5aa9ff;--on-tenant:#101e1c}
html{scroll-padding-top:24px}body{overflow-x:visible;font-size:17px;line-height:1.55}
::selection{background:var(--ink);color:var(--paper)}h1,h2,h3{text-transform:none;text-wrap:initial;letter-spacing:-.035em}
a,button{-webkit-tap-highlight-color:transparent}button{touch-action:manipulation}[hidden]{display:none!important}
:focus-visible{outline:3px solid var(--ink);outline-offset:6px;border-radius:2px}
.vp-wrap{max-width:var(--vp-max);width:100%;margin-inline:auto;padding-inline:var(--vp-gutter)}
.vp-eyebrow{color:var(--muted);font:700 12px/1.5 var(--font);letter-spacing:.085em;text-transform:uppercase}.vp-index{display:inline-block;margin-right:18px;font-weight:400;letter-spacing:0}
.vp-header{position:relative;z-index:2}.vp-header-row{min-height:112px;display:flex;align-items:center;justify-content:space-between;gap:32px}
.vp-wordmark{display:block;flex:none;font:700 29px/.85 var(--display);letter-spacing:-.035em;text-decoration:none}.vp-wordmark>span{display:block}
.vp-nav{display:flex;gap:34px;margin-left:auto;margin-right:44px}.vp-nav a,.vp-header-contact{display:inline-flex;align-items:center;gap:20px;min-height:44px;font-size:14px;text-decoration:none}
.vp-nav a:hover{text-decoration:underline;text-underline-offset:6px}.vp-header-contact{font-weight:700}.vp-header-contact>span{font-size:23px}
.vp-header-tools,.vp-theme{display:flex;align-items:center;gap:24px}.vp-theme{gap:4px;display:none}.js .vp-theme{display:flex}
.vp-theme button{border:0;background:transparent;color:var(--ink);padding:10px 6px;min-height:44px;cursor:pointer;font:400 13px var(--font)}.vp-theme-toggle{display:flex;align-items:center;gap:8px}.vp-theme-auto{text-decoration:underline;text-underline-offset:3px}
.vp-hero{padding-top:49px}.vp-eyebrow-row{display:flex;justify-content:space-between;gap:24px;align-items:center}.vp-location{font-size:13px;color:var(--muted)}
.vp-hero-stage{position:relative;margin-top:52px}.vp-hero h1{position:relative;z-index:1;font-size:clamp(78px,10.7vw,154px);line-height:.91;letter-spacing:-.045em}.vp-hero h1>span{display:block}.vp-hero h1 .vp-last-line{padding-left:10.3%}
.vp-horizon{position:absolute;right:0;top:-28px;width:24%;color:var(--muted)}.vp-horizon span{display:block;text-align:center;font-size:11px;letter-spacing:.05em;margin-top:-20px}
.vp-hero-bottom{display:grid;grid-template-columns:1fr 1fr;align-items:start;gap:8%;margin-top:54px}
.vp-cta{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;min-height:62px;padding:17px 24px;background:var(--tenant);color:var(--on-tenant);text-decoration:none;font:700 16px/1.3 var(--font);border-radius:2px}
.vp-cta>span:last-child{font-size:26px;line-height:1;transition:transform 180ms ease}.vp-cta:hover>span:last-child{transform:translate(2px,-2px)}.vp-cta:hover{box-shadow:0 0 0 2px var(--ink)}
.vp-hero-action>p{margin-top:13px;font-size:12px;color:var(--muted)}.vp-lead{max-width:510px;color:var(--muted);font-size:20px;line-height:1.55}.vp-lead strong{font-weight:400;color:var(--ink)}
.vp-hero-foot{margin-top:55px;padding-block:24px;border-bottom:1px solid var(--line);display:flex;gap:20px;justify-content:space-between;color:var(--muted);font-size:13px}.vp-hero-foot a{display:inline-flex;align-items:center;gap:25px;min-height:24px;text-decoration:none;color:var(--ink)}.vp-hero-foot a span{font-size:22px}.vp-hero-foot a:hover{text-decoration:underline;text-underline-offset:4px}
.vp-section{padding-top:124px;padding-bottom:120px}.vp-section-heading{display:grid;grid-template-columns:1fr 1fr;gap:30px 60px;align-items:end}.vp-section-heading>.vp-eyebrow{grid-column:1/-1}.vp-section-heading h2{font-size:clamp(52px,5.65vw,82px);line-height:.98}.vp-section-heading>p:last-child{max-width:340px;justify-self:end;color:var(--muted);font-size:18px;padding-bottom:4px}
.vp-case-list{margin-top:70px}.vp-case{display:grid;grid-template-columns:1fr 1.05fr 1.1fr;gap:48px;align-items:start;padding-block:58px;border-top:1px solid var(--line)}.vp-case:last-child{padding-bottom:0}
.vp-number{font:700 clamp(84px,9vw,130px)/.9 var(--display);letter-spacing:-.065em;font-variant-numeric:lining-nums tabular-nums}.vp-plus{font-size:.56em;vertical-align:.2em;letter-spacing:-.06em;margin-right:4px}.vp-measure-label{color:var(--muted);font-size:13px;margin-top:16px}
.vp-date{font-size:clamp(68px,7.4vw,106px);padding-top:8px}.vp-date>span{font-size:.5em}.vp-case-name{padding-top:5px}.vp-case-name .vp-eyebrow{font-size:10px;letter-spacing:.06em}.vp-case h3{font:700 clamp(40px,4vw,58px)/.99 var(--display);letter-spacing:-.035em;margin-top:15px;max-width:240px}
.vp-case-status{font-size:12px;margin-top:24px;display:flex;align-items:center;gap:7px;color:var(--muted)}.vp-case-status::before{content:"";display:block;width:5px;height:5px;border-radius:50%;background:currentColor;flex:none}.vp-case-copy{padding-top:4px;color:var(--muted);font-size:16px}.vp-case-copy strong{color:var(--ink);font-weight:400}.vp-case-note{margin-top:20px;font-size:13px}.vp-case-note strong{font-weight:700}
.vp-method{background:var(--surface);padding-block:112px}.vp-method-layout{display:grid;grid-template-columns:1fr 1fr;gap:10%}.vp-method h2{margin-top:36px;font-size:clamp(76px,8.8vw,128px);line-height:.92}.vp-method-intro>p:not(.vp-eyebrow){margin-top:34px;max-width:320px;font-size:18px;color:var(--muted)}
.vp-method-sign{display:flex;align-items:center;gap:25px;max-width:325px;margin-top:80px}.vp-method-sign span{flex:1;height:1px;background:var(--line)}.vp-method-sign i{width:70px;height:70px;border:1px solid var(--ink);border-radius:50%;position:relative}.vp-method-sign i::after{content:"";position:absolute;width:8px;height:8px;background:var(--ink);border-radius:50%;top:30px;left:30px}
.vp-steps{padding:0;list-style:none}.vp-steps li{display:grid;grid-template-columns:34px 1fr;gap:18px;padding-block:28px;border-top:1px solid var(--line)}.vp-steps li:first-child{padding-top:0;border-top:0}.vp-steps li:last-child{padding-bottom:0}.vp-step-index{font-size:12px;color:var(--muted);padding-top:2px}.vp-steps .vp-eyebrow{font-size:10px}.vp-steps h3{font:700 28px/1.1 var(--display);letter-spacing:-.025em;margin-top:9px;max-width:390px}.vp-steps li p:last-child{margin-top:12px;color:var(--muted);font-size:15px;max-width:380px}
.vp-doors{margin-top:64px}.vp-door{display:grid;grid-template-columns:1.2fr 1fr .55fr;gap:45px;align-items:center;padding-block:37px;border-top:1px solid var(--line);text-decoration:none}.vp-door:last-child{border-bottom:1px solid var(--line)}.vp-door-name{display:block;font:700 52px/1 var(--display);letter-spacing:-.035em;margin-top:12px}.vp-door .vp-eyebrow{font-size:10px}.vp-door-detail{color:var(--muted);font-size:15px}.vp-door-detail strong{display:block;color:var(--ink);font-weight:400;margin-top:6px}.vp-door-action{display:flex;align-items:center;justify-content:end;gap:30px;font-size:13px}.vp-door-action>span:last-child{font-size:36px;transition:transform 180ms ease}.vp-door:hover .vp-door-action>span:last-child{transform:translate(3px,-3px)}.vp-door:hover .vp-door-name{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:7px}
.vp-about{display:grid;grid-template-columns:.6fr 1.4fr .5fr;gap:56px;padding-top:0;padding-bottom:128px;align-items:start}.vp-about>.vp-eyebrow{padding-top:9px}.vp-about h2{font-size:50px;line-height:1}.vp-about p:not(.vp-eyebrow){margin-top:24px;color:var(--muted);font-size:17px;max-width:580px}.vp-about-mark{width:140px;margin-top:10px;justify-self:end;color:var(--muted)}
.vp-contact{padding-block:85px 86px;border-top:1px solid var(--line)}.vp-contact-top{display:flex;align-items:start;justify-content:space-between;gap:30px}.vp-contact-top>span{font-size:75px;line-height:.6;font-family:var(--font)}.vp-contact h2{margin-top:49px;font-size:clamp(64px,8vw,115px);line-height:.97;max-width:1000px;letter-spacing:-.045em}.vp-contact-bottom{display:flex;align-items:center;justify-content:space-between;gap:40px;margin-top:60px}.vp-contact-bottom>p{font-size:17px;color:var(--muted)}
.vp-footer{display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:30px;padding-block:38px 48px;border-top:1px solid var(--line);align-items:center}.vp-footer p{font-size:12px;color:var(--muted)}.vp-footer .vp-wordmark{font-size:27px}.vp-back{display:flex;gap:20px;align-items:center;min-height:44px;text-decoration:none;font-size:12px}.vp-back>span{font-size:25px}
@media(min-width:760px) and (prefers-reduced-motion:no-preference){.vp-horizon{animation:vp-emerge 800ms ease both}@keyframes vp-emerge{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}}
@media(max-width:1100px){.vp-nav{gap:20px;margin-right:10px}.vp-header-row{gap:20px}.vp-header-tools{gap:14px}.vp-case{gap:26px}.vp-about{gap:35px;grid-template-columns:.6fr 1.4fr}.vp-about-mark{display:none}.vp-horizon{top:-12px}.vp-horizon span{font-size:10px}.vp-door{gap:24px}}
@media(max-width:759px){
.vp-header-row{min-height:94px;gap:16px}.vp-wordmark{font-size:25px}.vp-nav{display:none}.vp-header-tools{gap:16px}.vp-header-contact{font-size:13px;gap:9px}.vp-header-contact>span{font-size:20px}.vp-theme-toggle{gap:5px}.vp-theme button{font-size:11px;padding-inline:3px}.vp-theme-toggle svg{width:15px;height:15px}
.vp-hero{padding-top:28px}.vp-eyebrow-row{display:block}.vp-eyebrow{font-size:10px;letter-spacing:.075em}.vp-location{font-size:11px;margin-top:6px}.vp-hero-stage{margin-top:36px}.vp-horizon{display:none}.vp-hero h1{font-size:clamp(59px,15.8vw,113px);line-height:.94;letter-spacing:-.04em}.vp-hero h1 .vp-last-line{padding-left:0}.vp-adentro{display:block}
.vp-hero-bottom{display:flex;flex-direction:column-reverse;gap:27px;margin-top:29px}.vp-lead{font-size:17px;line-height:1.55;max-width:480px}.vp-hero-action{width:100%}.vp-cta{min-height:58px;padding:16px 20px;font-size:15px;gap:20px}.vp-hero-action .vp-cta{width:100%;max-width:400px}.vp-hero-action>p{font-size:11px;margin-top:10px}.vp-hero-foot{margin-top:36px;padding-block:0 0;display:block;font-size:11px;line-height:1.6}.vp-hero-foot>span{display:block;max-width:270px}.vp-hero-foot a{margin-top:10px;gap:14px;min-height:44px;font-size:12px}
.vp-section{padding-top:72px;padding-bottom:72px}.vp-section-heading{display:block}.vp-index{margin-right:14px}.vp-section-heading h2{font-size:clamp(47px,12vw,76px);margin-top:25px;line-height:1}.vp-section-heading>p:last-child{font-size:15px;margin-top:23px;max-width:350px}.vp-section-heading>p:last-child br{display:none}.vp-case-list{margin-top:37px}.vp-case{grid-template-columns:1fr;gap:26px;padding-block:38px}.vp-case-measure{display:flex;align-items:end;gap:26px}.vp-number{font-size:102px;flex:none}.vp-measure-label{font-size:12px;max-width:120px;margin-top:0;padding-bottom:7px}.vp-date{font-size:80px;padding-top:0;letter-spacing:-.065em}.vp-date+.vp-measure-label{max-width:99px}.vp-case-name{padding-top:0}.vp-case-name .vp-eyebrow{font-size:10px}.vp-case h3{font-size:43px;margin-top:9px;max-width:none}.vp-case-status{margin-top:13px}.vp-case-copy{padding-top:0;font-size:16px}.vp-case-note{font-size:12px;margin-top:15px}
.vp-method{padding-block:68px}.vp-method-layout{display:block}.vp-method h2{font-size:84px;margin-top:28px}.vp-method-intro>p:not(.vp-eyebrow){margin-top:24px;font-size:16px;max-width:300px}.vp-method-sign{display:none}.vp-steps{margin-top:42px}.vp-steps li{gap:12px;grid-template-columns:27px 1fr;padding-block:27px}.vp-steps h3{font-size:27px}.vp-steps li p:last-child{font-size:15px}
.vp-doors{margin-top:37px}.vp-door{grid-template-columns:1fr 32px;gap:22px 14px;padding-block:29px}.vp-door-title{grid-column:1}.vp-door-name{font-size:44px;margin-top:10px}.vp-door-detail{grid-column:1;grid-row:2;font-size:15px}.vp-door-action{grid-column:2;grid-row:1/3;align-self:start}.vp-door-action>span:first-child{display:none}.vp-door-action>span:last-child{font-size:30px}
.vp-about{display:block;padding-bottom:70px}.vp-about h2{font-size:44px;margin-top:25px}.vp-about p:not(.vp-eyebrow){font-size:16px;margin-top:22px}.vp-contact{padding-block:58px}.vp-contact-top{gap:20px}.vp-contact-top .vp-eyebrow{max-width:220px}.vp-contact-top>span{font-size:48px;line-height:.9}.vp-contact h2{font-size:clamp(49px,13.1vw,85px);margin-top:31px;line-height:1}.vp-contact h2 br:first-child{display:none}.vp-contact-bottom{display:block;margin-top:31px}.vp-contact-bottom>p{font-size:15px}.vp-contact-bottom .vp-cta{margin-top:27px;width:100%;max-width:400px}
.vp-footer{grid-template-columns:1fr 1fr;gap:28px 17px;padding-block:32px}.vp-footer p{font-size:11px}.vp-footer>div{grid-column:1/-1;padding-top:44px}.vp-back{grid-column:2;grid-row:2;justify-self:end;align-self:start;font-size:11px;gap:12px}
}
@media(max-width:359px){:root{--vp-gutter:20px}.vp-header-contact{display:none}.vp-hero h1{font-size:54px}.vp-number{font-size:88px}.vp-date{font-size:70px}.vp-case-measure{gap:18px}.vp-contact h2{font-size:44px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.vp-cta>span:last-child,.vp-door-action>span:last-child{transition:none}.vp-cta:hover>span:last-child,.vp-door:hover .vp-door-action>span:last-child{transform:none}.vp-horizon{animation:none}}
/* Ajustes de lectura comprobados en el teléfono. */
.vp-date>span{letter-spacing:-.035em;margin-left:3px}
.vp-theme-auto{min-width:44px}
@media(max-width:759px){.vp-footer>div{grid-column:1/-1;grid-row:2;padding-top:0}.vp-back{grid-column:1/-1;grid-row:3;justify-self:start}.vp-section-heading>p:last-child{justify-self:start}}
/* Dirección elegida por Juan: pieza tridimensional e interacción sutil. */
.vp-hero{padding-top:30px}
.vp-hero-layout{display:grid;grid-template-columns:.98fr 1.02fr;gap:0;align-items:center;min-height:620px}
.vp-hero-copy{position:relative;z-index:2;padding-block:38px}
.vp-hero-kicker{font-size:11px;margin-bottom:32px}
.vp-hero h1{font-size:clamp(66px,6.9vw,99px);line-height:.97;letter-spacing:-.045em}
.vp-hero h1>span{white-space:nowrap}
.vp-hero .vp-lead{font-size:18px;max-width:430px;margin-top:32px;line-height:1.6}
.vp-hero-action{margin-top:32px}
.vp-hero-foot{margin-top:20px;padding-block:27px;font-size:13px}
.vp-hero-foot strong{font-weight:700;color:var(--ink)}
.vp-scene{position:relative;width:100%;height:620px;isolation:isolate;color:var(--muted)}
.vp-scene canvas{position:relative;z-index:1;width:100%;height:100%;display:block;opacity:0}
.vp-scene[data-render="webgl"] canvas{opacity:1}
.vp-scene-fallback{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}
.vp-scene[data-render="webgl"] .vp-scene-fallback{display:none}
.vp-scene-orbit{position:absolute;inset:15% 5%;border:1px solid var(--line);border-radius:50%;transform:rotate(-25deg) scaleY(.6);z-index:-1}
.vp-scene-shadow{position:absolute;left:20%;right:20%;bottom:13%;height:8%;background:radial-gradient(ellipse,rgba(23,42,39,.2),transparent 67%);filter:blur(12px);z-index:0}
.vp-scene-label{position:absolute;z-index:2;font-size:11px;display:flex;gap:12px;align-items:center;background:var(--paper);padding:6px 0}
.vp-scene-label i{display:block;width:44px;height:1px;background:var(--line);position:relative}
.vp-scene-label i::after{content:"";position:absolute;width:4px;height:4px;right:0;top:-1.5px;background:var(--muted);border-radius:50%}
.vp-label-a{left:5%;top:20%}.vp-label-b{right:0;top:46%}.vp-label-c{left:9%;bottom:21%}
.vp-scene figcaption{position:absolute;bottom:8px;left:0;right:0;text-align:center;font-size:14px;color:var(--ink)}
.vp-scene figcaption span{display:block;font-size:11px;color:var(--muted);margin-top:3px}
.vp-section-heading h2{font-size:clamp(47px,4.8vw,69px)}
.vp-method h2{font-size:clamp(76px,7.5vw,108px)}
.vp-contact h2{font-size:clamp(49px,7vw,100px)}
@media(max-width:1100px) and (min-width:760px){.vp-hero-layout{min-height:500px}.vp-scene{height:500px}.vp-hero h1{font-size:6.8vw}.vp-scene-label{font-size:10px}.vp-scene-label i{width:22px}.vp-label-a{top:14%}}
@media(max-width:759px){
.vp-hero{padding-top:18px}.vp-hero-layout{display:flex;flex-direction:column;align-items:stretch;min-height:0}.vp-hero-copy{display:contents}.vp-hero-kicker{order:1;margin-bottom:24px;font-size:10px}.vp-hero h1{order:2;font-size:clamp(47px,12.7vw,82px);line-height:1;letter-spacing:-.04em}
.vp-scene{order:3;height:290px;margin-top:0;margin-bottom:9px;max-width:460px;align-self:center}.vp-scene canvas{height:100%}.vp-scene figcaption{font-size:12px;bottom:0}.vp-scene figcaption span{display:none}.vp-scene-label{font-size:10px}.vp-scene-label i{width:22px}.vp-label-a{top:18%;left:0}.vp-label-b{top:47%;right:0}.vp-label-c{bottom:19%;left:0}
.vp-hero .vp-lead{order:4;font-size:16px;line-height:1.6;margin-top:17px}.vp-hero-action{order:5;margin-top:23px}.vp-hero-foot{margin-top:32px;padding-block:0;font-size:11px}.vp-hero-foot a{margin-top:7px}.vp-section-heading h2{font-size:47px}.vp-method h2{font-size:80px}.vp-contact h2{font-size:49px}
}
@media(max-width:359px){.vp-hero h1{font-size:42px}.vp-scene{height:250px}}

/* Lo que hacemos: ocho líneas, misma tipografía que las puertas, un poco más chica porque son más */
.vp-services .vp-door-name{font-size:44px}
@media(max-width:759px){.vp-services .vp-door-name{font-size:36px}}
