:root{--ink: #0a0f1a;--sage: #2d6a4f;--sage-light: #52b788;--cream: #f7f4ef;--mist: #e8f0eb;--gold: #c9a84c;--white: #ffffff}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:DM Sans,sans-serif;background:var(--cream);color:var(--ink);overflow-x:hidden;cursor:none}.cursor{position:fixed;width:12px;height:12px;background:var(--sage);border-radius:50%;pointer-events:none;z-index:9999;transform:translate(-50%,-50%);transition:transform .1s,width .3s,height .3s,background .3s}.cursor-ring{position:fixed;width:36px;height:36px;border:1.5px solid var(--sage);border-radius:50%;pointer-events:none;z-index:9998;transform:translate(-50%,-50%);transition:transform .15s ease,width .3s,height .3s,opacity .3s;opacity:.5}body:hover .cursor{opacity:1}nav{position:fixed;top:0;left:0;width:100%;z-index:100;display:flex;justify-content:space-between;align-items:center;padding:1.4rem 4rem;transition:background .4s,box-shadow .4s}nav.scrolled{background:#f7f4eff2;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 2px 30px #0000000f}.logo{font-family:Playfair Display,serif;font-size:1.7rem;font-weight:900;letter-spacing:-.02em;color:var(--ink);display:inline-flex;align-items:center;gap:.75rem}.logo span{color:var(--sage)}.logo img{width:52px;height:52px;border-radius:.9rem;object-fit:cover;flex-shrink:0;box-shadow:0 8px 24px #0000001a}.nav-links{display:flex;gap:2.5rem;align-items:center}.nav-links a{text-decoration:none;font-size:.9rem;font-weight:500;color:var(--ink);letter-spacing:.05em;text-transform:uppercase;position:relative;padding-bottom:2px}.nav-links a:after{content:"";position:absolute;bottom:0;left:0;width:0;height:1.5px;background:var(--sage);transition:width .3s ease}.nav-links a:hover:after{width:100%}.btn-nav{background:var(--ink);color:var(--white)!important;padding:.7rem 1.6rem;border-radius:2rem;font-weight:600!important;transition:background .3s,transform .2s;text-transform:none!important;letter-spacing:0!important;cursor:pointer}.btn-nav:hover{background:var(--sage)!important;transform:translateY(-1px)}.btn-nav:after{display:none!important}#hero{min-height:100vh;display:flex;flex-direction:column;justify-content:center;padding:8rem 4rem 4rem;position:relative;overflow:hidden}.hero-bg{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 60% 60% at 70% 50%,rgba(82,183,136,.12) 0%,transparent 70%),radial-gradient(ellipse 40% 40% at 20% 80%,rgba(201,168,76,.08) 0%,transparent 60%)}.hero-label{font-size:.75rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--sage);margin-bottom:1.5rem;opacity:0;transform:translateY(20px);animation:fadeUp .8s .3s forwards}.hero-title{font-family:Playfair Display,serif;font-size:clamp(3.5rem,8vw,8rem);font-weight:900;line-height:1;letter-spacing:-.03em;color:var(--ink);max-width:850px;opacity:0;transform:translateY(30px);animation:fadeUp .9s .5s forwards}.hero-title em{font-style:italic;color:var(--sage)}.hero-sub{margin-top:2rem;font-size:1.1rem;font-weight:300;color:#555;max-width:480px;line-height:1.7;opacity:0;transform:translateY(20px);animation:fadeUp .9s .7s forwards}.hero-cta{margin-top:3rem;display:flex;gap:1.2rem;align-items:center;opacity:0;transform:translateY(20px);animation:fadeUp .9s .9s forwards}.btn-primary{background:var(--sage);color:var(--white);padding:1rem 2.5rem;border:none;border-radius:3rem;font-family:DM Sans,sans-serif;font-size:1rem;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .3s,background .3s;text-decoration:none;display:inline-block}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 12px 40px #2d6a4f59;background:#1e4d35}.btn-ghost{background:transparent;color:var(--ink);padding:1rem 2rem;border:1.5px solid rgba(10,15,26,.2);border-radius:3rem;font-family:DM Sans,sans-serif;font-size:1rem;font-weight:500;cursor:pointer;transition:border-color .3s,color .3s;text-decoration:none;display:inline-block}.btn-ghost:hover{border-color:var(--sage);color:var(--sage)}.hero-stats{position:absolute;right:5%;bottom:15%;display:flex;flex-direction:column;gap:2rem;opacity:0;animation:fadeUp 1s 1.2s forwards}.stat{text-align:right}.stat-number{font-family:Playfair Display,serif;font-size:2.8rem;font-weight:700;color:var(--ink);line-height:1}.stat-label{font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:#888;margin-top:.3rem}.hero-divider{width:50px;height:1px;background:#0a0f1a26;margin:1rem 0 1rem auto}.marquee-section{background:var(--ink);padding:1rem 0;overflow:hidden;display:grid;gap:.45rem}.marquee-track{display:flex;gap:0;white-space:nowrap;animation:marquee 24s linear infinite}.marquee-track.reverse{animation:marqueeReverse 34s linear infinite;opacity:.62}.marquee-track.primary{opacity:.86}.marquee-item,.marquee-track .dot{display:inline-flex;align-items:center;flex-shrink:0}.marquee-item{gap:.65rem;white-space:nowrap}.marquee-item:before{content:"";width:.62rem;height:.62rem;border-radius:0 100%;background:linear-gradient(135deg,var(--sage-light),rgba(82,183,136,.36));transform:rotate(-18deg);box-shadow:0 0 14px #52b78847}.marquee-track span{font-size:.85rem;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:#fff9;padding:0 1.4rem}.marquee-track .dot{color:var(--sage-light);font-size:1rem;padding:0 1.1rem;text-shadow:0 0 16px rgba(82,183,136,.42)}#about{padding:8rem 4rem;display:grid;grid-template-columns:1fr 1fr;gap:6rem;align-items:center}.about-visual{position:relative}.about-img-main{width:100%;aspect-ratio:4/5;background:var(--mist);border-radius:2rem;overflow:hidden;position:relative}.about-img-main img{width:100%;height:100%;object-fit:cover}.about-trust-badge{position:absolute;right:1.2rem;bottom:1.2rem;z-index:2;display:inline-flex;align-items:center;gap:.7rem;padding:.85rem 1rem;border:1px solid rgba(255,255,255,.54);border-radius:999px;background:#ffffffe0;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 18px 45px #0a0f1a29;color:var(--ink)}.about-trust-badge-icon{width:32px;height:32px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--sage);color:var(--white);font-size:.9rem;font-weight:800;flex-shrink:0}.about-trust-badge strong{display:block;font-size:.82rem;line-height:1.1;color:var(--ink)}.about-trust-badge span:last-child{display:block;margin-top:.15rem;font-size:.72rem;color:#0a0f1a85}.about-img-accent{position:absolute;bottom:-3rem;right:-3rem;width:55%;aspect-ratio:1;background:var(--sage);border-radius:1.5rem;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:.5rem;color:var(--white)}.about-img-accent .big{font-family:Playfair Display,serif;font-size:3rem;font-weight:700;line-height:1}.about-img-accent .sm{font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;opacity:.8}.section-label{font-size:.75rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--sage);margin-bottom:1rem}.section-title{font-family:Playfair Display,serif;font-size:clamp(2rem,4vw,3.2rem);font-weight:700;line-height:1.15;letter-spacing:-.02em;color:var(--ink);margin-bottom:1.5rem}.section-title em{font-style:italic;color:var(--sage)}.section-body{font-size:1.05rem;line-height:1.8;color:#555;margin-bottom:2rem}.check-list{list-style:none;display:grid;gap:.85rem;margin-bottom:2.5rem}.check-list li{display:flex;align-items:flex-start;gap:.85rem;padding:.95rem 1rem;border:1px solid rgba(45,106,79,.1);border-radius:1rem;background:#ffffff73}.check-list li:before{content:"✓";width:26px;height:26px;background:var(--mist);color:var(--sage);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700;flex-shrink:0}.check-list strong{display:block;margin-bottom:.18rem;font-size:.95rem;color:var(--ink)}.check-list span{display:block;font-size:.86rem;line-height:1.55;color:#0a0f1a8c}#services{padding:8rem 4rem;background:var(--ink);color:var(--white)}.services-header{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:5rem}.services-header .section-label{color:var(--sage-light)}.services-header .section-title{color:var(--white);margin-bottom:0}.services-header p{font-size:.95rem;color:#ffffff80;max-width:280px;line-height:1.7}.services-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2rem}.service-card{position:relative;border-radius:2rem;overflow:hidden;height:clamp(320px,38vw,520px);cursor:pointer;background:#122a1e;transition:transform .6s cubic-bezier(.23,1,.32,1),box-shadow .6s;will-change:transform}.service-card:hover{transform:translateY(-8px) scale(1.02);box-shadow:0 40px 80px #00000080}.service-card-img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.23,1,.32,1),filter .6s;filter:brightness(.55) saturate(1.1)}.service-card:hover .service-card-img{transform:scale(1.08);filter:brightness(.5) saturate(1.3)}.service-card-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,rgba(0,0,0,.92) 0%,rgba(0,0,0,.2) 50%,transparent 100%);z-index:1}.service-card-glow{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse at 50% 120%,rgba(82,183,136,.3),transparent 65%);z-index:2;opacity:0;transition:opacity .5s}.service-card:hover .service-card-glow{opacity:1}.service-card-content{position:absolute;bottom:0;left:0;right:0;padding:2.5rem;z-index:3;transition:transform .5s cubic-bezier(.23,1,.32,1)}.service-card-number{font-family:Playfair Display,serif;font-size:.75rem;font-weight:700;letter-spacing:.2em;color:var(--sage-light);text-transform:uppercase;margin-bottom:.8rem;display:flex;align-items:center;gap:.8rem}.service-card-number:after{content:"";flex:1;max-width:40px;height:1px;background:var(--sage-light)}.service-card-name{font-family:Playfair Display,serif;font-size:1.8rem;font-weight:700;color:var(--white);line-height:1.2;margin-bottom:1rem}.service-card-desc{font-size:.92rem;line-height:1.75;color:#ffffffa6;margin-bottom:1.5rem;max-height:0;overflow:hidden;opacity:0;transition:max-height .5s cubic-bezier(.23,1,.32,1),opacity .4s .1s}.service-card:hover .service-card-desc{max-height:200px;opacity:1}@media (hover: none){.service-card-desc{max-height:200px;opacity:.8}.service-card-cta{opacity:1;transform:translateY(0)}}.service-card-desc em{color:var(--sage-light);font-style:italic}.service-card-tags{display:flex;flex-wrap:wrap;gap:.5rem}.service-card-tag{font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;padding:.3rem .75rem;border:1px solid rgba(82,183,136,.4);border-radius:2rem;color:var(--sage-light);background:#52b78814}.service-card-cta{display:inline-flex;align-items:center;gap:.5rem;margin-top:1.2rem;font-size:.85rem;font-weight:600;color:var(--white);letter-spacing:.05em;text-transform:uppercase;text-decoration:none;opacity:0;transform:translateY(10px);transition:opacity .4s .2s,transform .4s .2s}.service-card:hover .service-card-cta{opacity:1;transform:translateY(0)}.service-card-cta svg{width:18px;height:18px;flex-shrink:0;transition:transform .3s}.service-card:hover .service-card-cta svg{transform:translate(4px)}.services-header{margin-bottom:2rem}.services-header p{max-width:340px;color:#ffffff94}.service-trust-badges{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.8rem;margin-bottom:3rem}.service-trust-badge{display:flex;align-items:center;gap:.65rem;min-height:54px;padding:.85rem 1rem;border:1px solid rgba(82,183,136,.22);border-radius:1rem;background:#ffffff0b;color:#ffffffc7;font-size:.82rem;font-weight:600}.service-trust-badge svg{width:20px;height:20px;color:var(--sage-light);flex-shrink:0}.services-grid{grid-template-columns:repeat(6,1fr)}.service-card{min-height:540px;height:auto;color:var(--white);text-decoration:none}.service-card:focus-visible{outline:2px solid var(--sage-light);outline-offset:5px;transform:translateY(-8px) scale(1.02);box-shadow:0 40px 80px #00000080}.service-card-overlay{background:linear-gradient(to top,#000000f5,#000000bd 45%,#0003)}.service-card-topline{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}.service-card-icon{width:46px;height:46px;border-radius:1rem;display:inline-flex;align-items:center;justify-content:center;background:#52b78824;border:1px solid rgba(82,183,136,.28);color:var(--sage-light);flex-shrink:0}.service-card-icon svg{width:24px;height:24px}.service-card-desc{max-height:none;opacity:1;overflow:visible;color:#ffffffb3;margin-bottom:1.2rem}.service-card-included{list-style:none;display:grid;gap:.5rem;margin:0 0 1.2rem}.service-card-included li{display:flex;align-items:flex-start;gap:.55rem;font-size:.84rem;line-height:1.45;color:#ffffffc7}.service-card-included li:before{content:"";width:6px;height:6px;margin-top:.48rem;border-radius:50%;background:var(--sage-light);flex-shrink:0}.service-card-best{border-color:#c9a84c6b;color:#e7cf7b;background:#c9a84c1a}.service-card-cta{opacity:1;transform:translateY(0);transition:color .3s}.service-card:hover .service-card-cta,.service-card:focus-visible .service-card-cta{color:var(--sage-light)}.service-card:focus-visible .service-card-cta svg{transform:translate(4px)}.service-offer{margin-top:2rem;padding:1rem 1.4rem;border:1px solid rgba(201,168,76,.36);border-radius:1.25rem;background:linear-gradient(135deg,#c9a84c29,#52b78814);color:#ffffffe0;display:flex;align-items:center;justify-content:center;gap:.65rem;text-align:center;font-size:.96rem;font-weight:600}.service-offer strong{color:#e7cf7b}#testimonials{padding:8rem 4rem;background:var(--cream);overflow:hidden}.testimonials-header{text-align:center;margin-bottom:5rem}.tcarousel{position:relative;height:420px;perspective:1200px;touch-action:pan-y}.tcard{position:absolute;width:600px;left:50%;top:50%;background:var(--white);border-radius:2rem;padding:3rem;box-shadow:0 30px 80px #0000001a;transform-style:preserve-3d;cursor:pointer;transition:all .7s cubic-bezier(.23,1,.32,1);border:1px solid rgba(0,0,0,.05);overflow:hidden}.tcard.active{transform:translate(-50%,-50%) translateZ(60px) scale(1);opacity:1;z-index:5;box-shadow:0 40px 100px #00000026}.tcard.prev{transform:translate(-130%,-50%) translateZ(-40px) scale(.85) rotateY(12deg);opacity:.55;z-index:3}.tcard.next{transform:translate(-10%,-50%) translateZ(-40px) scale(.85) rotateY(-12deg);opacity:.55;z-index:3}.tcard.far-prev{transform:translate(-170%,-50%) translateZ(-100px) scale(.7) rotateY(20deg);opacity:.2;z-index:1}.tcard.far-next{transform:translate(30%,-50%) translateZ(-100px) scale(.7) rotateY(-20deg);opacity:.2;z-index:1}.tcard.hidden{opacity:0;z-index:0;pointer-events:none;transform:translate(-50%,-50%) scale(.5)}.tcard-quote{position:absolute;top:.45rem;left:1.6rem;font-family:Playfair Display,serif;font-size:8.5rem;font-weight:900;color:#2d6a4f14;line-height:1;pointer-events:none;-webkit-user-select:none;user-select:none}.tcard-stars{position:relative;z-index:1;color:#d6a922;font-size:.86rem;letter-spacing:.12em;margin-bottom:1rem}.tcard-text{position:relative;z-index:1;font-size:1.05rem;line-height:1.75;color:#444;margin-bottom:1.6rem;font-style:italic}.tcard-author{position:relative;z-index:1;display:flex;align-items:center;gap:1rem;padding-top:1.2rem;border-top:1px solid rgba(45,106,79,.16)}.tcard-avatar{width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,var(--mist),rgba(82,183,136,.28));color:var(--sage);display:inline-flex;align-items:center;justify-content:center;font-size:.88rem;font-weight:800;letter-spacing:.08em;flex-shrink:0;border:2px solid rgba(82,183,136,.34)}.tcard-name{font-weight:700;font-size:.95rem;color:var(--ink)}.tcard-location{font-size:.78rem;color:#888;margin-top:.15rem}.tcarousel-nav{display:flex;justify-content:center;align-items:center;gap:1.5rem;margin-top:3rem}.tnav-btn{width:52px;height:52px;border-radius:50%;border:1.5px solid rgba(0,0,0,.15);background:var(--white);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s;box-shadow:0 4px 20px #0000000f}.tnav-btn:hover{background:var(--sage);border-color:var(--sage);color:#fff;transform:scale(1.1)}.tnav-btn svg{width:18px;height:18px;transition:color .3s}.tnav-btn:hover svg{stroke:#fff}.tdots{display:flex;gap:.5rem;align-items:center}.tdot{width:8px;height:8px;border-radius:50%;background:#00000026;transition:all .3s;cursor:pointer}.tdot.active{width:24px;border-radius:4px;background:var(--sage)}#process{padding:8rem 4rem;background:var(--mist)}.process-header{text-align:center;margin-bottom:5rem}.process-steps{display:grid;grid-template-columns:repeat(4,1fr);position:relative;gap:2rem}.process-steps:before{content:"";position:absolute;top:2.5rem;left:10%;width:80%;height:1px;background:linear-gradient(to right,transparent,var(--sage-light),transparent)}.step{text-align:center;position:relative}.step-num{width:52px;height:52px;background:var(--white);border:2px solid var(--sage-light);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem;font-family:Playfair Display,serif;font-size:1.2rem;font-weight:700;color:var(--sage);position:relative;z-index:1;transition:background .3s,color .3s}.step:hover .step-num{background:var(--sage);color:var(--white);border-color:var(--sage)}.step-title{font-weight:700;font-size:1rem;margin-bottom:.5rem;color:var(--ink)}.step-desc{font-size:.88rem;color:#666;line-height:1.6}#contact{padding:8rem 4rem;display:grid;grid-template-columns:1fr 1.2fr;gap:6rem;align-items:start}.contact-info{position:sticky;top:8rem}.contact-detail{display:flex;align-items:flex-start;gap:1rem;margin-bottom:2rem}.contact-icon{width:44px;height:44px;background:var(--mist);border-radius:.75rem;display:flex;align-items:center;justify-content:center;font-size:1.1rem;flex-shrink:0}.contact-icon svg{width:20px;height:20px;color:var(--sage)}.contact-detail-label{font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:#888;margin-bottom:.25rem}.contact-detail-val{font-weight:600;font-size:.95rem;color:var(--ink)}.contact-detail-val a{color:inherit;text-decoration:none;transition:color .3s}.contact-detail-val a:hover,.contact-detail-val a:focus-visible{color:var(--sage)}.form-card{background:var(--white);border-radius:2rem;padding:3rem;box-shadow:0 24px 80px #00000012}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem}.form-group{margin-bottom:1.2rem}.form-group label{display:block;font-size:.75rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:#888;margin-bottom:.5rem}.form-group input,.form-group select,.form-group textarea{width:100%;background:var(--cream);border:1.5px solid transparent;border-radius:.75rem;padding:.85rem 1rem;font-family:DM Sans,sans-serif;font-size:.95rem;color:var(--ink);transition:border-color .3s,box-shadow .3s;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:text}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--sage);box-shadow:0 0 0 4px #52b7881f}.form-group textarea{resize:vertical;min-height:110px}.btn-submit{width:100%;background:var(--ink);color:var(--white);padding:1.1rem;border:none;border-radius:.75rem;font-family:DM Sans,sans-serif;font-size:1rem;font-weight:600;cursor:pointer;letter-spacing:.05em;transition:background .3s,transform .2s;margin-top:.5rem}.btn-submit:hover{background:var(--sage);transform:translateY(-1px)}footer{position:relative;background:radial-gradient(circle at 10% 18%,rgba(45,106,79,.08),transparent 18rem),radial-gradient(circle at 88% 15%,rgba(201,168,76,.08),transparent 17rem),linear-gradient(rgba(45,106,79,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(45,106,79,.04) 1px,transparent 1px),var(--cream);background-size:auto,auto,24px 24px,24px 24px,auto;color:var(--ink);padding:5rem 4rem 2rem;overflow:hidden}footer:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,transparent,rgba(82,183,136,.22),var(--sage-light),rgba(82,183,136,.22),transparent)}.footer-wrap{position:relative;z-index:1;max-width:1180px;margin:0 auto}.footer-headline{max-width:820px;margin:0 auto 3.25rem;font-family:Playfair Display,serif;font-size:clamp(2.25rem,5vw,5.2rem);font-style:italic;font-weight:700;line-height:1.02;text-align:center;color:var(--ink)}.footer-cta{margin-bottom:3rem;padding:clamp(1.5rem,3vw,2.4rem);border:1px solid rgba(45,106,79,.12);border-radius:1.5rem;background:#fff9;box-shadow:0 24px 70px #2d6a4f14;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.25rem;text-align:center}.footer-cta-title{font-family:Playfair Display,serif;font-size:clamp(1.7rem,3vw,3rem);font-style:italic;font-weight:700;line-height:1.1;color:var(--ink)}.footer-cta-text{margin-top:.45rem;color:#0a0f1a8c;font-size:.95rem;line-height:1.6}.footer-cta-actions{display:flex;align-items:center;gap:.8rem;flex-shrink:0}.footer-cta-btn{min-height:48px;padding:.85rem 1.25rem;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;gap:.55rem;font-size:.9rem;font-weight:800;text-decoration:none;transition:transform .25s,box-shadow .25s,border-color .25s,background .25s}.footer-cta-btn svg{width:19px;height:19px;flex-shrink:0}.footer-cta-btn.whatsapp{background:var(--sage);color:var(--white);box-shadow:0 14px 32px #2d6a4f3d}.footer-cta-btn.call{border:1px solid rgba(45,106,79,.22);color:var(--sage);background:#ffffff94}.footer-cta-btn:hover,.footer-cta-btn:focus-visible{transform:translateY(-2px);outline:none}.footer-cta-btn.whatsapp:hover,.footer-cta-btn.whatsapp:focus-visible{box-shadow:0 18px 38px #2d6a4f4d;background:#235c43}.footer-cta-btn.call:hover,.footer-cta-btn.call:focus-visible{border-color:#2d6a4f73;background:#ffffffe0}.footer-grid{display:grid;grid-template-columns:minmax(240px,1.4fr) minmax(160px,.8fr) minmax(260px,1fr);gap:2.5rem;align-items:start;padding:2.4rem 0;border-top:1px solid rgba(10,15,26,.08);border-bottom:1px solid rgba(10,15,26,.08)}footer .logo{color:var(--ink);font-size:1.55rem}footer .logo img{width:58px;height:58px;box-shadow:0 14px 35px #2d6a4f24}.footer-tagline{max-width:310px;margin-top:1rem;font-size:.95rem;line-height:1.75;color:#0a0f1a8c}.footer-made{font-size:.82rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--gold)}.footer-title{margin-bottom:1rem;font-size:.72rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:#0a0f1a73}.footer-links{display:grid;gap:.8rem}.footer-links a,.footer-text-link{width:fit-content;font-size:.95rem;color:#0a0f1aa3;text-decoration:none;transition:color .3s,transform .3s}.footer-links a:hover,.footer-links a:focus-visible,.footer-text-link:hover,.footer-text-link:focus-visible{color:var(--sage);transform:translate(3px);outline:none}.footer-contact-icons{display:flex;gap:.75rem;margin-bottom:1.15rem}.footer-icon-link{width:48px;height:48px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:var(--sage);text-decoration:none;border:1px solid rgba(45,106,79,.16);background:#ffffff9e;transition:transform .25s,background .25s,border-color .25s}.footer-icon-link svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.footer-icon-link.whatsapp{background:#30d76d29;border-color:#30d76d52;color:#128c4a}.footer-icon-link.whatsapp svg{fill:currentColor;stroke:none}.footer-icon-link.facebook svg{fill:currentColor;stroke:none}.footer-icon-link:hover,.footer-icon-link:focus-visible{transform:translateY(-3px);background:#52b78824;border-color:#2d6a4f59;outline:none}.footer-contact-list{display:grid;gap:.55rem}.footer-bottom{display:flex;justify-content:space-between;gap:1rem;padding-top:1.5rem;color:#0a0f1a73;font-size:.82rem}.footer-bottom a{color:#0a0f1a9e;text-decoration:none;transition:color .3s}.footer-bottom a:hover,.footer-bottom a:focus-visible{color:var(--sage);outline:none}@keyframes fadeUp{to{opacity:1;transform:translateY(0)}}@keyframes marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes marqueeReverse{0%{transform:translate(-50%)}to{transform:translate(0)}}.reveal{opacity:0;transform:translateY(40px);transition:opacity .8s ease,transform .8s ease}.reveal.visible{opacity:1;transform:translateY(0)}.reveal-left{opacity:0;transform:translate(-50px);transition:opacity .9s ease,transform .9s ease}.reveal-left.visible{opacity:1;transform:translate(0)}.reveal-right{opacity:0;transform:translate(50px);transition:opacity .9s ease,transform .9s ease}.reveal-right.visible{opacity:1;transform:translate(0)}.delay-1{transition-delay:.1s}.delay-2{transition-delay:.2s}.delay-3{transition-delay:.3s}.delay-4{transition-delay:.4s}.quote-section{padding:7rem 4rem;background:var(--cream);text-align:left;overflow:hidden;position:relative}.quote-section:before{content:"“";position:absolute;left:clamp(1.5rem,7vw,7rem);top:1.2rem;font-family:Playfair Display,serif;font-size:clamp(8rem,18vw,16rem);font-weight:900;line-height:1;color:#2d6a4f0f;pointer-events:none;-webkit-user-select:none;user-select:none}.quote-big{position:relative;z-index:1;font-family:Playfair Display,serif;font-size:clamp(2rem,5vw,4.5rem);font-weight:700;line-height:1.2;color:var(--ink);max-width:900px;margin:0;letter-spacing:-.02em}.quote-big em{font-style:italic;color:var(--sage)}.quote-attribution{position:relative;z-index:1;margin-top:1.35rem;font-size:.78rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--sage)}.quote-bg-text{position:absolute;font-family:Playfair Display,serif;font-size:clamp(6rem,15vw,14rem);font-weight:900;color:#2d6a4f0a;top:50%;left:50%;transform:translate(calc(-50% + var(--quote-drift, 0px)),-50%);transition:transform .12s linear;white-space:nowrap;pointer-events:none;-webkit-user-select:none;user-select:none}@media (max-width: 900px){nav{padding:1.2rem 1.5rem}#hero,#about,#services,#contact,footer,#testimonials,#process{padding:5rem 1.5rem}.hero-stats{display:none}#about,#contact{grid-template-columns:1fr;gap:3rem}.services-grid{grid-template-columns:1fr}.service-trust-badges{grid-template-columns:repeat(2,1fr)}.service-card,.service-card:nth-child(1),.service-card:nth-child(2),.service-card:nth-child(3),.service-card:nth-child(4),.service-card:nth-child(5){grid-column:span 1;height:auto;min-height:560px}.services-header{flex-direction:column;align-items:flex-start;gap:1rem}.process-steps{grid-template-columns:repeat(2,1fr)}.process-steps:before{display:none}.form-row{grid-template-columns:1fr}footer{padding:4rem 1.5rem 2rem}.footer-grid{grid-template-columns:1fr;gap:2rem}.footer-headline{margin-bottom:2.5rem}.footer-cta{align-items:center}.footer-bottom{flex-direction:column}.tcard{width:calc(100vw - 4rem)}.tcard.prev{transform:translate(-115%,-50%) translateZ(-40px) scale(.85) rotateY(12deg)}.tcard.next{transform:translate(-5%,-50%) translateZ(-40px) scale(.85) rotateY(-12deg)}}@media (max-width: 1200px){nav{padding:1.25rem 2.5rem}#hero,#about,#services,#contact,#testimonials,#process,.quote-section{padding-left:2.5rem;padding-right:2.5rem}.services-grid{gap:1.4rem}.service-card{min-height:580px}.service-card-content{padding:2rem}}@media (max-width: 900px){html{scroll-padding-top:88px}nav{padding:1rem 1.25rem;gap:1rem;background:#f7f4eff2;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.logo{font-size:1.45rem}.logo img{width:46px;height:46px;border-radius:.75rem}.nav-links{gap:1rem;flex-wrap:wrap;justify-content:flex-end}.nav-links a{font-size:.76rem;letter-spacing:.04em}#hero{min-height:auto;padding-top:7.5rem;padding-bottom:4.5rem}.hero-title{font-size:clamp(3rem,12vw,5rem);max-width:720px}.hero-sub{max-width:620px;font-size:1rem}.about-img-main{max-height:620px}.quote-section{padding-top:5rem;padding-bottom:5rem;text-align:center}.quote-big{margin:0 auto}.quote-section:before{left:50%;transform:translate(-50%)}.service-trust-badges{grid-template-columns:repeat(2,minmax(0,1fr))}.service-card,.service-card:nth-child(1),.service-card:nth-child(2),.service-card:nth-child(3),.service-card:nth-child(4),.service-card:nth-child(5){min-height:0;height:auto;grid-column:span 1;aspect-ratio:auto}.service-card-content{position:relative;min-height:560px;display:flex;flex-direction:column;justify-content:flex-end}.service-card-desc,.service-card-included,.service-card-tags,.service-card-cta{position:relative;z-index:4}.tcarousel{height:auto;min-height:390px;perspective:none}.tcard{width:min(100%,620px);left:50%;padding:2.25rem}.tcard.prev,.tcard.next,.tcard.far-prev,.tcard.far-next{opacity:0;pointer-events:none;transform:translate(-50%,-50%) scale(.92)}.contact-info{position:static}}@media (max-width: 640px){body{cursor:auto}.cursor,.cursor-ring{display:none}nav{align-items:flex-start;flex-direction:column}.nav-links{width:100%;justify-content:space-between;gap:.75rem}.nav-links a{padding:.35rem 0}#hero,#about,#services,#contact,#testimonials,#process,.quote-section{padding-left:1rem;padding-right:1rem}#hero{padding-top:8.75rem;padding-bottom:3.5rem}.hero-label,.section-label{font-size:.68rem;letter-spacing:.14em}.hero-title{font-size:clamp(2.65rem,15vw,4rem);line-height:1.03}.hero-sub{margin-top:1.4rem;font-size:.98rem;line-height:1.65}.hero-cta{flex-direction:column;align-items:stretch;gap:.8rem;margin-top:2rem}.btn-primary,.btn-ghost{width:100%;text-align:center;padding:.95rem 1.2rem}.marquee-track{animation-duration:36s}.marquee-track.reverse{animation-duration:50s}.marquee-track span{padding:0 1.5rem;font-size:.72rem}#about,#contact{gap:2.25rem}.about-img-main,.form-card,.service-card,.tcard{border-radius:1.25rem}.about-trust-badge{right:.85rem;bottom:.85rem;max-width:calc(100% - 1.7rem);padding:.7rem .8rem}.about-trust-badge-icon{width:28px;height:28px}.section-title{font-size:clamp(2rem,11vw,2.8rem)}.section-body,.check-list li{font-size:.95rem}.services-header{margin-bottom:1.5rem}.service-trust-badges{grid-template-columns:1fr;margin-bottom:1.5rem}.service-trust-badge{min-height:48px;padding:.75rem .9rem}.services-grid{gap:1rem}.service-card{min-height:0}.service-card-content{min-height:0;padding:1.35rem}.service-card-name{font-size:1.45rem}.service-card-number{font-size:.65rem;letter-spacing:.14em}.service-card-number:after{max-width:24px}.service-card-icon{width:40px;height:40px;border-radius:.8rem}.service-card-desc{font-size:.88rem;line-height:1.58;margin-bottom:.9rem}.service-card-included{gap:.42rem;margin-bottom:1rem}.service-card-included li{font-size:.79rem;line-height:1.35}.service-card-tag{font-size:.62rem;padding:.28rem .62rem}.service-offer{align-items:flex-start;flex-direction:column;text-align:left;padding:.95rem 1rem}.tcarousel{min-height:460px}.tcard{width:100%;padding:1.5rem}.tcard-text{font-size:.94rem;line-height:1.65}.tcarousel-nav{gap:1rem;margin-top:2rem}.tnav-btn{width:46px;height:46px}.process-steps{grid-template-columns:1fr;gap:1.75rem}.form-card{padding:1.35rem}.contact-detail{margin-bottom:1.35rem}footer{padding:3.5rem 1rem 1.5rem}.footer-links{gap:1rem}.footer-grid{padding:2rem 0}.footer-cta{border-radius:1.1rem}.footer-cta-actions{width:100%;flex-direction:column;align-items:stretch}.footer-cta-btn{width:100%}.footer-contact-icons{flex-wrap:wrap}}@media (max-width: 380px){.nav-links a{font-size:.7rem}.hero-title{font-size:2.45rem}.service-card-content{min-height:0;padding:1.1rem}.service-card-name{font-size:1.32rem}.tcarousel{min-height:500px}}@media (hover: none),(pointer: coarse){body{cursor:auto}.cursor,.cursor-ring{display:none}.service-card:hover{transform:none;box-shadow:none}.service-card:hover .service-card-img{transform:none;filter:brightness(.55) saturate(1.1)}}#services{--services-ink: #1d1d1d;--services-sage: #4FAF8F;--services-sage-light: #DFF5EC;--services-cream: #FAFBF8;--services-mist: #F1F7F4;--services-gold: #D6B25E;--services-card: #ffffff;--services-border: rgba(0,0,0,.06);--services-shadow: 0 12px 40px rgba(0,0,0,.06);position:relative;padding:8rem 4rem;background:radial-gradient(circle at 12% 12%,rgba(79,175,143,.13),transparent 28rem),radial-gradient(circle at 88% 18%,rgba(214,178,94,.12),transparent 24rem),linear-gradient(180deg,#ffffff 0%,var(--services-cream) 52%,var(--services-mist) 100%);color:var(--services-ink);overflow:hidden}#services:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(79,175,143,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(79,175,143,.035) 1px,transparent 1px);background-size:48px 48px;-webkit-mask-image:linear-gradient(to bottom,transparent,black 18%,black 72%,transparent);mask-image:linear-gradient(to bottom,transparent,black 18%,black 72%,transparent);pointer-events:none}#services>*{position:relative;z-index:1}#services .services-header{display:flex;justify-content:space-between;align-items:flex-end;gap:2rem;max-width:1180px;margin:0 auto 2rem}#services .section-label{color:var(--services-sage)}#services .section-title{color:var(--services-ink);margin-bottom:0}#services .section-title em{color:var(--services-sage)}#services .services-header p{max-width:360px;color:#1d1d1d9e;font-size:1rem;line-height:1.75}#services .service-trust-badges{max-width:1180px;margin:0 auto 2.5rem;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.9rem}#services .service-trust-badge{min-height:58px;padding:.9rem 1rem;border:1px solid rgba(79,175,143,.16);border-radius:999px;background:#ffffffb8;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 8px 26px #4faf8f14;color:#1d1d1db8;display:flex;align-items:center;justify-content:center;gap:.65rem;font-size:.84rem;font-weight:700}#services .service-trust-badge svg{width:20px;height:20px;color:var(--services-sage);flex-shrink:0}#services .services-grid{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:1fr;gap:1.5rem;align-items:stretch}#services .service-card,#services .service-card:nth-child(1),#services .service-card:nth-child(2),#services .service-card:nth-child(3),#services .service-card:nth-child(4),#services .service-card:nth-child(5){grid-column:auto;position:relative;display:flex;flex-direction:column;min-height:640px;height:100%;overflow:hidden;border:1px solid var(--services-border);border-radius:30px;background:var(--services-card);color:var(--services-ink);text-decoration:none;box-shadow:var(--services-shadow);transition:transform .35s ease,box-shadow .35s ease,border-color .35s ease}#services .service-card:hover,#services .service-card:focus-visible{transform:translateY(-8px);border-color:#4faf8f38;box-shadow:0 22px 58px #1f52401f}#services .service-card:focus-visible{outline:3px solid rgba(79,175,143,.32);outline-offset:5px}#services .service-card-img{position:relative;inset:auto;width:100%;height:215px;object-fit:cover;filter:saturate(.96) brightness(1.04);transition:transform .55s ease,filter .35s ease}#services .service-card:hover .service-card-img,#services .service-card:focus-visible .service-card-img{transform:scale(1.045);filter:saturate(1.02) brightness(1.05)}#services .service-card-overlay{position:absolute;inset:0 0 auto;height:215px;z-index:1;background:linear-gradient(180deg,#fff0 45%,#ffffffc7);pointer-events:none}#services .service-card-glow{display:none}#services .service-card-content{position:relative;inset:auto;z-index:2;display:flex;flex:1;flex-direction:column;padding:1.45rem;background:linear-gradient(180deg,#ffffffeb,#fff 3.5rem);transition:none}#services .service-card-topline{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.9rem}#services .service-card-number{margin-bottom:0;color:var(--services-sage);font-family:DM Sans,sans-serif;font-size:.72rem;font-weight:800;letter-spacing:.13em}#services .service-card-number:after{display:none}#services .service-card-icon{width:46px;height:46px;border:1px solid rgba(79,175,143,.18);border-radius:16px;background:linear-gradient(135deg,var(--services-sage-light),#ffffff);color:var(--services-sage);box-shadow:inset 0 1px #fffc}#services .service-card-icon svg{width:23px;height:23px}#services .service-card-name{margin-bottom:.7rem;color:var(--services-ink);font-size:1.55rem;line-height:1.18}#services .service-card-desc{max-height:none;margin-bottom:1rem;overflow:visible;opacity:1;color:#1d1d1d9e;font-size:.93rem;line-height:1.65}#services .service-card-included{display:grid;gap:.48rem;margin:0 0 1.1rem;list-style:none}#services .service-card-included li{display:flex;align-items:flex-start;gap:.55rem;color:#1d1d1db8;font-size:.85rem;line-height:1.42}#services .service-card-included li:before{content:"";width:7px;height:7px;margin-top:.45rem;border-radius:50%;background:var(--services-sage);box-shadow:0 0 0 4px var(--services-sage-light);flex-shrink:0}#services .service-card-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:auto}#services .service-card-action{display:flex;align-items:center;justify-content:flex-start;margin-top:auto;padding-top:1rem}#services .service-card-tag,#services .service-card-best{border:1px solid rgba(214,178,94,.28);border-radius:999px;background:#d6b25e1f;color:#8b6a18;font-size:.67rem;font-weight:800;letter-spacing:.09em;padding:.36rem .72rem;text-transform:uppercase}#services .service-card-cta{display:inline-flex;align-items:center;gap:.45rem;width:fit-content;margin-top:0;color:var(--services-sage);font-size:.82rem;font-weight:800;letter-spacing:.06em;opacity:1;transform:none}#services .service-card-cta svg{width:18px;height:18px;transition:transform .3s ease}#services .service-card:hover .service-card-cta svg,#services .service-card:focus-visible .service-card-cta svg{transform:translate(4px)}#services .service-offer{max-width:760px;margin:2rem auto 0;padding:1rem 1.35rem;border:1px solid rgba(214,178,94,.26);border-radius:999px;background:#ffffffc7;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);color:#1d1d1db8;box-shadow:0 14px 38px #d6b25e1f;font-weight:700;text-align:center}#services .service-offer strong{color:#8b6a18}@media (max-width: 900px){#services{padding:5rem 1.5rem}#services .services-header{flex-direction:column;align-items:flex-start;gap:1rem}#services .service-trust-badges{grid-template-columns:repeat(2,minmax(0,1fr))}#services .services-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}#services .service-card{min-height:620px}}@media (max-width: 640px){#services{padding:4.5rem 1rem}#services .service-trust-badges{grid-template-columns:1fr;gap:.7rem}#services .service-trust-badge{justify-content:flex-start;border-radius:18px}#services .services-grid{grid-template-columns:1fr;gap:1rem}#services .service-card{border-radius:24px;min-height:0}#services .service-card-img,#services .service-card-overlay{height:170px}#services .service-card-content{min-height:0;padding:1.15rem}#services .service-card-name{font-size:1.32rem}#services .service-card-desc{font-size:.88rem;line-height:1.55}#services .service-card-included li{font-size:.8rem}#services .service-offer{border-radius:20px;text-align:left}}#contact{display:block;padding:8rem 4rem;background:radial-gradient(circle at 12% 15%,rgba(82,183,136,.12),transparent 30rem),linear-gradient(180deg,var(--cream),var(--mist))}#contact .contact-wrap{max-width:1180px;margin:0 auto}#contact .contact-header{max-width:720px;margin-bottom:3rem}#contact .section-label{font-size:.75rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--sage);margin-bottom:1rem}#contact .section-title{font-family:Playfair Display,serif;font-size:clamp(2rem,4vw,3.2rem);font-weight:700;line-height:1.15;letter-spacing:-.02em;color:var(--ink);margin-bottom:1rem}#contact .section-title em{color:var(--sage);font-style:italic}#contact .contact-intro{max-width:620px;color:#0a0f1a9e;font-size:1.05rem;line-height:1.75}#contact .contact-channel-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1rem}#contact .contact-info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:1rem}#contact .contact-channel-card,#contact .contact-info-card{min-height:100%;border:.5px solid rgba(0,0,0,.07);border-radius:1.5rem;background:var(--white);box-shadow:0 18px 55px #0a0f1a12;transition:transform .3s ease,border-color .3s ease,box-shadow .3s ease}#contact .contact-channel-card{display:flex;flex-direction:column;gap:1rem;padding:1.25rem;color:var(--ink);text-decoration:none}#contact .contact-channel-card:hover,#contact .contact-channel-card:focus-visible,#contact .contact-info-card:hover{transform:translateY(-4px);border-color:#2d6a4f40;box-shadow:0 24px 70px #2d6a4f1a}#contact .contact-channel-card:focus-visible{outline:3px solid rgba(82,183,136,.22);outline-offset:4px}#contact .contact-card-top{display:flex;align-items:center;justify-content:space-between;gap:1rem}#contact .contact-card-icon{width:44px;height:44px;border-radius:1rem;background:var(--mist);color:var(--sage);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}#contact .contact-card-icon svg{width:22px;height:22px;stroke:var(--sage)}#contact .contact-channel-name,#contact .contact-info-title{color:var(--ink);font-size:1rem;font-weight:800;line-height:1.3}#contact .contact-channel-value,#contact .contact-info-text{color:#0a0f1a9e;font-size:.94rem;line-height:1.65}#contact .contact-pill{width:fit-content;border-radius:999px;padding:.32rem .68rem;font-size:.72rem;font-weight:700;line-height:1}#contact .contact-pill.success{background:#52b78826;color:#1f6b4b}#contact .contact-pill.info{background:#488ed424;color:#2364a6}#contact .contact-pill.warning{background:#c9a84c2e;color:#8a6617}#contact .contact-info-card{display:grid;grid-template-columns:auto 1fr;gap:1rem;padding:1.35rem}#contact .contact-info-card .contact-card-icon{margin-top:.1rem}#contact .contact-info-text a{color:var(--sage);font-weight:700;text-decoration:none}#contact .contact-info-text a:hover,#contact .contact-info-text a:focus-visible{text-decoration:underline}@media (max-width: 900px){#contact{padding:5rem 1.5rem}#contact .contact-channel-grid,#contact .contact-info-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 560px){#contact{padding:4rem 1rem}#contact .contact-header{margin-bottom:2rem}#contact .contact-channel-grid,#contact .contact-info-grid,#contact .contact-info-card{grid-template-columns:1fr}}.floating-contact{position:fixed;right:max(clamp(1rem,2vw,1.8rem),env(safe-area-inset-right));bottom:max(clamp(1rem,2vw,1.8rem),env(safe-area-inset-bottom));z-index:999;display:flex;flex-direction:column;gap:clamp(.65rem,1.3vw,.85rem);align-items:center;max-width:calc(100vw - 2rem)}.floating-contact-btn{width:clamp(54px,4.4vw,60px);height:clamp(54px,4.4vw,60px);min-width:48px;min-height:48px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:var(--white);text-decoration:none;border:1px solid rgba(255,255,255,.34);box-shadow:0 18px 38px #0a0f1a38,0 4px 12px #0a0f1a1f;position:relative;overflow:hidden;isolation:isolate;transition:transform .25s ease,box-shadow .25s ease,filter .25s ease}.floating-contact-btn:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,#ffffff47,#fff0);opacity:.85;z-index:-1}.floating-contact-btn:after{content:"";position:absolute;top:-6px;right:-6px;bottom:-6px;left:-6px;border-radius:inherit;border:1px solid rgba(255,255,255,.38);opacity:0;transform:scale(.82);transition:opacity .25s ease,transform .25s ease}.floating-contact-btn svg{width:clamp(23px,2vw,26px);height:clamp(23px,2vw,26px);display:block;transition:transform .25s ease}.floating-contact-btn.whatsapp{background:linear-gradient(145deg,#30d76d,#16a85a 58%,#0f7b45)}.floating-contact-btn.whatsapp:after{top:-7px;right:-7px;bottom:-7px;left:-7px;border:2px solid rgba(48,215,109,.48);opacity:0;transform:scale(.88);animation:whatsappPulse 2.4s ease-out infinite}.floating-contact-btn.whatsapp svg{fill:currentColor}.floating-contact-btn.call{background:linear-gradient(145deg,var(--ink) 0%,var(--sage) 62%,#1e4d35 100%)}.floating-contact-btn.call svg{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.floating-contact-btn:hover,.floating-contact-btn:focus-visible{transform:translateY(-4px) scale(1.04);box-shadow:0 24px 48px #0a0f1a47,0 8px 18px #2d6a4f33;filter:saturate(1.08);outline:none}.floating-contact-btn:hover:after,.floating-contact-btn:focus-visible:after{opacity:1;transform:scale(1)}.floating-contact-btn.whatsapp:hover:after,.floating-contact-btn.whatsapp:focus-visible:after{animation-play-state:paused}.floating-contact-btn:hover svg,.floating-contact-btn:focus-visible svg{transform:scale(1.08)}.floating-contact-btn:focus-visible{box-shadow:0 0 0 4px #f7f4eff2,0 0 0 7px #2d6a4f8c,0 24px 48px #0a0f1a47}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media (max-width: 560px){.floating-contact{right:max(.85rem,env(safe-area-inset-right));bottom:max(.85rem,env(safe-area-inset-bottom));gap:.65rem}.floating-contact-btn{width:54px;height:54px}.floating-contact-btn svg{width:23px;height:23px}}@media (max-width: 420px){.floating-contact{right:max(.75rem,env(safe-area-inset-right));bottom:max(.75rem,env(safe-area-inset-bottom))}.floating-contact-btn{width:50px;height:50px;box-shadow:0 14px 28px #0a0f1a38,0 3px 10px #0a0f1a1f}.floating-contact-btn svg{width:22px;height:22px}}@media (max-height: 520px) and (orientation: landscape){.floating-contact{flex-direction:row;right:max(.85rem,env(safe-area-inset-right));bottom:max(.75rem,env(safe-area-inset-bottom))}.floating-contact-btn{width:48px;height:48px}.floating-contact-btn svg{width:21px;height:21px}}@media (hover: none),(pointer: coarse){.floating-contact-btn:hover{transform:none;filter:none}}@media (prefers-reduced-motion: reduce){.floating-contact-btn,.floating-contact-btn:after,.floating-contact-btn svg{transition:none;animation:none}}@keyframes whatsappPulse{0%{opacity:.72;transform:scale(.88)}70%{opacity:0;transform:scale(1.38)}to{opacity:0;transform:scale(1.38)}}@media (max-width: 900px){#services .services-grid{grid-template-columns:1fr 1fr}}@media (max-width: 640px){#services .services-grid{grid-template-columns:1fr}#services .service-card{min-height:0}}.skip-link{position:absolute;left:1rem;top:-4rem;z-index:999;padding:.7rem 1rem;border-radius:999px;background:var(--ink);color:var(--white);text-decoration:none;transition:top .2s ease}.skip-link:focus{top:1rem}.back-button{display:inline-flex;align-items:center;gap:.5rem;width:fit-content;margin-top:2rem;padding:.7rem 1rem;border:1px solid rgba(45,106,79,.16);border-radius:999px;background:#ffffffb8;color:var(--sage);box-shadow:0 10px 30px #2d6a4f14;font-size:.86rem;font-weight:800;text-decoration:none;cursor:pointer;transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}.back-button:hover,.back-button:focus-visible{transform:translateY(-2px);border-color:#2d6a4f52;box-shadow:0 16px 40px #2d6a4f24;outline:none}.back-button svg{width:18px;height:18px;flex-shrink:0}main.booking-container{width:min(1180px,calc(100% - 2rem));margin:0 auto}.booking-hero{display:grid;grid-template-columns:.9fr 1.1fr;gap:4rem;align-items:center;padding:5rem 0 3rem}.hero-kicker{margin-bottom:1rem;color:var(--sage);font-size:.76rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase}.booking-hero h1{max-width:640px;font-family:Playfair Display,serif;font-size:clamp(3rem,7vw,6rem);line-height:.98;letter-spacing:-.03em}.booking-hero h1 em{color:var(--sage);font-style:italic}.hero-copy{max-width:520px;margin-top:1.5rem;color:#0a0f1aa3;font-size:1.05rem;font-weight:300;line-height:1.75}.hero-badges{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:2rem}.hero-badge{display:inline-flex;align-items:center;gap:.45rem;padding:.58rem .9rem;border:1px solid rgba(45,106,79,.12);border-radius:999px;background:#ffffffa6;color:#0a0f1ab8;font-size:.78rem;font-weight:700;box-shadow:0 10px 30px #2d6a4f0f}.hero-badge:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--sage-light)}.hero-panel{position:relative;min-height:420px;overflow:hidden;border:1px solid rgba(255,255,255,.7);border-radius:2rem;box-shadow:0 24px 80px #0a0f1a14}.hero-panel:after{content:"";position:absolute;inset:auto 2rem 2rem 2rem;height:1px;background:#ffffff59}.hero-panel-content{position:absolute;inset:auto 0 0 0;padding:2rem;color:var(--white);z-index:2}.hero-panel-title{font-family:Playfair Display,serif;font-size:2rem;font-weight:700;line-height:1.1}.hero-panel-text{max-width:420px;margin-top:.8rem;color:#ffffffd1;line-height:1.7}.booking-shell{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:2rem;align-items:start;padding:2rem 0 5rem}.booking-card,.summary-card{border:1px solid rgba(10,15,26,.07);border-radius:2rem;background:#ffffffdb;box-shadow:0 24px 80px #0a0f1a14;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.booking-card{padding:2rem}.form-title{margin-bottom:1.5rem}.form-title h2{font-family:Playfair Display,serif;font-size:clamp(2rem,4vw,3rem);line-height:1.1}.form-title p{max-width:620px;margin-top:.65rem;color:#0a0f1a94;line-height:1.65}.booking-form{display:grid;gap:1.2rem}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem}.form-group{display:grid;gap:.5rem}.form-group.full{grid-column:1 / -1}label,legend{color:#0a0f1ab3;font-size:.75rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.service-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.service-option{display:flex;align-items:flex-start;gap:.65rem;padding:.9rem;border:1px solid rgba(10,15,26,.08);border-radius:1rem;background:#e8f0ebb3;cursor:pointer;transition:border-color .25s ease,background .25s ease,transform .25s ease}.service-option:hover,.service-option.selected{transform:translateY(-2px);border-color:#2d6a4f52;background:#fffffff2}.service-option input{width:18px;height:18px;margin-top:.12rem;accent-color:var(--sage);flex-shrink:0}.service-option span{color:#0a0f1ac7;font-size:.94rem;font-weight:600;line-height:1.35}.error-message{min-height:1.2rem;color:#a93226;font-size:.82rem;font-weight:700}.submit-row{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;padding-top:.3rem}.btn-submit{border:0;border-radius:999px;background:var(--sage);color:var(--white);cursor:pointer;font:inherit;font-size:1rem;font-weight:800;padding:1rem 2rem;transition:transform .25s ease,box-shadow .25s ease,background .25s ease}.btn-submit:hover,.btn-submit:focus-visible{background:#1f523b;box-shadow:0 16px 40px #2d6a4f3d;transform:translateY(-2px);outline:none}.form-note{color:#0a0f1a8a;font-size:.88rem;line-height:1.5}.summary-card{position:sticky;top:6rem;padding:1.5rem}.summary-card h2{font-family:Playfair Display,serif;font-size:1.7rem;line-height:1.1}.summary-empty,.summary-content{margin-top:1rem;color:#0a0f1a99;line-height:1.65}.summary-content{display:grid;gap:.8rem}.summary-item{padding-bottom:.8rem;border-bottom:1px solid rgba(10,15,26,.07)}.summary-label{display:block;margin-bottom:.2rem;color:var(--sage);font-size:.68rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.summary-value{color:var(--ink);font-weight:600;overflow-wrap:anywhere}@media (max-width: 980px){.booking-hero,.booking-shell{grid-template-columns:1fr}.booking-hero{gap:2rem;padding-top:3.5rem}.hero-panel{min-height:330px}.summary-card{position:static}}@media (max-width: 680px){main.booking-container{width:min(100% - 1rem,1180px)}.booking-hero{padding-top:2.5rem}.booking-hero h1{font-size:clamp(2.55rem,15vw,4rem)}.hero-panel{min-height:280px;border-radius:1.35rem}.hero-panel-content{padding:1.25rem}.booking-card,.summary-card{border-radius:1.35rem;padding:1.1rem}.form-grid,.service-options{grid-template-columns:1fr}.submit-row{align-items:stretch;flex-direction:column}.btn-submit{width:100%}}
