/* V3.1 — dark editorial finish and subject-aware framing. */
:root{color-scheme:dark;--bg-warm:#1b1e1a;--bg-surface:#252923;--bg-card:#292c26;--text-muted:#c0bbaf;--border-warm:#45483c;--charcoal-900:#eee9dc;--charcoal-800:#eee9dc}
html,body{background:#1b1e1a;color:#eee9dc}main section:not(#inicio){background:#1d211c!important;color:#eee9dc}main #portafolio,main #cotizador,main .review-link-section{background:#151914!important}main #estudio,main #faq{background:#242720!important}main [class*="border-"]{border-color:#4b4c3e!important}
main [class*="text-[#1E1C1A]"],main [class*="text-[#2E2B27]"],main [class*="text-[#4A463F]"]{color:#eee9dc!important}main [class*="text-[#6E685F]"],main [class*="text-[#8A847A]"]{color:#c5c0b3!important}main [class*="text-[#A88349]"],main [class*="text-[#8A6836]"]{color:#dfbd84!important}
main .bg-white,main [class*="bg-[#FDFBF9]"],main [class*="bg-[#FAF8F5]"],main [class*="bg-[#F5EFEB]"],main .editorial-card{background:#292d26!important}main [class*="bg-[#EAE3D6]"]{background:#3a4033!important;color:#e5d2ae!important}.editorial-strip{background:#262b23;color:#d8c9ac;border-color:#484d3e}.gallery-disclaimer,.approach-copy p:not(.eyebrow){color:#c4c0b2}.approach-copy h2 em{color:#d6b47a}.dark-link{color:#dfc496}.btn-gold{background:#c7a66f!important;color:#161c15!important}.btn-gold:hover{background:#e0c391!important}.btn-outline-gold{color:#e5c792;border-color:#b79e72}.editorial-card:hover{background:#31372c!important;box-shadow:0 18px 35px #0003}
main input,main select,main textarea{background:#1d231c!important;color:#f1ecdf!important;border-color:#686b58!important;color-scheme:dark}main input::placeholder,main textarea::placeholder{color:#a7aa99!important}main .filter-btn{background:transparent!important;color:#cfcabb!important;border-color:#565846!important}.filter-btn.active{background:#c7a66f!important;color:#141a13!important;border-color:#c7a66f!important}
#cotizador>div>div.bg-white{background:#242a22!important}#cotizador .calc-option-card{background:#1b211b!important;color:#eee9dc!important}#cotizador .calc-option-card.selected{background:#3b4131!important;border-color:#d0b278!important;box-shadow:inset 3px 0 #d0b278}#cotizador .lg\:col-span-5{background:#11170f!important}#cotizador label:has(input:checked){background:#3b4131!important;border-color:#d0b278!important}.calc-option-card{transition:background .25s,border-color .25s,box-shadow .25s}#calc-total-display.total-updated{animation:total-glow .45s ease-out}@keyframes total-glow{50%{color:#fff1c8;transform:translateY(-3px)}}
.wedding-hero{background:#141a15;min-height:850px;min-height:max(850px,100svh)}.hero-image{left:35%;width:65%;height:100%;object-position:88% 50%;transform:none!important}.hero-shade{background:linear-gradient(90deg,#141a15 23%,#141a15f0 35%,#141a153b 52%,transparent 75%),linear-gradient(0deg,#141a15b8,transparent 28%,#141a1530)}.hero-content{pointer-events:none}.hero-content>*{max-width:44%;pointer-events:auto}.hero-content h1{font-size:clamp(66px,6.7vw,102px)}.hero-content .hero-description{max-width:360px}.hero-content .hero-actions{max-width:440px}.hero-bottom{z-index:2}.approach-image{aspect-ratio:4/5;height:auto;background:#171d16}.approach-image img{object-position:90% 50%;transform:none!important}
/* Preserve original picture bounds: no shared fixed-height crop or hover zoom. */
#gallery-grid{display:block;columns:2;column-gap:24px}#gallery-grid .gallery-tile{break-inside:avoid;display:block;width:100%;height:auto!important;margin:0 0 24px;position:relative;background:#11170f!important}.gallery-tile>img{width:100%;height:auto!important;max-height:none;object-fit:contain!important;object-position:center!important;transform:none!important;display:block;filter:saturate(.85);transition:filter .5s}.gallery-tile:hover>img,.gallery-tile:focus-visible>img{filter:saturate(1)}.gallery-tile:focus-visible>div{opacity:1!important}.gallery-tile>div{pointer-events:none}#studio-services-grid .img-editorial-zoom{height:auto!important}#studio-services-grid .img-editorial-zoom img{height:auto!important;object-fit:contain!important;object-position:center!important;transform:none!important}#studio-services-grid .img-editorial-zoom>.absolute{position:static!important;padding:14px 18px}#studio-services-grid .img-editorial-zoom>.bg-gradient-to-t{display:none}
#lightbox{visibility:hidden}#lightbox.active{visibility:visible}#lightbox-image{object-fit:contain!important;object-position:center;touch-action:pan-y}#lightbox-container{max-height:90svh}#lightbox-image{max-height:65svh}#lightbox-close{top:0!important;right:0!important;z-index:2;background:#111b}.desktop-nav a{position:relative}.desktop-nav a.is-current:not(.nav-cta)::after{content:'';position:absolute;bottom:3px;left:0;width:100%;height:1px;background:#d5b77f}.desktop-nav a.is-current{color:#e0bd7d}.hero-button,.nav-cta,.dark-link{transition:background .25s,color .25s,border-color .25s}.dark-link:hover{color:#fff2d9;border-color:#ead09f}
.reveal-pending{opacity:0;transform:translateY(18px)}.reveal-in{opacity:1;transform:none;transition:opacity .65s ease,transform .65s ease}
@media(max-width:1050px) and (min-width:781px){.hero-content h1{font-size:70px}.hero-content .hero-description{max-width:320px}.hero-actions{flex-wrap:wrap;gap:16px}}
@media(max-width:780px){.wedding-hero{min-height:0;display:block;padding-top:82px}.hero-image{top:82px;left:0;width:100%;height:470px;object-position:90% 50%}.hero-shade{top:82px;height:470px;background:linear-gradient(0deg,#141a15,transparent 42%),linear-gradient(180deg,#141a1544,transparent 35%)}.hero-content{margin:0;padding:430px 7% 95px}.hero-content>*{max-width:100%!important}.hero-content h1{font-size:clamp(62px,12vw,82px)}.hero-content .eyebrow{font-size:11px}.hero-content .hero-description{max-width:400px!important}.hero-bottom{bottom:23px}.approach-image{aspect-ratio:4/5;height:auto}#gallery-grid{columns:1}.gallery-tile>div{opacity:1!important;position:relative!important;background:#252c22!important;padding:20px!important}.gallery-tile>div p{display:none}.gallery-tile>div .mt-3{margin-top:8px}#calc-total-display{font-size:36px!important}}
@media(prefers-reduced-motion:reduce){.reveal-pending,.reveal-in{opacity:1!important;transform:none!important}#calc-total-display.total-updated{animation:none!important}}
