:root{--bg: #faf6f0;--surface: #ffffff;--surface-2: #f5efe7;--text: #141414;--text-muted: #5f5b58;--primary: #111111;--primary-light: #f97316;--accent: #ffedd5;--border: #e8e0d6;--error: #c0392b;--error-bg: #fde8e8;--shadow-sm: 0 2px 10px rgba(0, 0, 0, .06);--shadow-md: 0 10px 30px rgba(0, 0, 0, .09);--shadow-lg: 0 20px 50px rgba(0, 0, 0, .12);--radius-sm: 14px;--radius-md: 22px;--radius-lg: 32px;--transition: .22s cubic-bezier(.4, 0, .2, 1)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;background:var(--bg);color:var(--text);line-height:1.55;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;min-height:100vh;min-height:100dvh}.skip-link{position:absolute;top:-48px;left:1rem;background:var(--primary);color:#fff;padding:.5rem 1rem;border-radius:var(--radius-sm);font-weight:700;text-decoration:none;z-index:100;transition:top var(--transition)}.skip-link:focus{top:1rem}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:var(--surface-2)}::-webkit-scrollbar-thumb{background:#dbc7ab;border-radius:10px;border:2px solid var(--surface-2)}::-webkit-scrollbar-thumb:hover{background:var(--primary-light)}.container{max-width:1140px;margin:0 auto;padding:0 1.5rem}img,svg{display:block;max-width:100%;height:auto}h1,h2,h3{letter-spacing:-.02em;line-height:1.15}.section-title{font-size:clamp(1.6rem,4vw,2.1rem);font-weight:700;margin-bottom:1.75rem}section[id]{scroll-margin-top:5rem}header{position:sticky;top:0;z-index:100;background:var(--bg)}header.is-scrolled{box-shadow:var(--shadow-sm)}.nav{display:flex;align-items:center;justify-content:space-between;padding:1rem 0;gap:1rem}.logo{font-size:1.55rem;font-weight:800;letter-spacing:-.03em;color:var(--text);text-decoration:none;display:inline-flex;align-items:center;gap:.4rem}.logo-badge{background:var(--accent);color:var(--primary);padding:.15rem .6rem;border-radius:40px;font-size:.85rem;font-weight:600}.logo-since{color:var(--primary-light);font-size:.8rem;font-weight:700;letter-spacing:-.01em;white-space:nowrap}.nav-links{display:flex;align-items:center;gap:2rem;list-style:none}.nav-links a{position:relative;text-decoration:none;color:var(--text-muted);font-weight:600;font-size:.95rem;transition:color var(--transition)}.nav-links a:after{content:"";position:absolute;left:0;bottom:-4px;width:0;height:2px;background:var(--primary-light);transition:width var(--transition);border-radius:2px}.nav-links a:hover,.nav-links a:focus-visible{color:var(--primary)}.nav-links a:hover:after,.nav-links a:focus-visible:after{width:100%}.menu-toggle{display:none;position:relative;z-index:2;background:none;border:none;cursor:pointer;padding:.5rem;color:var(--primary);border-radius:10px}.menu-toggle:focus-visible{outline:2px solid var(--primary-light);outline-offset:2px}.nav-backdrop{display:none}.hero{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center;padding:clamp(3rem,8vw,6rem) 0 clamp(3rem,6vw,5rem);overflow:hidden}.hero-bg{position:absolute;inset:-10% -10% auto;height:120%;z-index:-1;pointer-events:none}.hero-bg .blob{position:absolute;border-radius:50%;filter:blur(60px);opacity:.55;animation:float 8s ease-in-out infinite;will-change:transform;transform:translateZ(0)}.hero-bg .blob-1{width:420px;height:420px;background:#ffedd5;top:-10%;right:10%}.hero-bg .blob-2{width:300px;height:300px;background:#ffe6cc;bottom:0;left:5%;animation-delay:-4s}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}.hero-text{max-width:540px}.hero-kicker{display:inline-flex;align-items:center;gap:.4rem;background:var(--surface);border:1px solid var(--border);padding:.35rem .9rem;border-radius:40px;font-size:.82rem;font-weight:700;color:var(--primary-light);margin-bottom:1.25rem;box-shadow:var(--shadow-sm)}.hero h1{font-size:clamp(2.4rem,5.5vw,4rem);font-weight:800;letter-spacing:-.03em;margin-bottom:1.25rem}.hero h1 em{font-style:italic;color:var(--primary-light)}.hero p{font-size:clamp(1.05rem,2vw,1.2rem);color:var(--text-muted);max-width:440px;margin-bottom:2rem}.hero-actions{display:flex;gap:1rem;flex-wrap:wrap}.hero-visual{position:relative;display:grid;place-items:center;min-height:320px}.hero-visual .scene{position:relative;width:280px;height:280px;background:linear-gradient(145deg,#fff,#fff3e4);border-radius:50%;box-shadow:var(--shadow-md);display:grid;place-items:center}.hero-visual .scene svg{width:120px;height:120px;color:var(--primary-light)}.hero-badge{position:absolute;bottom:1rem;right:1rem;background:var(--surface);border:1px solid var(--border);padding:.6rem 1rem;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);font-weight:700;font-size:.85rem;color:var(--primary)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.85rem 2rem;border-radius:60px;font-weight:700;font-size:1rem;cursor:pointer;border:none;text-decoration:none;transition:transform var(--transition),box-shadow var(--transition),background var(--transition)}.btn:active{transform:translateY(1px)}.btn-primary{background:#dc2626;color:#fff;box-shadow:0 8px 20px #0003}.btn-primary:hover,.btn-primary:focus-visible{background:#b91c1c;box-shadow:0 10px 24px #00000047;transform:translateY(-2px)}.btn-outline{background:transparent;border:2px solid var(--primary);color:var(--primary)}.btn-outline:hover,.btn-outline:focus-visible{background:var(--primary);color:#fff}.btn-primary:disabled{opacity:.7;cursor:not-allowed}.btn .spinner{width:1em;height:1em;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite;display:none}.btn.is-loading .spinner{display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.5rem;margin-bottom:4rem}.service-card{background:var(--surface);border:2px solid transparent;border-radius:var(--radius-md);padding:1.6rem;cursor:pointer;box-shadow:var(--shadow-sm);transition:transform var(--transition),box-shadow var(--transition),border-color var(--transition)}.service-card:hover,.service-card.selected,.service-card:focus-visible{transform:translateY(-6px);box-shadow:var(--shadow-md);border-color:var(--primary-light)}.service-card:focus-visible{outline:none}.service-card .icon{font-size:3rem;line-height:1;margin-bottom:.9rem}.service-card .icon svg{display:block;width:3rem;height:3rem;margin:0 auto}.service-card h3{font-size:1.15rem;font-weight:700;margin-bottom:.35rem}.service-card p{font-size:.92rem;color:var(--text-muted);margin-bottom:.9rem}.service-card .meta{font-size:.82rem;color:var(--text-muted);margin-top:.35rem}.eco-badge{display:inline-flex;align-items:center;gap:.25rem;margin-top:.6rem;background:var(--accent);color:var(--primary);font-size:.72rem;font-weight:800;padding:.25rem .65rem;border-radius:20px}.trust-section{margin-bottom:4rem}.trust-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.service-area-section{background:var(--primary);color:#fff;border-radius:var(--radius-lg);padding:clamp(2rem,5vw,3.25rem);margin-bottom:4rem;text-align:center;position:relative;overflow:hidden}.service-area-section:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.08) 0%,transparent 60%);pointer-events:none}.service-area-section .container{position:relative;z-index:1}.service-area-kicker{display:inline-flex;align-items:center;gap:.4rem;background:#ffffff1f;color:#fff;padding:.35rem .9rem;border-radius:40px;font-size:.82rem;font-weight:700;margin-bottom:1rem}.service-area-section .section-title{color:#fff;margin-bottom:1rem}.service-area-lead{font-size:clamp(1.05rem,2vw,1.3rem);max-width:760px;margin:0 auto;line-height:1.6;opacity:.95}.service-area-lead strong{color:#fff;font-weight:700}.btn-light{background:#fff;color:var(--primary);border:2px solid #fff;transition:background var(--transition),color var(--transition)}.btn-light:hover,.btn-light:focus-visible{background:transparent;color:#fff;outline:none}.trust-card{background:var(--surface);border-radius:var(--radius-md);padding:1.6rem;text-align:center;box-shadow:var(--shadow-sm)}.trust-card .icon{font-size:2rem;margin-bottom:.6rem}.trust-card h3{font-size:1.05rem;font-weight:700;margin-bottom:.4rem}.trust-card p{font-size:.9rem;color:var(--text-muted)}.contact-section{background:var(--surface);border-radius:var(--radius-lg);padding:clamp(1.75rem,4vw,2.75rem);box-shadow:var(--shadow-md);margin-bottom:4rem}.contact-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}.contact-card{background:var(--bg);border-radius:var(--radius-md);padding:1.5rem;text-align:center;box-shadow:var(--shadow-sm)}.contact-card h3{font-size:.78rem;font-weight:800;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:.55rem}.contact-card p{font-size:1.05rem;color:var(--text);font-weight:600;line-height:1.45}.contact-card a{color:var(--primary);text-decoration:none;font-weight:700;transition:color var(--transition)}.contact-card a:hover,.contact-card a:focus-visible{color:var(--primary-light);text-decoration:underline;outline:none}.booking-section{position:relative;overflow:hidden;background:var(--surface);border-radius:var(--radius-lg);padding:clamp(1.75rem,4vw,2.75rem);box-shadow:var(--shadow-md);margin-bottom:4rem}.booking-section>*{position:relative;z-index:1}.booking-section:before,.booking-section:after{content:"";position:absolute;border-radius:50%;pointer-events:none}.booking-section:before{top:-160px;right:-160px;width:380px;height:380px;background:radial-gradient(circle,rgba(255,237,213,.75),transparent 65%)}.booking-section:after{bottom:-140px;left:-140px;width:300px;height:300px;background:radial-gradient(circle,rgba(249,115,22,.1),transparent 65%)}.section-head{margin-bottom:1.75rem}.section-kicker{display:inline-flex;align-items:center;background:var(--accent);color:var(--primary);font-size:.8rem;font-weight:800;padding:.35rem .9rem;border-radius:40px;letter-spacing:.01em;margin-bottom:.9rem}.booking-section .section-title{margin-bottom:.8rem}.section-lead{max-width:640px;color:var(--text-muted);font-size:1rem}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.2rem}.form-group{display:flex;flex-direction:column;gap:.45rem}label{font-size:.88rem;font-weight:700;color:var(--text-muted)}.form-group>label{display:flex;align-items:center;gap:.45rem}.label-icon{flex:none;width:1rem;height:1rem;color:var(--primary-light)}input,select,textarea{padding:.9rem 1rem;border:1.5px solid var(--border);border-radius:var(--radius-sm);font-family:inherit;font-size:.97rem;background:#fdfaf6;color:var(--text);transition:border-color var(--transition),box-shadow var(--transition),background var(--transition);width:100%}input:hover,select:hover,textarea:hover{border-color:#dbc7ab}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--primary-light);box-shadow:0 0 0 4px #f973161f;background:#fff}input.invalid,select.invalid,textarea.invalid{border-color:var(--error);background:var(--error-bg)}input.invalid:focus,select.invalid:focus,textarea.invalid:focus{box-shadow:0 0 0 4px #c0392b1f}select{-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%235f5b58' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .9rem center;background-size:1rem;padding-right:2.6rem;cursor:pointer}textarea{resize:vertical;min-height:100px}.booking-success{background:linear-gradient(180deg,#fff7ed 0%,var(--surface) 72%);border:1.5px solid var(--accent);border-radius:var(--radius-md);padding:1.4rem 1.6rem;margin:1.5rem 0;display:flex;align-items:center;gap:1.1rem;box-shadow:var(--shadow-sm)}.booking-success[hidden]{display:none}.booking-success-icon{flex:none;width:3rem;height:3rem;border-radius:50%;background:var(--accent);display:grid;place-items:center;font-size:1.4rem;box-shadow:0 6px 14px #f9731638}.booking-success-title{font-size:clamp(1.35rem,3vw,1.6rem);font-weight:800;color:var(--primary);margin-bottom:.45rem}.booking-success-message{font-size:clamp(1.15rem,2.4vw,1.5rem);font-weight:500;color:var(--text);line-height:1.4}footer{border-top:1px solid var(--border);padding:2.25rem 0;display:flex;justify-content:space-between;flex-wrap:wrap;gap:1rem;font-size:.88rem;color:var(--text-muted)}.footer-links{display:flex;gap:1.5rem}.footer-link-placeholder{color:inherit;cursor:default}#toast{position:fixed;bottom:1.5rem;right:1.5rem;max-width:min(380px,calc(100% - 2rem));background:var(--primary);color:#fff;padding:.9rem 1.4rem;border-radius:40px;font-weight:600;font-size:.95rem;opacity:0;transform:translateY(12px);transition:opacity var(--transition),transform var(--transition);pointer-events:none;z-index:100;box-shadow:var(--shadow-md)}#toast.show,.reveal{opacity:1;transform:translateY(0)}.js .reveal{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s ease}.js .reveal.is-visible{opacity:1;transform:translateY(0)}.stagger-1{transition-delay:80ms}.stagger-2{transition-delay:.16s}.stagger-3{transition-delay:.24s}.stagger-4{transition-delay:.32s}@media(max-width:760px){.menu-toggle{display:inline-flex}.nav-links{position:fixed;inset:0 0 0 auto;z-index:1;width:min(280px,80%);background:var(--surface);flex-direction:column;align-items:flex-start;padding:5rem 1.5rem 1.5rem;gap:1.25rem;box-shadow:var(--shadow-lg);transform:translate(100%);transition:transform var(--transition);overflow-y:auto}.nav-links.is-open{transform:translate(0)}.nav-links a{font-size:1.1rem}.nav-backdrop{display:block;position:fixed;inset:0;background:#00000080;opacity:0;pointer-events:none;transition:opacity var(--transition);z-index:0}.nav-backdrop.is-visible{opacity:1;pointer-events:auto}.hero{grid-template-columns:1fr;text-align:center}.hero-text{margin:0 auto}.hero-visual{order:-1;min-height:240px}.hero-visual .scene{width:220px;height:220px}.hero-visual .scene svg{width:90px;height:90px}.hero-badge{bottom:.5rem;right:.5rem;font-size:.75rem;padding:.5rem .8rem}.trust-grid{grid-template-columns:1fr}.contact-grid{grid-template-columns:repeat(2,1fr)}.form-grid{grid-template-columns:1fr}.form-group.full{grid-column:1}#booking-form input,#booking-form select,#booking-form textarea,.chat-input input{font-size:16px}}@media(max-width:480px){.contact-grid{grid-template-columns:1fr}.form-actions{flex-direction:column}.form-actions .btn{width:100%}}.widget-button{position:fixed;right:1.5rem;z-index:90;display:inline-flex;align-items:center;justify-content:center;gap:.45rem;width:3.5rem;height:3.5rem;border-radius:50%;border:none;cursor:pointer;background:var(--primary);color:#fff;box-shadow:0 8px 24px #00000047;transition:transform var(--transition),box-shadow var(--transition),background var(--transition);font-weight:700;font-size:.8rem;text-decoration:none}.widget-button:hover,.widget-button:focus-visible{transform:translateY(-3px) scale(1.05);box-shadow:0 12px 28px #00000059;background:var(--primary-light);outline:none}.widget-button svg{width:1.35rem;height:1.35rem}.chat-notification-badge{position:absolute;top:-4px;right:-4px;min-width:1.4rem;height:1.4rem;padding:0 .35rem;border-radius:50%;background:#ef4444;color:#fff;font-size:.72rem;font-weight:800;line-height:1.4rem;text-align:center;box-shadow:0 2px 8px #ef444480;animation:chat-badge-pulse 1.8s ease-in-out infinite;z-index:2}@keyframes chat-badge-pulse{0%,to{transform:scale(1);box-shadow:0 2px 8px #ef444480}50%{transform:scale(1.18);box-shadow:0 4px 16px #ef4444b3}}.chat-notification-badge.is-appear{animation:chat-badge-bounce .5s cubic-bezier(.36,.07,.19,.97) both}@keyframes chat-badge-bounce{0%{transform:scale(0);opacity:0}50%{transform:scale(1.3)}70%{transform:scale(.9)}to{transform:scale(1);opacity:1}}.chat-toggle.has-notification{animation:chat-wiggle .6s ease-in-out}@keyframes chat-wiggle{0%,to{transform:rotate(0)}15%{transform:rotate(-12deg)}30%{transform:rotate(10deg)}45%{transform:rotate(-8deg)}60%{transform:rotate(6deg)}75%{transform:rotate(-3deg)}}.widget-label{position:absolute;right:calc(100% + .75rem);white-space:nowrap;background:var(--text);color:#fff;padding:.35rem .7rem;border-radius:40px;font-size:.78rem;opacity:0;transform:translate(8px);pointer-events:none;transition:opacity var(--transition),transform var(--transition)}.widget-button:hover .widget-label,.widget-button:focus-visible .widget-label{opacity:1;transform:translate(0)}.call-button{bottom:5.5rem}.chat-toggle{bottom:1.5rem}.chat-widget{position:fixed;right:1.5rem;bottom:1.5rem;z-index:90}.chat-panel{position:absolute;bottom:4.2rem;right:0;width:360px;max-width:calc(100vw - 3rem);height:520px;max-height:calc(100vh - 8rem);background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;overflow:hidden;opacity:0;transform:translateY(16px) scale(.96);pointer-events:none;transition:opacity var(--transition),transform var(--transition)}.chat-panel.is-open{opacity:1;transform:translateY(0) scale(1);pointer-events:auto}.chat-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.2rem;background:var(--primary);color:#fff}.chat-header h3{font-size:1.05rem;font-weight:700;display:flex;align-items:center;gap:.4rem}.chat-header h3:before{content:"";width:8px;height:8px;background:#fb923c;border-radius:50%}.chat-close,.chat-sound-toggle{background:#ffffff26;border:none;color:#fff;width:2rem;height:2rem;border-radius:50%;cursor:pointer;transition:background var(--transition)}.chat-close{font-size:1.4rem;line-height:1}.chat-sound-toggle{font-size:1rem;line-height:1}.chat-close:hover,.chat-close:focus-visible,.chat-sound-toggle:hover,.chat-sound-toggle:focus-visible{background:#ffffff4d;outline:none}.chat-header-actions{display:flex;align-items:center;gap:.5rem}.chat-messages{flex:1;padding:1rem;overflow-y:auto;display:flex;flex-direction:column;gap:.75rem;background:var(--surface-2)}.chat-message{display:flex;max-width:85%}.chat-message.user{align-self:flex-end;justify-content:flex-end}.chat-message.bot{align-self:flex-start}.chat-bubble{padding:.75rem 1rem;border-radius:var(--radius-md);font-size:.92rem;line-height:1.45}.chat-message.user .chat-bubble{background:var(--primary);color:#fff;border-bottom-right-radius:4px}.chat-message.bot .chat-bubble{background:var(--surface);color:var(--text);border:1px solid var(--border);border-bottom-left-radius:4px}.chat-bubble a{color:inherit;text-decoration:underline;font-weight:700}.chat-quick-replies{display:flex;flex-wrap:wrap;gap:.5rem;padding:.75rem 1rem;background:var(--surface);border-top:1px solid var(--border)}.chat-quick-replies button{background:var(--accent);color:var(--primary);border:none;border-radius:40px;padding:.4rem .85rem;font-size:.82rem;font-weight:700;cursor:pointer;transition:background var(--transition),transform var(--transition)}.chat-quick-replies button:hover,.chat-quick-replies button:focus-visible{background:#fdba74;transform:translateY(-1px);outline:none}.chat-quick-replies:empty{display:none}.chat-input{display:flex;gap:.5rem;padding:.85rem 1rem;background:var(--surface);border-top:1px solid var(--border)}.chat-input input{flex:1;padding:.75rem 1rem;border:1.5px solid var(--border);border-radius:40px;background:var(--surface-2);font-size:.95rem}.chat-input input:focus{outline:none;border-color:var(--primary-light);box-shadow:0 0 0 4px #f973161f}.chat-input button{width:2.75rem;height:2.75rem;border-radius:50%;border:none;background:var(--primary);color:#fff;display:grid;place-items:center;cursor:pointer;transition:background var(--transition),transform var(--transition)}.chat-input button:hover,.chat-input button:focus-visible{background:var(--primary-light);transform:scale(1.05);outline:none}#toast{right:auto;left:50%;transform:translate(-50%) translateY(12px)}#toast.show{transform:translate(-50%) translateY(0)}@media(max-width:760px){.widget-button,.chat-widget{right:1rem}.call-button{bottom:5rem}.chat-toggle{bottom:1rem}.chat-panel{width:calc(100vw - 2rem);right:-1rem;bottom:3.7rem;height:70vh;max-height:520px;border-radius:var(--radius-md)}.widget-label{display:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}

.form-actions{display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap}.btn-whatsapp{background:#25d366;color:#fff}.btn-whatsapp:hover,.btn-whatsapp:focus-visible{background:#1da851;transform:translateY(-2px)}
.btn-whatsapp svg{width:1.25rem;height:1.25rem}