:root{--primary-black:#000;--primary-gold:#a67c52;--primary-white:#fff;--phoenix-pink:#ee3988;--phoenix-blue:#1768ca;--accent-red:#e63946;--accent-orange:#ff6b35;--background:#000;--foreground:#fff;--card:#111;--border:rgba(166,124,82,.25);color-scheme:dark}
html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0}*,*::before,*::after{box-sizing:border-box}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:wait;opacity:.65}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--phoenix-pink);outline-offset:4px}input,textarea,select{min-width:0}img{max-width:100%}[hidden]{display:none!important}.sr-only,.dyvo-honeypot{position:absolute!important;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.dyvo-skip{position:fixed;top:-100px;left:16px;z-index:9999999;background:#a67c52;color:#000;padding:14px 20px;border-radius:4px}.dyvo-skip:focus{top:12px}.logo{color:var(--primary-gold);text-decoration:none;flex-shrink:0}.logo img{flex-shrink:0}.nav-links a[aria-current=page]{color:var(--primary-gold)}nav{z-index:1100!important}.mobile-menu-toggle{border:0;background:transparent;padding:6px;min-width:44px;min-height:44px}.contact-info a{color:inherit;text-decoration:none}.contact-info a:hover{color:var(--primary-gold)}.contact-info{overflow-wrap:anywhere}
.dyvo-contact-form{max-width:800px;margin:3rem auto 0;padding:2rem;background:linear-gradient(135deg,#151515,#080808);border:1px solid var(--border);border-radius:12px;text-align:left}.dyvo-contact-form h3{font-family:'Playfair Display',serif;color:var(--primary-gold);font-size:1.75rem;margin:0 0 1.5rem}.dyvo-contact-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.dyvo-contact-form .form-group{margin-bottom:1.3rem}.dyvo-contact-form .form-group label{display:block;margin-bottom:.55rem;color:#ddd;font-size:14px}.dyvo-contact-form .form-group input,.dyvo-contact-form .form-group select,.dyvo-contact-form .form-group textarea{width:100%;padding:13px 14px;background:#0c0c0c;color:#fff;border:1px solid #444;border-radius:5px;font-size:16px;min-height:46px}.dyvo-contact-form .form-group textarea{resize:vertical;min-height:110px}.dyvo-contact-form .form-group input[type=file]{font-size:14px}.dyvo-contact-form .submit-btn{background:linear-gradient(135deg,#a67c52,#8a6a42);color:#000;border:0;border-radius:5px;padding:14px 26px;font-weight:700;min-height:48px}.dyvo-consent{display:flex;align-items:flex-start;gap:10px;font-size:14px;color:#ccc;margin:1rem 0}.dyvo-consent input{margin-top:4px;accent-color:#a67c52;min-width:18px;min-height:18px}.dyvo-form-status{min-height:24px;margin:1rem 0;color:#ddd;font-size:14px}.dyvo-form-status[data-state=error]{color:#ff8d96}.dyvo-form-status[data-state=success]{color:#8cddb3}
.phoenix-ia-button{padding:0;overflow:hidden;z-index:1200!important;background:radial-gradient(circle at 30% 30%,#ff8c42,#e63946);border:3px solid #ffb84d;box-shadow:0 0 30px rgba(255,107,53,.6),inset 0 0 20px rgba(255,255,255,.1)}.phoenix-ia-button img{display:block;width:100%;height:100%;object-fit:cover}.phoenix-chat-modal{z-index:1201!important;max-height:calc(100dvh - 140px);color-scheme:light}.phoenix-chat-header{flex-shrink:0}.phoenix-chat-toolbar{display:flex;gap:8px;align-items:center;padding:8px 12px;background:#fff;border-bottom:1px solid #eee}.phoenix-chat-toolbar select{flex:1;width:0;background:#fff;border:1px solid #ddd;color:#333;border-radius:5px;padding:7px;font-size:14px}.phoenix-chat-toolbar button{width:34px;height:34px;border:1px solid #e7e7e7;border-radius:5px;background:#fff;color:#a66a40}.phoenix-chat-messages{min-height:0;overscroll-behavior:contain}.phoenix-message{position:relative}.phoenix-message p{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.55}.phoenix-chat-input-area{flex-shrink:0}.phoenix-input{min-width:0;color:#171717;background:#fff;font-size:16px!important}.phoenix-history{max-height:180px;overflow:auto;background:#fff;border-bottom:1px solid #ddd;padding:8px;flex-shrink:0}.phoenix-history button{display:block;width:100%;padding:10px;text-align:left;background:#f7f7f7;border:0;border-radius:4px;margin-bottom:5px;color:#222;font-size:14px}.phoenix-feedback{display:flex;gap:5px;margin:-3px 0 10px 2px}.phoenix-feedback button{border:0;background:transparent;color:#777;font-size:12px;padding:4px 6px}.phoenix-feedback button[aria-pressed=true]{color:#c94d22}.phoenix-typing{color:#666;font-size:14px;padding:8px 0}.phoenix-chat-close{min-width:32px;min-height:32px}
.blog-card h3 a{color:inherit;text-decoration:none}.blog-card h3 a:hover{color:var(--primary-gold)}.blog-filters{flex-wrap:wrap}.blog-card-video iframe{width:100%;height:100%;border:0}.blog-card[hidden]{display:none!important}.project-detail{max-width:1000px;margin:auto}.project-detail .blog-card-video{height:auto;aspect-ratio:16/9}.project-detail .blog-card h3{font-size:clamp(1.5rem,3vw,2.2rem)}.project-back{display:inline-block;color:var(--primary-gold);margin:0 0 2rem;text-decoration:none}.legal-section{scroll-margin-top:110px}.legal-sidebar a[aria-current=true]{color:var(--primary-gold)}.legal-text{min-width:0}.legal-text p{overflow-wrap:anywhere}
.dyvo-gallery-dialog{padding:0;border:1px solid rgba(166,124,82,.6);border-radius:8px;background:#080808;color:#fff;max-width:min(94vw,1200px);max-height:92dvh;overflow:hidden}.dyvo-gallery-dialog::backdrop{background:rgba(0,0,0,.9);backdrop-filter:blur(5px)}.dyvo-gallery-dialog img{display:block;width:auto;max-width:92vw;max-height:80dvh;object-fit:contain}.dyvo-gallery-dialog p{padding:12px 20px;margin:0;color:#ccc}.dyvo-gallery-dialog button{position:absolute;right:10px;top:10px;width:42px;height:42px;border:1px solid #888;border-radius:50%;background:#000b;color:white;font-size:24px}.gallery-item{cursor:zoom-in}.gallery-item:focus-visible{outline:2px solid var(--primary-gold);outline-offset:4px}
.pop_up-realwidget_section{display:flex;flex-direction:column}.pop_up-realwidget_section iframe{flex:1;min-height:0}.financing-external-link{display:block;flex-shrink:0;padding:10px 42px 10px 12px;background:#fff;font-size:14px;text-align:center;color:#054079;text-decoration:underline}.pop_up-realwidget_close{border:0}.enhancify-links{display:flex;gap:24px;justify-content:center;margin:1rem 0 2rem}.enhancify-links a{color:#a67c52;font-size:14px}.floating-button{text-decoration:none;color:white;display:flex;align-items:center;justify-content:center}.chart-container canvas{max-width:100%;display:block}.calculator-wrapper{margin-bottom:2rem}.result-values[aria-live]{min-height:0}.credit-bar-container.visible{color:#111!important}.credit-bar-container .credit-bar-label{font-weight:700}.credit-bar-container .credit-bar-range{font-size:14px}.dyvo-not-found{min-height:70vh;padding:200px 24px 80px;text-align:center}.dyvo-not-found h1{font-family:'Playfair Display',serif;color:#a67c52;font-size:clamp(2rem,6vw,4rem)}.dyvo-not-found>a{display:inline-block;margin-top:20px;padding:12px 24px;background:#a67c52;color:black;text-decoration:none}
html[data-page=enhancify] body{display:block;overflow:auto}html[data-page=enhancify] nav{position:fixed;top:0;left:0;width:100%;display:flex;align-items:center;justify-content:space-between;background:#050505;border-bottom:1px solid #3b2c1e}html[data-page=enhancify] .logo{display:flex;align-items:center;font-weight:700}html[data-page=enhancify] .nav-links{list-style:none;display:flex;align-items:center}html[data-page=enhancify] .nav-links a{color:white;text-decoration:none}html[data-page=enhancify] main{min-height:85vh;padding-top:130px}html[data-page=enhancify] footer{text-align:center;padding:28px;color:#888;font-size:14px}html[data-page=enhancify] footer a{color:#a67c52}html[data-page=enhancify] footer p{margin:12px 0}

/* Fidelity corrections against the original v72.2 layout. */
nav .nav-links{margin:0;padding:0;min-width:0}
nav .nav-links li{margin:0;padding:0}
nav .mobile-menu-toggle{color:#a67c52;position:relative;z-index:9999}
.hero-content{width:100%;max-width:800px;min-width:0;padding:0}
.hero::before{background:transparent}
.hero h1,.hero p{text-shadow:2px 2px 4px #000b,-2px -2px 4px #000b,2px -2px 4px #000b,-2px 2px 4px #000b}
.pop_up-realwidget_close::after{content:none!important}
body.dyvo-menu-open{overflow:hidden}
.blog-card-video{position:relative;padding-bottom:0}
.dyvo-video-link{position:absolute;bottom:0;left:0;right:0;padding:7px 12px;background:#15110ded;color:#dec4a5;font:12px Montserrat,sans-serif;text-align:right;opacity:0;transition:opacity .2s;text-decoration:none}
.blog-card-video:hover .dyvo-video-link,.blog-card-video:focus-within .dyvo-video-link{opacity:1}
@media(min-width:1200px){
 nav{padding:1rem 2rem!important;gap:0}
 .logo{font-size:1.5rem!important;gap:8px!important;white-space:normal;flex-shrink:1}
 .logo img{height:50px!important;max-width:none}
 .nav-links{gap:0!important;flex-wrap:nowrap}
 .nav-links a{font-size:.9rem!important;letter-spacing:1px;white-space:normal;padding:15px 20px!important;display:block!important}
 .language-selector-desktop{gap:5px!important}
 .mobile-controls,.mobile-menu-toggle{display:none!important}
}
@media(min-width:1600px){.logo{white-space:nowrap}.nav-links{gap:20px!important}}
@media(max-width:1199px){
 nav{padding:.8rem 1.5rem!important;gap:0}
 .logo{font-size:1.5rem!important;white-space:normal;gap:8px!important;flex-shrink:1}
 .logo img{height:40px!important;max-width:none}
 .mobile-controls{display:flex!important;align-items:center;gap:12px;flex-shrink:0}
 .mobile-menu-toggle{display:block!important;padding:0;min-width:32px;min-height:44px;font-size:1.8rem!important}
 .nav-links{display:none!important;position:fixed!important;top:0!important;left:0!important;right:0!important;width:100%!important;height:100dvh!important;background:#000!important;padding:80px 32px!important;flex-direction:column!important;justify-content:flex-start!important;align-items:stretch!important;gap:20px!important;overflow-y:auto!important;z-index:2000!important}
 .nav-links.active{display:flex!important}
 .nav-links li{width:100%!important;margin:16px 0!important}
 .nav-links a{display:block!important;font-size:1.2rem!important;line-height:1.6;padding:15px 20px!important;border-bottom:1px solid rgba(166,124,82,.2)}
 .nav-links .language-selector-desktop{display:none!important}
 .language-selector-mobile .lang-btn{font-size:12.8px!important}
 .language-selector-mobile{display:flex!important}
 .hero h1{font-size:clamp(2.5rem,8vw,4.5rem)!important}
 .legal-content{gap:24px!important}
}
@media(max-width:767px){
 nav{max-width:100vw;overflow:hidden;padding:12px 14px!important}
 .logo{min-width:0;font-size:1.1rem!important;line-height:1.15;gap:6px!important}
 .logo img{height:34px!important}
 .mobile-controls{gap:6px;min-width:0}
 .hero{height:auto!important;min-height:90vh!important;margin-top:80px!important;padding:40px 20px!important;background-attachment:fixed}
 .hero-content{width:100%!important;max-width:100%!important;min-width:0!important}
 .hero h1{font-size:1.8rem!important;line-height:1.2!important;width:100%;max-width:100%;overflow-wrap:anywhere}
 .hero p{font-size:16px!important;line-height:1.6!important}
 .services,.projects,.contact,.social-section{padding-left:20px!important;padding-right:20px!important}
 .services-grid,.values-grid,.gallery,.contact-grid,.dyvo-contact-form .form-row{grid-template-columns:1fr!important}
 .contact-grid{gap:12px!important}
 .dyvo-contact-form{padding:22px}
 .legal-content{display:block!important}
 .legal-sidebar{position:static!important;margin-bottom:28px}
 .familia-section,.blog-section{padding:40px 20px!important}
 .familia-content{padding:0!important}
 .phoenix-chat-modal{width:calc(100vw - 20px)!important;right:10px!important;bottom:100px!important;height:400px!important;max-height:calc(100dvh - 120px)}
 .phoenix-ia-button{right:20px!important;bottom:20px!important;width:60px!important;height:60px!important;background:radial-gradient(circle at 30% 30%,#ff8c42,#e63946)}
 .phoenix-ia-button img{width:50px!important;height:50px!important;border-radius:50%}
 .enhancify-links{flex-wrap:wrap;padding:12px}
 footer{padding-left:20px!important;padding-right:20px!important}
 footer a{display:inline-block;padding:8px}
 html[data-page=blog] nav{display:flex!important;flex-flow:row nowrap!important;align-items:center!important;justify-content:space-between!important}
 html[data-page=blog] nav .logo{width:auto!important;flex:0 1 auto!important}
 html[data-page=blog] nav .mobile-controls{width:auto!important;flex:0 0 auto!important}
 html[data-page=financiamiento] nav{padding:10px 12px!important;overflow:visible}
 html[data-page=financiamiento] nav .container{display:flex!important;flex-direction:column!important;gap:8px;width:100%;max-width:100%}
 html[data-page=financiamiento] nav .logo{display:block;width:100%!important;text-align:center;font-size:1.1rem!important;line-height:1.2}
 html[data-page=financiamiento] nav ul{display:flex;width:100%;gap:14px;justify-content:flex-start;overflow-x:auto;padding:0 2px 4px;font-size:.78rem;white-space:nowrap;scrollbar-width:thin}
 html[data-page=financiamiento] main{margin-top:118px!important;padding:16px!important}
 html[data-page=financiamiento] .hero{padding:32px 16px!important}
}
@media(max-width:359px){nav{padding:12px!important}.logo{font-size:1.1rem!important}.mobile-controls{gap:6px}.logo img{height:34px!important}}
/* Finance keeps its original two-row sticky navigation and 900px panel. */
html[data-page=financiamiento] body{font-family:'Fira Sans',Arial,sans-serif}
html[data-page=financiamiento] main{padding:32px 16px}
html[data-page=financiamiento] .logo{font-size:1.2rem!important}
.calculator-wrapper{max-width:900px!important;width:100%!important;margin:0!important}
.calculator-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:48px}
.calculator-grid>div{min-width:0}
.slider-container input[type=range]{min-width:0;width:0;flex:1}
.slider-container input[type=text]{width:62%;max-width:62%;min-width:0}
.result-values{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.result-item{min-width:0;padding:16px}
.result-item .value{font-size:1.5rem!important;white-space:nowrap}
.chart-container{height:350px;margin-bottom:32px}
.chart-container canvas{height:auto!important}
.result-title{margin-bottom:16px}
.credit-bar-container.visible{display:flex!important}
.credit-bar-container .credit-bar-label,.credit-bar-container .credit-bar-title{color:#161616}
.credit-bar-container .credit-bar-range,.credit-bar-container .credit-bar-apr{color:#161616}
html[data-page=financiamiento] .phoenix-ia-button{bottom:110px!important}
html[data-page=legal] .logo{color:#fff}
@media(min-width:1200px){
 html[data-page=financiamiento] nav{padding:16px 5%!important;gap:32px}
 html[data-page=financiamiento] .logo{width:100%}
 html[data-page=financiamiento] .nav-links{gap:32px!important;flex:1}
 html[data-page=financiamiento] .nav-links a{padding:0!important;white-space:nowrap}
 html[data-page=financiamiento] .language-selector-desktop .lang-btn{padding:8px 12px!important}
}
@media(max-width:959px){.calculator-grid{grid-template-columns:1fr!important;gap:32px}.calculator-wrapper{padding:32px!important}}
@media(max-width:767px){
 html[data-page=financiamiento] main{padding:32px 16px}
 .calculator-wrapper{padding:24px 16px!important}
 .slider-container input[type=text]{font-size:16px}
 .chart-container{height:300px}
 .result-item{padding:16px 12px}
 .result-item .value{font-size:1.35rem!important}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
