/* V3: editorial wedding direction, preserving the original calculator. */
:root{--ink:#201f1b;--gold:#d3b47d}
body{margin:0}section[id]{scroll-margin-top:100px}.skip-link{position:fixed;left:15px;top:-100px;z-index:100;background:white;padding:15px}.skip-link:focus{top:15px}
.editorial-nav{position:absolute;top:0;left:0;right:0;z-index:45;color:#fff;border-bottom:1px solid #ffffff30;background:transparent;transition:background .25s}
.editorial-nav.is-scrolled{position:fixed;background:#201f1bf5;box-shadow:0 2px 15px #0002}
.nav-inner{max-width:1440px;margin:auto;height:100px;padding:0 6%;display:flex;justify-content:space-between;align-items:center;gap:28px}
.brand{display:flex;align-items:center;gap:14px;font-family:var(--font-serif);font-size:25px;line-height:1.1;color:white}.brand small{display:block;font:10px var(--font-sans);letter-spacing:2.7px;margin-top:8px}.monogram{display:grid;place-items:center;border:1px solid #fff8;border-radius:50%;height:43px;width:43px;font-size:16px;flex-shrink:0}
.desktop-nav{display:flex;align-items:center;gap:30px;font-size:12px;letter-spacing:1.3px;text-transform:uppercase}.desktop-nav a{padding:12px 0}.desktop-nav a:hover{color:var(--gold)}.desktop-nav .nav-cta{padding:14px 20px;border:1px solid #fff8}
#mobile-menu-btn{display:none;color:white;padding:12px;font-size:14px}#mobile-menu{background:var(--ink);padding:22px 6%}#mobile-menu a{display:block;padding:14px 0;color:white;border-bottom:1px solid #ffffff20}
.wedding-hero{position:relative;min-height:790px;min-height:max(790px,100svh);display:flex;align-items:center;background:#282922;color:white;overflow:hidden}.hero-image{position:absolute;width:100%;height:100%;inset:0;object-fit:cover;object-position:center 52%}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(12,17,15,.77),rgba(12,17,15,.28) 48%,rgba(12,17,15,.04) 76%),linear-gradient(0deg,#11181166,transparent 30%,#1417123b)}
.hero-content{position:relative;width:100%;max-width:1440px;margin:60px auto 0;padding:100px 6% 115px}.eyebrow{font-size:12px;letter-spacing:2.4px;line-height:1.8;font-weight:500;margin-bottom:26px}.hero-content h1{font-family:var(--font-serif);font-size:clamp(68px,7.7vw,116px);font-weight:400;line-height:.99;letter-spacing:-3px;margin:0 0 28px}.hero-content h1 em{color:#e0bd7d;font-weight:400}.hero-description{font-size:16px;max-width:385px;line-height:1.8;color:#f4f1e8;margin-bottom:32px}.hero-actions{display:flex;gap:28px;align-items:center}.hero-button{padding:18px 24px;background:#d5b77f;color:#1d211d;display:flex;gap:30px;font-size:12px;font-weight:600;letter-spacing:1px;text-transform:uppercase}.hero-button:hover{background:#f0d5a6}.hero-text-link{font-size:14px;border-bottom:1px solid #ffffff88;padding:8px 0}.hero-bottom{position:absolute;bottom:26px;left:6%;right:6%;display:flex;justify-content:space-between;font-size:10px;letter-spacing:2px;color:#ffffffe0}.hero-bottom a{font-size:12px}
.editorial-strip{display:flex;justify-content:space-around;gap:20px;padding:30px 6%;font-size:11px;letter-spacing:2px;border-bottom:1px solid #d8d2c6;background:#f7f5ef}
main h2.font-heading-luxury{font-family:var(--font-serif);font-weight:400!important;font-size:clamp(38px,4vw,58px);line-height:1.1;letter-spacing:-1px}main h3{font-weight:500!important}main .rounded-3xl,main .rounded-2xl{border-radius:3px!important}main .shadow-xl,main .shadow-2xl{box-shadow:none!important}.btn-gold{background:#292c25!important;color:#fff!important;border-radius:2px!important;box-shadow:none!important}.btn-outline-gold{border-radius:2px!important}.text-xs{font-size:.875rem}.text-sm{font-size:1rem}.text-\[10px\],.text-\[11px\]{font-size:.75rem}.gallery-disclaimer{font-size:14px;color:#686257;text-align:center;margin-bottom:28px}
#portafolio{background:#eeeee7!important}#gallery-grid{gap:18px!important}#gallery-grid>div{border-radius:2px!important}.filter-btn{border-radius:0!important}
#cotizador{background:#e8e8df!important}#cotizador>div>div.bg-white{padding:clamp(22px,4vw,52px)!important;border:0;box-shadow:none!important}#cotizador .lg\:col-span-5{background:#272c26!important;border:0;padding:34px!important;align-self:start;position:sticky;top:120px;color:white!important}#cotizador .lg\:col-span-5 h3,#cotizador .lg\:col-span-5 [id^=calc-summary]{color:#fff!important}#cotizador .lg\:col-span-5 span,#cotizador .lg\:col-span-5 p{color:#dbdcd1!important}#calc-total-display{color:#e5c792!important;font-size:42px!important;font-weight:400!important}#calc-submit-wa{background:#d5b77f!important;color:#20271e!important;border-radius:2px!important;box-shadow:none!important}#calc-submit-wa span{color:#20271e!important}.calc-option-card{width:100%;text-align:left;cursor:pointer;border-radius:2px!important}.calc-option-card.selected{background:#f1eee4!important;border-color:#7b6d51!important;box-shadow:inset 3px 0 #7b6d51}.calc-option-card:focus-visible,a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #a58345!important;outline-offset:4px}#cotizador label{line-height:1.6}#cotizador input{font-size:16px!important}#calc-feedback{font-size:14px;line-height:1.6;margin-top:18px;color:#fff}
.approach-section{padding:110px 8%;display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center;background:#f9f7f1}.approach-image{height:580px;overflow:hidden}.approach-image img{width:100%;height:100%;object-fit:cover;object-position:76% center}.approach-copy h2,.review-link-section h2{font-family:var(--font-serif);font-size:clamp(40px,4vw,60px);line-height:1.08;margin-bottom:30px;font-weight:400}.approach-copy h2 em{color:#8e754e}.approach-copy p:not(.eyebrow){font-size:16px;line-height:1.9;color:#656358;margin-bottom:20px}.dark-link{display:inline-block;margin-top:18px;padding-bottom:9px;border-bottom:1px solid #8d8068;font-size:14px}.review-link-section{text-align:center;padding:80px 6%;background:#efeee7}.demo-disclaimer{margin:35px auto 0;padding:24px;max-width:1100px;font-size:12px;line-height:1.8;text-align:center;color:#d3cfbf;border-top:1px solid #ffffff22}.whatsapp-pulse-btn{animation:none!important}
@media(max-width:1050px){.desktop-nav{gap:18px}.brand{font-size:22px}.nav-inner{padding:0 5%}.hero-content{padding-left:6%}.hero-content h1{font-size:86px}.approach-image{height:480px}}
@media(max-width:780px){.desktop-nav{display:none}#mobile-menu-btn{display:block}.nav-inner{height:82px}.brand{font-size:20px}.brand small{font-size:9px;letter-spacing:1.6px}.monogram{height:36px;width:36px;font-size:14px}.wedding-hero{min-height:820px;min-height:max(820px,100svh)}.hero-image{object-position:65% center}.hero-shade{background:linear-gradient(90deg,#1018109c,#10181022),linear-gradient(0deg,#101810de,transparent 80%)}.hero-content{padding:170px 7% 110px;margin:0;align-self:flex-end}.hero-content h1{font-size:clamp(60px,12vw,85px);letter-spacing:-2px}.hero-description{max-width:330px}.hero-content .eyebrow{max-width:250px;font-size:10px}.hero-actions{gap:18px;flex-wrap:wrap}.hero-button{font-size:11px;padding:16px 18px}.hero-bottom{font-size:9px;letter-spacing:1px}.editorial-strip{flex-wrap:wrap;font-size:10px;padding:22px}.editorial-strip span:last-child{display:none}.approach-section{grid-template-columns:1fr;padding:65px 7%;gap:45px}.approach-image{height:420px}.approach-copy h2{font-size:44px}#cotizador .lg\:col-span-5{position:static;padding:24px!important}#calc-total-display{font-size:36px!important}.review-link-section{padding:65px 7%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation:none!important;transition:none!important}}
