:root{--navy:#0c3441;--navy2:#062d39;--ink:#112e39;--muted:#58717a;--cyan:#06aac5;--cyan-dark:#0794af;--sky:#b8e8f2;--pale:#eef9fb;--yellow:#f8ec55;--white:#fff;--line:#d5e7ea;--radius:24px;--shadow:0 16px 45px rgba(11,62,76,.1)}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:#fff;color:var(--ink);font-family:Arial,"Helvetica Neue",Helvetica,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}button,input,select,textarea{font:inherit}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button{cursor:pointer}button:disabled{cursor:not-allowed}::selection{background:var(--yellow);color:var(--navy)}:focus-visible{outline:3px solid #08b6c8;outline-offset:4px}[hidden]{display:none!important}.visually-hidden{position:absolute!important;height:1px;width:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.shell{width:min(1236px,calc(100% - 64px));margin:0 auto}.skip-link{position:fixed;z-index:100;top:-100px;left:12px;background:var(--yellow);padding:14px 20px;border-radius:12px}.skip-link:focus{top:12px}.section-spacing{padding:110px 0}.concept-banner{display:flex;align-items:center;justify-content:center;gap:9px;min-height:28px;padding:5px 20px;font-size:10px;letter-spacing:.05em;background:#123744;color:#e8f7f9;text-align:center}.concept-banner strong{font-size:10px;color:#ffee66;letter-spacing:.12em}.concept-dot{width:7px;height:7px;border-radius:50%;background:var(--yellow)}
/* HEADER */
.site-header{height:82px;position:sticky;top:0;z-index:40;border-bottom:1px solid rgba(9,58,72,.08);background:rgba(255,255,255,.94);backdrop-filter:blur(18px)}.header-inner{display:flex;align-items:center;justify-content:space-between;height:100%;gap:28px}.brand{display:inline-flex;align-items:center;gap:9px;flex-shrink:0}.brand-icon{width:43px;height:43px;display:grid;place-items:center}.brand-icon svg{width:100%;height:100%}.brand-copy{display:flex;flex-direction:column;align-items:flex-start;line-height:1}.brand-wordmark{font-weight:900;font-size:28px;letter-spacing:-.095em}.brand-submark{font-size:8px;font-weight:800;letter-spacing:.18em;margin:5px 0 0 2px}.desktop-nav{display:flex;align-items:center;gap:28px;margin-left:auto}.nav-link{font-size:13px;font-weight:750;transition:color .2s}.nav-link:hover,.nav-link:focus-visible{color:var(--cyan-dark)}.btn{display:inline-flex;gap:20px;align-items:center;justify-content:space-between;border-radius:999px;padding:14px 21px;border:1px solid transparent;font-size:13px;font-weight:800;line-height:1.1;white-space:nowrap;transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease}.btn:hover{transform:translateY(-2px)}.btn-navy{color:white;background:var(--navy);box-shadow:0 7px 17px rgba(0,41,56,.12)}.btn-navy:hover{background:#0c5366}.btn-yellow{color:var(--navy);background:var(--yellow);box-shadow:0 10px 22px rgba(222,208,57,.2)}.btn-yellow:hover{background:#fff477}.btn-outline{border:1.4px solid var(--navy);background:transparent;color:var(--navy)}.btn-outline:hover{background:rgba(2,65,78,.06)}.btn-arrow,.arrow-icon{font-size:20px;line-height:0}.menu-toggle{display:none;align-items:center;justify-content:center;flex-direction:column;gap:5px;width:42px;height:42px;background:transparent;border:1px solid var(--line);border-radius:12px}.menu-toggle span{width:19px;height:2px;background:var(--ink);border-radius:2px}.mobile-nav{position:absolute;left:0;right:0;top:100%;background:#fff;padding:15px 6vw 24px;border-bottom:1px solid var(--line);box-shadow:0 12px 20px rgba(0,0,0,.07)}.mobile-nav a{display:block;padding:13px 4px;font-size:17px;font-weight:750}.mobile-nav .mobile-nav-cta{background:var(--yellow);border-radius:12px;padding:15px;margin-top:8px;text-align:center}
/* HERO */
.hero{position:relative;overflow:hidden;background:linear-gradient(116deg,#f7fdfe 5%,#e8faff 42%,#b8edf4 100%)}.hero-grid{display:grid;grid-template-columns:55% 45%;align-items:stretch;min-height:622px;position:relative;z-index:2}.hero-copy{padding:97px 0 67px;position:relative;z-index:4}.eyebrow{display:inline-flex;align-items:center;gap:10px;font-size:10px;font-weight:900;letter-spacing:.13em}.eyebrow-dark{background:#fff;border:1px solid rgba(8,108,128,.12);padding:11px 15px;border-radius:999px;color:#0a788b;box-shadow:0 4px 17px rgba(5,89,110,.045)}.eyebrow-star{color:#00a5ba;font-size:16px}.hero h1{font-size:clamp(58px,6.2vw,98px);line-height:1.02;letter-spacing:-.072em;font-weight:800;margin:28px 0 23px;max-width:770px}.hero h1 span{color:#04a1ba}.hero-description{font-size:19px;line-height:1.66;max-width:488px;color:#4c6a75;margin:0 0 30px}.hero-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.btn-large{padding:20px 24px;font-size:14px;min-height:60px}.hero-note{display:flex;align-items:center;gap:14px;margin-top:55px}.mini-avatars{display:flex;align-items:center;padding-left:6px}.mini-avatars span{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;border:3px solid white;margin-left:-6px;background:#0fa5bb;color:white;box-shadow:0 3px 9px #0d7c9520;font-size:16px}.mini-avatars span:nth-child(2){background:#f4ec55;color:var(--navy)}.mini-avatars span:nth-child(3){background:#163e4b}.hero-note div:last-child{display:flex;flex-direction:column;gap:4px;font-size:12px}.hero-note strong{font-size:13px}.hero-note div:last-child span{color:#657e84}.hero-photo-frame{position:relative;overflow:hidden;align-self:end;height:570px;border-radius:33px 33px 0 0;margin:35px 0 0 3px;background:#d2f1f7;border:8px solid #ffffff60;border-bottom:0;box-shadow:0 14px 48px #145c7422}.hero-photo-frame>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 36%;filter:saturate(1.04)}.hero-photo-shine{position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,transparent 70%,rgba(5,67,82,.1) 100%)}.hero-star{position:absolute;z-index:3;font-size:35px;color:var(--yellow)}.hero-star.top{top:22px;right:32px}.hero-floating-tag{position:absolute;right:15px;bottom:35px;z-index:3;display:flex;align-items:center;gap:12px;background:var(--yellow);color:#063645;padding:15px 19px;border-radius:16px;box-shadow:0 12px 25px #0b72882a;transform:rotate(-4deg);font-size:11px;line-height:1.4;font-weight:700;letter-spacing:.03em}.tag-icon{font-size:28px}.hero-art-ring-one{position:absolute;pointer-events:none;width:560px;height:560px;top:35px;right:-270px;border:7px solid var(--yellow);border-radius:50%;transform:rotate(22deg);opacity:.95}.hero-bottom-strip{background:var(--navy);color:#eaf8fa;position:relative;z-index:3}.strip-inner{display:flex;gap:35px;justify-content:space-between;align-items:center;min-height:65px;font-size:12px;font-weight:700}.strip-inner>span{display:flex;align-items:center;gap:10px}.strip-icon{color:var(--yellow);font-size:17px}.strip-inner>a{color:var(--yellow)}
/* SHARED SECTIONS */
.section-overline{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:15px;margin-bottom:35px;font-size:10px;font-weight:800;letter-spacing:.11em;color:#71909a}.section-mark{color:#0a8da5}.section-kicker{display:block;color:#078fa7;font-size:10px;font-weight:900;letter-spacing:.13em;margin-bottom:19px}.display-title{font-weight:750;line-height:1.06;letter-spacing:-.065em;font-size:clamp(45px,5.7vw,79px);margin:0;color:var(--navy)}.blue-text{color:var(--cyan)}.section-heading-spread,.intro-heading-row{display:flex;align-items:end;justify-content:space-between;gap:55px;margin-bottom:43px}.section-lead{line-height:1.7;max-width:360px;color:#58737e;font-size:15px;margin:0 0 8px}
/* INTRO */
.intro-heading-row{margin-bottom:42px}.intro-layout{display:grid;grid-template-columns:1.12fr .88fr;gap:20px}.interior-photo{position:relative;overflow:hidden;border-radius:22px;min-height:390px;background:#dbecef}.interior-photo>img{height:100%;width:100%;object-fit:cover;object-position:center}.interior-overlay{position:absolute;left:24px;bottom:23px;background:#fff;box-shadow:var(--shadow);padding:17px 22px;border-radius:12px;display:grid;gap:4px}.interior-overlay>span{font-size:9px;font-weight:900;letter-spacing:.12em;color:var(--cyan-dark)}.interior-overlay strong{font-size:19px;letter-spacing:-.035em}.approach-panel{background:var(--yellow);border-radius:22px;min-height:390px;padding:42px 42px 35px;position:relative;overflow:hidden}.approach-small-tag{font-size:10px;font-weight:900;letter-spacing:.11em;display:flex;align-items:center;justify-content:space-between}.approach-small-tag>span{font-size:24px}.approach-panel h3{font-size:clamp(38px,4.1vw,57px);line-height:1.07;letter-spacing:-.06em;margin:45px 0 21px}.approach-panel p{font-size:15px;line-height:1.65;max-width:350px;margin:0 0 24px}.text-link{display:inline-flex;gap:14px;align-items:center;font-size:13px;font-weight:900;border-bottom:1.5px solid var(--navy);padding-bottom:7px}.squiggle{position:absolute;width:220px;right:-36px;bottom:12px;opacity:.6}.squiggle svg{width:100%}
/* SERVICES */
.services{background:#f4fbfc}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.service-card{display:flex;flex-direction:column;min-height:375px;border:1px solid #d3e7ed;border-radius:21px;background:white;padding:24px 22px;transition:transform .2s,box-shadow .2s}.service-card:hover{transform:translateY(-5px);box-shadow:0 18px 35px #0d64751a}.service-number{display:flex;justify-content:space-between;align-items:center;font-size:11px;letter-spacing:.08em;font-weight:800;color:#577983}.service-number span{font-size:19px;color:#093848}.service-icon{width:97px;height:97px;margin-top:16px;color:#0d5664}.service-icon svg{width:100%;height:100%}.service-card h3{font-size:25px;line-height:1.15;letter-spacing:-.055em;margin:13px 0 11px}.service-card p{font-size:13px;line-height:1.62;color:#58737a;margin:0 0 27px}.service-select{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #cfe5e8;padding-top:15px;margin-top:auto;font-size:12px;font-weight:900;color:#046f83}.service-select>span{font-size:20px}.card-blue{background:#c0eef4;border-color:#c0eef4}.card-yellow{background:#f6ed6b;border-color:#f6ed6b}.card-yellow .service-select{color:var(--navy);border-color:#c5bd56}.card-pale{background:#eaf8f8;border-color:#eaf8f8}.service-qualifier{font-size:11px;color:#70878c;margin:20px 0 0}
/* BIG IDEA */
.big-idea{overflow:hidden;background:#0a3542;color:white}.big-idea-inner{padding:56px 0 62px;position:relative;min-height:390px;display:flex;align-items:center;justify-content:center}.big-idea-corner{position:absolute;top:31px;left:0;font-size:10px;letter-spacing:.15em;font-weight:900;color:#aae9f1}.big-idea p{font-size:clamp(74px,10vw,147px);font-weight:800;letter-spacing:-.075em;line-height:.9;margin:30px 0 0;text-align:center;position:relative;z-index:2}.big-idea em{color:#7cdeed;font-style:normal}.yellow-period{color:var(--yellow)}.big-idea-star{position:absolute;right:7%;top:60px;color:var(--yellow);font-size:43px}.idea-stroke{position:absolute;right:-100px;bottom:-20px;width:420px;opacity:.8}
/* PROCESS */
.how{background:white}.step-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.step-card{position:relative;display:flex;flex-direction:column;min-height:310px;border-radius:22px;background:#e8f7f9;padding:26px 30px;overflow:hidden}.step-card:nth-child(2){background:#f5ed70}.step-card:nth-child(3){background:#d7edf2}.step-numeral{font-size:12px;font-weight:900}.step-symbol{position:absolute;top:48px;right:28px;color:#0eafc5;font-size:93px;line-height:1}.step-card:nth-child(2) .step-symbol{color:#fff}.step-card h3{font-size:31px;line-height:1.12;letter-spacing:-.05em;margin:auto 0 15px;position:relative}.step-card p{line-height:1.62;font-size:13px;color:#4f7079;max-width:280px;margin:0;position:relative}
/* GALLERY */
.comparison{background:#eaf9fc}.gallery-grid{display:grid;grid-template-columns:.76fr 1.24fr;align-items:center;gap:70px}.gallery-copy .display-title{font-size:clamp(51px,5.8vw,83px)}.gallery-copy p{font-size:16px;line-height:1.8;max-width:370px;color:#516d76;margin:24px 0 26px}.gallery-hint{display:inline-flex;gap:10px;align-items:center;background:#fff;color:var(--navy);font-size:12px;font-weight:900;padding:12px 15px;border-radius:99px;box-shadow:0 5px 13px #0d677610}.gallery-hint span{font-size:19px}.gallery-disclaimer{display:block;font-size:11px;color:#789096;line-height:1.5;max-width:340px;margin-top:15px}.compare-frame{aspect-ratio:1.39;min-height:300px;position:relative;overflow:hidden;border-radius:25px;box-shadow:0 25px 45px #075a701b;border:7px solid #fff;background:#dae9e7}.compare-images{position:absolute;inset:0}.compare-images img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.compare-before{clip-path:inset(0 50% 0 0)}.compare-divider{position:absolute;left:50%;top:0;height:100%;border-left:3px solid #fff;transform:translateX(-50%);filter:drop-shadow(0 2px 7px rgba(0,0,0,.18));pointer-events:none}.compare-handle{position:absolute;top:50%;left:0;transform:translate(-50%,-50%);border-radius:50%;display:grid;place-items:center;width:54px;height:54px;color:var(--navy);background:#fff;box-shadow:0 8px 20px #0002;font-size:26px;letter-spacing:-.15em;padding-right:5px}.compare-label{position:absolute;bottom:21px;z-index:2;font-size:11px;font-weight:900;letter-spacing:.05em;background:#fff;padding:9px 13px;border-radius:99px}.label-before{left:20px}.label-after{right:20px;background:var(--yellow)}.compare-range{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize;margin:0}
/* VALUES */
.values{background:#fff}.values-top{display:grid;grid-template-columns:1fr 1fr;column-gap:40px;align-items:end;margin-bottom:35px}.values-top .section-kicker{grid-column:1/-1}.values-top>p{font-size:16px;color:#526d76;line-height:1.65;margin:0 0 8px;max-width:400px}.values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.value-card{border:1px solid var(--line);border-radius:22px;padding:30px 27px 35px;min-height:228px}.value-symbol{display:grid;place-items:center;width:50px;height:50px;background:#c7f1f5;border-radius:15px;font-size:29px;color:#007c93}.value-card:nth-child(2) .value-symbol{background:#fff39b;color:var(--navy)}.value-card h3{font-size:22px;letter-spacing:-.04em;margin:22px 0 10px}.value-card p{font-size:13px;line-height:1.65;color:#61777f;margin:0}
/* FAQ */
.faq{background:#f3fbfc}.faq-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:110px}.faq-heading p{color:#59747c;font-size:15px;line-height:1.72;max-width:350px;margin:24px 0 25px}.faq-list{border-top:1px solid #c9e1e6}.faq-list details{border-bottom:1px solid #c9e1e6}.faq-list summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px;cursor:pointer;font-weight:800;font-size:16px;line-height:1.5;padding:25px 3px}.faq-list summary::-webkit-details-marker{display:none}.faq-plus{width:28px;height:28px;flex:none;border-radius:50%;background:#d9f1f5;color:#076e82;display:grid;place-items:center;font-size:22px;font-weight:400;transition:transform .2s}.faq-list details[open] .faq-plus{transform:rotate(45deg);background:var(--yellow)}.faq-list details p{font-size:14px;color:#536d75;line-height:1.75;margin:0 35px 22px 3px}
/* QUOTE */
.quote-section{background:linear-gradient(125deg,#0a758c 0%,#10adc3 100%);position:relative;overflow:hidden;padding:105px 0}.quote-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:85px;align-items:start}.quote-copy{color:white;position:relative;padding-top:28px}.eyebrow-light{border:1px solid #e0fbff6b;padding:12px 15px;border-radius:50px;color:#e4fcff}.quote-copy h2{font-size:clamp(65px,7vw,104px);letter-spacing:-.08em;line-height:.98;margin:32px 0 26px}.quote-copy h2 em{font-style:normal;color:var(--yellow)}.quote-copy>p{font-size:18px;line-height:1.7;color:#ddf8fb;max-width:400px}.quote-notice{display:flex;gap:15px;margin-top:53px;align-items:start;color:#eaffff;font-size:13px;line-height:1.75}.quote-notice>span:first-child{color:var(--yellow);font-size:32px;line-height:1}.quote-notice strong{color:white}.quote-doodle{max-width:390px;margin:62px 0 0 -15px}.quote-doodle svg{width:100%}.form-card{background:white;border-radius:25px;padding:34px;box-shadow:0 30px 65px #003b4b34}.form-header{display:flex;justify-content:space-between;gap:12px;align-items:center}.form-tag{display:inline-block;padding:9px 11px;background:#d7f6f8;border-radius:99px;font-size:10px;font-weight:900;letter-spacing:.07em;color:#08758b}.form-steps{font-size:10px;color:#6d8790;font-weight:800;letter-spacing:.04em}.form-card h3{font-size:clamp(34px,3.5vw,47px);letter-spacing:-.06em;line-height:1.1;margin:24px 0 11px;color:var(--navy)}.form-intro{color:#66818a;font-size:13px;line-height:1.6;margin:0 0 26px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px 15px}.form-field{display:flex;flex-direction:column;gap:8px;min-width:0}.form-field>span{font-size:12px;font-weight:850;color:#254753}.form-field b{color:#d45d28}.form-field small{font-weight:400;color:#79939a}.form-field input,.form-field select,.form-field textarea{min-width:0;width:100%;background:#f7fbfc;border:1.5px solid #dae9ec;color:#1c4654;border-radius:10px;padding:14px 12px;font-size:13px;outline:0;min-height:46px}.form-field textarea{resize:vertical;min-height:96px}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:#08a9bd;box-shadow:0 0 0 3px #08a9bd14}.form-field input::placeholder,.form-field textarea::placeholder{color:#99aab0}.field-full{grid-column:1/-1}.submit-quote{margin-top:23px;width:100%;padding:18px 20px;font-size:14px}.form-privacy{color:#8598a0;font-size:10px;line-height:1.6;text-align:center;margin:14px 0 0}.validation-feedback{padding:11px 13px;color:#9f312f;font-size:12px;background:#fff1ef;border-radius:9px;margin:12px 0 0}.quote-result{margin-top:18px;border:1px solid #a5e3e8;padding:17px;border-radius:16px;background:#eefafb}.quote-success{display:flex;gap:12px;align-items:start}.quote-success>span{width:30px;height:30px;border-radius:50%;background:#17a0b4;color:white;display:grid;place-items:center;font-weight:900;flex:none}.quote-success strong{font-size:14px}.quote-success p{font-size:12px;line-height:1.5;color:#617a82;margin:6px 0 13px}#quoteMessage{margin:3px 0 13px;padding:15px;max-height:265px;overflow:auto;background:#fff;border:1px solid #d5e7eb;border-radius:9px;white-space:pre-wrap;overflow-wrap:anywhere;font-size:11px;line-height:1.65;color:#234554;font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.result-actions{display:flex;gap:8px;flex-wrap:wrap}.result-actions .btn{font-size:11px;padding:12px}.btn-whatsapp{background:#daf9e8;color:#0a603c;border-color:#a8ecc5}#copyStatus{font-size:12px;color:#236b71}
/* FOOTER */
.site-footer{background:#092e3b;color:#f3fcfe;padding:66px 0 0;overflow:hidden}.footer-top{display:grid;grid-template-columns:1.2fr .65fr 1fr .85fr;gap:48px;padding-bottom:57px}.brand-inverse .brand-wordmark{color:#fff}.brand-inverse .brand-submark{color:#c6dfe3}.footer-brand>p{color:#bad5db;font-size:13px;line-height:1.7;margin:23px 0 0}.footer-group{display:flex;flex-direction:column;gap:14px;align-items:flex-start}.footer-group h3{font-size:12px;margin:8px 0 9px;color:#92b8c0;letter-spacing:.04em}.footer-group>a{font-size:13px}.footer-group>a:hover{color:var(--yellow)}.footer-contact{display:grid;gap:9px;color:#ddf3f6;font-size:12px;overflow-wrap:anywhere}.footer-contact a{text-decoration:underline;text-underline-offset:3px}.footer-area{font-size:11px;color:#8db4be;line-height:1.5}.footer-cta{background:#bcecf2;color:var(--navy);border-radius:21px;padding:23px;display:flex;flex-direction:column;gap:20px;min-height:196px}.footer-big-star{font-size:25px;line-height:1;color:#0aa5bc}.footer-cta strong{font-size:27px;line-height:1.14;letter-spacing:-.05em}.footer-cta>a{align-self:end;background:var(--yellow);width:38px;height:38px;border-radius:50%;display:grid;place-items:center;font-size:25px}.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;border-top:1px solid #ffffff30;padding:24px 0;font-size:10px;color:#9ebcc3}.footer-bottom>a{color:white}.footer-demo-note{color:#f6eb69;font-weight:800}.footer-giant{font-size:clamp(80px,12vw,176px);line-height:.79;letter-spacing:-.1em;font-weight:800;white-space:nowrap;color:#174654;text-align:center;pointer-events:none;margin-top:33px}.mobile-sticky-cta{display:none}
/* RESPONSIVE */
@media(max-width:1100px){.desktop-nav{gap:17px}.header-inner{gap:14px}.hero-grid{grid-template-columns:53% 47%;min-height:575px}.hero h1{font-size:clamp(52px,6vw,73px)}.hero-photo-frame{height:535px}.hero-copy{padding:85px 0 60px}.hero-description{max-width:385px}.gallery-grid{gap:40px}.quote-layout{gap:45px}.footer-top{gap:28px}.service-card{padding:21px 17px}.service-card h3{font-size:23px}}
@media(max-width:820px){.shell{width:min(100% - 42px,690px)}.section-spacing{padding:80px 0}.site-header{height:72px}.desktop-nav,.header-cta{display:none}.menu-toggle{display:flex;margin-left:auto}.hero-grid{grid-template-columns:1fr;min-height:auto}.hero-copy{padding:64px 0 25px}.hero h1{font-size:clamp(55px,9.2vw,85px)}.hero-description{max-width:530px;font-size:17px}.hero-note{margin-top:30px}.hero-photo-frame{height:480px;margin:0 auto;width:min(580px,100%)}.hero-photo-frame>img{object-position:50% 35%}.hero-bottom-strip{padding:12px 0}.strip-inner{flex-wrap:wrap;gap:14px 30px;justify-content:center}.strip-inner>a{display:none}.section-heading-spread,.intro-heading-row{align-items:start;gap:23px}.intro-layout{grid-template-columns:1fr 1fr}.interior-photo{min-height:350px}.approach-panel{min-height:350px;padding:30px}.approach-panel h3{margin:38px 0 14px;font-size:39px}.service-grid{grid-template-columns:repeat(2,1fr)}.service-card{min-height:335px}.gallery-grid{grid-template-columns:1fr;gap:35px}.gallery-copy .display-title{font-size:65px}.compare-frame{max-width:700px}.faq-grid{grid-template-columns:1fr;gap:38px}.quote-layout{grid-template-columns:1fr;gap:32px}.quote-copy{padding:0}.quote-copy h2{max-width:670px}.quote-notice{margin-top:20px}.quote-doodle{display:none}.form-card{max-width:710px}.footer-top{grid-template-columns:1fr 1fr}.footer-cta{min-height:160px}.values-top{gap:20px}.big-idea-inner{min-height:320px}.big-idea p{font-size:clamp(70px,11.2vw,118px)}}
@media(max-width:560px){html{scroll-padding-top:85px}.shell{width:calc(100% - 34px)}.concept-banner{font-size:9px;line-height:1.5;gap:6px;padding:7px 11px;flex-wrap:wrap}.concept-banner span:last-child{font-size:9px}.site-header{height:66px}.brand-icon{width:36px;height:36px}.brand-wordmark{font-size:25px}.brand-submark{font-size:7px}.hero-copy{padding:52px 0 21px}.hero h1{font-size:clamp(46px,12vw,65px);margin:25px 0 19px}.hero-description{font-size:15px;line-height:1.65;max-width:330px}.hero-actions{gap:9px}.btn-large{padding:16px 14px;min-height:52px;font-size:12px;gap:11px}.hero-actions .btn-outline{padding:16px 14px}.hero-note{margin-top:28px}.hero-photo-frame{height:355px;width:100%;border-radius:22px 22px 0 0;border-width:5px;margin-top:8px}.hero-photo-frame>img{object-position:50% 30%}.hero-floating-tag{bottom:19px;right:13px;padding:10px;font-size:9px;border-radius:10px}.tag-icon{font-size:21px}.hero-star.top{right:20px;font-size:27px}.strip-inner{display:grid;grid-template-columns:1fr 1fr;gap:11px 7px;font-size:10px;padding:5px 0}.strip-inner>span{gap:5px}.strip-inner>span:last-of-type{grid-column:1/-1}.section-spacing{padding:65px 0}.section-overline{font-size:8px;gap:15px;margin-bottom:27px}.section-overline>span:last-child{text-align:right}.section-heading-spread,.intro-heading-row{flex-direction:column;align-items:stretch;gap:22px;margin-bottom:29px}.display-title{font-size:clamp(41px,11vw,58px)}.section-lead{font-size:14px;max-width:100%;line-height:1.68}.intro-layout{grid-template-columns:1fr;gap:12px}.interior-photo{height:290px;min-height:290px}.approach-panel{min-height:300px;padding:29px}.approach-panel h3{font-size:42px;margin:32px 0 18px}.approach-panel p{max-width:285px;font-size:14px}.service-grid{grid-template-columns:1fr 1fr;gap:10px}.service-card{padding:19px 14px;min-height:340px;border-radius:16px}.service-icon{width:77px;height:77px}.service-card h3{font-size:21px;line-height:1.14;margin-top:11px}.service-card p{font-size:11.5px;line-height:1.55}.service-select{font-size:10px;gap:7px}.service-select span{font-size:16px}.service-qualifier{line-height:1.5}.big-idea-inner{min-height:275px;padding:55px 0}.big-idea p{font-size:clamp(51px,13.5vw,78px);line-height:.99}.big-idea-corner{font-size:9px}.big-idea-star{right:5%;font-size:30px}.step-grid{grid-template-columns:1fr;gap:11px}.step-card{min-height:225px;padding:22px}.step-symbol{font-size:78px;top:25px}.step-card h3{font-size:30px}.step-card p{font-size:12px;max-width:270px}.gallery-copy .display-title{font-size:clamp(46px,12vw,67px)}.gallery-copy p{font-size:14px;margin:18px 0}.compare-frame{min-height:220px;aspect-ratio:1.12;border-width:5px;border-radius:19px}.compare-label{font-size:9px;bottom:12px;padding:8px}.label-before{left:11px}.label-after{right:11px}.compare-handle{width:46px;height:46px;font-size:22px}.values-top{display:block}.values-top .display-title{margin-bottom:15px}.values-top>p{font-size:14px}.values-grid{grid-template-columns:1fr;gap:12px}.value-card{min-height:auto;padding:23px}.value-card h3{margin-top:15px}.faq-grid{gap:35px}.faq-list summary{font-size:14px;padding:20px 2px}.faq-list details p{font-size:13px}.quote-section{padding:67px 0 75px}.quote-copy h2{font-size:clamp(58px,14vw,83px)}.quote-copy>p{font-size:15px}.quote-notice{font-size:12px}.form-card{padding:25px 19px;border-radius:20px}.form-header{align-items:flex-start;flex-direction:column}.form-card h3{font-size:38px;margin-top:21px}.form-grid{gap:14px 9px}.form-field>span{font-size:11px}.form-field input,.form-field select,.form-field textarea{padding:12px 9px;font-size:12px}.footer-top{grid-template-columns:1fr 1fr;gap:35px 18px}.footer-brand{grid-column:1/-1}.footer-cta{grid-column:1/-1;min-height:155px}.footer-cta strong{font-size:30px}.footer-bottom{align-items:flex-start;flex-direction:column;gap:12px}.footer-giant{font-size:clamp(52px,12.5vw,86px);margin-top:20px}.mobile-sticky-cta{display:flex;align-items:center;justify-content:space-between;position:fixed;bottom:14px;left:15px;right:15px;padding:15px 21px;border-radius:100px;z-index:35;background:var(--yellow);color:var(--navy);box-shadow:0 6px 25px #08323a39;font-size:13px;font-weight:900}.site-footer{padding-bottom:74px}}
@media(max-width:390px){.hero h1{font-size:46px}.hero-actions .btn{font-size:11px;gap:8px;padding:13px 12px}.service-card{min-height:355px}.service-card h3{font-size:19px}.form-card{padding:23px 15px}.form-grid{gap:12px 8px}.form-field input,.form-field select{font-size:11px;padding:12px 8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.001ms!important;transition-duration:.001ms!important}}

@media(max-width:560px){.hero-art-ring-one{display:none}}

/* V2.1 · Family Cleaning: preserve the approved Klara-inspired blue/yellow design. */
.brand-wordmark {font-size:25px;letter-spacing:-.075em}
.brand-submark {font-size:8px;letter-spacing:.13em}
.desktop-nav{gap:21px}
.hero h1{font-size:clamp(55px,5.9vw,90px);letter-spacing:-.07em}
.hero-note div:last-child{min-width:0}
.hero-note div:last-child span{line-height:1.5}
.hero-description{max-width:520px}
.big-idea p{font-size:clamp(55px,9.8vw,135px)}
.service-card h3{overflow-wrap:break-word}

/* Illustrated selection plan: all interaction in the SVG, no external map image. */
.room-picker{background:linear-gradient(180deg,#f0fafc 0%,#eaf7fb 80%,#fff 100%)}
.room-picker-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(300px,.75fr);align-items:stretch;gap:23px}
.blueprint-card{background:white;border:1px solid #d4e7ed;border-radius:26px;padding:25px;box-shadow:0 22px 50px #064d6311;min-width:0}
.blueprint-top,.blueprint-bottom{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;color:#56808a}
.blueprint-top{margin-bottom:12px}
.blueprint-chip{background:#daeff3;color:#07687c;border-radius:100px;font-size:10px;letter-spacing:.12em;font-weight:900;padding:10px 15px}
.blueprint-legend{display:flex;gap:8px;align-items:center;font-size:11px;font-weight:700}
.blueprint-legend i{width:12px;height:12px;background:var(--yellow);border-radius:3px;border:2px solid #d1b936}
.house-plan{display:block;width:100%;height:auto;overflow:visible}
.plan-room{cursor:pointer;outline:none;isolation:isolate}
.plan-room .room-surface{fill:#f8fbf8;stroke:#b7cbd0;stroke-width:3;transition:fill .2s,stroke .2s,stroke-width .2s}
.plan-room .room-floor{pointer-events:none;opacity:.78}
.plan-room .room-label rect{fill:white;stroke:#d4e5e8;stroke-width:1.3;transition:fill .2s}
.plan-room .room-label text{font-family:Arial,Helvetica,sans-serif;font-size:18px;font-weight:800;fill:#0c3441;pointer-events:none}
.plan-room .room-label .room-check{fill:#e4f1f4;stroke:#bbd5db;stroke-width:1.3;transition:fill .2s}
.plan-room .room-label path{stroke:white;stroke-width:3;fill:none;stroke-linecap:round;stroke-linejoin:round;opacity:0;pointer-events:none}
.plan-room.is-selected .room-surface{fill:#fff7b2;stroke:#efc623;stroke-width:5}
.plan-room.is-selected .room-label rect{fill:var(--yellow);stroke:#e0cb3a}
.plan-room.is-selected .room-check{fill:#0b677a;stroke:#0b677a}
.plan-room.is-selected .room-label path{opacity:1}
.plan-room:hover .room-surface{stroke:#00a5b7;stroke-width:5}
.plan-room:focus-visible .room-surface{stroke:#0673a8;stroke-width:7}
.blueprint-bottom{padding:14px 3px 0;font-size:11px;line-height:1.5;border-top:1px solid #e7eff1}
.blueprint-bottom span:last-child{color:#047d95;font-weight:800}
.room-summary{background:#fff;border-radius:26px;padding:30px 27px;box-shadow:0 22px 50px #064d6311;display:flex;flex-direction:column;gap:15px;border:1px solid #d4e7ed}
.room-summary-head{display:flex;justify-content:space-between;gap:12px;align-items:center}
.summary-overline{font-weight:900;letter-spacing:.13em;font-size:10px;color:#088ea6}
.room-counter{background:var(--yellow);border-radius:99px;color:#11343e;padding:10px 13px;font-size:11px;font-weight:900;white-space:nowrap}
.room-summary h3{font-size:clamp(25px,2.2vw,34px);line-height:1.07;letter-spacing:-.04em;margin:4px 0 0}
.room-summary-intro{color:#55747d;line-height:1.65;font-size:13px;margin:0}
.selected-room-list{display:flex;flex-direction:column;gap:9px;min-height:190px}
.empty-selection{padding:19px;background:#f3f8fa;border:1px dashed #bedee5;border-radius:15px;color:#71888f;text-align:center;line-height:1.65;font-size:13px}
.selected-room-item{display:flex;align-items:center;gap:9px;background:#eff8f8;border:1px solid #d5eaee;padding:11px 11px 11px 14px;border-radius:13px;font-size:13px;font-weight:800;color:#123949}
.selected-room-item::before{content:'✓';color:#0a829b;font-weight:900}
.selected-room-item span{flex:1}
.selected-room-item button{border:0;border-radius:50%;background:white;color:#425c66;font-size:19px;line-height:1;width:27px;height:27px;display:grid;place-items:center}
.selected-room-item button:hover{background:#dbedef}
.selection-buttons{display:flex;gap:10px;flex-wrap:wrap}
.selection-buttons button{flex:1;min-width:95px;border-radius:12px;padding:11px 8px;font-size:11px;font-weight:900;border:1px solid #bedde3;background:white;color:#087d93}
.selection-buttons button:hover{background:#eaf9fa}
.room-summary-footer{display:flex;gap:10px;align-items:flex-start;background:#f0fbfc;border-radius:14px;padding:13px}
.room-summary-footer>span{font-size:19px;color:#06a8bd}
.room-summary-footer p{font-size:11px;line-height:1.6;margin:0;color:#527882}
.room-to-quote{margin-top:auto;justify-content:center;padding:19px 12px;white-space:normal;text-align:center}
.form-room-preview{display:block;padding:16px;background:#eaf8f9;border:1px solid #c4e5eb;border-radius:14px}
.selected-preview-head{display:flex;gap:9px;align-items:center;justify-content:space-between;flex-wrap:wrap;margin-bottom:9px}
.selected-preview-head strong{font-size:12px}
.selected-preview-head a{font-size:11px;color:#087f99;font-weight:900;text-decoration:underline;text-underline-offset:3px}
.selected-preview-text{color:#375965;font-size:13px;line-height:1.6}
.contact-phone-action{border-color:#9bbdc3;color:var(--navy)}
.footer-brand p{white-space:pre-line}

@media(max-width:1060px){.room-picker-grid{grid-template-columns:1fr}.room-summary{max-width:none}.selected-room-list{min-height:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.room-summary h3{font-size:29px}.desktop-nav{gap:13px}.desktop-nav .nav-link{font-size:11px}}
@media(max-width:820px){.desktop-nav{display:none}.room-picker-grid{grid-template-columns:1fr}.room-summary{padding:24px}.blueprint-card{padding:18px}}
@media(max-width:560px){.brand-wordmark{font-size:23px}.hero h1{font-size:clamp(44px,11vw,58px)}.hero-note div:last-child{font-size:11px}.room-picker .section-overline span:last-child{max-width:46%}.room-picker-grid{gap:14px}.blueprint-card{padding:12px;border-radius:20px}.blueprint-top{margin:5px 5px 10px}.blueprint-chip{font-size:9px;padding:8px 9px}.blueprint-legend{font-size:9px}.house-plan{width:100%}.plan-room .room-label text{font-size:19px}.blueprint-bottom{font-size:10px;padding:10px 5px 3px}.room-summary{padding:20px;border-radius:20px}.room-summary h3{font-size:28px}.selected-room-list{grid-template-columns:1fr}.room-to-quote{font-size:12px}.big-idea p{font-size:clamp(42px,12.2vw,68px)}.service-card h3{font-size:19px}.selected-preview-head{align-items:flex-start}}
@media(max-width:365px){.hero h1{font-size:42px}.room-summary{padding:16px}.room-summary h3{font-size:26px}.blueprint-top{gap:5px}.blueprint-legend{font-size:8px}.blueprint-chip{font-size:8px}.service-grid{gap:8px}.service-card{padding:17px 12px}}
.mobile-room-buttons{display:none}
@media(max-width:560px){
 .mobile-room-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:10px 5px 8px}
 .room-shortcut{display:flex;align-items:center;justify-content:space-between;gap:4px;background:#f0f9fa;border:1px solid #c8e3e8;border-radius:12px;padding:11px 10px;font-size:12px;font-weight:800;color:var(--navy);text-align:left}
 .room-shortcut span{font-size:19px;line-height:1;color:#0695a8}
 .room-shortcut[aria-pressed="true"]{background:var(--yellow);border-color:#dfc637}
 .room-shortcut[aria-pressed="true"] span{color:#093944}
}

/* ===========================================================
   V2.2 — Flor & Shine: más color, misma estructura Klara.
   Colores de marca: Flor #0B93A9, azul petróleo, sol y coral.
   =========================================================== */
:root{--navy:#063c51;--navy2:#052f43;--ink:#12394b;--cyan:#0B93A9;--cyan-dark:#087b91;--sky:#bbf2fc;--pale:#f0fbfd;--yellow:#ffe249;--coral:#ff796f;--mint:#c8f3da;--violet:#e7d9fc;--line:#d2e8ee;--shadow:0 17px 45px rgba(6,60,81,.12)}
body{background:#fffefb}
:focus-visible{outline-color:#eb7043}
.concept-banner{background:#063a50}
.brand-icon{flex-shrink:0}.brand-icon svg{filter:drop-shadow(0 2px 2px #0b93a922)}
.brand-wordmark{font-size:22px;letter-spacing:-.055em;white-space:nowrap}
.brand-flor{color:#0B93A9}.brand-shine{color:#07394d}
.brand-submark{font-size:7px;letter-spacing:.13em;color:#277f91}
.brand-inverse .brand-flor{color:#83e8ee}.brand-inverse .brand-shine{color:white}.brand-inverse .brand-submark{color:#b5edeb}
.hero{background:radial-gradient(circle at 4% 76%,#fff1b5 0,transparent 27%),linear-gradient(118deg,#f9feff 0%,#d7f7fb 45%,#a6e9f1 78%,#c4ecdd 100%)}
.hero h1 span{color:#0B93A9}
.hero-art-ring-one{border-color:#ffcf43}
.hero-floating-tag{background:#ffdf58}
.hero-photo-frame{border-color:#fff9eeaa;box-shadow:0 18px 60px #0b93a930}
.hero-bottom-strip{background:linear-gradient(92deg,#07465b 0%,#0d8194 65%,#0b93a9 100%)}
.eyebrow-dark{color:#08788e;border-color:#b2e1e7}
.eyebrow-star{color:#f17e68}
.intro{background:#fffdf8}
.intro .approach-panel{background:linear-gradient(140deg,#ffed7f 0%,#ffe7aa 75%,#ffd1c1 100%)}
.intro .interior-photo{border:5px solid white;box-shadow:0 15px 33px #0b65821c}
.services{background:linear-gradient(180deg,#ebfaf8,#eff9ff)}
.service-card{border:1px solid #d4e8e9}
.service-card:nth-child(1){background:#fff4dd;border-color:#f3dfaa}
.service-card:nth-child(2){background:#dff9fd;border-color:#a6e9f1}
.service-card:nth-child(3){background:#fff2b9;border-color:#efdb80}
.service-card:nth-child(4){background:#f4eafd;border-color:#dfc8f8}
.service-card:nth-child(2) .service-icon{color:#05798d}
.service-card:nth-child(4) .service-icon{color:#865bb6}
.service-card:hover{box-shadow:0 22px 38px #0b93a92a}
.big-idea{background:linear-gradient(125deg,#05465a 0%,#087f90 100%)}
.big-idea em{color:#97f2f3}
.step-card:nth-child(1){background:#dcf8e9}.step-card:nth-child(2){background:#ffe778}.step-card:nth-child(3){background:#f5e7fd}
.step-card:nth-child(3) .step-symbol{color:#b17bdd}
.room-picker{background:linear-gradient(160deg,#e8faff 0%,#fff4dc 70%,#fcfeff 100%)}
.blueprint-card,.room-summary{border-color:#cce6ee;box-shadow:0 19px 49px #0b627a1b}
.blueprint-chip{background:#c7f4eb;color:#056e7e}
.plan-room.is-selected .room-surface{fill:#fff1b7;stroke:#f6b924}
.plan-room.is-selected .room-label rect{fill:#ffe569;stroke:#dfae29}
.plan-room.is-selected .room-check{fill:#0b93a9;stroke:#0b93a9}
.plan-room:hover .room-surface{stroke:#0B93A9}
.room-counter{background:#ffde53}
.room-summary-footer{background:#e4f9f2}
.room-to-quote{background:#ffdf4e}
.comparison{background:#fffefa}
.values{background:linear-gradient(180deg,#fffefb 5%,#fff3e1 100%)}
.value-card:nth-child(1){background:#e8f9fc;border-color:#d1edf0}
.value-card:nth-child(2){background:#fff5cf;border-color:#ffe5a9}
.value-card:nth-child(3){background:#f6eafa;border-color:#e9d4f8}
.value-card:nth-child(3) .value-symbol{background:#efcfec;color:#87539a}
.faq{background:#effaf6}
.quote-section{background:linear-gradient(135deg,#08728b 0%,#0B93A9 48%,#0e9a91 100%)}
.form-card{border:3px solid #fff9da}
.form-room-preview{background:#effbf8;border-color:#bfe9e4}
.form-tag{background:#f8e7ba;color:#79550b}
.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:#0B93A9;box-shadow:0 0 0 3px #0b93a91c}
.site-footer{background:#06374a}
.footer-giant{letter-spacing:-.065em}
/* Contadores independientes de espacios repetibles */
.quantity-pickers{display:grid;grid-template-columns:1fr;gap:10px}
.quantity-card{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 12px;border:1px solid #b6e8ed;border-radius:16px;background:#e8faff;min-width:0}
.quantity-bathroom{background:#fff4d6;border-color:#f1dc98}
.quantity-heading{display:flex;align-items:center;gap:9px;min-width:0}
.quantity-heading strong{display:block;font-size:14px;color:var(--navy)}
.quantity-heading small{display:block;color:#55737d;font-size:10px;line-height:1.45;margin-top:3px}
.quantity-icon{display:grid;place-items:center;flex-shrink:0;width:36px;height:36px;background:#fff;border-radius:12px;font-size:21px}
.quantity-controls{display:flex;gap:3px;align-items:center;flex-shrink:0;background:white;padding:4px;border-radius:100px;border:1px solid #c2dce0}
.qty-step{width:31px;height:31px;display:grid;place-items:center;flex-shrink:0;border:0;border-radius:50%;background:#0b93a9;color:white;font-size:22px;font-weight:800;line-height:1}
.quantity-bathroom .qty-step{background:#e98e37}
.qty-step:disabled{opacity:.25;cursor:not-allowed}
.quantity-controls input{width:35px;min-width:0;border:0;outline:0;text-align:center;font-size:16px;font-weight:900;color:#123d4c;background:transparent;padding:0;-moz-appearance:textfield;appearance:textfield}
.quantity-controls input::-webkit-inner-spin-button,.quantity-controls input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.quantity-hint{font-size:10px;line-height:1.5;color:#697e82;margin:-5px 0 1px}
.selected-area-caption{font-size:10px;letter-spacing:.1em;color:#087f93;font-weight:900;margin-top:4px}
.selected-room-list{min-height:60px}
.extras-summary{font-size:11px;line-height:1.5;color:#12586e;background:#f7edff;border-radius:11px;padding:12px;margin:0;grid-column:1/-1}
.optional-extras{margin:2px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:7px;padding:14px 12px 12px;border:1px solid #eccceb;border-radius:16px;background:#f9edfb}
.optional-extras legend{font-weight:900;font-size:14px;color:#603c74;padding:0 7px}
.optional-extras p{grid-column:1/-1;color:#775d83;line-height:1.5;font-size:11px;margin:0 0 3px}
.optional-extras label{display:flex;gap:8px;align-items:center;font-size:11px;font-weight:750;padding:7px 4px;min-width:0}
.optional-extras input{accent-color:#0B93A9;width:17px;height:17px;flex-shrink:0}
.optional-extras label span{overflow-wrap:anywhere}
@media(max-width:1060px){.quantity-pickers{grid-template-columns:repeat(2,minmax(0,1fr))}.quantity-card{gap:8px}}
@media(max-width:560px){.quantity-pickers{grid-template-columns:1fr}.brand-wordmark{font-size:19px}.brand-submark{font-size:6px;letter-spacing:.065em}.quantity-controls input{font-size:17px}.optional-extras label{font-size:11px}}
@media(max-width:360px){.brand-wordmark{font-size:17px}.quantity-heading strong{font-size:13px}.quantity-icon{width:30px;height:30px}.optional-extras{grid-template-columns:1fr}}

/* ===============================================================
   V2.3 — Nueva paleta aprobada por Flor
   Referencia: lavanda #99B7F5, verde #267F53,
   naranja #F5793B, rosa #F296BD, amarillo #FCCA59.
   El turquesa del logo (#0B93A9) permanece como sexto acento.
   Únicamente cambios de identidad visual: no se altera la UX.
   =============================================================== */
:root {
  --lavender:#99B7F5;
  --green:#267F53;
  --orange:#F5793B;
  --pink:#F296BD;
  --yellow:#FCCA59;
  --cyan:#0B93A9;
  --cyan-dark:#087f93;
  --navy:#0c3441;
  --navy2:#0a3140;
  --ink:#122f3b;
  --mint:#d9f1df;
  --violet:#e4ebff;
  --line:#d5e6e5;
  --shadow:0 17px 45px rgba(24,88,78,.11);
}
body {background:#fffefa}
:focus-visible {outline-color:var(--green)}
::selection {background:#F296BD;color:#0c3441}
.concept-banner {background:#1c624d;color:#fffefa}
.concept-banner strong {color:#ffda79}
.concept-dot {background:#F296BD}
.site-header {background:rgba(255,255,252,.96);border-bottom:1px solid #e5ede4}
.brand-flor {color:#0B93A9}
.brand-shine {color:#0c3441}
.brand-submark {color:#267F53}
.brand-icon svg path:first-child {stroke:#FCCA59}
.brand-icon svg path:nth-child(2) {stroke:#0B93A9}
.brand-icon svg path:nth-child(3) {fill:#267F53}
.btn-navy {background:var(--green);color:#fff}
.btn-navy:hover {background:#1b6440}
.btn-yellow {background:var(--orange);color:var(--navy);box-shadow:0 10px 23px rgba(245,121,59,.22)}
.btn-yellow:hover {background:#ff965a}
.btn-outline {border-color:var(--green);color:var(--navy)}
.btn-outline:hover {background:#e6f3e9}
.nav-link:hover,.nav-link:focus-visible {color:#267F53}
.mobile-nav .mobile-nav-cta {background:var(--yellow);color:var(--navy)}
.mobile-sticky-cta {background:var(--orange);color:var(--navy);box-shadow:0 8px 25px #267f5340}
/* A welcoming colorful hero, without changing its layout. */
.hero {background:
  radial-gradient(ellipse at 10% 95%,#fff1c9 0,transparent 38%),
  radial-gradient(ellipse at 93% 7%,#fbd6e9 0,transparent 40%),
  linear-gradient(116deg,#f8fdff 0%,#e5edff 40%,#d2e4fa 70%,#ffebd4 100%)}
.hero h1 span {color:#0B93A9}
.eyebrow-dark {color:#216846;border-color:#cfebdb;background:#eef9f1}
.eyebrow-star {color:#F5793B}
.hero-art-ring-one {border-color:#FCCA59}
.hero-star.top {color:var(--orange)}
.hero-photo-frame {background:#fbe3e9;border-color:#fff2ba;box-shadow:0 19px 55px #267f5330}
.hero-floating-tag {background:#FCCA59;color:var(--navy);border:1px solid #e4a947}
.mini-avatars span:nth-child(1) {background:#267F53}
.mini-avatars span:nth-child(2) {background:#F296BD}
.mini-avatars span:nth-child(3) {background:#99B7F5;color:#0c3441}
.hero-bottom-strip {background:linear-gradient(90deg,#267F53 0%,#0B93A9 55%,#255f69 100%)}
.strip-icon,.strip-inner>a {color:#ffe7a3}
.section-mark,.section-kicker {color:#267F53}
.blue-text {color:#0B93A9}
/* About: warm yellow with subtle pink balance. */
.intro {background:#fffefa}
.intro .approach-panel {background:linear-gradient(135deg,#FCCA59 0%,#ffdfa0 58%,#F296BD 170%);border:1px solid #f0b84f}
.intro .approach-small-tag > span {color:#267F53}
.intro .interior-photo {box-shadow:0 17px 38px #99b7f53d}
.approach-panel .squiggle {opacity:.85}
/* Four service cards: all colors from Flor's reference. */
.services {background:linear-gradient(180deg,#eff3ff 0%,#faf7ff 60%,#fffdf5 100%)}
.service-card {box-shadow:0 8px 25px #2d604b0a;border-top-width:6px}
.service-card:nth-child(1) {background:#ffe5f0;border-color:#F296BD}
.service-card:nth-child(2) {background:#e3eaff;border-color:#99B7F5}
.service-card:nth-child(3) {background:#ffe6d5;border-color:#F5793B}
.service-card:nth-child(4) {background:#fff1c5;border-color:#FCCA59}
.service-card .service-icon,.service-card:nth-child(2) .service-icon,.service-card:nth-child(4) .service-icon {color:#267F53}
.service-card .service-number {color:#4a6563}
.service-card .service-select {color:#1b6440;border-top-color:#b6c8bd}
.service-card:hover {box-shadow:0 22px 39px #267f5328}
.big-idea {background:linear-gradient(117deg,#216b48 0%,#267F53 56%,#0b7e83 100%)}
.big-idea em {color:#FCCA59}
.big-idea-corner {color:#deefd8}
.big-idea-star,.yellow-period {color:#F296BD}
/* Process reads as a lavender / yellow / pink triptych. */
.how {background:#fffefa}
.step-card:nth-child(1) {background:#99B7F5}
.step-card:nth-child(2) {background:#FCCA59}
.step-card:nth-child(3) {background:#F296BD}
.step-card .step-symbol {color:#267F53}
.step-card:nth-child(2) .step-symbol {color:#F5793B}
.step-card:nth-child(3) .step-symbol {color:#267F53}
.step-card p {color:#173e49}
/* Interactive floor plan: selected spaces remain high contrast. */
.room-picker {background:linear-gradient(144deg,#e6edff 0%,#f9e7f1 51%,#fff2d9 100%)}
.blueprint-card,.room-summary {border-color:#d7dfdd;box-shadow:0 20px 48px rgba(38,127,83,.13)}
.blueprint-chip {background:#dbe6ff;color:#1b4b6c}
.blueprint-legend i {background:#FCCA59;border-color:#267F53}
.plan-room .room-surface {fill:#f8fcfa;stroke:#b9cfcc}
.plan-room.is-selected .room-surface {fill:#fff0c3;stroke:#F5793B;stroke-width:5}
.plan-room.is-selected .room-label rect {fill:#FCCA59;stroke:#d68d32}
.plan-room.is-selected .room-label .room-check {fill:#267F53;stroke:#267F53}
.plan-room:hover .room-surface {stroke:#267F53}
.plan-room:focus-visible .room-surface {stroke:#267F53}
.blueprint-bottom span:last-child {color:#267F53}
.room-summary {background:linear-gradient(145deg,#fff 0%,#fffafc 100%)}
.summary-overline {color:#267F53}
.room-counter {background:#FCCA59;color:#0c3441}
.empty-selection {background:#eff2ff;border-color:#b2c5ef}
.selected-room-item {background:#eff7ef;border-color:#d0e6d5;color:#163e34}
.selected-room-item::before {color:#267F53}
.selection-buttons button {border-color:#8ebca4;color:#195e3c}
.selection-buttons button:hover {background:#e8f7eb}
.room-summary-footer {background:#e2f3e6}
.room-summary-footer>span {color:#267F53}
.room-to-quote {background:#F5793B;color:var(--navy)}
.quantity-card {background:#e4ebff;border-color:#99B7F5}
.quantity-bathroom {background:#ffe2ee;border-color:#F296BD}
.quantity-icon {background:#fffef9}
.qty-step,.quantity-bathroom .qty-step {background:#267F53;color:#fff}
.quantity-hint,.quantity-heading small {color:#52716d}
.optional-extras {background:#fff0cd;border-color:#FCCA59}
.optional-extras legend {color:#1b6542}
.optional-extras p {color:#496e57}
.optional-extras input {accent-color:#267F53}
.extras-summary {background:#fbe2ef;color:#4f3a58}
.room-shortcut {background:#e4ebff;border-color:#99B7F5}
.room-shortcut span {color:#267F53}
.room-shortcut[aria-pressed="true"] {background:#FCCA59;border-color:#d9a945}
.room-shortcut[aria-pressed="true"] span {color:#267F53}
/* Photos, brand promises and FAQs. */
.comparison {background:#fff8e9}
.gallery-hint {background:#e5edff}
.compare-frame {box-shadow:0 24px 40px rgba(38,127,83,.15)}
.label-after {background:#FCCA59}
.values {background:linear-gradient(175deg,#fffcf6 0%,#ffebf4 100%)}
.value-card:nth-child(1) {background:#dff0e2;border-color:#b9dfc6}
.value-card:nth-child(2) {background:#fff1c5;border-color:#FCCA59}
.value-card:nth-child(3) {background:#e4ebff;border-color:#99B7F5}
.value-card .value-symbol,.value-card:nth-child(2) .value-symbol,.value-card:nth-child(3) .value-symbol {background:#267F53;color:#fff}
.faq {background:#e9f0ff}
.faq-list,.faq-list details {border-color:#bbcae6}
.faq-plus {background:#f7d9e8;color:#174932}
.faq-list details[open] .faq-plus {background:#FCCA59}
/* Form and footer retain polished readability. */
.quote-section {background:linear-gradient(122deg,#267F53 0%,#0B93A9 70%,#237a6c 100%)}
.quote-copy h2 em {color:#FCCA59}
.quote-notice>span:first-child {color:#F296BD}
.form-card {border:4px solid #FCCA59}
.form-tag {background:#fbe0ed;color:#7f375a}
.form-field input,.form-field select,.form-field textarea {background:#fffdf8;border-color:#ccdfd5}
.form-field input:focus,.form-field select:focus,.form-field textarea:focus {border-color:#267F53;box-shadow:0 0 0 3px #267f5322}
.form-room-preview {background:#edf1ff;border-color:#bed0f4}
.selected-preview-head a {color:#267F53}
.quote-result {background:#e9f5ed;border-color:#a6d7b4}
.quote-success>span {background:#267F53}
.site-footer {background:#174f40}
.footer-cta {background:#fbe1ec;color:#0c3441}
.footer-big-star {color:#F5793B}
.footer-cta>a {background:#FCCA59;color:#0c3441}
.footer-giant {color:#226b52}
.footer-demo-note {color:#FCCA59}
.brand-inverse .brand-flor {color:#d5f7eb}
.brand-inverse .brand-shine {color:#fff}
.brand-inverse .brand-submark {color:#fbe4ed}
@media (max-width:560px){
  .service-card {border-top-width:5px}
  .room-summary {background:#fffdfd}
}

/* ============================ V2.4 — RESULTADOS REALES ============================ */
.real-work{background:linear-gradient(160deg,#fffefa 0%,#eaf6f2 48%,#fceaf1 100%);overflow:hidden}
.real-intro{display:grid;grid-template-columns:1.25fr .75fr;gap:30px;align-items:end;margin:30px 0 34px}
.real-intro .display-title{font-size:clamp(45px,5.6vw,78px);max-width:760px;line-height:1.07}
.real-intro .section-lead{max-width:365px;justify-self:end}
.real-feature{display:grid;grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);gap:22px;min-height:490px}
.reel-pane{position:relative;min-height:520px;max-height:650px;isolation:isolate;overflow:hidden;border-radius:27px;background:#104452;box-shadow:0 25px 52px #133c3c24}
.real-reel{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.reel-pane::after{content:'';position:absolute;inset:0;z-index:0;background:linear-gradient(180deg,#08323c7d 0%,transparent 30%,transparent 52%,#062a36b0 100%);pointer-events:none}
.reel-top-pill{position:absolute;z-index:2;left:23px;top:23px;color:#fff;font-size:10px;font-weight:900;letter-spacing:.12em;background:#082f389c;padding:11px 15px;border:1px solid #ffffff5c;border-radius:50px;backdrop-filter:blur(8px)}
.reel-top-pill span{color:#FCCA59;margin-right:6px}
.reel-caption{position:absolute;z-index:2;bottom:25px;left:25px;right:25px;display:flex;justify-content:space-between;align-items:end;gap:20px;color:#fff;font-size:11px;text-shadow:0 2px 12px #061c29a0;pointer-events:none}
.reel-caption strong{font-size:23px;letter-spacing:-.04em;white-space:nowrap}.reel-caption span{text-align:right}
.reel-start{position:absolute;z-index:3;inset:0;width:100%;height:100%;display:flex;justify-content:center;align-items:center;flex-direction:column;gap:7px;border:0;color:#fff;background:#0b26332a;cursor:pointer;text-align:center;text-shadow:0 2px 20px #041e28}
.reel-start strong{font-size:24px;font-weight:900;letter-spacing:-.03em}.reel-start small{font-size:13px;font-weight:700}
.reel-start .reel-play-icon{display:flex;justify-content:center;align-items:center;width:77px;height:77px;border:2px solid #fff9;background:#FCCA59;color:#0c3441;border-radius:50%;font-size:29px;margin-bottom:15px;box-shadow:0 10px 25px #082d3a77;transition:transform .25s ease}
.reel-start:hover .reel-play-icon{transform:scale(1.11)}.reel-start[hidden]{display:none}
.reel-editorial{position:relative;overflow:hidden;border:1px solid #d5e9e2;background:linear-gradient(135deg,#e5eeff 0%,#eaf6ec 52%,#ffe2ee 100%);border-radius:27px;padding:clamp(25px,3.6vw,56px);display:flex;flex-direction:column;align-items:flex-start}
.reel-stamp{background:#fff9;border:1px solid #d4e4da;padding:11px 17px;border-radius:50px;color:#267F53;font-size:11px;font-weight:900;letter-spacing:.10em}.reel-stamp span{color:#F5793B}
.reel-editorial h3{font-size:clamp(39px,4.3vw,60px);letter-spacing:-.065em;line-height:1.1;margin:24px 0 13px;color:#0e3543;max-width:620px}
.reel-editorial h3 em{font-style:normal;color:#267F53}.reel-editorial>p{max-width:510px;color:#48616d;line-height:1.65;font-size:15px}
.reel-mini-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;width:100%;margin:23px 0 24px}
.reel-mini-card{height:160px;position:relative;overflow:hidden;border:5px solid #fff;border-radius:18px;background:#bde0dd;box-shadow:0 10px 26px #0d47511a}
.reel-mini-card img{width:100%;height:100%;object-fit:cover;object-position:center 51%}
.reel-mini-card span{position:absolute;bottom:11px;left:12px;color:#0c3441;font-size:12px;font-weight:900;background:#fffefaeb;border-radius:50px;padding:7px 14px}
.reel-editorial .btn{margin-top:auto}
.real-gallery-head{display:flex;gap:25px;justify-content:space-between;align-items:end;margin:53px 0 19px}
.real-gallery-head h3{font-size:clamp(29px,3.3vw,48px);color:#0c3441;letter-spacing:-.065em;line-height:1.1;margin:10px 0 0}
.real-gallery-head h3 em{color:#0b93a9;font-style:normal}.real-gallery-head p{font-size:13px;color:#52747a}
.real-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.real-shot{position:relative;display:block;overflow:hidden;height:245px;border:0;border-radius:20px;padding:0;background:#c5dde1;cursor:zoom-in;text-align:left;box-shadow:0 10px 27px #0c344117}
.real-shot img{width:100%;height:100%;object-fit:cover;object-position:center 50%;transition:transform .5s ease}
.real-shot::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,#0d3035c9 100%);pointer-events:none}
.real-shot span{position:absolute;z-index:2;bottom:17px;left:20px;right:16px;color:white;display:flex;align-items:end;justify-content:space-between;gap:8px}
.real-shot strong{font-size:18px}.real-shot small{font-size:10px;font-weight:800;white-space:nowrap}
.real-shot:hover img{transform:scale(1.05)}
.real-shot:focus-visible,.reel-start:focus-visible{outline:4px solid #F5793B;outline-offset:4px}
.real-transparency{display:flex;gap:9px;align-items:start;color:#446671;font-size:11px;line-height:1.6;margin:21px 0 0}.real-transparency span{color:#267F53;font-size:17px}
.sponge-section{background:linear-gradient(132deg,#ffe8f0 0%,#fff5d9 42%,#e2edff 100%);overflow:hidden}
.sponge-grid{display:grid;grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr);gap:clamp(25px,5vw,78px);align-items:center}
.sponge-copy .display-title{font-size:clamp(46px,5.5vw,78px);line-height:1.08;margin:15px 0 24px}.sponge-copy>p:not(.sponge-disclaimer){font-size:17px;line-height:1.7;color:#395963;max-width:520px}
.sponge-steps{display:flex;flex-wrap:wrap;gap:10px;margin:27px 0}.sponge-steps span{border:1px solid #a2c4bd;background:#ffffffe0;color:#267F53;padding:11px 14px;font-size:11px;font-weight:850;border-radius:100px}
.sponge-controls{display:flex;flex-wrap:wrap;gap:10px}.sponge-controls .btn{font-size:12px;padding:15px 18px}
.sponge-disclaimer{font-size:11px;color:#57757a;max-width:430px;line-height:1.65;margin-top:23px}
.sponge-card{max-width:520px;width:100%;justify-self:center;background:#fff;border:9px solid #fff;border-radius:30px;overflow:hidden;box-shadow:0 25px 55px #34545930;transform:rotate(1deg)}
.sponge-visual{position:relative;height:480px;overflow:hidden;background:#b6dce1;isolation:isolate}
.sponge-visual>img{height:100%;width:100%;object-fit:cover;object-position:center 45%;display:block}
#spongeCanvas{position:absolute;inset:0;width:100%;height:100%;touch-action:none;cursor:crosshair;z-index:2}
.sponge-cursor{position:absolute;left:0;top:0;z-index:4;font-size:45px;transform:translate(-50%,-50%) rotate(-18deg);pointer-events:none;opacity:0;filter:drop-shadow(0 5px 7px #233);transition:opacity .12s}
.sponge-cursor.is-active{opacity:1}
.sponge-caption{position:absolute;bottom:20px;left:20px;right:20px;z-index:3;border-radius:16px;background:#063b48c4;color:#fff;backdrop-filter:blur(9px);display:flex;flex-direction:column;gap:3px;padding:13px 17px;pointer-events:none}
.sponge-caption span{font-size:10px;letter-spacing:.14em}.sponge-caption strong{font-size:17px}
.sponge-caption-bar{display:flex;align-items:center;justify-content:center;gap:9px;background:#f9eebf;padding:15px;font-size:12px;color:#0b3444;font-weight:900}
.real-photo-dialog{border:0;border-radius:22px;max-width:min(90vw,680px);width:max-content;background:#fff;padding:12px;box-shadow:0 28px 75px #102e3e94;max-height:90vh;overflow:auto}
.real-photo-dialog::backdrop{background:#05272fc7;backdrop-filter:blur(4px)}
.real-photo-dialog>img{max-width:100%;max-height:70vh;display:block;border-radius:14px;margin:auto}
.real-photo-dialog>p{color:#0c3441;font-size:15px;font-weight:900;margin:13px 8px 8px}
.photo-close{position:sticky;z-index:2;top:4px;float:right;border:0;background:#FCCA59;border-radius:100px;width:39px;height:39px;font-size:18px;font-weight:900;cursor:pointer;margin-bottom:-39px}
@media(max-width:960px){.real-feature{grid-template-columns:1fr 1fr}.real-intro{grid-template-columns:1fr}.real-intro .section-lead{justify-self:start}.reel-editorial{padding:27px}.reel-mini-card{height:125px}.reel-editorial h3{font-size:42px}.reel-pane{min-height:485px}.sponge-visual{height:420px}}
@media(max-width:760px){.real-feature,.sponge-grid{grid-template-columns:1fr}.reel-pane{min-height:490px;max-height:590px}.reel-editorial h3{font-size:clamp(36px,8vw,51px)}.reel-mini-card{height:170px}.real-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.real-shot:last-child{grid-column:1/-1}.real-shot{height:215px}.real-shot:last-child{height:230px}.real-gallery-head{align-items:start;flex-direction:column}.sponge-copy .display-title{font-size:clamp(44px,10vw,65px)}.sponge-card{max-width:520px;transform:none}}
@media(max-width:440px){.real-intro .display-title{font-size:44px}.reel-pane{min-height:445px}.reel-caption strong{font-size:18px}.reel-caption span{font-size:9px}.reel-editorial{padding:25px 19px}.reel-mini-card{height:130px}.real-gallery{gap:10px}.real-shot{height:190px}.real-shot span{left:12px;right:10px;bottom:12px;flex-direction:column;align-items:start;gap:2px}.real-shot strong{font-size:15px}.real-shot:last-child{height:215px}.sponge-visual{height:370px}.sponge-controls .btn{width:100%;justify-content:center}}
@media(prefers-reduced-motion:reduce){.real-shot img,.reel-start .reel-play-icon{transition:none!important}.sponge-card{transform:none}}

/* ================= V2.5: fotografía protagonista y cursor esponja ================= */
.hero{background:linear-gradient(122deg,#fffdfa 0%,#f0fbff 41%,#ccf5ef 65%,#f9e2f0 100%)}
.hero-photo-frame{box-shadow:0 28px 65px #1248593d;border:9px solid #fff;border-bottom:0;height:612px;margin-top:23px;border-radius:34px 34px 0 0}
.hero-photo-frame>img{filter:saturate(1.13) contrast(1.02);object-position:center 29%}
.hero-float-quote{position:absolute;z-index:4;display:flex;align-items:center;gap:12px;top:16%;left:-43px;padding:15px 16px;border-radius:19px;border:2px solid #fff;background:#fffffff5;box-shadow:0 16px 39px #103c4560;transform:rotate(-4deg);max-width:305px}
.hero-float-quote .hero-float-mark{font-size:25px;display:grid;place-items:center;background:#fcca59;color:#0c3441;width:42px;height:42px;border-radius:15px;flex:0 0 auto}
.hero-float-quote div{display:grid;gap:4px}
.hero-float-quote small{font-size:9px;letter-spacing:.09em;font-weight:900;color:#267F53}
.hero-float-quote strong{font-size:13px;line-height:1.25;letter-spacing:-.02em;color:#0c3441}
.hero-float-arrow{font-weight:900;color:#0b93a9;align-self:flex-start}
.hero-floating-tag{background:#FCCA59;bottom:34px;right:18px;box-shadow:0 13px 26px #0b53643d}
.hero-copy .hero-actions .btn-yellow{background:#FCCA59}
.hero-copy .hero-actions .btn-outline{background:#ffffffe0}
.feature-photo-strip{position:relative;display:grid;grid-template-columns:49% 51%;margin-top:42px;min-height:330px;border-radius:27px;background:#064553;overflow:hidden;box-shadow:0 18px 44px #174f3e26}
.feature-photo-image{min-height:330px;overflow:hidden}.feature-photo-image img{width:100%;height:100%;object-fit:cover;object-position:center}
.feature-photo-text{padding:34px clamp(25px,5vw,65px);display:flex;flex-direction:column;align-items:start;justify-content:center;color:#fff;position:relative;background:radial-gradient(circle at 90% 90%,#267F53 0%,transparent 63%),#0c4553}
.feature-photo-text .eyebrow-chip{font-size:10px;font-weight:900;letter-spacing:.13em;color:#FCCA59}
.feature-photo-text h3{font-size:clamp(31px,3.1vw,47px);line-height:1.06;letter-spacing:-.045em;margin:15px 0 13px}
.feature-photo-text h3 em{font-style:normal;color:#99B7F5}
.feature-photo-text p{font-size:14px;max-width:410px;color:#e5f4f3;line-height:1.55;margin:0 0 20px}
.feature-photo-sticker{position:absolute;left:calc(49% - 39px);top:40px;width:78px;height:78px;display:grid;place-items:center;background:#FCCA59;color:#133940;border:7px solid white;border-radius:22px;font-size:34px;transform:rotate(-14deg);box-shadow:0 7px 25px #001f3040;pointer-events:none}
.real-work{background:linear-gradient(165deg,#fffefa 0%,#edfaf5 50%,#f8edf6 100%)}
.real-shot{height:219px;border:7px solid #fff;border-radius:21px;background:#e9f4f5;box-shadow:0 13px 26px #0c344122}
.real-shot img{object-position:center 42%;filter:contrast(1.05) saturate(1.035)}
.reel-mini-card{height:136px}
.reel-mini-card img{object-fit:cover;object-position:center 42%}
.sponge-visual>img{object-position:center 41%;filter:saturate(1.06)}
.real-photo-dialog>img{max-height:68vh;max-width:min(72vw,576px);object-fit:contain}
/* Cursor: opt-in/opt-out switch, desktop pointers only; preserve native text cursor */
.site-sponge-cursor{position:fixed;top:0;left:0;z-index:2147483640;pointer-events:none;opacity:0;will-change:transform;transform:translate3d(-120px,-120px,0);filter:drop-shadow(0 7px 6px #0b3d4638);transition:opacity .13s ease}
.site-sponge-cursor img{display:block;width:53px;height:46px}
.site-sponge-cursor.is-visible{opacity:1}
.site-sponge-cursor.is-pressing img{transform:scale(.87) rotate(7deg)}
.site-sponge-cursor.is-over-link img{transform:scale(1.1) rotate(-6deg)}
.cursor-mode-toggle{position:fixed;z-index:80;bottom:17px;left:17px;display:flex;align-items:center;gap:8px;border-radius:50px;background:#fffefa;border:1px solid #b8d7d2;box-shadow:0 8px 28px #123c4840;color:#0c3441;font-size:11px;font-weight:900;padding:11px 14px;cursor:pointer}
.cursor-mode-toggle span:first-child{font-size:18px}.cursor-mode-toggle[hidden]{display:none}
@media(hover:hover) and (pointer:fine){
 html.use-sponge-cursor,html.use-sponge-cursor body,html.use-sponge-cursor button,html.use-sponge-cursor a,html.use-sponge-cursor label,html.use-sponge-cursor select,html.use-sponge-cursor summary,html.use-sponge-cursor canvas,html.use-sponge-cursor .plan-room{cursor:none!important}
 html.use-sponge-cursor input,html.use-sponge-cursor textarea,html.use-sponge-cursor [contenteditable]{cursor:text!important}
 html.use-sponge-cursor #spongeCanvas{cursor:none!important}
 html.use-sponge-cursor #spongeCursor{display:none!important}
}
@media(max-width:980px){.hero-float-quote{top:17%;left:-25px;max-width:265px}.hero-float-quote strong{font-size:11px}.hero-photo-frame{height:560px}}
@media(max-width:760px){.hero-photo-frame{height:430px;margin-top:0}.hero-float-quote{left:15px;top:18px;transform:rotate(-3deg)}.feature-photo-strip{grid-template-columns:1fr}.feature-photo-image{min-height:240px;max-height:320px}.feature-photo-text{padding:32px 26px 36px}.feature-photo-sticker{top:calc(45% - 45px);left:auto;right:22px;transform:rotate(-9deg)}.cursor-mode-toggle,.site-sponge-cursor{display:none!important}}
@media(max-width:440px){.hero-float-quote{max-width:245px;top:16px;left:10px;padding:10px 12px}.hero-float-quote .hero-float-mark{width:35px;height:35px;font-size:20px}.hero-floating-tag{right:10px;bottom:15px}.hero-photo-frame{height:360px}.real-shot{height:195px}.feature-photo-image{min-height:210px}}
@media(prefers-reduced-motion:reduce){.site-sponge-cursor,.cursor-mode-toggle{display:none!important}.feature-photo-sticker{transform:none!important}}
@media(forced-colors:active){.site-sponge-cursor,.cursor-mode-toggle{display:none!important}}
/* Ajuste final: la tarjeta nunca tapa el rostro de la fotografía principal. */
.hero-float-quote{top:auto;bottom:145px;left:-37px}
@media(max-width:980px){.hero-float-quote{top:auto;bottom:135px;left:-22px}}
@media(max-width:760px){.hero-float-quote{top:auto;bottom:105px;left:12px}}
@media(max-width:440px){.hero-float-quote{top:auto;bottom:104px;left:10px}}
.hero-float-quote{left:17px}
@media(max-width:980px){.hero-float-quote{left:13px}}
@media(hover:hover) and (pointer:fine){
 html.use-sponge-cursor input[type="checkbox"],html.use-sponge-cursor input[type="radio"],html.use-sponge-cursor input[type="range"],html.use-sponge-cursor input[type="button"]{cursor:none!important}
}

/* =============================================================
   FLOR & SHINE V2.6 — PORTADA FOTOGRÁFICA Y FOTOGRAFÍAS NÍTIDAS
   Mantiene la base funcional: plano, cotizador, esponja y cursor.
   ============================================================= */
.hero{background:radial-gradient(circle at 5% 10%,#fff4cc 0,transparent 35%),linear-gradient(120deg,#fbfefc 0%,#f4fcfd 42%,#d5f0f4 100%)}
.hero-grid{grid-template-columns:45% 55%;min-height:660px;align-items:stretch}
.hero-copy{padding:100px 24px 70px 0;display:flex;flex-direction:column;justify-content:center}
.hero h1{font-size:clamp(57px,5.4vw,82px);max-width:600px}
.hero-description{max-width:460px}
.hero-photo-frame{width:100%;height:650px;margin:0;border:0;border-radius:38px 0 0 38px;box-shadow:-18px 10px 65px #2e7d8530;background:#eff5f4}
.hero-photo-frame>img{object-position:54% 50%;filter:saturate(1.07) contrast(1.025)}
.hero-photo-shine{background:linear-gradient(180deg,transparent 55%,rgba(4,51,60,.22) 100%)}
.hero-float-quote{left:15px;bottom:160px;top:auto;transform:rotate(-2deg)}
.hero-floating-tag{bottom:66px;right:19px}
.hero-photo-credit{position:absolute;z-index:5;bottom:11px;left:18px;border-radius:50px;background:rgba(6,46,57,.68);color:white;font-size:10px;font-weight:700;padding:7px 11px;backdrop-filter:blur(8px)}
.hero-photo-frame::after{content:'';position:absolute;pointer-events:none;inset:0;border-radius:inherit;border:2px solid rgba(255,255,255,.54)}
.feature-photo-image img{object-fit:cover;object-position:50% 50%}
/* The video stays 16:9 and is visible in full, rather than severely cropped vertically. */
.real-feature{grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);gap:22px;min-height:450px}
.reel-pane{height:auto;max-height:none;min-height:400px;aspect-ratio:16/10}
.real-reel{object-fit:contain;background:#0d2e39}
.reel-editorial{padding:clamp(22px,3vw,42px)}
.reel-editorial h3{font-size:clamp(36px,4vw,53px)}
.v26-video-highlights{display:flex;flex-direction:column;gap:10px;width:100%;margin:18px 0 26px}
.v26-video-highlights span{background:#ffffffcc;border:1px solid #c8e5df;padding:12px 14px;border-radius:12px;font-size:12px;font-weight:800;color:#174a48}
.v26-real-note{display:flex;gap:18px;align-items:center;background:#e5f6f5;border:1px solid #b7e4e0;border-radius:19px;padding:20px 25px;margin-top:26px}
.v26-real-note>span{display:grid;place-items:center;border-radius:50%;background:#FCCA59;width:45px;height:45px;font-size:20px;flex:0 0 auto}
.v26-real-note strong{display:block;font-size:16px;color:#0e3543}.v26-real-note p{font-size:12px;color:#3b5d69;line-height:1.6;margin:4px 0 0}
.sponge-visual>img{object-position:50% 50%}
.v26-concept-pairs{margin-top:44px}
.v26-concept-heading{display:flex;justify-content:space-between;align-items:end;gap:18px;flex-wrap:wrap}
.v26-concept-heading h3{max-width:610px;font-size:clamp(32px,4vw,52px);letter-spacing:-.055em;line-height:1.1;margin:8px auto 0 0;color:#0b3444}
.v26-concept-heading h3 em{color:#0B93A9;font-style:normal}
.v26-concept-heading p{max-width:330px;color:#496572;font-size:13px;line-height:1.55}
.v26-pairs-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:24px}
.v26-pairs-grid figure{margin:0;border:8px solid white;border-radius:25px;overflow:hidden;box-shadow:0 16px 43px #0b516126;background:#fff}
.v26-pairs-grid img{display:block;width:100%;height:auto;aspect-ratio:1.25;object-fit:contain;background:#f8f8f6}
.v26-pairs-grid figcaption{font-size:12px;font-weight:800;color:#244f5b;padding:12px 16px}
/* Removing blurry-still grid; posters in real section belong to the actual video. */
@media(max-width:1000px){.hero-grid{grid-template-columns:48% 52%}.hero h1{font-size:clamp(49px,5.7vw,67px)}.hero-photo-frame{height:600px}.real-feature{grid-template-columns:1fr 1fr}.reel-pane{min-height:330px;aspect-ratio:16/13}}
@media(max-width:820px){.hero-grid{grid-template-columns:1fr;min-height:0}.hero-copy{padding:62px 0 28px;display:block}.hero h1{font-size:clamp(55px,9vw,75px)}.hero-photo-frame{height:520px;width:100%;border-radius:25px 25px 0 0}.hero-photo-frame>img{object-position:center 50%}.hero-float-quote{left:18px;bottom:155px}.real-feature{grid-template-columns:1fr}.reel-pane{aspect-ratio:16/10;min-height:0}.v26-concept-heading{display:block}.v26-pairs-grid{gap:15px}}
@media(max-width:560px){.hero-copy{padding:49px 0 23px}.hero h1{font-size:clamp(43px,11vw,56px)}.hero-photo-frame{height:345px;width:100%;margin:0;border-radius:19px 19px 0 0}.hero-photo-frame>img{object-position:53% 50%}.hero-float-quote{left:9px;bottom:95px;padding:10px 12px;max-width:245px}.hero-floating-tag{bottom:31px;right:10px}.hero-photo-credit{left:10px;bottom:8px;font-size:8px;padding:5px 8px}.reel-pane{aspect-ratio:4/3;min-height:275px}.reel-editorial h3{font-size:38px}.v26-pairs-grid{grid-template-columns:1fr;gap:16px}.v26-pairs-grid img{aspect-ratio:1.35}.v26-real-note{padding:16px;gap:10px}}
@media(max-width:360px){.hero h1{font-size:41px}.hero-photo-frame{height:315px}.hero-float-quote{max-width:220px}}

/* The originals are portrait footage with black side mattes: display the real vertical view. */
.real-feature{grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr)}
.reel-pane{aspect-ratio:3/4;min-height:590px;max-height:680px}
.real-reel{object-fit:cover;object-position:center;background:#0d2e39}
@media(max-width:1000px){.real-feature{grid-template-columns:1fr 1fr}.reel-pane{aspect-ratio:2/3;min-height:480px}}
@media(max-width:760px){.real-feature{grid-template-columns:1fr}.reel-pane{aspect-ratio:3/4;min-height:470px;max-height:630px}}
@media(max-width:440px){.reel-pane{min-height:440px;aspect-ratio:4/5}}

/* ========================================
   Flor & Shine V2.7 — Cotización en 4 pasos
   ======================================== */
.wizard-form{margin-top:16px}
.wizard-topline{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:15px 0 13px}
.wizard-eyebrow{font-size:10px;font-weight:900;letter-spacing:.11em;color:#0B93A9}
.wizard-counter{font-size:11px;color:#173f49;font-weight:850;white-space:nowrap}
.wizard-track{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin:12px 0 28px}
.wizard-step-dot{border:1.5px solid #d2e5e6;border-radius:14px;background:#fff;color:#5a7c86;min-width:0;min-height:58px;padding:8px 4px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;cursor:pointer;transition:background .2s,transform .2s,border-color .2s}
.wizard-step-dot span{font-size:12px;font-weight:950;line-height:1}.wizard-step-dot small{font-size:10px;font-weight:800;line-height:1.3;text-align:center}
.wizard-step-dot.is-current{background:#fdf3c8;border-color:#efc85d;color:#073e4b;box-shadow:0 4px 0 #f2ca64}
.wizard-step-dot.is-completed{background:#e0f5e8;border-color:#a6d9bd;color:#267F53}
.wizard-step-dot:hover{transform:translateY(-2px)}.wizard-step-dot:focus-visible{outline:3px solid #0B93A9;outline-offset:2px}
.wizard-panel[hidden],.wizard-feedback[hidden],.wizard-back[hidden],.wizard-next[hidden],#wizardFinish[hidden]{display:none!important}
.wizard-panel{animation:v27-panel-in .27s ease both;min-width:0}
@keyframes v27-panel-in{from{opacity:.2;transform:translateY(9px)}to{opacity:1;transform:none}}
.wizard-panel-head{display:flex;gap:15px;align-items:flex-start;margin:0 0 21px}
.wizard-panel-head .wizard-symbol{width:46px;height:46px;min-width:46px;display:grid;place-items:center;background:#fbe7ac;color:#07546a;font-size:24px;border-radius:16px;box-shadow:3px 3px 0 #ffe091}
.wizard-stage{font-size:9px;letter-spacing:.12em;color:#0B93A9;font-weight:950}
.wizard-panel h4{font-size:clamp(23px,2.5vw,30px);line-height:1.15;letter-spacing:-.04em;color:#0b3040;margin:3px 0 7px}
.wizard-panel-head p{font-size:12px;color:#547680;line-height:1.5;margin:0}
.wizard-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.wizard-choice{position:relative;background:#fff;border:1.5px solid #c7dfe2;border-radius:17px;padding:17px 12px 18px;text-align:left;display:flex;flex-direction:column;gap:7px;min-height:168px;color:#173b47;cursor:pointer;transition:background .2s,border-color .2s,box-shadow .2s,transform .2s}
.wizard-choice:hover{transform:translateY(-3px);box-shadow:0 9px 16px #07394a13}
.wizard-choice.is-selected{border-color:#0B93A9;background:#e5f9fb;box-shadow:0 0 0 2px #0b93a928 inset}
.choice-emoji{font-size:24px;line-height:1.2}.wizard-choice strong{font-size:12px;line-height:1.25;letter-spacing:-.02em}.wizard-choice small{color:#526e77;font-size:10px;line-height:1.4}
.choice-check{display:none;position:absolute;right:10px;top:10px;background:#0B93A9;color:white;border-radius:99px;width:19px;height:19px;text-align:center;font-size:12px;font-weight:900}
.wizard-choice.is-selected .choice-check{display:block}.wizard-subfields{margin-top:18px}
.wizard-hidden-select{position:absolute!important;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.wizard-quick-rooms{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}
.wizard-room-toggle{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:8px;text-align:left;position:relative;border:1.5px solid #d2e6e8;background:#f5fbfc;color:#143c45;border-radius:13px;padding:15px 13px;font-size:12px;font-weight:850;min-width:0;min-height:93px;cursor:pointer;transition:all .18s}
.wizard-room-toggle>span{font-size:24px}.wizard-room-toggle b{position:absolute;right:10px;top:12px;background:white;border:1px solid #c9dfe6;width:23px;height:23px;border-radius:50%;display:grid;place-items:center;font-size:15px}
.wizard-room-toggle.is-selected{background:#fff0b6;border-color:#f6c952}.wizard-room-toggle.is-selected b{background:#0B93A9;color:white;border-color:#0B93A9}
.wizard-count-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:12px 0}
.wizard-count-card{border-radius:14px;border:1px solid #e4d9ed;background:#f7f1fc;padding:13px 11px;display:flex;flex-direction:column;gap:11px;min-width:0}
.wizard-count-card:nth-child(2){background:#fcebf2;border-color:#f2cadb}
.wizard-count-card>div:first-child{display:flex;align-items:center;gap:8px;font-size:12px}
.wizard-count-card>div:first-child span{font-size:20px}.wizard-count-controls{display:flex;justify-content:space-between;align-items:center;background:#fff;border-radius:50px;border:1px solid #e0e4e8;max-width:190px;padding:4px}
.wizard-count-controls button{border:0;border-radius:50%;width:32px;height:32px;background:#e7f5f5;color:#0b5d6b;font-size:20px;cursor:pointer}
.wizard-count-controls button:active{transform:scale(.94)}.wizard-count-controls output{font-size:16px;font-weight:950;color:#053945}
.wizard-edit-floorplan{display:inline-block;color:#077d94;font-weight:850;font-size:11px;text-decoration:underline;text-underline-offset:3px;margin:8px 0 20px}
.wizard-checklist-block{background:#f9fbfb;border:1px solid #dcebed;border-radius:17px;padding:18px}
.wizard-mini-tag{font-size:9px;letter-spacing:.13em;font-weight:900;color:#267F53}
.wizard-checklist-head h5{font-size:17px;color:#143744;margin:7px 0 4px;line-height:1.3;letter-spacing:-.025em}
.wizard-checklist-head p{font-size:11px;line-height:1.5;color:#56747a;margin-bottom:14px}
.wizard-checklists{display:grid;gap:12px}.wizard-tasks{border-top:1px dashed #d4e7e9;padding-top:12px}
.wizard-tasks h6{font-size:12px;font-weight:950;color:#0B93A9;margin:0 0 9px}
.wizard-tasks-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}.wizard-task{display:flex;align-items:flex-start;gap:9px;background:#fff;border:1px solid #e2e9eb;border-radius:11px;padding:10px 8px;font-size:11px;font-weight:650;color:#31525d;line-height:1.4;cursor:pointer}
.wizard-task:has(input:checked){border-color:#acd8b5;background:#eff9f1}
.wizard-task input{width:16px;height:16px;margin:0;accent-color:#267F53;flex-shrink:0}
.wizard-empty{font-size:12px;color:#71888f;border-radius:12px;background:white;padding:16px;text-align:center}
.wizard-room-note{display:flex;align-items:flex-start;gap:10px;margin-top:12px;background:#fff3b8;border-radius:12px;padding:11px 13px;color:#38535a;font-size:12px;font-weight:750;line-height:1.5}
.wizard-room-note>span:first-child{font-size:20px;color:#dc8e15}
.wizard-panel .form-grid{margin-top:8px}.wizard-caveat{background:#fff7da;border-left:3px solid #fcca59;border-radius:8px;padding:14px;font-size:11px;line-height:1.55;color:#5b6372;margin-top:18px}
.wizard-review{background:#f1f9fa;border:1px solid #cfe7eb;border-radius:17px;overflow:hidden;margin:19px 0}
.wizard-review-top{display:flex;justify-content:space-between;gap:10px;align-items:center;background:#d8f2f5;padding:13px 16px;color:#0e4754;font-size:13px}
.wizard-review-top button{color:#077c95;font-size:10px;font-weight:850;text-decoration:underline;background:none;border:0;cursor:pointer}
.wizard-review-row{display:flex;align-items:baseline;justify-content:space-between;gap:15px;padding:10px 16px;border-bottom:1px solid #e0ecee;font-size:11px;line-height:1.5}
.wizard-review-row:last-child{border-bottom:none}.wizard-review-row span{color:#607b84;min-width:77px}.wizard-review-row strong{color:#183f4b;text-align:right;overflow-wrap:anywhere;font-weight:800}
.wizard-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:23px;border-top:1px solid #e0e8ea;padding-top:18px;flex-wrap:wrap}
.wizard-next,.wizard-footer .submit-quote{margin-left:auto;min-height:48px;padding:12px 18px!important;font-size:12px!important}
.wizard-back{border:0;background:#eaf5f5;color:#0B6271;border-radius:40px;padding:12px 14px;font-size:12px;font-weight:900;cursor:pointer}
.wizard-auto-note{font-size:10px;color:#58747c;flex:1;min-width:100px}.wizard-feedback{background:#fff0ee;border:1px solid #df8479;color:#963a32;padding:12px 14px;border-radius:12px;font-size:12px;line-height:1.5;margin-bottom:15px}
.wizard-form .form-privacy{font-size:10px;line-height:1.7}
.mobile-sticky-cta small{display:block;color:#4d514e;font-size:9px;font-weight:650;margin-top:3px}
.v27-reveal{opacity:0;transform:translateY(14px);transition:opacity .65s ease,transform .65s ease}.v27-reveal.v27-visible{opacity:1;transform:none}
@media(max-width:760px){.wizard-choice-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.wizard-choice{min-height:155px}}
@media(max-width:560px){.wizard-track{gap:5px;margin-bottom:25px}.wizard-step-dot{min-height:56px;border-radius:10px}.wizard-step-dot small{font-size:9px}.wizard-panel h4{font-size:25px}.wizard-panel-head{gap:10px}.wizard-panel-head .wizard-symbol{width:40px;height:40px;min-width:40px}.wizard-choice-grid{grid-template-columns:1fr;gap:7px}.wizard-choice{min-height:77px;padding:11px 34px 11px 12px;display:grid;grid-template-columns:33px 1fr;column-gap:10px;align-items:center;row-gap:0}.choice-emoji{grid-row:1/3;font-size:24px}.wizard-choice strong{font-size:12px}.wizard-choice small{font-size:10px}.wizard-count-grid{gap:8px}.wizard-count-card{padding:11px 9px}.wizard-quick-rooms{gap:7px}.wizard-room-toggle{padding:12px 8px;font-size:11px}.wizard-room-toggle b{right:6px;top:6px}.wizard-room-toggle>span{font-size:19px}.wizard-tasks-grid{grid-template-columns:1fr}.wizard-checklist-block{padding:14px}.wizard-review-row{padding:10px 11px}.wizard-review-top{padding:11px}.wizard-auto-note{display:none}.wizard-footer{gap:8px}.wizard-next,.wizard-footer .submit-quote{max-width:100%}}
@media(max-width:355px){.wizard-counter{font-size:10px}.wizard-step-dot small{font-size:8px}.wizard-choice-grid{grid-template-columns:1fr}.wizard-room-toggle{font-size:10px}.wizard-count-card>div:first-child{font-size:10px}}
@media(prefers-reduced-motion:reduce){.wizard-panel{animation:none}.v27-reveal{opacity:1!important;transform:none!important;transition:none!important}}

@media(max-width:560px){.mobile-sticky-cta.v27-cta-hidden{display:none!important}}
