/* A cinematic, bilingual exploration layer. Existing portfolio remains intact. */
.hero{min-height:920px;min-height:max(820px,100svh)}
.hero__inner{width:100%;padding-bottom:120px}
.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}
.hero__scroll{display:none}
.life-section{padding:clamp(64px,8vw,110px) 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}
@media(min-width:1180px) and (max-width:1350px){.nav__inner{padding-left:28px;padding-right:28px}.nav__links{gap:15px}.nav__logo{width:160px}}
@media(max-width:1000px){.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:max(620px,100svh);align-items:flex-end}.hero__inner{padding-top:130px;padding-bottom:120px}.hero__title{font-size:clamp(3.5rem,12vw,5rem);max-width:100%}.hero__sub{font-size:15px;max-width:95%!important}.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){.life-card:hover>img{transform:none}}
