:root{--ink:#101d2d;--navy:#071928;--blue:#123b65;--accent:#f4c649;--paper:#f6f7f8;--muted:#576577;--line:#dbe1e7;font-family:'DM Sans',sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:36px}body{margin:0}button,a,video{ -webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{font:inherit}a{color:inherit}img{display:block;max-width:100%;object-fit:cover}button:focus-visible,a:focus-visible,video:focus-visible,summary:focus-visible{outline:3px solid #2285da;outline-offset:5px}.header{height:88px;background:var(--navy);display:flex;align-items:center;justify-content:space-between;padding:0 6%;color:#fff;gap:24px}.header img{object-fit:contain}.header>span{font-size:.75rem;letter-spacing:.14em}.header .region{letter-spacing:0;color:#c9d6e2;font-size:.875rem}.hero{position:relative;min-height:660px;background:linear-gradient(90deg,rgba(4,13,22,.9),rgba(4,13,22,.24) 60%,transparent),url('../../media/optimized/aquecedores-banho/hero-1672.webp') center/cover;color:white;padding:66px 7% 45px}.hero-content{max-width:660px}.eyebrow{font-size:.75rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase;color:#356694;margin:0 0 20px}.hero .eyebrow{color:var(--accent)}.intro{font-size:1.05rem;max-width:420px;line-height:1.6;color:#edf1f5}h1,h2,h3{font-family:Manrope,sans-serif}h1{font-size:clamp(3rem,5.3vw,5.2rem);font-weight:500;letter-spacing:-.045em;line-height:1.07;margin:22px 0}h1 em{font-style:normal;color:var(--accent)}.hero-description{max-width:410px;font-size:1.05rem;line-height:1.65;color:#e0e4e8}.cta{display:inline-flex;align-items:center;justify-content:center;gap:28px;background:var(--accent);color:#16202b;border:0;border-radius:8px;padding:18px 24px;text-decoration:none;font-weight:800;min-height:58px;cursor:pointer;box-shadow:0 8px 24px #0002;transition:transform .2s,background .2s,box-shadow .2s}.cta:hover:not(:disabled){transform:translateY(-3px);background:#ffdb6b;box-shadow:0 12px 28px #0003}.cta:active:not(:disabled){transform:translateY(0)}.cta span{font-size:1.4rem}.micro{font-size:.75rem;color:#ccd4dc;margin-top:22px}.hero-caption{position:absolute;right:6%;bottom:42px;font-size:.75rem;letter-spacing:.15em;border-left:2px solid var(--accent);padding-left:18px}.hero-caption span{display:block;font-size:.875rem;letter-spacing:0;margin-top:8px}.steps{display:flex;justify-content:center;background:#fff;border-bottom:1px solid var(--line);padding:22px 6%;gap:48px}.steps button{background:transparent;border:0;color:#667382;font-size:.875rem;padding:10px;display:flex;gap:12px;cursor:pointer}.steps button[aria-current]{color:var(--blue);font-weight:800}.steps button:disabled{opacity:.45;cursor:default}.section{max-width:1200px;margin:auto;padding:80px 40px}h2{font-size:clamp(2rem,3.1vw,3rem);line-height:1.18;letter-spacing:-.035em;margin:0 0 22px}p{line-height:1.7}footer{background:var(--navy);color:#a8b8c8;padding:30px 7%;font-size:.875rem}@media(max-width:700px){.header{height:76px;padding:0 6%}.header>span:not(.region){display:none}.header img{width:122px}.header .region{font-size:.75rem}.hero{padding:44px 7% 36px;min-height:690px;background-position:61% center}.hero-content{max-width:450px}.hero-caption{display:none}.hero-description{max-width:310px}.intro{max-width:310px}.micro{max-width:300px;line-height:1.7}.steps{gap:6px;padding:14px 3%;justify-content:space-between}.steps button{padding:8px 4px;font-size:.75rem;gap:7px}.section{padding:54px 24px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
:where([hidden]){display:none!important}.brand{background:none;border:0;padding:0;cursor:pointer}.skip{position:absolute;top:-100px;left:20px;z-index:20;background:white;padding:12px}.skip:focus{top:10px}.lead{font-size:1.2rem;line-height:1.65;color:var(--muted);max-width:640px}.video-section{display:grid;grid-template-columns:1fr 340px;gap:88px;align-items:center}.video-copy>p:not(.eyebrow){color:var(--muted)}.video-card{overflow:hidden;border-radius:18px;background:var(--navy);color:#fff;box-shadow:0 22px 52px #14263722;max-width:380px;width:100%;justify-self:center}.video-heading{display:flex;justify-content:space-between;gap:10px;font-size:.7rem;letter-spacing:.06em;padding:15px 17px;color:#c2d0dd}.video-card video{display:block;width:100%;aspect-ratio:9/16;background:#101010;object-fit:contain;max-height:520px}.video-footer{padding:16px}.video-footer>div{display:flex;justify-content:space-between;font-size:.8rem;margin-top:8px;gap:12px}.video-footer b{color:var(--accent)}progress{width:100%;height:4px;border:0;appearance:none;display:block;background:#3d4f60;border-radius:10px;overflow:hidden}progress::-webkit-progress-bar{background:#3d4f60}progress::-webkit-progress-value{background:var(--accent)}progress::-moz-progress-bar{background:var(--accent)}.fact-list{margin:28px 0}.fact-list>div{display:flex;align-items:center;gap:18px;padding:17px 0;border-bottom:1px solid var(--line)}.fact-list b{font-size:.75rem;color:#527da1}.watch-note{border-left:3px solid var(--accent);padding:8px 0 8px 18px;font-size:.875rem;line-height:1.6;color:var(--muted);margin-top:25px}.section-title{max-width:700px;margin-bottom:36px}.section-title>p:not(.eyebrow){color:var(--muted)}.systems{padding-top:25px}.system-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.system-grid article{border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#fff}.system-grid img{width:100%;height:300px;object-fit:cover}.system-grid article>div{padding:28px}.tag{font-size:.75rem;letter-spacing:.1em;color:#527492;font-weight:700}h3{font-size:1.4rem;line-height:1.3;letter-spacing:-.025em;margin:12px 0}h4{font-size:1.05rem;margin:12px 0}.system-grid p{color:var(--muted);margin-bottom:0}.project-note{margin:30px 0 0;padding:26px 30px;background:#e8eef4;border-radius:12px;display:grid;grid-template-columns:220px 1fr;gap:24px}.project-note p{margin:0;color:var(--muted)}.gate{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-top:30px;padding-bottom:60px}.gate h3{font-size:1.2rem}.gate p:not(.eyebrow){font-size:.875rem;color:var(--muted)}.gate .eyebrow{margin-bottom:10px}.cta:disabled{background:#e0e5e9;color:#6c7780;box-shadow:none;cursor:not-allowed;font-size:.875rem}.gate .cta{min-width:280px;max-width:420px}.benefits{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:28px}.benefits h3{font-size:1.1rem}.benefits p{font-size:.95rem;color:var(--muted)}.dark-band{background:var(--navy);color:#fff}.dark-band .eyebrow{color:var(--accent)}.dark-band p:not(.eyebrow){color:#c2d0dc;max-width:490px}.split{display:grid;grid-template-columns:1fr 300px;align-items:center;gap:80px}.compact{padding-top:60px;padding-bottom:60px}.small-video video{max-height:400px}.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.gallery figure{margin:0;overflow:hidden;border-radius:12px;background:white;border:1px solid var(--line)}.gallery img{width:100%;height:270px;object-fit:cover}.gallery figcaption{padding:15px;font-size:.875rem}.gallery figure:nth-child(3) img{object-position:bottom}.solutions{margin-top:65px;padding-top:30px;border-top:1px solid var(--line)}.solutions>div{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:28px}.solutions article>span{font-size:.75rem;color:#557692}.solutions article p{color:var(--muted);font-size:.95rem}.final-intro{text-align:center;padding-bottom:42px}.final-intro h2{font-size:clamp(2.4rem,4.2vw,4rem)}.final-intro h2>span{color:#245c8c}.final-intro .lead{margin:0 auto}.audience{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:30px}.audience span{border:1px solid var(--line);border-radius:30px;padding:10px 16px;font-size:.8rem;background:white}.structure{padding-top:45px}.structure-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.structure-grid article{overflow:hidden;border-radius:16px;background:var(--navy);color:#fff}.structure-grid .store{grid-column:1/-1;display:grid;grid-template-columns:1.2fr 1fr;align-items:center}.structure-grid img{width:100%;height:280px}.structure-grid .store img{height:370px}.structure-grid article>div{padding:30px}.structure-grid span{font-size:.75rem;color:var(--accent);letter-spacing:.1em}.structure-grid p{color:#c1cfdb;font-size:.95rem}.structure-grid .stock-img{object-position:bottom}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin:35px 0 0}.service-grid article{border-top:2px solid #d9bd74;padding-top:22px}.service-grid p{color:var(--muted);font-size:.95rem}.factory-note{display:grid;grid-template-columns:1fr 1fr;gap:40px;background:#e9eef3;padding:35px;border-radius:15px;margin-top:40px;align-items:center}.factory-note h3{font-size:1.3rem}.factory-note p{color:var(--muted);margin:0;font-size:.95rem}.reviews{padding-top:20px}.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:35px}.review-grid blockquote{margin:0;padding:27px;background:#fff;border:1px solid var(--line);border-radius:14px;display:flex;flex-direction:column}.stars{color:#c7941c;letter-spacing:.1em}.review-grid p{font-size:.95rem;flex:1;color:#405266}.review-grid footer{background:none;color:var(--ink);padding:15px 0 0;border-top:1px solid var(--line);font-size:.875rem}.review-grid footer span{display:block;color:#6e7d8b;font-size:.75rem;margin-top:6px}.fine{font-size:.75rem;color:#77818d}.faq{padding-top:10px;max-width:960px}.faq details{border-bottom:1px solid var(--line);padding:22px 0}.faq summary{font-weight:700;cursor:pointer;line-height:1.5}.faq details p{color:var(--muted);padding-right:30px}.conversion{background:linear-gradient(115deg,#071928,#163d60);text-align:center;color:#fff}.conversion .eyebrow{color:var(--accent)}.conversion h2{font-size:clamp(2.3rem,4vw,3.7rem)}.conversion p{color:#c7d5e1}.final-cta{margin-top:20px;animation:ctaGlow 3s ease-in-out infinite}.site-footer{display:flex;align-items:center;justify-content:space-between;gap:20px}.site-footer img{object-fit:contain}.video-error{color:#ffd992!important;font-size:.875rem!important}.video-error button{background:transparent;color:inherit;border:0;text-decoration:underline;cursor:pointer}@keyframes ctaGlow{50%{box-shadow:0 0 0 6px #f4c64918,0 10px 30px #0002}}@media(max-width:950px){.video-section{gap:38px;grid-template-columns:1fr 300px}.gallery{grid-template-columns:repeat(2,1fr)}.gate{align-items:flex-start;flex-direction:column}.split{gap:35px}.review-grid{gap:12px}.review-grid blockquote{padding:20px}.structure-grid .store{grid-template-columns:1fr}.structure-grid .store img{height:320px}}@media(max-width:700px){.video-section,.split{grid-template-columns:1fr;gap:32px}.video-card{max-width:330px}.video-card video{max-height:480px}.video-copy .lead{font-size:1.1rem}.system-grid{grid-template-columns:1fr}.system-grid img{height:240px}.system-grid article>div{padding:24px}.project-note{grid-template-columns:1fr;gap:8px;padding:24px}.gate .cta{min-width:0;width:100%;gap:12px;text-align:center}.benefits{gap:20px}.gallery{gap:12px}.gallery img{height:210px}.gallery figcaption{font-size:.8rem;padding:12px}.solutions>div{grid-template-columns:1fr;gap:16px}.solutions article{padding-bottom:10px;border-bottom:1px solid var(--line)}.structure-grid{grid-template-columns:1fr}.structure-grid .store{grid-column:auto}.structure-grid .store img{height:240px}.structure-grid img{height:230px}.service-grid,.factory-note,.review-grid{grid-template-columns:1fr;gap:20px}.factory-note{padding:25px;gap:12px}.site-footer{flex-direction:column;align-items:flex-start}.final-cta{width:100%;font-size:.95rem;gap:12px}.conversion .section{padding:65px 24px}.reviews{padding-top:0}.intro{font-size:1rem}.hero h1{font-size:clamp(2.8rem,10vw,4rem)}}
.hotel-case{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:36px;background:var(--navy);color:#fff;border-radius:16px;overflow:hidden;margin-top:36px}.hotel-case>img{width:100%;height:auto;max-height:570px;object-fit:contain}.hotel-case>div{padding:36px 36px 36px 0}.hotel-case .eyebrow{color:var(--accent)}.hotel-case h3{font-size:clamp(1.7rem,2.5vw,2.4rem);line-height:1.2}.hotel-case p:not(.eyebrow){color:#c2d0dc}.structure-grid .stock-img{object-position:center 56%}.gallery figure:nth-child(3) img{object-position:50% 65%}@media(max-width:700px){.hotel-case{grid-template-columns:1fr;gap:0}.hotel-case>div{padding:26px}.hotel-case>img{max-height:440px}.structure-grid .stock-img{object-position:center 57%}}

.hotel-photo{display:block;position:relative;aspect-ratio:1086/600;width:100%;overflow:hidden}.hotel-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center bottom}
.action-row{display:flex;flex-wrap:wrap;gap:16px;margin-top:24px;align-items:center}.stage-actions{display:flex;flex-direction:column;gap:16px}.cta-outline{background:#fff;color:var(--blue);border:2px solid var(--blue)}.cta-outline:hover{background:#e8f1f9!important}.hero-actions .cta-outline{background:transparent;color:#fff;border-color:var(--accent)}.hero-actions .cta-outline:hover{background:var(--accent)!important;color:var(--navy)}.whatsapp-link.cta,.whatsapp-float{background:#137a48;color:white}.whatsapp-link.cta:hover,.whatsapp-float:hover{background:#0e6038;color:#fff}.centered{justify-content:center}.inline-conversion{padding-top:16px;padding-bottom:48px}.whatsapp-float{position:fixed;right:24px;bottom:24px;z-index:30;display:flex;align-items:center;gap:12px;min-height:54px;padding:16px 23px;border-radius:40px;font-weight:800;text-decoration:none;box-shadow:0 8px 28px #0004;transition:transform .2s,box-shadow .2s}.whatsapp-float:hover{transform:translateY(-4px);box-shadow:0 12px 32px #0005}.cta:active,.whatsapp-float:active{transform:scale(.97)}.site-footer{padding-bottom:105px}@media(max-width:700px){.stage-actions{width:100%}.action-row .cta{width:100%;gap:12px;text-align:center}.whatsapp-float{right:16px;bottom:16px;min-height:50px;padding:13px 20px}.hero{padding-bottom:40px}}

/* ==========================================================================
   MULTI-STEP FORM (STAGE 3)
   ========================================================================== */
.multi-step-form-card { padding: 0; overflow: hidden; display: block; border-radius: 12px; background: white; border: 1px solid var(--line); box-shadow: 0 20px 50px rgba(0, 0, 0, 0.05); }
.multi-step-header { padding: 40px 40px 30px; border-bottom: 1px solid var(--line); background: var(--paper); }
.multi-step-header h2 { margin: 10px 0 15px; font-size: 32px; color: var(--navy); }
.form-progress { height: 6px; background: #e2e8f0; border-radius: 999px; overflow: hidden; margin-top: 20px; }
.form-progress-bar { height: 100%; width: 25%; background: var(--accent); transition: width 0.3s ease; }
.sunhub-form { padding: 40px; }
.form-step { display: none; animation: fadeIn 0.4s ease; }
.form-step.is-active { display: block; }
@keyframes fadeIn { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }
.form-group { margin-bottom: 24px; }
.form-group label { display: block; margin-bottom: 8px; color: var(--navy); font-weight: 600; font-size: 14px; }
.form-group input[type="text"], .form-group input[type="email"], .form-group input[type="tel"], .form-group select { width: 100%; padding: 14px 16px; border: 1px solid #cbd5e1; border-radius: 6px; font: inherit; font-size: 15px; transition: border-color 0.2s; }
.form-group input:focus, .form-group select:focus { outline: none; border-color: var(--blue); box-shadow: 0 0 0 3px rgba(18, 59, 101, 0.1); }
.radio-group { display: flex; gap: 20px; flex-wrap: wrap; }
.radio-group.column { flex-direction: column; gap: 12px; }
.radio-label { display: flex; align-items: center; gap: 8px; font-size: 15px; cursor: pointer; color: var(--muted); }
.radio-label input { width: 18px; height: 18px; accent-color: var(--blue); cursor: pointer; }
.conditional-group { margin-top: 20px; padding: 20px; background: #f8fafc; border-radius: 8px; border: 1px dashed #cbd5e1; }
.form-group small { display: block; margin-top: 6px; color: var(--muted); font-size: 12px; }
.form-navigation { display: flex; align-items: center; justify-content: space-between; margin-top: 40px; padding-top: 30px; border-top: 1px solid var(--line); }
.form-btn-secondary { background: transparent; border: 1px solid #cbd5e1; color: var(--muted); padding: 12px 24px; border-radius: 999px; font-weight: 600; cursor: pointer; transition: all 0.2s; }
.form-btn-secondary:hover { background: #f1f5f9; color: var(--navy); }
.form-btn-primary { border: none; padding: 14px 32px; font-size: 16px; margin-left: auto; }
.form-success { text-align: center; padding: 40px 20px; }
.success-icon { width: 64px; height: 64px; background: #22c55e; color: white; display: grid; place-items: center; border-radius: 50%; font-size: 32px; margin: 0 auto 24px; }
.form-success h3 { font-size: 28px; color: var(--navy); margin: 0 0 16px; }

/* ==========================================================================
   WHATSAPP FLOATING BUTTON & MODAL
   ========================================================================== */
.whatsapp-float-container { position: fixed; bottom: 30px; right: 30px; z-index: 9999; }
.whatsapp-float-btn { width: 64px; height: 64px; background: #25d366; color: white; border: none; border-radius: 50%; display: grid; place-items: center; cursor: pointer; box-shadow: 0 10px 25px rgba(37, 211, 102, 0.4); animation: pulseWa 2s infinite; transition: transform 0.2s; }
.whatsapp-float-btn:hover { transform: scale(1.05); }
@keyframes pulseWa { 0% { box-shadow: 0 0 0 0 rgba(37, 211, 102, 0.5); } 70% { box-shadow: 0 0 0 15px rgba(37, 211, 102, 0); } 100% { box-shadow: 0 0 0 0 rgba(37, 211, 102, 0); } }
.whatsapp-modal { position: absolute; bottom: 85px; right: 0; width: 340px; background: white; border-radius: 12px; box-shadow: 0 20px 50px rgba(0, 0, 0, 0.15); overflow: hidden; transform-origin: bottom right; animation: scaleIn 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275); }
.whatsapp-modal[hidden] { display: none; }
@keyframes scaleIn { from { opacity: 0; transform: scale(0.8); } to { opacity: 1; transform: scale(1); } }
.wa-modal-header { background: #075e54; color: white; padding: 20px; display: flex; justify-content: space-between; align-items: flex-start; }
.wa-modal-header strong { display: block; font-size: 16px; font-weight: 600; font-family: "Manrope", sans-serif; }
.wa-modal-header span { font-size: 12px; color: rgba(255,255,255,0.8); }
.wa-close { background: transparent; border: none; color: white; font-size: 24px; line-height: 1; cursor: pointer; opacity: 0.8; }
.wa-close:hover { opacity: 1; }
.wa-modal-body { padding: 20px; }
.wa-modal-body p { margin: 0 0 16px; font-size: 13px; color: var(--muted); }
.wa-submit { width: 100%; min-height: 48px; font-size: 14px; background: #25d366; border-color: #25d366; color: white; margin-top: 10px; cursor: pointer; border-radius: 999px; border-width: 1px; border-style: solid; font-weight: 700; transition: background 0.2s, border-color 0.2s;}
.wa-submit:hover:not(:disabled) { background: #128c7e; border-color: #128c7e; }

@media(max-width:700px){.hero{background-image:linear-gradient(90deg,rgba(4,13,22,.9),rgba(4,13,22,.24) 60%,transparent),url('../../media/optimized/aquecedores-banho/hero-960.webp')}
