/* A cinematic, bilingual exploration layer. Existing portfolio remains intact. */
.hero{min-height:920px;min-height:max(820px,100svh)}
.hero__inner{width:100%;padding-bottom:190px}
.hero__title{font-size:clamp(3.4rem,6.5vw,6.2rem);line-height:.96;letter-spacing:-.035em}
.hero__title .line:nth-child(3){display:none}
.hero__sub{max-width:440px!important}
.hero__mark{opacity:.055}
.horizon-backdrop{position:absolute;inset:0;z-index:0;pointer-events:none}
.horizon-backdrop img{position:absolute;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.045);transition:opacity .85s ease,transform 5s ease}
.hero[data-horizon="coast"] [data-landscape="coast"],.hero[data-horizon="mountain"] [data-landscape="mountain"]{opacity:1;transform:scale(1)}
.hero[data-horizon="coast"] .hero__video,.hero[data-horizon="mountain"] .hero__video{opacity:0!important}
.horizon-picker{position:absolute;z-index:3;right:max(48px,calc((100vw - 1144px)/2));bottom:195px;width:340px;color:#fff}
.horizon-picker>p{font-size:10px;letter-spacing:.22em;margin:0 0 18px}
.horizon-picker__buttons{display:flex;gap:10px}
.horizon-picker button{position:relative;width:106px;height:138px;padding:0;border:1px solid #ffffff50;background:#211a17;color:#fff;cursor:pointer;overflow:hidden;transition:transform .3s,border-color .3s}
.horizon-picker button img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.5;transition:opacity .3s,transform .6s}
.horizon-picker button span{position:absolute;bottom:12px;left:10px;font:500 12px var(--sans)}
.horizon-picker button small{position:absolute;top:8px;left:10px;font-size:10px}
.horizon-picker button[aria-pressed="true"]{border-color:var(--ambar);transform:translateY(-8px)}
.horizon-picker button[aria-pressed="true"] img,.horizon-picker button:hover img{opacity:.85;transform:scale(1.05)}
.horizon-picker>a{display:inline-block;color:#fff;font-size:12px;margin-top:18px;text-decoration:none;border-bottom:1px solid #ffffff60;padding-bottom:5px}
.hero__scroll{display:none}
.life-section{padding:30px 0 110px;background:var(--marfil)}
.life-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;margin-bottom:46px}
.life-heading h2,.plan-layout h2{font:500 clamp(3rem,5.5vw,5.4rem)/.98 var(--serif);letter-spacing:-.035em;margin:18px 0 0}
.life-heading h2 em,.plan-layout h2 em{font-weight:500;color:var(--terracota)}
.life-heading>p{max-width:310px;color:var(--piedra);font-size:16px;margin-bottom:5px}
.life-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.life-card{display:block;position:relative;isolation:isolate;min-height:490px;overflow:hidden;color:#fff;text-decoration:none;background:var(--oscuro)}
.life-card:nth-child(2){margin-top:50px;margin-bottom:-25px}
.life-card:nth-child(3){margin-top:100px;margin-bottom:-50px}
.life-card>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transition:transform 1s cubic-bezier(.2,.6,.2,1)}
.life-card:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,#17121030 10%,#17121010 30%,#171210e8 100%)}
.life-card:hover>img,.life-card:focus-visible>img{transform:scale(1.06)}
.life-card__number{position:absolute;top:25px;left:25px;font-size:11px;letter-spacing:.16em;text-transform:uppercase}
.life-card__copy{position:absolute;bottom:30px;left:26px;right:26px}
.life-card h3{font:500 38px/1.05 var(--serif);margin:0 0 15px}
.life-card p{font-size:13px;line-height:1.7;color:#ffffffe0;margin:0 0 25px}
.life-card__link{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #ffffff60;padding-top:18px;font-size:12px}
.life-card__link b{font-size:25px;font-weight:400;transition:transform .3s}
.life-card:hover b{transform:translate(3px,-3px)}
.life-caption{margin:80px 0 0;font-size:11px;color:var(--piedra)}
.plan-section{background:#e9dfd2;padding:110px 0;position:relative;overflow:hidden}
.plan-layout{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}
.plan-intro{max-width:330px;margin:28px 0;color:var(--piedra)}
.plan-signature{display:block;font-size:10px;letter-spacing:.12em;text-transform:uppercase;margin-top:65px;color:var(--piedra)}
.plan-builder{border-top:1px solid #88776970;padding-top:25px}
.plan-fields{display:grid;gap:22px}
.plan-fields label>span{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.12em;margin-bottom:8px}
.plan-fields select{width:100%;border:0;border-bottom:1px solid #88776970;border-radius:0;background:transparent;color:var(--carbon);padding:10px 30px 12px 0;font:500 19px var(--sans);cursor:pointer}
.plan-summary{padding:25px 0 15px}
.plan-summary>span{font-size:10px;letter-spacing:.14em;color:var(--terracota)}
.plan-summary p{font:500 24px/1.35 var(--serif);min-height:65px;margin:10px 0}
.plan-builder .btn{width:100%;justify-content:space-between}
.plan-note{font-size:11px;color:var(--piedra);margin:14px 0 0}
.horizon-picker button:focus-visible,.life-card:focus-visible,.plan-fields select:focus-visible{outline:3px solid var(--ambar);outline-offset:5px}
@media(min-width:1180px) and (max-width:1350px){.nav__cta{display:none}.nav__inner{padding-left:28px;padding-right:28px}.nav__links{gap:15px}.nav__logo{width:160px}}
@media(max-width:1000px){.horizon-picker{right:32px;width:290px}.horizon-picker button{width:90px;height:122px}.hero__title{font-size:clamp(3.8rem,7vw,5.5rem)}.hero__sub{max-width:380px!important}.plan-layout{gap:40px}.life-card{min-height:430px}.life-card h3{font-size:32px}.life-card__copy{left:20px;right:20px}}
@media(max-width:767px){.hero{min-height:950px;align-items:flex-start}.hero__inner{padding-top:155px;padding-bottom:330px}.hero__title{font-size:clamp(3.5rem,12vw,5rem);max-width:100%}.hero__sub{font-size:15px;max-width:95%!important}.hero__cta{gap:12px;margin-top:24px}.hero__cta .btn{font-size:11px}.horizon-picker{left:24px;right:24px;bottom:62px;width:auto}.horizon-picker__buttons{gap:12px}.horizon-picker button{width:calc((100% - 24px)/3);max-width:140px;height:100px}.horizon-picker>p{margin-bottom:14px}.horizon-picker>a{margin-top:12px}.life-section{padding:35px 0 65px}.life-heading{display:block;margin-bottom:30px}.life-heading>p{margin-top:24px}.life-grid{grid-template-columns:1fr;gap:18px}.life-card,.life-card:nth-child(2),.life-card:nth-child(3){margin:0;min-height:390px}.life-card__copy{left:25px;right:25px}.life-card h3{font-size:39px}.life-card p{max-width:32ch}.life-caption{margin-top:20px}.plan-section{padding:65px 0}.plan-layout{grid-template-columns:1fr;gap:35px}.plan-signature{display:none}.plan-layout h2{font-size:3.3rem}.plan-summary p{min-height:0}}
@media(prefers-reduced-motion:reduce){.horizon-backdrop img,.horizon-picker button,.horizon-picker button img,.life-card>img,.life-card__link b{transition:none!important}.life-card:hover>img{transform:none}}
