@charset "UTF-8";

/* === Consentimiento y privacidad === */
.ph-consent-hidden {
    display: none !important;
}

.ph-consent-banner {
    position: fixed;
    z-index: 10020;
    right: 20px;
    bottom: 20px;
    left: 20px;
    max-width: 760px;
    margin: 0 auto;
    padding: 22px;
    border: 1px solid rgba(0, 129, 109, 0.24);
    border-radius: 22px;
    background: rgba(255, 255, 255, 0.98);
    color: #334155;
    box-shadow: 0 24px 70px rgba(0, 63, 92, 0.22);
    font-family: "Fira Sans", sans-serif;
}

.ph-consent-banner h2,
.ph-consent-modal h2 {
    margin: 0 0 8px;
    color: #003f5c;
    font-size: 20px;
    font-weight: 800;
}

.ph-consent-banner p,
.ph-consent-modal p {
    margin: 0;
    font-size: 14px;
    line-height: 1.55;
}

.ph-consent-banner a,
.ph-consent-modal a {
    color: #006b5b;
    font-weight: 700;
    text-decoration: underline;
    text-underline-offset: 3px;
}

.ph-consent-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 18px;
}

.ph-consent-button {
    min-height: 44px;
    padding: 10px 17px;
    border: 1px solid #005f86;
    border-radius: 12px;
    background: #ffffff;
    color: #004761;
    font: inherit;
    font-size: 14px;
    font-weight: 800;
    cursor: pointer;
}

.ph-consent-button:hover,
.ph-consent-button:focus-visible {
    outline: 3px solid rgba(0, 129, 109, 0.2);
    outline-offset: 2px;
}

.ph-consent-button-primary {
    border-color: #00816d;
    background: #00816d;
    color: #ffffff;
}

.ph-consent-overlay {
    position: fixed;
    z-index: 10030;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px;
    background: rgba(0, 32, 48, 0.72);
    backdrop-filter: blur(5px);
}

.ph-consent-modal {
    position: relative;
    width: min(620px, 100%);
    max-height: 88vh;
    overflow-y: auto;
    padding: 28px;
    border-radius: 24px;
    background: #ffffff;
    color: #334155;
    box-shadow: 0 30px 100px rgba(0, 0, 0, 0.28);
    font-family: "Fira Sans", sans-serif;
}

.ph-consent-close {
    position: absolute;
    top: 14px;
    right: 14px;
    width: 38px;
    height: 38px;
    border: 0;
    border-radius: 999px;
    background: #eef4f6;
    color: #003f5c;
    font-size: 22px;
    cursor: pointer;
}

.ph-consent-category {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 14px;
    align-items: start;
    margin-top: 16px;
    padding: 16px;
    border: 1px solid #e2e8f0;
    border-radius: 16px;
    background: #f8fafc;
}

.ph-consent-category strong {
    display: block;
    margin-bottom: 4px;
    color: #003f5c;
}

.ph-consent-category input {
    width: 21px;
    height: 21px;
    accent-color: #00816d;
}

.ph-cookie-settings-link {
    border: 0;
    padding: 0;
    background: transparent;
    color: inherit;
    font: inherit;
    text-decoration: underline;
    text-underline-offset: 3px;
    cursor: pointer;
}

@media (max-width: 640px) {
    .ph-consent-banner {
        right: 10px;
        bottom: 10px;
        left: 10px;
        padding: 18px;
    }

    .ph-consent-actions,
    .ph-consent-button {
        width: 100%;
    }

    .ph-consent-modal {
        padding: 24px 18px;
    }
}

/* === Utilidades compiladas === */
*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/*! tailwindcss v3.4.17 | MIT License | https://tailwindcss.com*/*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Fira Sans,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.-left-20{left:-5rem}.-right-20{right:-5rem}.bottom-0{bottom:0}.bottom-6{bottom:1.5rem}.left-0{left:0}.left-5{left:1.25rem}.left-6{left:1.5rem}.right-0{right:0}.right-5{right:1.25rem}.right-6{right:1.5rem}.top-0{top:0}.top-20{top:5rem}.top-40{top:10rem}.top-5{top:1.25rem}.z-10{z-index:10}.z-50{z-index:50}.col-span-1{grid-column:span 1/span 1}.col-span-full{grid-column:1/-1}.mx-auto{margin-left:auto;margin-right:auto}.mb-1{margin-bottom:.25rem}.mb-10{margin-bottom:2.5rem}.mb-12{margin-bottom:3rem}.mb-16{margin-bottom:4rem}.mb-2{margin-bottom:.5rem}.mb-20{margin-bottom:5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-6{margin-bottom:1.5rem}.mb-7{margin-bottom:1.75rem}.mb-8{margin-bottom:2rem}.ml-1{margin-left:.25rem}.mr-1{margin-right:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.mt-6{margin-top:1.5rem}.mt-auto{margin-top:auto}.line-clamp-3{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.hidden{display:none}.h-10{height:2.5rem}.h-11{height:2.75rem}.h-12{height:3rem}.h-16{height:4rem}.h-2{height:.5rem}.h-20{height:5rem}.h-3{height:.75rem}.h-72{height:18rem}.h-8{height:2rem}.h-\[320px\]{height:320px}.h-\[500px\]{height:500px}.h-full{height:100%}.w-11{width:2.75rem}.w-12{width:3rem}.w-16{width:4rem}.w-2{width:.5rem}.w-20{width:5rem}.w-3{width:.75rem}.w-72{width:18rem}.w-8{width:2rem}.w-\[500px\]{width:500px}.w-auto{width:auto}.w-full{width:100%}.max-w-0{max-width:0}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-4xl{max-width:56rem}.max-w-6xl{max-width:72rem}.max-w-7xl{max-width:80rem}.max-w-md{max-width:28rem}.max-w-xs{max-width:20rem}.flex-shrink-0{flex-shrink:0}.flex-grow{flex-grow:1}.-translate-x-1\/3{--tw-translate-x:-33.333333%}.-translate-x-1\/3,.-translate-y-1\/3{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/3{--tw-translate-y:-33.333333%}.translate-x-1\/3{--tw-translate-x:33.333333%}.translate-x-1\/3,.translate-y-1\/3{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-1\/3{--tw-translate-y:33.333333%}.scale-100{--tw-scale-x:1;--tw-scale-y:1}.scale-100,.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes blob{0%{transform:translate(0) scale(1)}33%{transform:translate(30px,-50px) scale(1.1)}66%{transform:translate(-20px,20px) scale(.9)}to{transform:translate(0) scale(1)}}.animate-blob{animation:blob 7s infinite}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-12{gap:3rem}.gap-16{gap:4rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.gap-8{gap:2rem}.space-x-10>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(2.5rem*var(--tw-space-x-reverse));margin-left:calc(2.5rem*(1 - var(--tw-space-x-reverse)))}.space-x-6>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(1.5rem*var(--tw-space-x-reverse));margin-left:calc(1.5rem*(1 - var(--tw-space-x-reverse)))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.25rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem*var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.75rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem*var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem*var(--tw-space-y-reverse))}.space-y-5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1.25rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.25rem*var(--tw-space-y-reverse))}.overflow-hidden{overflow:hidden}.scroll-smooth{scroll-behavior:smooth}.whitespace-nowrap{white-space:nowrap}.rounded-2xl{border-radius:1rem}.rounded-3xl{border-radius:1.5rem}.rounded-\[2rem\]{border-radius:2rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-2{border-width:2px}.border-b{border-bottom-width:1px}.border-t{border-top-width:1px}.border-brand-blue\/20{border-color:rgba(0,95,134,.2)}.border-brand-dark{--tw-border-opacity:1;border-color:rgb(0 63 92/var(--tw-border-opacity,1))}.border-brand-green\/20{border-color:rgba(0,129,109,.2)}.border-brand-green\/30{border-color:rgba(0,129,109,.3)}.border-brand-light{--tw-border-opacity:1;border-color:rgb(230 242 240/var(--tw-border-opacity,1))}.border-gray-100{--tw-border-opacity:1;border-color:rgb(243 244 246/var(--tw-border-opacity,1))}.border-white{--tw-border-opacity:1;border-color:rgb(255 255 255/var(--tw-border-opacity,1))}.border-white\/10{border-color:hsla(0,0%,100%,.1)}.border-white\/5{border-color:hsla(0,0%,100%,.05)}.bg-\[\#00283a\]{--tw-bg-opacity:1;background-color:rgb(0 40 58/var(--tw-bg-opacity,1))}.bg-\[\#25D366\]{--tw-bg-opacity:1;background-color:rgb(37 211 102/var(--tw-bg-opacity,1))}.bg-brand-blue{--tw-bg-opacity:1;background-color:rgb(0 95 134/var(--tw-bg-opacity,1))}.bg-brand-blue\/10{background-color:rgba(0,95,134,.1)}.bg-brand-blue\/20{background-color:rgba(0,95,134,.2)}.bg-brand-dark{--tw-bg-opacity:1;background-color:rgb(0 63 92/var(--tw-bg-opacity,1))}.bg-brand-dark\/90{background-color:rgba(0,63,92,.9)}.bg-brand-green{--tw-bg-opacity:1;background-color:rgb(0 129 109/var(--tw-bg-opacity,1))}.bg-brand-green\/10{background-color:rgba(0,129,109,.1)}.bg-brand-green\/20{background-color:rgba(0,129,109,.2)}.bg-brand-light{--tw-bg-opacity:1;background-color:rgb(230 242 240/var(--tw-bg-opacity,1))}.bg-gray-100{--tw-bg-opacity:1;background-color:rgb(243 244 246/var(--tw-bg-opacity,1))}.bg-gray-50{--tw-bg-opacity:1;background-color:rgb(249 250 251/var(--tw-bg-opacity,1))}.bg-green-300{--tw-bg-opacity:1;background-color:rgb(134 239 172/var(--tw-bg-opacity,1))}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.bg-white\/10{background-color:hsla(0,0%,100%,.1)}.bg-white\/5{background-color:hsla(0,0%,100%,.05)}.bg-white\/60{background-color:hsla(0,0%,100%,.6)}.bg-white\/90{background-color:hsla(0,0%,100%,.9)}.bg-white\/95{background-color:hsla(0,0%,100%,.95)}.bg-gradient-to-b{background-image:linear-gradient(to bottom,var(--tw-gradient-stops))}.bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.from-black\/15{--tw-gradient-from:rgba(0,0,0,.15) var(--tw-gradient-from-position);--tw-gradient-to:transparent var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-brand-blue{--tw-gradient-from:#005f86 var(--tw-gradient-from-position);--tw-gradient-to:rgba(0,95,134,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-brand-dark{--tw-gradient-from:#003f5c var(--tw-gradient-from-position);--tw-gradient-to:rgba(0,63,92,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-brand-green{--tw-gradient-from:#00816d var(--tw-gradient-from-position);--tw-gradient-to:rgba(0,129,109,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-brand-light{--tw-gradient-from:#e6f2f0 var(--tw-gradient-from-position);--tw-gradient-to:rgba(230,242,240,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.via-brand-blue\/20{--tw-gradient-to:rgba(0,95,134,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),rgba(0,95,134,.2) var(--tw-gradient-via-position),var(--tw-gradient-to)}.to-brand-blue{--tw-gradient-to:#005f86 var(--tw-gradient-to-position)}.to-brand-blue\/85{--tw-gradient-to:rgba(0,95,134,.85) var(--tw-gradient-to-position)}.to-brand-dark{--tw-gradient-to:#003f5c var(--tw-gradient-to-position)}.to-emerald-600{--tw-gradient-to:#059669 var(--tw-gradient-to-position)}.to-white{--tw-gradient-to:#fff var(--tw-gradient-to-position)}.bg-cover{background-size:cover}.bg-clip-text{-webkit-background-clip:text;background-clip:text}.bg-center{background-position:50%}.p-1{padding:.25rem}.p-10{padding:2.5rem}.p-2{padding:.5rem}.p-3\.5{padding:.875rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.p-7{padding:1.75rem}.p-8{padding:2rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-8{padding-left:2rem;padding-right:2rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-14{padding-top:3.5rem;padding-bottom:3.5rem}.py-16{padding-top:4rem;padding-bottom:4rem}.py-24{padding-top:6rem;padding-bottom:6rem}.py-28{padding-top:7rem;padding-bottom:7rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-3\.5{padding-top:.875rem;padding-bottom:.875rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.pl-2{padding-left:.5rem}.pl-3{padding-left:.75rem}.pr-5{padding-right:1.25rem}.pr-8{padding-right:2rem}.pt-4{padding-top:1rem}.pt-8{padding-top:2rem}.text-left{text-align:left}.text-center{text-align:center}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[15px\]{font-size:15px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-black{font-weight:900}.font-bold{font-weight:700}.font-extrabold{font-weight:800}.font-light{font-weight:300}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.italic{font-style:italic}.leading-\[1\.12\]{line-height:1.12}.leading-\[1\.28\]{line-height:1.28}.leading-\[1\.75\]{line-height:1.75}.leading-relaxed{line-height:1.625}.leading-tight{line-height:1.25}.tracking-tight{letter-spacing:-.025em}.tracking-wide{letter-spacing:.025em}.tracking-wider{letter-spacing:.05em}.tracking-widest{letter-spacing:.1em}.text-brand-blue{--tw-text-opacity:1;color:rgb(0 95 134/var(--tw-text-opacity,1))}.text-brand-dark{--tw-text-opacity:1;color:rgb(0 63 92/var(--tw-text-opacity,1))}.text-brand-dark\/80{color:rgba(0,63,92,.8)}.text-brand-green{--tw-text-opacity:1;color:rgb(0 129 109/var(--tw-text-opacity,1))}.text-brand-light{--tw-text-opacity:1;color:rgb(230 242 240/var(--tw-text-opacity,1))}.text-gray-300{--tw-text-opacity:1;color:rgb(209 213 219/var(--tw-text-opacity,1))}.text-gray-400{--tw-text-opacity:1;color:rgb(156 163 175/var(--tw-text-opacity,1))}.text-gray-500{--tw-text-opacity:1;color:rgb(107 114 128/var(--tw-text-opacity,1))}.text-gray-600{--tw-text-opacity:1;color:rgb(75 85 99/var(--tw-text-opacity,1))}.text-gray-700{--tw-text-opacity:1;color:rgb(55 65 81/var(--tw-text-opacity,1))}.text-gray-800{--tw-text-opacity:1;color:rgb(31 41 55/var(--tw-text-opacity,1))}.text-transparent{color:transparent}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.text-white\/85{color:hsla(0,0%,100%,.85)}.underline{text-decoration-line:underline}.decoration-brand-green\/50{text-decoration-color:rgba(0,129,109,.5)}.decoration-brand-light{text-decoration-color:#e6f2f0}.decoration-4{text-decoration-thickness:4px}.underline-offset-4{text-underline-offset:4px}.underline-offset-8{text-underline-offset:8px}.opacity-0{opacity:0}.opacity-100{opacity:1}.opacity-20{opacity:.2}.opacity-30{opacity:.3}.opacity-70{opacity:.7}.mix-blend-multiply{mix-blend-mode:multiply}.mix-blend-screen{mix-blend-mode:screen}.shadow-2xl{--tw-shadow:0 25px 50px -12px rgba(0,0,0,.25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color)}.shadow-2xl,.shadow-\[0_10px_40px_rgb\(0\2c 0\2c 0\2c 0\.15\)\]{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-\[0_10px_40px_rgb\(0\2c 0\2c 0\2c 0\.15\)\]{--tw-shadow:0 10px 40px rgb(0,0,0,0.15);--tw-shadow-colored:0 10px 40px var(--tw-shadow-color)}.shadow-inner{--tw-shadow:inset 0 2px 4px 0 rgba(0,0,0,.05);--tw-shadow-colored:inset 0 2px 4px 0 var(--tw-shadow-color)}.shadow-inner,.shadow-lg{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.shadow-md{--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color)}.shadow-md,.shadow-sm{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color)}.shadow-xl{--tw-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color),0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.blur-3xl{--tw-blur:blur(64px)}.blur-3xl,.blur-\[100px\]{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.blur-\[100px\]{--tw-blur:blur(100px)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur{--tw-backdrop-blur:blur(8px)}.backdrop-blur,.backdrop-blur-md{-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-md{--tw-backdrop-blur:blur(12px)}.backdrop-blur-xl{--tw-backdrop-blur:blur(24px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[width\]{transition-property:width;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-300{transition-duration:.3s}.duration-500{transition-duration:.5s}.ease-\[cubic-bezier\(0\.4\2c 0\2c 0\.2\2c 1\)\],.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.selection\:bg-brand-green ::-moz-selection{--tw-bg-opacity:1;background-color:rgb(0 129 109/var(--tw-bg-opacity,1))}.selection\:bg-brand-green ::selection{--tw-bg-opacity:1;background-color:rgb(0 129 109/var(--tw-bg-opacity,1))}.selection\:text-white ::-moz-selection{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.selection\:text-white ::selection{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.selection\:bg-brand-green::-moz-selection{--tw-bg-opacity:1;background-color:rgb(0 129 109/var(--tw-bg-opacity,1))}.selection\:bg-brand-green::selection{--tw-bg-opacity:1;background-color:rgb(0 129 109/var(--tw-bg-opacity,1))}.selection\:text-white::-moz-selection{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.selection\:text-white::selection{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.hover\:-translate-y-2:hover{--tw-translate-y:-0.5rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:bg-brand-blue:hover{--tw-bg-opacity:1;background-color:rgb(0 95 134/var(--tw-bg-opacity,1))}.hover\:bg-brand-dark:hover{--tw-bg-opacity:1;background-color:rgb(0 63 92/var(--tw-bg-opacity,1))}.hover\:bg-brand-light:hover{--tw-bg-opacity:1;background-color:rgb(230 242 240/var(--tw-bg-opacity,1))}.hover\:from-brand-green:hover{--tw-gradient-from:#00816d var(--tw-gradient-from-position);--tw-gradient-to:rgba(0,129,109,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.hover\:to-brand-green:hover{--tw-gradient-to:#00816d var(--tw-gradient-to-position)}.hover\:text-brand-green:hover{--tw-text-opacity:1;color:rgb(0 129 109/var(--tw-text-opacity,1))}.hover\:text-white:hover{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.hover\:shadow-\[0_10px_40px_rgba\(0\2c 129\2c 109\2c 0\.25\)\]:hover{--tw-shadow:0 10px 40px rgba(0,129,109,.25);--tw-shadow-colored:0 10px 40px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.focus\:border-brand-green:focus{--tw-border-opacity:1;border-color:rgb(0 129 109/var(--tw-border-opacity,1))}.focus\:bg-gray-50:focus{--tw-bg-opacity:1;background-color:rgb(249 250 251/var(--tw-bg-opacity,1))}.focus\:bg-white:focus{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.group:hover .group-hover\:rotate-12{--tw-rotate:12deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:opacity-80{opacity:.8}.group:hover .group-hover\:shadow-md{--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}@media (min-width:640px){.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}.sm\:text-3xl{font-size:1.875rem;line-height:2.25rem}.sm\:text-5xl{font-size:3rem;line-height:1}}@media (min-width:768px){.md\:col-span-2{grid-column:span 2/span 2}.md\:flex{display:flex}.md\:hidden{display:none}.md\:w-1\/2{width:50%}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:flex-row{flex-direction:row}.md\:p-14{padding:3.5rem}.md\:text-4xl{font-size:2.25rem;line-height:2.5rem}.md\:text-5xl{font-size:3rem;line-height:1}.md\:text-6xl{font-size:3.75rem;line-height:1}.md\:text-base{font-size:1rem;line-height:1.5rem}.md\:text-lg{font-size:1.125rem;line-height:1.75rem}}@media (min-width:1024px){.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:px-8{padding-left:2rem;padding-right:2rem}.lg\:py-44{padding-top:11rem;padding-bottom:11rem}.lg\:text-base{font-size:1rem;line-height:1.5rem}}

/* === Diseño de la landing === */
body { font-family: 'Fira Sans', sans-serif; overflow-x: hidden; }

/* --- SUB-BLOQUE CSS: UTILIDADES Y ANIMACIONES --- */
.hero-bg { 
    background: linear-gradient(105deg, rgba(230, 242, 240, 0.98) 35%, rgba(255,255,255,0.4) 100%), 
                url('/resources/media/1back-1600.webp') center/cover fixed; 
}
.reveal { opacity: 0; transform: translateY(40px); transition: all 0.8s cubic-bezier(0.5, 0, 0, 1); }
.reveal.active { opacity: 1; transform: translateY(0); }
.reveal-delay-100 { transition-delay: 100ms; }
.reveal-delay-150 { transition-delay: 150ms; }
.reveal-delay-200 { transition-delay: 200ms; }
.reveal-delay-300 { transition-delay: 300ms; }

.ph-honeypot {
    position: absolute;
    left: -9999px;
    width: 1px;
    height: 1px;
    opacity: 0;
}

#landing-whatsapp-float { width: 64px; }

#web-toast {
    position: fixed;
    bottom: 30px;
    left: 50%;
    transform: translateX(-50%) translateY(100px);
    max-width: 420px;
    width: 90%;
    padding: 24px 32px;
    border-radius: 20px;
    background: white;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.15), 0 0 0 1px rgba(0, 129, 109, 0.1);
    z-index: 9999;
    opacity: 0;
    text-align: center;
    pointer-events: none;
    transition: transform 0.5s cubic-bezier(0.34, 1.56, 0.64, 1), opacity 0.5s ease;
}

.web-toast-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 56px;
    height: 56px;
    margin: 0 auto 16px;
    border-radius: 16px;
    background: linear-gradient(135deg, #00816d, #005f86);
    font-size: 24px;
}

#web-toast-nombre {
    margin-bottom: 8px;
    color: #003f5c;
    font-size: 18px;
    font-weight: 800;
}

#web-toast-msg {
    margin-bottom: 20px;
    color: #6b7280;
    font-size: 14px;
    line-height: 1.5;
}

.web-toast-button {
    width: 100%;
    padding: 12px 32px;
    border: 0;
    border-radius: 12px;
    background: linear-gradient(135deg, #00816d, #005f86);
    color: white;
    cursor: pointer;
    font-size: 14px;
    font-weight: 700;
}

#web-toast-overlay {
    display: none;
    position: fixed;
    inset: 0;
    z-index: 9998;
    background: rgba(0, 0, 0, 0.3);
    backdrop-filter: blur(4px);
}

.glass-section-bg { 
    background: linear-gradient(135deg, #f8fafc 0%, #e6f2f0 50%, #f0fdfa 100%); 
    position: relative; 
    overflow: hidden; 
}
.glass-card { 
    position: relative; z-index: 10; background: rgba(255, 255, 255, 0.7); 
    backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); 
    border: 1px solid rgba(255, 255, 255, 0.8); box-shadow: 0 4px 6px rgba(0, 0, 0, 0.02);
    transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1); 
}
.glass-card:hover { 
    background: rgba(255, 255, 255, 0.85); border: 1px solid rgba(0, 129, 109, 0.3); 
    box-shadow: 0 30px 60px rgba(0, 95, 134, 0.12), 0 0 20px rgba(0, 129, 109, 0.05); 
    transform: translateY(-8px); 
}
.btn-magnetic { transition: all 0.3s ease; }
.btn-magnetic:hover { transform: translateY(-2px); box-shadow: 0 10px 20px rgba(0, 95, 134, 0.2); }

/* --- SUB-BLOQUE CSS: COMPONENTES LANDING --- */
.landing-opportunity-card {
    background: rgba(255,255,255,.82); backdrop-filter: blur(14px);
    border: 1px solid rgba(255,255,255,.9); border-radius: 28px;
    overflow: hidden; box-shadow: 0 20px 50px rgba(0,63,92,.08);
    transition: all .45s cubic-bezier(.4,0,.2,1);
}
.landing-opportunity-card:hover {
    transform: translateY(-8px); box-shadow: 0 28px 70px rgba(0,95,134,.14);
    border-color: rgba(0,129,109,.28);
}
.landing-opportunity-img { height: 230px; background-size: cover; background-position: center; position: relative; }
.landing-opportunity-img::after { content: ''; position: absolute; inset: 0; background: linear-gradient(to top, rgba(0,63,92,.82), rgba(0,63,92,.05)); }
.landing-opportunity-actions { display: grid; grid-template-columns: 1fr auto; gap: 10px; margin-top: 18px; }

.landing-opportunity-share {
    width: 52px; height: 52px; border-radius: 16px; border: none;
    background: #e8f2f6; color: #004761; font-weight: 900; cursor: pointer; transition: all .2s ease;
}
.landing-opportunity-share:hover { background: #008c73; color: #fff; transform: translateY(-2px); }
.landing-opportunity-primary {
    background: #004761; color: #fff; border: none; border-radius: 16px;
    padding: 15px 18px; font-weight: 900; cursor: pointer; transition: all .2s ease;
}
.landing-opportunity-primary:hover { background: #008c73; transform: translateY(-2px); }

.landing-public-metrics { display: grid; grid-template-columns: 1.35fr 1fr .95fr !important; gap: 10px !important; margin: 18px 0; }
.landing-public-metric { background: #f4f8fb; border: 1px solid #edf2f7; border-radius: 16px; padding: 12px 10px !important; min-width: 0; }
.landing-public-metric span {
    display: block; font-size: 9px !important; text-transform: uppercase; letter-spacing: .06em !important;
    color: #8a98a8; font-weight: 900; margin-bottom: 5px; min-height: 24px; line-height: 1.1;
}
.landing-public-metric b {
    display: block; color: #004761; font-size: clamp(15px, 1.15vw, 18px) !important; font-weight: 950;
    white-space: nowrap; overflow: visible; letter-spacing: -0.04em;
}
.landing-month-value { font-size: 13px !important; letter-spacing: -0.04em; }

/* --- SUB-BLOQUE CSS: VIDEOS Y CARRUSELES --- */
.landing-video-card {
    position: relative; border-radius: 32px; padding: 10px;
    background: linear-gradient(145deg, rgba(0,63,92,.95), rgba(0,129,109,.88));
    box-shadow: 0 28px 70px rgba(0,63,92,.18); transition: transform .35s ease, box-shadow .35s ease;
}
.landing-video-card:hover { transform: translateY(-8px); box-shadow: 0 35px 90px rgba(0,95,134,.22); }
.landing-video-frame { position: relative; aspect-ratio: 9 / 16; overflow: hidden; border-radius: 24px; background: #00283a; }
.landing-video-frame video { width: 100%; height: 100%; object-fit: cover !important; object-position: center center !important; display: block; background: #00283a; }
.landing-video-overlay { position: absolute; inset: 0; pointer-events: none; background: linear-gradient(to top, rgba(0,0,0,.72), rgba(0,0,0,.08), rgba(0,0,0,.15)); }
.landing-video-info { position: absolute; left: 18px; right: 18px; bottom: 18px; color: white; z-index: 3; }
.landing-video-play {
    position: absolute; top: 14px; right: 14px; z-index: 4; width: 38px; height: 38px; border-radius: 999px;
    background: rgba(255,255,255,.9); color: #003f5c; display: flex; align-items: center; justify-content: center;
    box-shadow: 0 10px 25px rgba(0,0,0,.18); cursor: pointer;
}
.landing-video-placeholder {
    width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; color: rgba(255,255,255,.78);
    text-align: center; padding: 24px; background: radial-gradient(circle at top, rgba(0,129,109,.45), transparent 45%), linear-gradient(145deg, #003f5c, #00283a);
}

.landing-opportunity-carousel { position: relative; overflow: hidden; background-image: none !important; }
.landing-opportunity-slide {
    position: absolute; inset: 0; background-size: cover; background-position: center;
    opacity: 0; transform: scale(1.04); transition: opacity .8s ease, transform 1.4s ease;
}
.landing-opportunity-slide.active { opacity: 1; transform: scale(1); }
.landing-carousel-dots { position: absolute; bottom: 18px; right: 18px; z-index: 15; display: flex; gap: 7px; }
.landing-carousel-dots span { width: 8px; height: 8px; border-radius: 999px; background: rgba(255,255,255,.45); border: 1px solid rgba(255,255,255,.35); }
.landing-carousel-dots span.active { background: #fff; width: 18px; }

/* --- SUB-BLOQUE CSS: MODAL PROPIEDAD --- */
#landing-property-modal.hidden { display: none; pointer-events: none; }
#landing-property-modal.hidden .landing-property-backdrop, #landing-property-modal.hidden .landing-property-box { pointer-events: none; }
.landing-property-modal { position: fixed; inset: 0; z-index: 9999; display: flex; align-items: center; justify-content: center; padding: 24px; }
.landing-property-backdrop { position: absolute; inset: 0; background: rgba(0, 20, 32, .72); backdrop-filter: blur(8px); }
.landing-property-box { position: relative; width: min(1080px, 96vw); max-height: 90vh; overflow-y: auto; background: #fff; border-radius: 32px; box-shadow: 0 30px 100px rgba(0,0,0,.28); z-index: 2; }
.landing-property-close { position: absolute; top: 18px; right: 18px; z-index: 30 !important; width: 44px; height: 44px; border: none; border-radius: 999px; background: rgba(255,255,255,.92); color: #004761; cursor: pointer; box-shadow: 0 10px 28px rgba(0,0,0,.18); }

.landing-property-hero-carousel, .landing-property-hero {
    position: relative !important; overflow: hidden !important; min-height: 500px !important; background-image: none !important;
    border-radius: 30px 30px 0 0 !important; color: #fff !important;
}
.landing-property-hero-slide {
    position: absolute !important; inset: 0 !important; z-index: 0 !important; opacity: 0 !important;
    background-size: cover !important; background-position: center !important; transform: scale(1.025) !important;
    transition: opacity .45s ease, transform 1.1s ease !important;
}
.landing-property-hero-slide.active { opacity: 1 !important; transform: scale(1) !important; }
.landing-property-hero-carousel::after, .landing-property-hero::after {
    content: "" !important; position: absolute !important; inset: 0 !important; z-index: 1 !important; pointer-events: none !important;
    background: linear-gradient(180deg, rgba(0, 63, 92, .10) 0%, rgba(0, 63, 92, .18) 28%, rgba(0, 63, 92, .52) 68%, rgba(0, 63, 92, .84) 100%) !important;
}

.landing-property-hero-topbar { position: absolute !important; top: 18px !important; left: 28px !important; right: 18px !important; z-index: 10 !important; pointer-events: none !important; }
.landing-property-badges-row { position: absolute !important; top: 0 !important; left: 0 !important; display: flex !important; align-items: center !important; flex-wrap: wrap !important; gap: 10px !important; max-width: calc(100% - 150px) !important; pointer-events: auto !important; }
.lp-hero-badge { display: inline-flex !important; align-items: center !important; gap: 7px !important; min-height: 38px !important; padding: 0 15px !important; border-radius: 999px !important; font-size: 13px !important; font-weight: 900 !important; line-height: 1 !important; white-space: nowrap !important; box-shadow: 0 10px 24px rgba(0, 63, 92, .18) !important; backdrop-filter: blur(12px) !important; }
.lp-hero-badge-type { background: rgba(0, 95, 134, .94) !important; color: #ffffff !important; border: 1px solid rgba(255,255,255,.22) !important; }
.lp-hero-badge-status { background: rgba(0, 129, 109, .94) !important; color: #ffffff !important; border: 1px solid rgba(255,255,255,.22) !important; }
.lp-hero-badge-risk { background: rgba(230, 242, 240, .96) !important; color: #003f5c !important; border: 1px solid rgba(0,129,109,.24) !important; }

.landing-property-hero-actions { position: absolute !important; top: 58px !important; right: 0 !important; z-index: 12 !important; display: flex !important; flex-direction: column !important; align-items: center !important; gap: 10px !important; pointer-events: auto !important; margin: 0 !important; }
.landing-property-hero-actions .landing-property-close { display: none !important; }
.landing-property-fullscreen {
    position: relative !important; inset: auto !important; width: 44px !important; height: 44px !important; border-radius: 999px !important;
    border: 1px solid rgba(255,255,255,.28) !important; background: rgba(0, 63, 92, .58) !important; color: #ffffff !important;
    box-shadow: 0 10px 24px rgba(0, 63, 92, .24) !important; backdrop-filter: blur(12px) !important; display: inline-flex !important;
    align-items: center !important; justify-content: center !important; cursor: pointer !important; font-size: 18px !important; transition: all .2s ease !important;
}
.landing-property-fullscreen:hover { background: rgba(0, 129, 109, .92) !important; transform: translateY(-1px) !important; }

.landing-property-hero-bottom { position: absolute !important; left: 28px !important; right: 28px !important; bottom: 78px !important; z-index: 8 !important; max-width: 980px !important; }
.landing-property-hero-bottom h2 { margin: 0 0 14px !important; color: #ffffff !important; font-size: clamp(40px, 5vw, 64px) !important; line-height: 1.02 !important; font-weight: 950 !important; letter-spacing: -0.045em !important; text-wrap: balance !important; }
.landing-property-hero-bottom p { margin: 0 !important; max-width: 980px !important; color: rgba(255,255,255,.96) !important; font-size: 18px !important; line-height: 1.55 !important; font-weight: 650 !important; }

.landing-property-nav {
    position: absolute !important; top: auto !important; bottom: 22px !important; transform: none !important; z-index: 11 !important;
    width: 42px !important; height: 42px !important; border-radius: 999px !important; border: 1px solid rgba(255,255,255,.28) !important;
    background: rgba(0, 63, 92, .52) !important; color: #fff !important; backdrop-filter: blur(10px) !important;
    display: inline-flex !important; align-items: center !important; justify-content: center !important; cursor: pointer !important;
}
.landing-property-nav:hover { background: rgba(0, 129, 109, .88) !important; }
.landing-property-nav-prev { left: calc(50% - 180px) !important; }
.landing-property-nav-next { right: calc(50% - 180px) !important; }

.landing-property-hero-dots {
    position: absolute !important; left: 50% !important; bottom: 38px !important; transform: translateX(-50%) !important; z-index: 11 !important;
    display: flex !important; align-items: center !important; justify-content: center !important; gap: 8px !important;
    background: rgba(0, 63, 92, .26) !important; border-radius: 999px !important; padding: 6px 10px !important; backdrop-filter: blur(10px) !important;
}
.landing-property-hero-dots span, .landing-property-hero-dots button { width: 20px !important; height: 5px !important; border-radius: 999px !important; border: none !important; background: rgba(255,255,255,.42) !important; padding: 0 !important; cursor: pointer !important; }
.landing-property-hero-dots span.active, .landing-property-hero-dots button.active { width: 34px !important; background: #ffffff !important; }

.landing-property-body { padding: 34px 42px 42px; }
.landing-property-kpis { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; margin-bottom: 28px; }
.landing-property-kpi { background: #f4f8fb; border: 1px solid #edf2f7; border-radius: 20px; padding: 20px; }
.landing-property-kpi span { display: block; font-size: 11px; text-transform: uppercase; letter-spacing: .08em; color: #8a98a8; font-weight: 900; margin-bottom: 8px; }
.landing-property-kpi b { display: block; font-size: 25px; color: #004761; font-weight: 950; }
.landing-property-grid { display: grid; grid-template-columns: 1fr .8fr; gap: 24px; }
.landing-property-section { border: 1px solid #edf2f7; border-radius: 24px; padding: 24px; background: #fff; }
.landing-property-section h3 { color: #004761; font-size: 22px; font-weight: 950; margin: 0 0 12px; }
.landing-property-section p { color: #667085; line-height: 1.65; margin: 0; }
.landing-property-list { display: grid; gap: 12px; }
.landing-property-list div { display: flex; justify-content: space-between; gap: 16px; border-bottom: 1px solid #edf2f7; padding-bottom: 10px; color: #667085; }
.landing-property-list div:last-child { border-bottom: none; }
.landing-property-list strong { color: #004761; text-align: right; }
.landing-property-cta { display: grid; grid-template-columns: 1fr auto; gap: 12px; margin-top: 26px; }

/* --- SUB-BLOQUE CSS: LIGHTBOX --- */
.landing-gallery-lightbox.hidden { display: none !important; }
.landing-gallery-lightbox { position: fixed !important; inset: 0 !important; z-index: 20000 !important; background: rgba(0, 20, 32, .96) !important; display: flex !important; align-items: center !important; justify-content: center !important; padding: 18px !important; }
.landing-gallery-lightbox img { max-width: 96vw !important; max-height: 86vh !important; object-fit: contain !important; border-radius: 18px !important; box-shadow: 0 24px 80px rgba(0,0,0,.45) !important; }
.landing-gallery-lightbox-close, .landing-gallery-lightbox-prev, .landing-gallery-lightbox-next {
    position: absolute !important; z-index: 3 !important; border: 1px solid rgba(255,255,255,.25) !important; background: rgba(0, 63, 92, .52) !important;
    color: white !important; border-radius: 999px !important; cursor: pointer !important; backdrop-filter: blur(10px) !important; display: flex !important; align-items: center !important; justify-content: center !important;
}
.landing-gallery-lightbox-close { top: 18px !important; right: 18px !important; width: 48px !important; height: 48px !important; }
.landing-gallery-lightbox-prev, .landing-gallery-lightbox-next { top: 50% !important; transform: translateY(-50%) !important; width: 52px !important; height: 52px !important; }
.landing-gallery-lightbox-prev { left: 18px !important; }
.landing-gallery-lightbox-next { right: 18px !important; }

/* --- SUB-BLOQUE CSS: MEDIA QUERIES MOBILE --- */
@media (max-width: 900px) {
    .landing-property-kpis, .landing-property-grid, .landing-public-metrics { grid-template-columns: 1fr !important; }
    .landing-property-hero, .landing-property-body { padding: 26px; }
}
@media (max-width: 768px) {
    .hero-bg {
        background-image: linear-gradient(105deg, rgba(230, 242, 240, 0.98) 35%, rgba(255,255,255,0.4) 100%),
                          url('/resources/media/1back-900.webp');
        background-attachment: scroll;
    }
    .landing-property-box { width: calc(100vw - 24px) !important; max-height: 92vh !important; border-radius: 28px !important; }
    .landing-property-hero-carousel, .landing-property-hero { min-height: 450px !important; height: 450px !important; border-radius: 28px 28px 0 0 !important; }
    .landing-property-hero-topbar { top: 16px !important; left: 16px !important; right: 16px !important; }
    .landing-property-badges-row { max-width: calc(100% - 118px) !important; flex-direction: column !important; align-items: flex-start !important; gap: 8px !important; }
    .lp-hero-badge { min-height: 36px !important; padding: 0 14px !important; font-size: 13px !important; }
    .landing-property-hero-actions { top: 58px !important; right: 0 !important; }
    .landing-property-fullscreen { width: 44px !important; height: 44px !important; }
    .landing-property-hero-bottom { left: 16px !important; right: 16px !important; bottom: 92px !important; max-width: none !important; }
    .landing-property-hero-bottom h2 { font-size: clamp(28px, 8vw, 40px) !important; line-height: 1.04 !important; margin-bottom: 10px !important; display: -webkit-box !important; -webkit-line-clamp: 3 !important; -webkit-box-orient: vertical !important; overflow: hidden !important; }
    .landing-property-hero-bottom p { font-size: 15px !important; line-height: 1.42 !important; display: -webkit-box !important; -webkit-line-clamp: 3 !important; -webkit-box-orient: vertical !important; overflow: hidden !important; }
    .landing-property-nav { bottom: 22px !important; width: 44px !important; height: 44px !important; }
    .landing-property-nav-prev { left: 16px !important; }
    .landing-property-nav-next { right: 16px !important; }
    .landing-property-hero-dots { bottom: 36px !important; padding: 0 !important; background: transparent !important; }
    .landing-property-hero-dots span, .landing-property-hero-dots button { width: 18px !important; height: 5px !important; }
    .landing-property-hero-dots span.active, .landing-property-hero-dots button.active { width: 30px !important; }
    .landing-property-body { padding: 24px 18px 28px !important; }
    .landing-gallery-lightbox { padding: 10px !important; }
    .landing-gallery-lightbox img { max-width: 100vw !important; max-height: 82vh !important; border-radius: 12px !important; }
    .landing-gallery-lightbox-prev, .landing-gallery-lightbox-next { width: 46px !important; height: 46px !important; }
}
