*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html,body{overflow-x:hidden;max-width:100%}
:root{--green:#2D6A2D;--green-dark:#1e4d1e;--green-light:#3d8c3d;--gold:#C8920A;--gold-light:#e5a80c;--gold-dim:rgba(200,146,10,0.12);--bg:#fffdf7;--cream:#1a1a0e;--muted:rgba(26,26,14,0.56);--glass:rgba(255,252,240,0.62);--glass-border:rgba(255,255,255,0.80);--glass-hover:rgba(255,252,240,0.82);--shadow-sm:0 4px 16px rgba(45,106,45,.10);--shadow-md:0 12px 40px rgba(45,106,45,.14);--shadow-lg:0 24px 72px rgba(45,106,45,.20);--font-display:'Fraunces',serif;--font-body:'Figtree',sans-serif;--radius:20px;--transition:.35s cubic-bezier(.25,.46,.45,.94)}
html{scroll-behavior:smooth}
body{font-family:var(--font-body);font-weight:300;line-height:1.6;color:var(--cream);cursor:none;min-height:100vh;background:radial-gradient(ellipse 80% 55% at 5% 0,rgba(200,146,10,.18) 0,transparent 55%),radial-gradient(ellipse 65% 50% at 95% 5%,rgba(45,106,45,.25) 0,transparent 52%),radial-gradient(ellipse 70% 60% at 0 60%,rgba(45,106,45,.18) 0,transparent 55%),radial-gradient(ellipse 80% 65% at 100% 85%,rgba(200,146,10,.12) 0,transparent 58%),radial-gradient(ellipse 100% 80% at 50% 50%,rgba(255,248,220,.70) 0,transparent 70%),linear-gradient(160deg,#fef9e7 0,#fffdf5 35%,#f8fde8 65%,#fef9e7 100%)}
body::after{content:'';position:fixed;inset:0;z-index:0;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 512 512' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.75' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.04'/%3E%3C/svg%3E");opacity:.22}
@media (hover:none) and (pointer:coarse){body{cursor:auto}*,*::before,*::after{cursor:auto!important}a,button,input,textarea,select,label,[role="button"],summary{cursor:pointer!important}input,textarea,select{cursor:text!important}#cursor-dot,#cursor-ring{display:none!important}}
.glow{position:fixed;border-radius:50%;pointer-events:none;z-index:0}
.glow-a{width:700px;height:700px;background:radial-gradient(circle,rgba(200,146,10,.20),transparent 65%);top:-180px;left:-150px;filter:blur(110px)}
.glow-b{width:600px;height:600px;background:radial-gradient(circle,rgba(45,106,45,.22),transparent 65%);bottom:0;right:-120px;filter:blur(100px)}
.glow-c{width:450px;height:450px;background:radial-gradient(circle,rgba(200,146,10,.12),transparent 65%);top:40%;left:30%;filter:blur(120px)}
#cursor-dot{position:fixed;top:0;left:0;pointer-events:none;z-index:9999;transform:translate(-50%,-50%) rotate(-30deg);font-size:1.4rem;line-height:1;transition:transform .25s cubic-bezier(.25,.46,.45,.94),font-size .25s cubic-bezier(.25,.46,.45,.94),filter .25s;filter:drop-shadow(0 2px 4px rgba(45,106,45,.35));user-select:none}
body.cursor-hover #cursor-dot{transform:translate(-50%,-50%) rotate(20deg) scale(1.35);filter:drop-shadow(0 3px 8px rgba(200,146,10,.50))}
#cursor-ring{display:none!important}
nav{position:fixed;top:0;left:0;right:0;z-index:200;display:flex;align-items:center;justify-content:space-between;padding:6px 52px;background:rgba(255,252,240,0.72);backdrop-filter:blur(28px) saturate(180%);-webkit-backdrop-filter:blur(28px) saturate(180%);border-bottom:1px solid rgba(255,255,255,0.85);box-shadow:0 4px 24px rgba(45,106,45,.07);transition:padding .4s ease}
.nav-links{display:flex;align-items:center;gap:28px;list-style:none;margin:0;padding:0}
.nav-links a{color:var(--muted);text-decoration:none;font-size:.85rem;letter-spacing:.02em;transition:color .25s;position:relative}
.nav-links a::after{content:'';position:absolute;bottom:-3px;left:0;right:0;height:2px;background:var(--gold);border-radius:2px;transform:scaleX(0);transform-origin:left;transition:transform .3s var(--transition)}
.nav-links a:hover,.nav-links a.active{color:var(--green-dark)}
.nav-links a:hover::after,.nav-links a.active::after{transform:scaleX(1)}
.nav-cta{background:var(--green);color:#fff;border:none;padding:10px 18px;border-radius:100px;font-family:var(--font-body);font-weight:600;font-size:.85rem;cursor:none;text-decoration:none;display:inline-flex;align-items:center;gap:7px;white-space:nowrap;transition:transform .2s,box-shadow .25s,background .2s}
.nav-cta:hover{transform:scale(1.04);box-shadow:0 6px 24px rgba(45,106,45,.35);background:var(--green-light)}

.nav-logo-leaf{font-size:1.4rem}



.mobile-menu{display:none;position:fixed;inset:0;z-index:500;background:rgba(254,249,231,.97);backdrop-filter:blur(24px);flex-direction:column;align-items:center;justify-content:center;gap:28px;overflow-y:auto;padding:80px 24px 40px}
.mobile-menu.open{display:flex}
.mobile-menu a{font-family:var(--font-display);font-size:2.2rem;font-weight:200;color:var(--green-dark);text-decoration:none;transition:color .25s}.mobile-menu a.btn-primary{font-family:var(--font-body);font-size:1rem;font-weight:700;color:#fff;background:var(--green);padding:14px 36px;border-radius:100px;width:auto;max-width:280px;display:inline-flex;align-items:center;justify-content:center;gap:8px;margin-top:8px;box-shadow:0 6px 24px rgba(45,106,45,.35);}
.mobile-menu a:hover{color:var(--gold)}
.mobile-close{position:absolute;top:20px;right:24px;background:none;border:none;color:var(--muted);font-size:1.8rem;cursor:none}
.glass-card{border:1px solid rgba(255,255,255,0.82);background:rgba(255,252,240,0.58);backdrop-filter:blur(18px) saturate(180%);-webkit-backdrop-filter:blur(18px) saturate(180%);border-radius:var(--radius);box-shadow:0 4px 24px rgba(45,106,45,.08),inset 0 1px 0 rgba(255,255,255,.9);transition:background var(--transition),transform var(--transition),box-shadow var(--transition)}

.btn-primary{background:var(--green);color:#fff;padding:13px 30px;border-radius:100px;font-weight:600;font-size:.95rem;text-decoration:none;display:inline-block;border:none;cursor:none;font-family:var(--font-body);transition:transform .2s,box-shadow .3s,background .2s}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 28px rgba(45,106,45,.35);background:var(--green-light)}
.btn-gold{background:var(--gold);color:#fff;padding:13px 30px;border-radius:100px;font-weight:600;font-size:.95rem;text-decoration:none;display:inline-block;border:none;cursor:none;font-family:var(--font-body);transition:transform .2s,box-shadow .3s}
.btn-gold:hover{transform:translateY(-2px);box-shadow:0 8px 28px rgba(200,146,10,.40)}
.btn-ghost{border:1.5px solid rgba(45,106,45,0.35);color:var(--green-dark);padding:13px 30px;border-radius:100px;background:rgba(255,252,240,.55);font-size:.95rem;text-decoration:none;backdrop-filter:blur(8px);display:inline-block;transition:background .25s,transform .2s,box-shadow .2s}
.btn-ghost:hover{background:rgba(255,252,240,.85);transform:translateY(-2px);box-shadow:var(--shadow-md)}
.btn-whatsapp{background:#25d366;color:#fff;padding:13px 30px;border-radius:100px;font-weight:600;font-size:.95rem;text-decoration:none;display:inline-flex;align-items:center;gap:8px;border:none;cursor:none;font-family:var(--font-body);transition:transform .2s,box-shadow .3s}
.btn-whatsapp:hover{transform:translateY(-2px);box-shadow:0 8px 28px rgba(37,211,102,.45)}



.section-label{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);font-weight:700;margin-bottom:14px;display:inline-flex;align-items:center;gap:8px}
.section-h2{font-family:var(--font-display);font-size:clamp(1.9rem,3.8vw,3rem);font-weight:200;letter-spacing:-.02em;line-height:1.1;color:var(--green-dark)}
.section-h2 em{font-style:italic;color:var(--gold)}
.section-desc{color:var(--muted);margin-top:12px;font-size:.95rem;line-height:1.7}
.page-hero{padding:150px 52px 70px;position:relative;z-index:1;max-width:1200px;margin:0 auto}
.page-h1{font-family:var(--font-display);font-size:clamp(2.6rem,6vw,5rem);font-weight:200;line-height:.95;letter-spacing:-.03em;color:var(--green-dark)}
.page-h1 em{font-style:italic;color:var(--gold)}
.page-sub{color:var(--muted);font-size:1.05rem;line-height:1.7;max-width:520px;margin-top:20px}
.tag{display:inline-block;background:rgba(200,146,10,.10);color:var(--gold);border:1px solid rgba(200,146,10,.28);backdrop-filter:blur(8px);font-size:.68rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:4px 14px;border-radius:100px}
.tag-green{background:rgba(45,106,45,.10);color:var(--green);border-color:rgba(45,106,45,.25)}
.reveal{opacity:0;transform:translateY(28px);transition:opacity .7s var(--transition),transform .7s var(--transition)}
.reveal.visible{opacity:1;transform:translateY(0)}
footer{position:relative;z-index:1;border-top:1px solid rgba(45,106,45,.25);background:rgba(20,50,20,0.72);backdrop-filter:blur(24px);padding:52px}
.footer-inner{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:44px;align-items:start}
.footer-logo-wrap{display:flex;align-items:center;gap:10px;margin-bottom:12px}
.footer-logo-leaf{font-size:1.6rem}
.footer-logo-text{font-family:var(--font-display);font-size:1.2rem;font-weight:600;color:#fff;line-height:1}
.footer-logo-sub{font-size:.58rem;color:var(--gold);letter-spacing:.08em;text-transform:uppercase;display:block;font-weight:700}
.footer-tagline{color:rgba(255,255,255,.60);font-size:.85rem;line-height:1.65;max-width:240px;margin-top:4px}
.footer-col h4{font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:#f5d675;font-weight:700;margin-bottom:14px}
.footer-col ul{list-style:none;display:flex;flex-direction:column;gap:9px}
.footer-col a{color:rgba(255,255,255,.58);text-decoration:none;font-size:.85rem;transition:color .25s}
.footer-col a:hover{color:#fff}
.footer-bottom{max-width:1200px;margin:28px auto 0;padding-top:16px;border-top:1px solid rgba(255,255,255,.12);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;font-size:.74rem}
/* WLM credit now lives inside footer-bottom */.wlm-credit{display:none!important}
.wlm-heart{display:inline-flex;align-items:center;gap:5px;font-size:.74rem;color:rgba(255,255,255,.72)}
.wlm-heart .heart-icon{color:#e05a5a;animation:heartbeat 1.4s ease-in-out infinite}
@keyframes heartbeat{0%,100%{transform:scale(1)}14%{transform:scale(1.25)}28%{transform:scale(1)}42%{transform:scale(1.18)}56%{transform:scale(1)}}
.wlm-logo-wrap{display:inline-flex;align-items:center;gap:7px;text-decoration:none;padding:3px 10px 3px 3px;border-radius:100px;border:1px solid rgba(200,146,10,.20);background:rgba(200,146,10,.06);transition:background .3s,transform .25s}
.wlm-logo-wrap:hover{background:rgba(200,146,10,.14);transform:translateY(-1px)}
.wlm-logo-img{width:24px;height:24px;border-radius:50%;object-fit:cover;border:1px solid rgba(200,146,10,.3)}
.wlm-name{font-weight:600;font-size:.70rem;letter-spacing:.04em;background:linear-gradient(135deg,#f0c040,#d4ac50,#f0c040);background-size:200% auto;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:goldShimmer 3s linear infinite}
.wlm-city{font-size:.58rem;color:rgba(200,146,10,.55);letter-spacing:.06em;text-transform:uppercase}
@keyframes goldShimmer{0%{background-position:0 center}100%{background-position:200% center}}
body.menu-open #back-to-top,body.menu-open #theme-toggle{display:none!important}#back-to-top{position:fixed;bottom:100px;right:22px;z-index:300;width:46px;height:46px;border-radius:50%;background:var(--green);color:#fff;border:none;font-size:1.1rem;display:flex;align-items:center;justify-content:center;cursor:none;box-shadow:0 4px 20px rgba(45,106,45,.30);transform:translateY(80px);opacity:0;pointer-events:none;transition:transform .4s var(--transition),opacity .4s var(--transition),box-shadow .3s}
#back-to-top.visible{transform:translateY(0);opacity:1;pointer-events:all}
#back-to-top:hover{box-shadow:0 8px 28px rgba(45,106,45,.45)}
#whatsapp-btn{position:fixed;bottom:30px;right:22px;z-index:300;width:56px;height:56px;border-radius:50%;background:#25d366;display:flex;align-items:center;justify-content:center;text-decoration:none;box-shadow:0 4px 20px rgba(37,211,102,.55);animation:waAppear .6s 2s both;transition:transform .3s,box-shadow .3s}
#whatsapp-btn:hover{transform:scale(1.12);box-shadow:0 8px 32px rgba(37,211,102,.6)}
.wa-tooltip{position:absolute;right:66px;top:50%;transform:translateY(-50%);background:#25d366;color:#fff;font-family:var(--font-body);font-size:.76rem;font-weight:600;padding:6px 14px;border-radius:100px;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .25s}
.wa-tooltip::after{content:'';position:absolute;right:-6px;top:50%;transform:translateY(-50%);border:6px solid transparent;border-left-color:#25d366;border-right:none}
#whatsapp-btn:hover .wa-tooltip{opacity:1}
@keyframes waAppear{from{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}
#theme-toggle{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;flex-shrink:0;background:rgba(45,106,45,.12);border:1.5px solid rgba(45,106,45,.25);color:var(--green-dark);font-size:.95rem;cursor:pointer;transition:transform .3s,background .3s;position:static}
#theme-toggle:hover{transform:rotate(20deg);background:rgba(45,106,45,.22)}
html.dark #theme-toggle{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.28);color:#fff}
#cookie-banner{position:fixed;bottom:0;left:0;right:0;z-index:400;background:rgba(254,249,231,.94);backdrop-filter:blur(24px);border-top:1px solid rgba(255,255,255,.75);padding:18px 52px;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;transform:translateY(100%);transition:transform .5s var(--transition)}
#cookie-banner.visible{transform:translateY(0)}
.cookie-text{font-size:.82rem;color:var(--muted);max-width:560px;line-height:1.55}
.cookie-text a{color:var(--green)}
.cookie-btns{display:flex;gap:10px;flex-shrink:0}
.cookie-accept{background:var(--green);color:#fff;border:none;padding:9px 22px;border-radius:100px;font-family:var(--font-body);font-weight:600;font-size:.82rem;cursor:none;transition:transform .2s}
.cookie-accept:hover{transform:scale(1.04)}
.cookie-decline{background:transparent;color:var(--muted);border:1px solid rgba(45,106,45,.25);padding:9px 18px;border-radius:100px;font-family:var(--font-body);font-size:.82rem;cursor:none;transition:color .2s}
.cookie-decline:hover{color:var(--green-dark)}
.page-transition-overlay{position:fixed;inset:0;z-index:8000;background:#fef9e7;pointer-events:none;opacity:0;transition:opacity .3s ease}
.page-transition-overlay.out{opacity:1}
#splash{position:fixed;inset:0;z-index:9000;pointer-events:none;background:linear-gradient(135deg,#fef9e7,#fffdf5,#f8fde8);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;transition:opacity .6s ease,visibility .6s ease}
#splash.hidden{opacity:0;visibility:hidden}
.splash-logo{font-family:var(--font-display);font-size:2.8rem;font-weight:600;color:var(--green-dark);animation:splashPop .7s cubic-bezier(.34,1.56,.64,1) forwards;opacity:0}
.splash-logo span{color:var(--gold)}
.splash-sub{font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);animation:splashFade .6s .4s forwards;opacity:0}
.splash-bar{width:120px;height:2px;background:rgba(200,146,10,.2);border-radius:2px;overflow:hidden;animation:splashFade .5s .5s forwards;opacity:0}
.splash-bar-fill{height:100%;background:var(--gold);animation:splashLoad 1.1s .5s ease forwards;width:0}
@keyframes splashPop{from{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}
@keyframes splashFade{from{opacity:0}to{opacity:1}}
@keyframes splashLoad{from{width:0}to{width:100%}}
html.dark{--green:#5cb85c;--green-dark:#7dd87d;--green-light:#4aa84a;--gold:#e5a80c;--gold-light:#f0c040;--cream:#f5f0e0;--muted:rgba(245,240,224,.52);--glass:rgba(30,40,20,.55);--glass-border:rgba(255,255,255,.10);--glass-hover:rgba(30,40,20,.75)}
html.dark body{background:linear-gradient(160deg,#0a1a0a,#111e0a,#0d180a,#0a1400)}
html.dark body::after{opacity:.35}
html.dark nav{background:rgba(10,26,10,.82);border-bottom-color:rgba(255,255,255,.08)}
html.dark .mobile-menu{background:rgba(10,20,10,.98)}
html.dark .mobile-menu a{color:var(--cream)}
html.dark .glass-card{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.10)}
html.dark footer{background:rgba(10,20,10,.60);border-top-color:rgba(255,255,255,.08)}
html.dark .wlm-credit{background:rgba(10,20,10,.50);border-top-color:rgba(255,255,255,.08)}
html.dark #splash{background:linear-gradient(135deg,#0a1a0a,#111e0a)}
html.dark .splash-logo{color:var(--cream)}
html.dark #cookie-banner{background:rgba(15,28,15,.96)}
html.dark .btn-ghost{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.15);color:var(--cream)}
html.dark .section-h2{color:var(--cream)}
html.dark .page-h1{color:var(--cream)}

.nav-hamburger{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:6px}
.nav-hamburger span{display:block;width:24px;height:2px;background:var(--green-dark);border-radius:2px;transition:transform .3s,opacity .3s}
.container{max-width:1200px;margin:0 auto;padding:0 52px}.section{padding:80px 0;position:relative;z-index:1}.divider{height:1px;background:rgba(255,255,255,0.65);margin:0 52px;position:relative;z-index:1;box-shadow:0 1px 0 rgba(45,106,45,.05)}@media (max-width:1100px){.nav-links{display:none}.nav-hamburger{display:flex}}
@media (max-width:900px){nav{padding:8px 16px}nav.scrolled{padding:6px 16px}.nav-cta{font-size:.78rem;padding:8px 14px;gap:5px}.page-hero{padding:120px 24px 60px}.container{padding:0 24px}.section{padding:60px 0}.divider{margin:0 24px}footer{padding:40px 24px}.footer-inner{grid-template-columns:1fr 1fr}.footer-bottom{flex-direction:column;gap:8px;text-align:center}.glass-card:hover{transform:none;box-shadow:0 4px 24px rgba(45,106,45,.08)}}
@media (max-width:768px){.page-h1{font-size:clamp(2.2rem,8vw,3.5rem)}.section-h2{font-size:clamp(1.5rem,5vw,2.2rem)}.cookie-btns{width:100%;justify-content:flex-end}.wlm-credit{padding:14px 20px}}
@media (max-width:600px){nav{padding:10px 14px}.nav-cta{font-size:.72rem;padding:7px 11px;gap:4px}.page-hero{padding:100px 16px 44px}.container{padding:0 16px}.section{padding:48px 0}.divider{margin:0 16px}footer{padding:32px 16px}.footer-inner{grid-template-columns:1fr;gap:28px}.btn-primary,.btn-gold,.btn-ghost,.btn-whatsapp{padding:12px 22px;font-size:.88rem}#back-to-top{bottom:96px;right:14px;width:42px;height:42px}#whatsapp-btn{bottom:20px;right:14px;width:50px;height:50px;font-size:1.4rem}#cookie-banner{padding:16px}.wa-tooltip{display:none}}
@media (max-width:400px){nav{padding:10px 12px}.nav-cta{padding:8px 10px;font-size:0;gap:0}.nav-cta svg{width:18px;height:18px}.container{padding:0 14px}.page-hero{padding:90px 14px 40px}.page-h1{font-size:clamp(1.9rem,10vw,2.8rem)}.section-h2{font-size:clamp(1.35rem,7vw,1.7rem)}footer{padding:24px 14px}#back-to-top{bottom:90px;right:10px}#whatsapp-btn{bottom:16px;right:10px}}
input,select,textarea{font-size:16px!important}
@media (min-width:600px){input,select,textarea{font-size:.92rem!important}}
.nav-logo{display:flex;align-items:center;gap:12px;text-decoration:none;flex-shrink:0}
.nav-logo-img{width:44px;height:44px;object-fit:contain;filter:drop-shadow(0 1px 3px rgba(45,106,45,.35)) drop-shadow(0 0 8px rgba(45,106,45,.20));transition:filter .3s,transform .3s}
.nav-logo:hover .nav-logo-img{filter:drop-shadow(0 2px 6px rgba(45,106,45,.50)) drop-shadow(0 0 12px rgba(200,146,10,.30));transform:scale(1.05)}
nav .nav-logo-img{filter:brightness(0) saturate(100%) invert(28%) sepia(45%) saturate(700%) hue-rotate(85deg) brightness(0.75) drop-shadow(0 1px 2px rgba(45,106,45,.20))}
nav:hover .nav-logo-img,nav.scrolled .nav-logo-img{filter:brightness(0) saturate(100%) invert(28%) sepia(45%) saturate(700%) hue-rotate(85deg) brightness(0.75) drop-shadow(0 2px 4px rgba(45,106,45,.30))}
.nav-logo-text-wrap{line-height:1;display:flex;flex-direction:column;gap:2px}.nav-logo-text{font-family:var(--font-display);font-size:1.25rem;font-weight:600;letter-spacing:-.02em;color:var(--green-dark);line-height:1;white-space:nowrap}.nav-logo-sub{font-size:.60rem;color:var(--gold);letter-spacing:.07em;text-transform:uppercase;font-family:var(--font-body);font-weight:700;white-space:nowrap;line-height:1}
.footer-logo-img{width:80px;height:80px;object-fit:contain;filter:brightness(0) invert(1) opacity(0.88);flex-shrink:0}
html.dark nav .nav-logo-img,html.dark nav:hover .nav-logo-img{filter:brightness(0) invert(1) drop-shadow(0 1px 4px rgba(200,146,10,.40))}
html.dark .footer-logo-img{filter:brightness(0) invert(1) opacity(0.85)}
.splash-logo-img{width:100px;height:100px;object-fit:contain;filter:brightness(0) saturate(100%) invert(28%) sepia(45%) saturate(700%) hue-rotate(85deg) brightness(0.75);animation:splashPop .7s cubic-bezier(.34,1.56,.64,1) forwards;opacity:0}
html.dark .splash-logo-img{filter:brightness(0) invert(1)}
.mobile-menu .nav-logo-img{filter:brightness(0) saturate(100%) invert(28%) sepia(45%) saturate(700%) hue-rotate(85deg) brightness(0.75);width:64px;height:64px}
@media (max-width:600px){.nav-logo-img{width:36px;height:36px}.nav-logo-text{font-size:1.05rem}.nav-logo-sub{font-size:.55rem}.footer-logo-img{width:64px;height:64px}}
@media (max-width:400px){.nav-logo-img{width:32px;height:32px}.nav-logo-text{font-size:.95rem}.nav-logo-sub{font-size:.50rem}}
footer .footer-inner{grid-template-columns:1.6fr 1fr 1.1fr;gap:48px}

.footer-brand-col .footer-logo-wrap{margin-bottom:12px}
.footer-socials{display:flex;gap:8px;margin-top:18px;flex-wrap:wrap}
.footer-social-btn{display:inline-flex;align-items:center;gap:7px;padding:8px 14px;border-radius:100px;text-decoration:none;font-family:var(--font-body);font-size:.78rem;font-weight:600;border:1.5px solid rgba(255,255,255,.18);background:rgba(255,255,255,.08);color:rgba(255,255,255,.82);transition:background .25s,border-color .25s,transform .2s}
.footer-social-btn:hover{background:rgba(255,255,255,.18);border-color:rgba(255,255,255,.40);transform:translateY(-2px)}
.footer-social-wa{border-color:rgba(37,211,102,.60);background:#25d366;color:#fff}
.footer-social-wa:hover{background:#1db954;border-color:rgba(37,211,102,.80);transform:translateY(-2px)}
.fsb-icon{font-size:1rem;flex-shrink:0}
.fsb-label{letter-spacing:.02em}
footer .footer-col ul li{color:rgba(255,255,255,.55);font-size:.83rem;line-height:1.55;display:flex;align-items:flex-start;gap:6px}
.footer-contact-icon{flex-shrink:0;font-size:.95rem}
footer .footer-bottom{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px}
.footer-copyright{font-size:.74rem;color:rgba(255,255,255,.45)}
.footer-bottom-right{display:flex;align-items:center;gap:8px;font-size:.74rem;color:rgba(255,255,255,.45)}
.footer-bottom-dot{opacity:.4}
@media (max-width:900px){footer .footer-inner{grid-template-columns:1fr 1fr;gap:32px}}
@media (max-width:600px){footer .footer-inner{grid-template-columns:1fr;gap:28px}.footer-bottom-wlm{display:none}.footer-socials{gap:6px}.footer-social-btn{padding:7px 12px;font-size:.74rem}.footer-bottom{flex-direction:column;align-items:flex-start;gap:6px}.footer-bottom-right{flex-wrap:wrap}}
@media (max-width:400px){.footer-socials{flex-direction:column;align-items:flex-start}}
.cta-band-section{background:var(--green-dark);position:relative;overflow:hidden;z-index:1;padding:80px 52px;text-align:center}
.cta-band-section::before{content:'';position:absolute;top:-120px;left:50%;transform:translateX(-50%);width:700px;height:700px;background:radial-gradient(circle,rgba(200,146,10,.20) 0,transparent 60%);border-radius:50%;pointer-events:none}
.cta-band-section::after{content:'🌾';position:absolute;right:8%;top:50%;transform:translateY(-50%);font-size:9rem;opacity:.06;pointer-events:none}
.cta-band-inner{position:relative;z-index:1;max-width:700px;margin:0 auto}
.cta-band-h2{font-family:var(--font-display);font-size:clamp(2rem,4vw,3rem);font-weight:200;color:#ffffff;letter-spacing:-.02em;line-height:1.1}
.cta-band-h2 em{font-style:italic;color:#f5d675}
.cta-band-sub{color:rgba(255,255,255,.68);font-size:1rem;line-height:1.65;margin:16px auto 0;max-width:420px}
.cta-band-actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-top:36px}
.cta-btn-primary{display:inline-flex;align-items:center;gap:8px;background:#ffffff;color:var(--green-dark);padding:15px 36px;border-radius:100px;font-family:var(--font-body);font-weight:700;font-size:1rem;text-decoration:none;cursor:none;box-shadow:0 6px 24px rgba(0,0,0,.25);transition:transform .2s,box-shadow .3s,background .2s}
.cta-btn-primary:hover{transform:translateY(-3px);box-shadow:0 12px 36px rgba(0,0,0,.35);background:#f5f5f0}
.cta-btn-wa{display:inline-flex;align-items:center;gap:10px;background:#25d366;color:#ffffff;padding:15px 36px;border-radius:100px;font-family:var(--font-body);font-weight:700;font-size:1rem;text-decoration:none;cursor:none;box-shadow:0 6px 24px rgba(37,211,102,.40);transition:transform .2s,box-shadow .3s}
.cta-btn-wa:hover{transform:translateY(-3px);box-shadow:0 12px 36px rgba(37,211,102,.55)}
@media(hover:none)and(pointer:coarse){.cta-btn-primary,.cta-btn-wa{cursor:pointer}}
@media(max-width:900px){.cta-band-section{padding:60px 24px}.cta-band-section::after{display:none}}
@media(max-width:600px){.cta-band-section{padding:48px 16px}.cta-band-actions{flex-direction:column;align-items:center}.cta-btn-primary,.cta-btn-wa{width:100%;max-width:300px;justify-content:center}}
/* ── Universal card hover lift consistency ── */.activity-card:hover,.t6-card:hover,.school-card:hover,.sugg-card:hover,.video-card:hover,.cs-photo:hover,.glance-row:hover{transform:translateY(-4px)!important;transition:transform .28s ease,box-shadow .28s ease}
@media print{*,*::before,*::after{background:#fff!important;color:#111!important;box-shadow:none!important;text-shadow:none!important}body{background:#fff!important;cursor:auto!important}nav,.mobile-menu,#whatsapp-btn,#back-to-top,#theme-toggle,#cookie-banner,#cursor-dot,#cursor-ring,.glow,.hero-scroll,.cta-band-section,.wlm-credit,footer .footer-socials,.nav-cta,.nav-hamburger,.btn-whatsapp,.cta-btn-primary,.cta-btn-wa,.hero-arrow,.hero-dots,.hero-progress{display:none!important}.container{max-width:100%!important;padding:0!important}.divider{display:none!important}.section-h2,.page-h1,.hero-h1{color:#1a3a0a!important}.section-h2 em,.page-h1 em,.hero-h1 em{color:#8a6010!important}.section-label{color:#8a6010!important}.section-desc,.muted{color:#555!important}.glass-card,.activity-card,.why-row,.testi-card,.t6-card{border:0.5pt solid #ccc!important;background:#fff!important}.stats-strip .stat-item{background:#1e4d1e!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}.stat-num,.stat-label{color:#fff!important}footer{padding:12pt!important}footer .footer-inner{grid-template-columns:1fr 1fr!important}.section{page-break-inside:avoid}h1,h2,h3{page-break-after:avoid}img{max-width:100%!important;page-break-inside:avoid}a[href^="http"]::after{content:" (" attr(href) ")";font-size:8pt;color:#666!important}a[href^="tel"]::after,a[href^="mailto"]::after{content:""}@page{margin:1.5cm;size:A4}}
/* ── Focus-visible styles for keyboard navigation ── */
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid var(--green);outline-offset:3px;border-radius:4px}
.cookie-accept:focus-visible,.cookie-decline:focus-visible{outline:2px solid var(--green);outline-offset:2px}
.nav-cta:focus-visible,.btn-primary:focus-visible,.btn-gold:focus-visible,.btn-ghost:focus-visible,.btn-whatsapp:focus-visible{outline:2px solid var(--gold);outline-offset:3px}

/* ── Reduced motion — respect user OS preference ── */
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:0.01ms!important;animation-iteration-count:1!important;transition-duration:0.01ms!important}
  html{scroll-behavior:auto}
  .reveal{opacity:1;transform:none}
  .hero-carousel.ready .hero-slide{transition:none}
  #splash{transition:none}
  .page-transition-overlay{transition:none}
}

/* ── Skip-to-content link (keyboard a11y) ── */
.skip-link{position:absolute;top:-100px;left:16px;z-index:9999;background:var(--green);color:#fff;padding:10px 20px;border-radius:0 0 8px 8px;font-family:var(--font-body);font-weight:600;font-size:.9rem;text-decoration:none;transition:top .2s}
.skip-link:focus{top:0}

/* ── Inline-style hover buttons → CSS classes ── */
.btn-maps{display:inline-flex;align-items:center;gap:8px;margin-top:20px;background:var(--green);color:#fff;padding:11px 22px;border-radius:100px;font-family:var(--font-body);font-weight:600;font-size:.86rem;text-decoration:none;transition:transform .2s,box-shadow .3s}
.btn-maps:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(45,106,45,.35)}
.btn-wa-inline{display:inline-flex;align-items:center;gap:10px;background:#25d366;color:#fff;padding:13px 26px;border-radius:100px;font-family:var(--font-body);font-weight:700;font-size:.9rem;text-decoration:none;box-shadow:0 6px 24px rgba(37,211,102,.40);transition:transform .25s,box-shadow .3s}
.btn-wa-inline:hover{transform:translateY(-2px);box-shadow:0 8px 32px rgba(37,211,102,.55)}
.btn-instagram{display:inline-flex;align-items:center;gap:10px;padding:13px 26px;border-radius:100px;background:linear-gradient(135deg,#f09433,#e6683c,#dc2743,#cc2366,#bc1888);color:#fff;font-family:var(--font-body);font-weight:700;font-size:.9rem;text-decoration:none;box-shadow:0 6px 24px rgba(220,39,67,.35);transition:transform .25s,box-shadow .3s}
.btn-instagram:hover{transform:translateY(-2px);box-shadow:0 12px 36px rgba(220,39,67,.50)}
