.scroll-progress{z-index:100;pointer-events:none;background:0 0;height:3px;position:fixed;top:0;left:0;right:0}.scroll-progress__bar{background:var(--gradient-gold);border-radius:0 2px 2px 0;min-width:0;height:100%;transition:width 80ms linear;box-shadow:0 0 8px #c8a95180}@media (prefers-reduced-motion:reduce){.scroll-progress__bar{transition:none}}
.site-header{z-index:1000;-webkit-backdrop-filter:blur(12px)saturate(140%);border-bottom:1px solid var(--color-border);width:100%;transition:box-shadow var(--transition-base), background-color var(--transition-base), border-color var(--transition-base);background-color:#fff9f5d1;position:sticky;top:0}.site-header.is-scrolled{background-color:#fff9f5f2;border-bottom-color:#7a1f3d2e;box-shadow:0 6px 24px #7a1f3d1a}.navbar-container{justify-content:space-between;align-items:center;gap:1.5rem;min-height:76px;padding-top:.65rem;padding-bottom:.65rem;display:flex}.brand{transition:transform var(--transition-fast);border-radius:12px;align-items:center;gap:.75rem;padding:.25rem;text-decoration:none;display:inline-flex}.brand:hover{transform:translateY(-1px)}.brand-mark{background:var(--gradient-primary);width:44px;height:44px;color:var(--color-accent-light);font-family:var(--font-display);font-weight:700;font-size:var(--text-h4);letter-spacing:.02em;box-shadow:var(--shadow-button);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex;position:relative;overflow:hidden}.brand-mark:after{content:"";pointer-events:none;border:1px solid #c8a9518c;border-radius:9px;position:absolute;inset:3px}.brand-text{flex-direction:column;line-height:1.05;display:flex}.brand-name{font-family:var(--font-display);font-weight:600;font-size:var(--text-body-large);color:var(--color-primary);letter-spacing:.01em}.brand-tagline{font-family:var(--font-body);letter-spacing:.08em;opacity:.7;text-transform:uppercase;color:var(--color-accent-dark);margin-top:.2rem;font-size:.6rem;font-weight:600}.nav-desktop{align-items:center;display:flex}.nav-list{align-items:center;gap:.35rem;display:flex}.nav-link{font-family:var(--font-body);font-size:var(--text-body);color:var(--color-primary);letter-spacing:.01em;white-space:nowrap;transition:color var(--transition-fast), background-color var(--transition-fast);border-radius:8px;align-items:center;padding:.55rem .95rem;font-weight:500;text-decoration:none;display:inline-flex;position:relative}.nav-link:after{content:"";background:var(--gradient-gold);width:0;height:2px;transition:width var(--transition-base);border-radius:2px;position:absolute;bottom:.3rem;left:.95rem;right:auto}.nav-link:hover,.nav-link:focus-visible{color:var(--color-primary-dark)}.nav-link:hover:after,.nav-link:focus-visible:after{width:calc(100% - 1.9rem)}.nav-actions{align-items:center;gap:.75rem;display:flex}.nav-cta{font-size:var(--text-small);letter-spacing:.03em;text-transform:uppercase;border-radius:var(--button-radius);padding:.7rem 1.5rem;font-weight:700}.nav-cta-icon{flex-shrink:0}.nav-toggle{width:46px;height:46px;color:var(--color-primary);border:1px solid var(--color-border);transition:background var(--transition-fast), color var(--transition-fast), transform var(--transition-fast);background:#7a1f3d0d;border-radius:12px;justify-content:center;align-items:center;display:none}.nav-toggle:hover{color:var(--color-primary-dark);background:#7a1f3d1a;transform:translateY(-1px)}.drawer-overlay{z-index:1100;background:var(--color-overlay);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);opacity:0;visibility:hidden;transition:opacity var(--transition-base), visibility var(--transition-base);position:fixed;inset:0}.drawer-overlay.is-open{opacity:1;visibility:visible}.mobile-drawer{z-index:1200;background:var(--color-surface);border-left:1px solid var(--color-border);flex-direction:column;width:min(86vw,380px);height:100dvh;transition:transform .42s cubic-bezier(.22,1,.36,1);display:flex;position:fixed;top:0;right:0;overflow-y:auto;transform:translate(105%);box-shadow:-16px 0 48px #2d0a1a40}.mobile-drawer.is-open{transform:translate(0)}.drawer-header{border-bottom:1px solid var(--color-border);background:linear-gradient(#7a1f3d0a 0%,#0000 100%);justify-content:space-between;align-items:center;gap:1rem;padding:1.1rem 1.25rem;display:flex}.brand--drawer{padding:0}.brand--drawer .brand-mark{width:38px;height:38px;font-size:var(--text-body-large)}.brand--drawer .brand-name{font-size:var(--text-body)}.brand--drawer .brand-tagline{font-size:.6rem}.drawer-close{width:44px;height:44px;color:var(--color-primary);border:1px solid var(--color-border);transition:background var(--transition-fast), color var(--transition-fast), transform var(--transition-fast);background:#7a1f3d0f;border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.drawer-close:hover{background:var(--color-primary);color:var(--color-white);transform:rotate(90deg)}.drawer-nav{flex:auto;padding:1.25rem .5rem}.drawer-list{flex-direction:column;gap:.15rem;display:flex}.drawer-link{font-family:var(--font-body);font-size:var(--text-body-large);color:var(--color-primary);transition:background var(--transition-fast), color var(--transition-fast), padding-left var(--transition-fast);opacity:0;border-radius:14px;justify-content:space-between;align-items:center;padding:1rem 1.25rem;font-weight:500;text-decoration:none;display:flex;position:relative;overflow:hidden;transform:translate(20px)}.mobile-drawer.is-open .drawer-link{animation:.5s cubic-bezier(.22,1,.36,1) forwards drawerItemIn;animation-delay:var(--drawer-item-delay,0s)}@keyframes drawerItemIn{to{opacity:1;transform:translate(0)}}.drawer-link:hover,.drawer-link:focus-visible{color:var(--color-primary-dark);background:linear-gradient(90deg,#7a1f3d14 0%,#c8a95114 100%);padding-left:1.5rem}.drawer-link-bar{background:var(--gradient-gold);opacity:0;width:28px;height:2px;transition:opacity var(--transition-base), transform var(--transition-base);border-radius:2px;transform:translate(8px)}.drawer-link:hover .drawer-link-bar,.drawer-link:focus-visible .drawer-link-bar{opacity:1;transform:translate(0)}.drawer-footer{border-top:1px solid var(--color-border);background:linear-gradient(#0000 0%,#7a1f3d0a 100%);flex-direction:column;align-items:stretch;gap:.85rem;padding:1.25rem 1.5rem 1.75rem;display:flex}.drawer-cta{width:100%;font-size:var(--text-body);text-transform:uppercase;letter-spacing:.03em;padding:.95rem 1.5rem;font-weight:700}.drawer-contact{font-family:var(--font-body);font-size:var(--text-body);color:var(--color-primary);justify-content:center;align-items:center;gap:.5rem;font-weight:600;display:flex}.drawer-contact a{color:inherit;transition:color var(--transition-fast);text-decoration:none}.drawer-contact a:hover{color:var(--color-accent-dark)}.drawer-meta{text-align:center;font-size:var(--text-small);letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-light)}@media (max-width:1024px){.nav-list{gap:.15rem}.nav-link{font-size:var(--text-small);padding:.5rem .7rem}.nav-link:after{left:.7rem}.nav-link:hover:after,.nav-link:focus-visible:after{width:calc(100% - 1.4rem)}.nav-cta{font-size:var(--text-small);padding:.65rem 1.25rem}.navbar-container{gap:1rem}}@media (max-width:980px){.nav-desktop,.nav-actions{display:none}.nav-toggle{display:inline-flex}.navbar-container{min-height:68px}.brand-mark{width:40px;height:40px;font-size:var(--text-body-large)}.brand-name{font-size:var(--text-body)}.brand-tagline{letter-spacing:.08em;font-size:.6rem}}@media (max-width:480px){.navbar-container{gap:.5rem;min-height:64px}.brand-mark{width:38px;height:38px;font-size:var(--text-body-large)}.brand-name{font-size:var(--text-body)}.brand-tagline{letter-spacing:.08em;font-size:.6rem}.mobile-drawer{width:92vw}.drawer-link{font-size:var(--text-body);padding:.9rem 1.1rem}}@media (max-width:768px){.site-header{-webkit-backdrop-filter:none;backdrop-filter:none;background-color:#fff9f5}.site-header.is-scrolled{background-color:#fff9f5;box-shadow:0 2px 12px #7a1f3d1a}}@media (max-width:480px){.brand--drawer .brand-tagline{display:none}}@media (prefers-reduced-motion:reduce){.mobile-drawer,.nav-link:after,.drawer-link,.drawer-link-bar,.drawer-close,.brand,.nav-toggle{transition-duration:.01ms!important}.mobile-drawer.is-open .drawer-link{opacity:1!important;animation:none!important;transform:none!important}}
.hero{isolation:isolate;background:var(--color-dark);min-height:100svh;color:var(--color-white);align-items:center;padding-top:clamp(5.5rem,10vh,8rem);padding-bottom:clamp(4rem,7vh,6rem);display:flex;position:relative;overflow:hidden}.hero__bg-image{z-index:0;background-position:50%;background-repeat:no-repeat;background-size:cover;position:absolute;inset:0}.hero__overlay{z-index:1;background:var(--gradient-hero);opacity:.65;mix-blend-mode:multiply;position:absolute;inset:0}.hero__overlay-bottom{z-index:2;background:linear-gradient(to top, var(--color-dark) 0%, #2d0a1abf 35%, #2d0a1a40 70%, transparent 100%);pointer-events:none;height:45%;position:absolute;bottom:0;left:0;right:0}.hero__particles{z-index:3;pointer-events:none;position:absolute;inset:0;overflow:hidden}.particle{background:var(--color-accent-light);opacity:.75;animation:float var(--p-duration,7s) ease-in-out infinite;animation-delay:var(--p-delay,0s);border-radius:50%;display:block;position:absolute;box-shadow:0 0 6px #d4bc6ae6,0 0 14px #d4bc6a80,0 0 22px #d4bc6a40}.particle:first-child{--p-duration:7s;--p-delay:0s;width:4px;height:4px;top:18%;left:8%}.particle:nth-child(2){--p-duration:9s;--p-delay:1.2s;width:3px;height:3px;top:32%;left:22%}.particle:nth-child(3){--p-duration:8s;--p-delay:.6s;width:5px;height:5px;top:62%;left:13%}.particle:nth-child(4){--p-duration:6s;--p-delay:2s;width:2px;height:2px;top:78%;left:30%}.particle:nth-child(5){--p-duration:7.5s;--p-delay:.4s;width:4px;height:4px;top:22%;left:88%}.particle:nth-child(6){--p-duration:8.5s;--p-delay:1.8s;width:3px;height:3px;top:50%;left:92%}.particle:nth-child(7){--p-duration:9.5s;--p-delay:.9s;width:5px;height:5px;top:72%;left:80%}.particle:nth-child(8){--p-duration:10s;--p-delay:2.4s;width:2px;height:2px;top:12%;left:52%}.hero__container{z-index:5;grid-template-columns:1fr;align-items:center;gap:clamp(2.5rem,4vw,3.5rem);width:100%;display:grid;position:relative}@media (min-width:900px){.hero__container{grid-template-columns:55fr 45fr;gap:clamp(2.5rem,5vw,4.5rem)}}.hero__content{text-align:center;max-width:640px;margin-left:auto;margin-right:auto}@media (min-width:900px){.hero__content{text-align:left;max-width:none;margin-left:0;margin-right:0}}.hero__trust{flex-wrap:wrap;justify-content:center;gap:.55rem;margin-bottom:1.5rem;animation:.7s 50ms both fadeInUp;display:flex}@media (min-width:900px){.hero__trust{justify-content:flex-start}}.hero__pill{font-family:var(--font-body);font-size:var(--text-small);letter-spacing:.02em;color:var(--color-accent-light);-webkit-backdrop-filter:blur(6px);transition:background var(--transition-fast), border-color var(--transition-fast), transform var(--transition-fast);background:#c8a9511f;border:1px solid #d4bc6a59;border-radius:50px;align-items:center;gap:.4rem;padding:.42rem .85rem;font-weight:500;display:inline-flex}.hero__pill:hover{background:#c8a95138;border-color:#d4bc6aa6;transform:translateY(-2px)}.hero__pill svg{width:14px;height:14px;color:var(--color-accent);flex-shrink:0}.hero__eyebrow{font-family:var(--font-body);font-size:var(--text-small);letter-spacing:.22em;text-transform:uppercase;color:var(--color-accent-light);align-items:center;gap:.7rem;margin-bottom:1.1rem;font-weight:600;animation:.7s .18s both fadeInUp;display:inline-flex}.hero__eyebrow:before,.hero__eyebrow:after{content:"";background:var(--gradient-gold);border-radius:2px;flex-shrink:0;width:1.5rem;height:1.5px}@media (max-width:899px){.hero__eyebrow:before,.hero__eyebrow:after{display:none}}.hero__title{font-family:var(--font-display);font-size:var(--text-display);letter-spacing:-.01em;color:var(--color-white);margin-bottom:1.3rem;font-weight:700;line-height:1.05;animation:.8s .28s both fadeInUp}.hero__subtitle{font-family:var(--font-body);font-size:var(--text-body-large);color:#ffffffd9;max-width:600px;margin:0 auto 2.2rem;line-height:1.65;animation:.8s .38s both fadeInUp}@media (min-width:900px){.hero__subtitle{margin-left:0;margin-right:0}}.hero__cta{flex-wrap:wrap;justify-content:center;gap:1rem;animation:.8s .48s both fadeInUp;display:flex}@media (min-width:900px){.hero__cta{justify-content:flex-start}}.hero__cta .btn{font-size:var(--text-body);padding:1rem 2rem}.hero__cta .btn svg{width:18px;height:18px}.hero__cta-ghost{border:1.5px solid var(--color-accent);color:var(--color-accent);background:0 0;padding:.8rem 1.6rem;font-weight:400}.hero__cta-ghost:hover{border-color:var(--color-white);color:var(--color-white);background:#ffffff1a;transform:translateY(-3px);box-shadow:0 8px 24px #0000004d}.hero__visual{display:none}@media (min-width:900px){.hero__visual{justify-content:center;align-items:center;animation:1s .35s both fadeInRight;display:flex}}.hero__blob{aspect-ratio:1;background-position:top;background-repeat:no-repeat;background-size:cover;border:2px solid #d4bc6a80;border-radius:63% 37% 54% 46%/55% 48% 52% 45%;width:clamp(280px,32vw,420px);animation:14s ease-in-out infinite blobMorph,6s ease-in-out infinite float;position:relative;overflow:hidden;box-shadow:0 0 60px #c8a95159,0 20px 50px #00000073,inset 0 0 40px #d4bc6a26}.hero__blob:before{content:"";border-radius:inherit;z-index:-1;pointer-events:none;border:1px solid #d4bc6a4d;position:absolute;inset:-14px}.hero__blob:after{content:"";border-radius:inherit;z-index:-1;pointer-events:none;border:1px dashed #d4bc6a38;animation:32s linear infinite spinSlow;position:absolute;inset:-30px}@keyframes blobMorph{0%,to{border-radius:63% 37% 54% 46%/55% 48% 52% 45%}33%{border-radius:47% 53% 38% 62%/62% 55% 45% 38%}66%{border-radius:58% 42% 62% 38%/41% 58% 42% 59%}}@keyframes spinSlow{to{transform:rotate(360deg)}}.hero__blob-icon{color:var(--color-accent-light);opacity:.92;filter:drop-shadow(0 0 14px #d4bc6ab3);animation:5s ease-in-out infinite float}.hero__scroll{z-index:6;color:#ffffffb3;font-family:var(--font-body);font-size:var(--text-caption);letter-spacing:.2em;text-transform:uppercase;transition:color var(--transition-fast);flex-direction:column;align-items:center;gap:.45rem;font-weight:500;animation:.8s .7s both fadeInUp;display:inline-flex;position:absolute;bottom:1.4rem;left:50%;transform:translate(-50%)}.hero__scroll:hover{color:var(--color-accent-light)}.hero__scroll:hover .hero__scroll-icon{border-color:var(--color-accent-light);background:#d4bc6a1f}.hero__scroll-icon{width:28px;height:28px;transition:background var(--transition-fast), border-color var(--transition-fast);background:#d4bc6a0f;border:1.5px solid #d4bc6a8c;border-radius:50%;justify-content:center;align-items:center;animation:2s ease-in-out infinite scrollBounce;display:flex}@keyframes scrollBounce{0%,to{transform:translateY(0)}50%{transform:translateY(7px)}}@media (max-width:480px){.hero__title{font-size:var(--text-h2)}.hero__cta{flex-direction:column;align-items:stretch}.hero__cta .btn{width:100%}}@media (max-width:768px){.hero__trust{grid-template-columns:1fr 1fr;justify-items:center;gap:.55rem;display:grid}.hero__pill{justify-content:center;width:100%}}@media (prefers-reduced-motion:reduce){.particle,.hero__blob,.hero__blob:after,.hero__blob-icon,.hero__scroll-icon{animation:none!important}.hero__trust,.hero__eyebrow,.hero__title,.hero__subtitle,.hero__cta,.hero__visual,.hero__scroll{animation-duration:.01ms!important;animation-delay:0s!important}}
.aurora-container{width:100%;height:100%;position:absolute;inset:0}.aurora-container canvas{display:block;width:100%!important;height:100%!important}
.animated-gradient-text{display:inline;position:relative}.gradient-overlay{border-radius:inherit;z-index:0;pointer-events:none;background-size:300% 100%;animation:linear infinite alternate gradient-text-shift;position:absolute;inset:0}@keyframes gradient-text-shift{0%{background-position:0%}to{background-position:100%}}.text-content{z-index:2;-webkit-text-fill-color:transparent;color:#0000;background-size:300% 100%;-webkit-background-clip:text;background-clip:text;animation:linear infinite alternate gradient-text-shift;display:inline;position:relative}
.about{background-color:var(--color-surface);position:relative;overflow:hidden}.about__bg-glow{pointer-events:none;z-index:0;background:radial-gradient(circle,#c8a9511f 0%,#c8a95100 65%);width:55vw;max-width:720px;height:55vw;max-height:720px;position:absolute;top:-20%;right:-10%}.about .container{z-index:1;position:relative}.about__grid{grid-template-columns:1fr;align-items:center;gap:clamp(2.5rem,5vw,4.5rem);display:grid}@media (min-width:900px){.about__grid{grid-template-columns:.95fr 1.05fr;gap:clamp(3rem,6vw,5.5rem)}}.about__media{aspect-ratio:4/5;border:2px solid var(--color-primary);background:var(--color-card-bg);width:100%;max-width:460px;box-shadow:0 0 0 1px #c8a95140, var(--shadow-gold), var(--shadow-card);isolation:isolate;border-radius:1.75rem;margin:0 auto;animation:7s ease-in-out infinite aboutMediaFloat;position:relative;overflow:hidden}@keyframes aboutMediaFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.about__photo{text-align:center;background-position:top;background-repeat:no-repeat;background-size:cover;flex-direction:column;justify-content:flex-end;align-items:center;gap:.5rem;padding:2rem;display:flex;position:absolute;inset:0}.about__photo:before{content:"";pointer-events:none;border:1px solid #c8a95173;border-radius:1.35rem;position:absolute;inset:14px}.about__photo-monogram{font-family:var(--font-display);font-size:var(--text-display);color:var(--color-accent-light);text-shadow:0 4px 22px #00000059;letter-spacing:.02em;font-weight:700;line-height:1}.about__photo-caption{font-family:var(--font-display);font-size:var(--text-body);color:var(--color-white);text-transform:uppercase;letter-spacing:.22em;text-shadow:0 2px 10px #0000004d;font-weight:600}.about__photo-caption small{font-family:var(--font-body);font-size:var(--text-caption);letter-spacing:.18em;color:#ffffffc7;text-transform:uppercase;margin-top:.35rem;font-weight:500;display:block}.about__founder-tag{z-index:2;font-family:var(--font-body);font-size:var(--text-caption);letter-spacing:.18em;text-transform:uppercase;color:var(--color-dark);background:var(--gradient-gold);border-radius:50px;align-items:center;padding:.4rem .9rem;font-weight:700;display:inline-flex;position:absolute;top:1rem;left:1rem;box-shadow:0 4px 14px #c8a95173}.about__corner{border:2px solid var(--color-accent);z-index:2;pointer-events:none;width:26px;height:26px;position:absolute}.about__corner--tl{border-bottom:none;border-right:none;border-top-left-radius:1.75rem;top:-2px;left:-2px}.about__corner--br{border-top:none;border-left:none;border-bottom-right-radius:1.75rem;bottom:-2px;right:-2px}.about__content{flex-direction:column;align-items:flex-start;display:flex}.about__content>*{opacity:0;will-change:opacity, transform;transition:opacity .7s cubic-bezier(.22,1,.36,1),transform .7s cubic-bezier(.22,1,.36,1);transform:translateY(28px)}.about--visible .about__content>:first-child{transition-delay:50ms}.about--visible .about__content>:nth-child(2){transition-delay:.15s}.about--visible .about__content>:nth-child(3){transition-delay:.25s}.about--visible .about__content>:nth-child(4){transition-delay:.35s}.about--visible .about__content>:nth-child(5){transition-delay:.45s}.about--visible .about__content>:nth-child(6){transition-delay:.55s}.about--visible .about__content>*{opacity:1;transform:translateY(0)}.about__eyebrow{margin-bottom:1.1rem}.about__title{font-size:var(--text-display);color:var(--color-primary);margin-bottom:1.25rem;line-height:1.2}.about__name{background:var(--gradient-gold);-webkit-text-fill-color:transparent;color:#0000;-webkit-background-clip:text;background-clip:text;padding-right:.05em;font-style:italic;position:relative}.about__text{max-width:56ch;color:var(--color-text-muted);font-size:var(--text-body);margin-bottom:1.6rem;line-height:1.75}.about__award{border:1px solid var(--color-border);border-left:4px solid var(--color-accent);width:100%;max-width:580px;box-shadow:var(--shadow-soft);background:linear-gradient(#fff9f5e6 0%,#fff0e8f2 100%);border-radius:1rem;align-items:center;gap:1rem;margin-bottom:1.6rem;padding:1.1rem 1.4rem;display:flex;position:relative;overflow:hidden}.about__award-shine{pointer-events:none;background:linear-gradient(90deg,#0000 0%,#c8a9512e 50%,#0000 100%);width:40%;height:100%;position:absolute;top:0;left:-60%;transform:skew(-18deg)}.about--visible .about__award .about__award-shine{animation:3.5s ease-in-out .8s aboutShine}@keyframes aboutShine{0%{left:-60%}to{left:110%}}.about__award-emoji{font-size:var(--text-h3);filter:drop-shadow(0 3px 6px #c8a95159);flex-shrink:0;line-height:1}.about__award-text{flex-direction:column;gap:.2rem;display:flex}.about__award-title{font-family:var(--font-display);font-size:var(--text-body);color:var(--color-primary);letter-spacing:.01em;font-weight:600}.about__award-sub{font-family:var(--font-body);font-size:var(--text-small);color:var(--color-accent-dark);letter-spacing:.03em;text-transform:uppercase;font-weight:500}.about__credentials{flex-wrap:wrap;gap:.7rem;margin-bottom:1.9rem;padding:0;display:flex}.about__pill{font-family:var(--font-body);font-size:var(--text-small);letter-spacing:.02em;color:var(--color-primary);transition:transform var(--transition-fast), box-shadow var(--transition-fast), border-color var(--transition-fast);background:linear-gradient(#c8a9511f 0%,#7a1f3d0f 100%);border:1px solid #c8a95166;border-radius:50px;align-items:center;gap:.45rem;padding:.5rem .95rem;font-weight:600;display:inline-flex}.about__pill:hover{border-color:var(--color-accent);transform:translateY(-2px);box-shadow:0 6px 16px #c8a95138}.about__pill-icon{color:var(--color-accent-dark);flex-shrink:0}.about__cta{margin-top:.2rem}@media (prefers-reduced-motion:reduce){.about__media,.about--visible .about__award .about__award-shine{animation:none}.about__content>*{opacity:1!important;transition:none!important;transform:none!important}}
#courses{position:relative;overflow:hidden}#courses:before{content:"";background:linear-gradient(90deg, transparent 0%, var(--color-accent) 50%, transparent 100%);opacity:.55;pointer-events:none;width:min(640px,82%);height:1px;position:absolute;top:0;left:50%;transform:translate(-50%)}.courses-header{max-width:720px}.courses-grid{grid-template-columns:1fr;gap:clamp(1.25rem,2.5vw,1.75rem);margin-block:clamp(1.25rem,2vw,1.75rem);display:grid}@media (min-width:640px){.courses-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:980px){.courses-grid{grid-template-columns:repeat(3,1fr)}.courses-grid>:last-child:nth-child(3n-2){grid-column:2}}.course-card-wrapper{opacity:0;transition:opacity .55s cubic-bezier(.22, 1, .36, 1) var(--stagger,0s), transform .55s cubic-bezier(.22, 1, .36, 1) var(--stagger,0s);will-change:opacity, transform;transform:translateY(34px)}.courses-grid.is-visible .course-card-wrapper{opacity:1;transform:translateY(0)}.course-card{background:var(--color-card-bg);border-radius:var(--card-radius);height:100%;box-shadow:var(--shadow-card);border:1px solid var(--color-border);isolation:isolate;flex-direction:column;transition:transform .32s,box-shadow .32s,border-color .32s;display:flex;position:relative;overflow:hidden}.course-card:after{content:"";opacity:0;width:65%;height:65%;transition:opacity var(--transition-slow);z-index:0;pointer-events:none;background:radial-gradient(circle,#c8a9512e 0%,#c8a95100 70%);position:absolute;top:-35%;right:-25%}.course-card__accent{background:var(--gradient-gold);transform-origin:0;height:4px;transition:transform var(--transition-base);z-index:4;position:absolute;top:0;left:0;right:0;transform:scaleX(0);box-shadow:0 1px 6px #c8a95159}.course-card__media{isolation:isolate;background-position:50%;background-repeat:no-repeat;background-size:cover;place-items:center;height:132px;display:grid;position:relative;overflow:hidden}.course-card__media--burgundy{background-color:var(--color-primary)}.course-card__media--gold{background-color:var(--color-accent)}.course-card__media--rose{background-color:var(--color-secondary)}.course-card__media:after{content:"";pointer-events:none;z-index:1;background:radial-gradient(circle at 22% 18%,#ffffff38 0%,#0000 42%),radial-gradient(circle at 80% 88%,#00000024 0%,#0000 55%);position:absolute;inset:0}.course-card__media-icon{z-index:3;background:var(--gradient-gold);border:2px solid var(--color-white);width:52px;height:52px;color:var(--color-dark);transition:transform var(--transition-base);border-radius:50%;place-items:center;display:grid;position:absolute;bottom:-22px;left:1.25rem;box-shadow:0 6px 18px #2d0a1a47}.course-card__body{z-index:1;flex-direction:column;flex-grow:1;padding:clamp(1.75rem,2vw,2.1rem) clamp(1.25rem,2vw,1.6rem) clamp(1.25rem,2vw,1.6rem);display:flex;position:relative}.course-card__title{font-family:var(--font-display);font-size:var(--text-h4);color:var(--color-primary);margin-bottom:.85rem;font-weight:600;line-height:1.25}.course-card__badges{flex-wrap:wrap;gap:.4rem;margin-bottom:.9rem;display:flex}.course-pill{font-family:var(--font-body);font-size:var(--text-caption);letter-spacing:.02em;white-space:nowrap;color:var(--color-primary);background:linear-gradient(135deg,#7a1f3d12 0%,#7a1f3d21 100%);border:1px solid #7a1f3d33;border-radius:50px;align-items:center;padding:.34rem .7rem;font-weight:600;line-height:1;display:inline-flex}.course-pill:first-child{color:var(--color-accent-dark);background:linear-gradient(135deg,#c8a95124 0%,#c8a95142 100%);border-color:#c8a95173}.course-meta{color:var(--color-text-muted);align-items:center;gap:6px;margin:4px 0 8px;font-size:.75rem;display:flex}.course-meta-dot{opacity:.4}.course-highlight{color:var(--color-text-muted);margin:6px 0 0;font-size:.8rem;font-style:italic;line-height:1.4}.course-card__note{font-size:var(--text-small);color:var(--color-text-light);flex-grow:1;margin-bottom:1.25rem;line-height:1.5}.course-card__cta{width:100%;font-size:var(--text-small);letter-spacing:.02em;justify-content:center;align-self:stretch;padding:.72rem 1.2rem}.course-card:hover{box-shadow:var(--shadow-card-hover);border-color:#c8a95180;transform:translateY(-4px)}.course-card:hover .course-card__accent{transform:scaleX(1)}.course-card:hover:after{opacity:1}.course-card:hover .course-card__media-icon{transform:scale(1.06)}.course-card:focus-within{box-shadow:var(--shadow-card-hover);border-color:#c8a9518c}.course-card:focus-within .course-card__accent{transform:scaleX(1)}@media (max-width:640px){.course-card__media{height:120px}.course-card__media-icon{width:56px;height:56px}}@media (max-width:768px){.course-card__media-icon{left:1.5rem}}@media (prefers-reduced-motion:reduce){.course-card-wrapper{opacity:1;transition:none;transform:none}.course-card:hover,.course-card:hover .course-card__media-icon{transform:none}}
#services.section{background-image:radial-gradient(circle at 4% 6%,#c8a95124,#0000 30%),radial-gradient(circle at 92% 88%,#7a1f3d0f,#0000 42%),radial-gradient(circle at 88% 12%,#c8a9510f,#0000 25%)}.services__header{max-width:640px}.services-grid{grid-template-columns:1fr;gap:clamp(1rem,2vw,1.5rem);margin-top:clamp(2rem,4vw,3rem);display:grid}@media (min-width:640px){.services-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:960px){.services-grid{grid-template-columns:repeat(3,1fr)}}.service-card{background:var(--color-card-bg);border:1px solid var(--color-border);border-radius:var(--card-radius);box-shadow:var(--shadow-card);isolation:isolate;opacity:0;min-height:116px;transition:opacity .55s ease, transform .55s ease, box-shadow var(--transition-base), border-color var(--transition-base), background var(--transition-base);transition-delay:var(--card-delay,0s);will-change:opacity, transform;align-items:center;gap:1.1rem;padding:1.4rem 1.35rem;display:flex;position:relative;overflow:hidden;transform:translateY(24px)}.service-card:before{content:"";background:var(--gradient-card-hover);opacity:0;z-index:-1;transition:opacity var(--transition-base);pointer-events:none;position:absolute;inset:0}.service-card:after{content:"";background:var(--gradient-gold);z-index:2;pointer-events:none;width:0;height:3px;transition:width .5s cubic-bezier(.22,1,.36,1);position:absolute;top:0;left:0}.services-grid.is-visible .service-card{opacity:1;transition-delay:0s;transform:translateY(0)}.service-card:hover,.service-card:focus-within{border-color:var(--color-accent);transform:translateY(-4px);box-shadow:0 12px 40px #7a1f3d29,0 4px 18px #c8a9511f}.services-grid.is-visible .service-card:hover,.services-grid.is-visible .service-card:focus-within{transform:translateY(-4px)}.service-card:hover:before,.service-card:focus-within:before{opacity:1}.service-card:hover:after,.service-card:focus-within:after{width:100%}.service-card__icon{z-index:1;width:60px;height:60px;transition:transform var(--transition-base), border-color var(--transition-base), box-shadow var(--transition-base);background:radial-gradient(circle at 32% 30%,#ffffffb3 0%,#d4bc6a38 55%,#c8a95157 100%);border:1.5px solid #c8a95180;border-radius:50%;flex:0 0 60px;place-items:center;display:grid;position:relative;box-shadow:inset 0 1px 2px #ffffffb3,0 4px 12px #c8a9512e}.service-card__icon:after{content:"";pointer-events:none;border:1px dashed #c8a95173;border-radius:50%;position:absolute;inset:5px}.service-card__icon svg{color:var(--color-primary);transition:color var(--transition-base)}.service-card:hover .service-card__icon,.service-card:focus-within .service-card__icon{border-color:var(--color-accent);transform:scale(1.07);box-shadow:inset 0 1px 2px #ffffffb3,0 8px 22px #c8a95159}.service-card:hover .service-card__icon svg,.service-card:focus-within .service-card__icon svg{color:var(--color-primary-dark)}.service-card__body{z-index:1;flex-direction:column;flex:auto;gap:.5rem;min-width:0;display:flex;position:relative}.service-card__title{font-family:var(--font-display);font-size:var(--text-body-large);color:var(--color-primary);letter-spacing:.005em;word-break:break-word;-webkit-hyphens:auto;hyphens:auto;margin:0;font-weight:600;line-height:1.25}.service-price{color:var(--color-text-muted);margin:2px 0 6px;font-size:.75rem;font-style:italic;display:block}.service-card__cta{font-family:var(--font-body);font-size:var(--text-body);letter-spacing:.01em;color:var(--color-accent-dark);border-left:3px solid var(--color-accent);transition:background var(--transition-base), color var(--transition-base), gap var(--transition-base), border-color var(--transition-base), box-shadow var(--transition-base);background:#c8a9511a;border-radius:0 50px 50px 0;align-self:flex-start;align-items:center;gap:.5rem;padding:.35rem .85rem .35rem .7rem;font-weight:600;text-decoration:none;display:inline-flex;position:relative;overflow:hidden}.service-card__cta:after{content:"";background:var(--gradient-gold);width:0;height:2px;transition:width .4s cubic-bezier(.22,1,.36,1);position:absolute;bottom:0;left:0}.service-card__cta svg{color:var(--color-whatsapp);transition:transform var(--transition-base), color var(--transition-base);flex:none;transform:scale(1.15)}.service-card__cta:hover,.service-card__cta:focus-visible{color:var(--color-primary);border-color:var(--color-accent-dark);background:#c8a9512e;gap:.6rem;box-shadow:0 2px 10px #c8a9512e}.service-card__cta:hover:after,.service-card__cta:focus-visible:after{width:100%}.service-card__cta:hover svg,.service-card__cta:focus-visible svg{color:var(--color-whatsapp-hover);transform:translate(2px)scale(1.2)}@media (max-width:420px){.service-card{gap:.9rem;min-height:104px;padding:1.2rem 1.15rem}.service-card__icon{flex-basis:52px;width:52px;height:52px}.service-card__icon svg{width:20px;height:20px}.service-card__title{font-size:var(--text-body)}}@media (prefers-reduced-motion:reduce){.service-card{opacity:1;transition:none;transform:none}.service-card:after{width:0;transition:none}.service-card:hover,.service-card:focus-within{transform:none}.service-card:hover:after,.service-card:focus-within:after{width:0}.service-card:hover .service-card__icon,.service-card:focus-within .service-card__icon{transform:none}.service-card__cta:after{width:0;transition:none}.service-card__cta:hover:after,.service-card__cta:focus-visible:after{width:0}.service-card__cta:hover svg,.service-card__cta:focus-visible svg{transform:none}}
.stats-band{background:var(--gradient-primary);color:var(--color-white);isolation:isolate;padding:clamp(3.5rem,7vw,6rem) 0;position:relative;overflow:hidden}.stats-band:before{content:"";z-index:0;background:linear-gradient(#2d0a1a47 0%,#5c17306b 100%);position:absolute;inset:0}.stats-band__pattern{z-index:1;pointer-events:none;opacity:.7;background-image:radial-gradient(circle,#d4bc6a38 1.4px,#0000 1.6px),repeating-radial-gradient(circle,#c8a9510f 0 1px,#0000 1px 90px);background-position:0 0,50%;background-size:26px 26px,100% 100%;position:absolute;inset:0;-webkit-mask-image:radial-gradient(#000 25%,#0000 82%);mask-image:radial-gradient(#000 25%,#0000 82%)}.stats-band__glow{pointer-events:none;z-index:1;filter:blur(70px);opacity:.45;border-radius:50%;width:420px;height:420px;position:absolute}.stats-band__glow--left{background:radial-gradient(circle,#d4bc6a8c,#0000 70%);top:-140px;left:-120px}.stats-band__glow--right{background:radial-gradient(circle,#9b3a5a99,#0000 70%);bottom:-160px;right:-120px}.stats-band .container{z-index:2;position:relative}.stats-grid{grid-template-columns:repeat(4,1fr);align-items:stretch;gap:1.5rem;display:grid}.stat-item{text-align:center;opacity:0;will-change:opacity, transform;flex-direction:column;align-items:center;gap:.9rem;padding:1.5rem 1rem;transition:opacity .7s,transform .7s;display:flex;position:relative;transform:translateY(28px)}.stats-band.is-visible .stat-item{opacity:1;transform:translateY(0)}.stat-item:not(:last-child):after{content:"";background:linear-gradient(#0000 0%,#d4bc6a73 50%,#0000 100%);width:1px;position:absolute;top:18%;bottom:18%;right:0}@media (max-width:900px){.stat-item:nth-child(2n):after{display:none}}@media (max-width:560px){.stat-item:after{display:none}}.stat-item__icon{width:64px;height:64px;color:var(--color-accent);transition:transform var(--transition-base), box-shadow var(--transition-base), background var(--transition-base), border-color var(--transition-base);background:#c9a84c26;border:1px solid #d4bc6a59;border-radius:50%;justify-content:center;align-items:center;margin-bottom:.35rem;display:inline-flex;box-shadow:inset 0 0 0 1px #ffffff0a,0 6px 18px #0000002e}.stat-item:hover .stat-item__icon{background:#c8a95133;border-color:#d4bc6a99;transform:translateY(-4px)scale(1.05);box-shadow:inset 0 0 0 1px #ffffff14,0 12px 28px #c8a95147}.stat-item__value{font-family:var(--font-display);color:var(--color-accent-light);text-shadow:0 4px 24px #00000040;font-variant-numeric:tabular-nums;justify-content:center;align-items:baseline;gap:.05em;font-weight:700;line-height:1;display:inline-flex}.stat-item__number{font-size:var(--text-display);letter-spacing:-.02em;background:linear-gradient(180deg, var(--color-accent-light) 0%, var(--color-accent) 60%, var(--color-accent-dark) 100%);-webkit-text-fill-color:transparent;color:#0000;-webkit-background-clip:text;background-clip:text}.stat-item__suffix{font-size:var(--text-display);color:var(--color-accent-light);font-weight:600}.stat-item__label{font-family:var(--font-body);font-size:var(--text-small);letter-spacing:.08em;text-transform:uppercase;color:var(--color-white);opacity:.92;max-width:16ch;font-weight:500;line-height:1.4}@media (max-width:900px){.stats-grid{grid-template-columns:repeat(2,1fr);gap:1rem}.stat-item{padding:1.25rem .75rem}}@media (max-width:560px){.stats-grid{grid-template-columns:repeat(2,1fr);gap:.75rem}.stat-item{padding:1rem .5rem}.stat-item__icon{width:54px;height:54px}}@media (prefers-reduced-motion:reduce){.stat-item{opacity:1;transition:none;transform:none}.stat-item__icon{transition:none}.stat-item:hover .stat-item__icon{transform:none}}
#why-us.section-alt{background-color:var(--color-dark);background-image:radial-gradient(circle at 8% 0,#c8a9511a,#0000 38%),radial-gradient(circle at 92% 100%,#7a1f3d12,#0000 44%);padding:clamp(5rem,8vw,7rem) 0;position:relative;overflow:hidden}#why-us .section-title{color:var(--color-surface)}#why-us .section-eyebrow{color:var(--color-accent)}#why-us.section-alt:before{content:"";background:var(--gradient-gold);opacity:.5;pointer-events:none;border-radius:2px;width:min(220px,60%);height:2px;position:absolute;top:0;left:50%;transform:translate(-50%)}.why-grid{grid-template-columns:repeat(3,1fr);align-items:stretch;gap:clamp(1.25rem,2.4vw,1.85rem);margin:0;padding:0;list-style:none;display:grid}.why-item{opacity:0;height:100%;transition:opacity .65s cubic-bezier(.22,1,.36,1),transform .65s cubic-bezier(.22,1,.36,1);transition-delay:var(--stagger,0s);will-change:opacity, transform;display:flex;transform:translateY(28px)}.why-grid.is-visible .why-item{opacity:1;transform:translateY(0)}.why-card{text-align:left;border-radius:var(--card-radius);width:100%;height:100%;box-shadow:var(--shadow-card);isolation:isolate;transition:transform var(--transition-base), box-shadow var(--transition-base), border-color var(--transition-base);background:#ffffff0d;border:1px solid #c9a84c33;flex-direction:column;align-items:flex-start;gap:1.1rem;padding:1.9rem 1.65rem 1.75rem;display:flex;position:relative;overflow:hidden}.why-card:before{content:"";background:var(--gradient-card-hover);opacity:0;z-index:-1;transition:opacity var(--transition-base);pointer-events:none;position:absolute;inset:0}.why-card:hover,.why-card:focus-within{box-shadow:var(--shadow-card-hover);border-color:#c8a9516b;transform:translateY(-6px)}.why-card:hover:before,.why-card:focus-within:before{opacity:1}.why-card__left-bar{background:var(--gradient-gold);border-radius:var(--card-radius) 0 0 var(--card-radius);z-index:2;pointer-events:none;width:4px;height:0;transition:height .5s cubic-bezier(.22,1,.36,1);position:absolute;top:0;left:0;box-shadow:0 0 14px #c8a95166}.why-card:hover .why-card__left-bar,.why-card:focus-within .why-card__left-bar{height:100%}.why-card__icon{width:64px;height:64px;transition:transform var(--transition-base), box-shadow var(--transition-base);background:linear-gradient(135deg,#c8a9512e 0%,#c8a95157 100%);border-radius:50%;flex-shrink:0;place-items:center;display:grid;box-shadow:inset 0 0 0 1px #c8a95166,0 4px 12px #c8a9512e}.why-card__icon-emoji{font-size:var(--text-h3);font-family:Apple Color Emoji,Segoe UI Emoji,Noto Color Emoji,Segoe UI Symbol,sans-serif;line-height:1;display:block}.why-card:hover .why-card__icon,.why-card:focus-within .why-card__icon{transform:scale(1.08)rotate(-3deg);box-shadow:inset 0 0 0 1px #c8a95199,0 8px 18px #c8a95152}.why-card__body{flex-direction:column;gap:.55rem;display:flex}.why-card__title{font-family:var(--font-display);font-size:var(--text-h4);color:var(--color-surface);letter-spacing:.005em;transition:color var(--transition-base);margin:0;font-weight:600;line-height:1.2}.why-card__desc{color:#fff9f5b3;font-size:var(--text-body);margin:0;line-height:1.65}@media (max-width:960px){.why-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:600px){.why-grid{grid-template-columns:1fr;gap:1.25rem}.why-card{flex-direction:row;align-items:flex-start;gap:1rem;padding:1.7rem 1.4rem 1.55rem}.why-card__icon{width:56px;height:56px}.why-card__icon-emoji{font-size:var(--text-h4)}.why-card__title{font-size:var(--text-body-large)}.why-card__body{flex:1;min-width:0}}@media (prefers-reduced-motion:reduce){.why-item{opacity:1!important;transition:none!important;transform:none!important}.why-card,.why-card__icon,.why-card__title,.why-card__left-bar{transition:none!important}.why-card:hover,.why-card:focus-within,.why-card:hover .why-card__icon,.why-card:focus-within .why-card__icon{transform:none}.why-card__left-bar{height:100%}}
#testimonials.section{isolation:isolate;background-color:var(--color-surface-alt);background-image:radial-gradient(circle at 3% 5%,#c8a95121,#0000 30%),radial-gradient(circle at 94% 92%,#7a1f3d0f,#0000 42%),radial-gradient(circle at 90% 8%,#c8a9510f,#0000 28%);position:relative;overflow:hidden}.testimonials__container{z-index:1;position:relative}.testimonials__container:after{content:"“";font-family:var(--font-display);color:#c8a9510a;pointer-events:none;z-index:0;font-size:18rem;line-height:1;position:absolute;top:-1.5rem;right:4%}.testimonials__header{margin-bottom:clamp(2rem,4vw,3rem)}.testimonial-featured{background:var(--color-card-bg);border:1px solid var(--color-border);border-left:6px solid var(--color-accent);border-radius:var(--card-radius);max-width:880px;box-shadow:var(--shadow-card), 0 0 30px #c8a95114, -4px 0 16px #c8a9511a;isolation:isolate;opacity:0;transition:opacity .7s cubic-bezier(.22, 1, .36, 1), transform .7s cubic-bezier(.22, 1, .36, 1), box-shadow var(--transition-base);will-change:opacity, transform;margin:0 auto clamp(2.5rem,5vw,3.5rem);padding:clamp(2rem,4vw,3.25rem) clamp(1.75rem,4vw,3.5rem);position:relative;overflow:hidden;transform:translateY(36px)}.testimonials--visible .testimonial-featured{opacity:1;transition-delay:80ms;transform:translateY(0)}.testimonial-featured:hover,.testimonial-featured:focus-within{box-shadow:var(--shadow-card-hover), 0 0 45px #c8a9512e, -6px 0 24px #c8a95124;transform:translateY(-3px)}.testimonial-featured:before{content:"";z-index:-1;pointer-events:none;background:linear-gradient(135deg,#c8a95114 0%,#7a1f3d05 55%,#0000 100%);position:absolute;inset:0}.testimonial-featured__quote-mark{color:#7a1f3d14;pointer-events:none;line-height:1;position:absolute;top:-1.25rem;right:1.5rem;transform:rotate(-8deg)}.testimonial-featured__badge{font-family:var(--font-body);font-size:var(--text-caption);letter-spacing:.16em;text-transform:uppercase;color:var(--color-accent-dark);z-index:1;background:#c8a95124;border:1px solid #c8a95152;border-radius:50px;align-self:flex-start;margin-bottom:1.5rem;padding:.42rem .9rem;font-weight:700;display:inline-block;position:relative}.testimonial-featured__quote{z-index:1;margin:0 0 1.75rem;position:relative}.testimonial-featured__quote p{font-family:var(--font-display);font-style:italic;font-size:var(--text-h2);color:var(--color-text);letter-spacing:.005em;font-weight:400;line-height:1.5}.testimonial-featured__author{z-index:1;flex-direction:column;gap:.25rem;display:flex;position:relative}.testimonial-featured__name{font-family:var(--font-display);font-weight:700;font-size:var(--text-body-large);color:var(--color-primary);line-height:1.2}.testimonials__carousel-section{opacity:0;will-change:opacity, transform;margin-top:clamp(1rem,2vw,1.5rem);transition:opacity .7s cubic-bezier(.22,1,.36,1) .18s,transform .7s cubic-bezier(.22,1,.36,1) .18s;position:relative;transform:translateY(36px)}.testimonials--visible .testimonials__carousel-section{opacity:1;transform:translateY(0)}.testimonials__carousel-section:after{content:"• • • • •";text-align:center;font-size:var(--text-caption);letter-spacing:.55em;color:var(--color-accent);opacity:.45;transition:opacity var(--transition-base);margin-top:.75rem;display:block}.testimonials__carousel-wrap{padding:0 clamp(.5rem,2vw,1rem);position:relative}.testimonials__carousel{overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;-ms-overflow-style:none;gap:1.25rem;padding:.5rem 0 1.75rem;display:flex;overflow-x:auto}.testimonials__carousel::-webkit-scrollbar{display:none}.testimonials__carousel:focus{outline:none}.testimonials__carousel-wrap:before,.testimonials__carousel-wrap:after{content:"";pointer-events:none;z-index:2;width:clamp(2rem,6vw,4.5rem);position:absolute;top:0;bottom:0}.testimonials__carousel-wrap:before{background:linear-gradient(90deg, var(--color-surface-alt) 0%, #fff0e800 100%);left:0}.testimonials__carousel-wrap:after{background:linear-gradient(270deg, var(--color-surface-alt) 0%, #fff0e800 100%);right:0}.testimonial-card{scroll-snap-align:start;background:var(--color-card-bg);border:1px solid var(--color-border);border-radius:var(--card-radius);min-width:280px;box-shadow:var(--shadow-card);isolation:isolate;transition:transform var(--transition-base), box-shadow var(--transition-base), border-color var(--transition-base);flex-direction:column;flex:0 0 320px;gap:1rem;padding:2.25rem 1.75rem 1.5rem;display:flex;position:relative;overflow:hidden}.testimonial-card:hover,.testimonial-card:focus-within{box-shadow:var(--shadow-card-hover);border-color:#c8a9516b;transform:translateY(-4px)}.testimonial-card:before{content:"";background:var(--gradient-gold);z-index:1;border-radius:0 0 3px 3px;width:0;height:3px;transition:width .5s cubic-bezier(.22,1,.36,1);position:absolute;top:0;left:0}.testimonial-card:hover:before,.testimonial-card:focus-within:before{width:100%}.testimonial-card__quote-mark{color:#7a1f3d1a;pointer-events:none;z-index:0;transition:color var(--transition-base);line-height:1;position:absolute;top:.5rem;left:1rem;transform:rotate(-6deg)}.testimonial-card:hover .testimonial-card__quote-mark,.testimonial-card:focus-within .testimonial-card__quote-mark{color:#7a1f3d2e}.testimonial-card__quote{z-index:1;flex:auto;margin:1.5rem 0 0;position:relative}.testimonial-card__quote p{font-family:var(--font-body);font-style:italic;font-size:var(--text-body);color:var(--color-text);font-weight:400;line-height:1.65}.testimonial-card__footer{z-index:1;border-top:1px solid #c8a95140;flex-direction:column;gap:.4rem;padding-top:.85rem;display:flex;position:relative}.testimonial-card__name{font-family:var(--font-display);font-weight:700;font-size:var(--text-body-large);color:var(--color-primary);letter-spacing:.02em;line-height:1.2}.testimonial-card__stars{font-family:var(--font-body);font-size:var(--text-body);color:var(--color-accent);letter-spacing:.06em;filter:drop-shadow(0 1px 3px #c8a95159);gap:.08em;line-height:1;display:inline-flex}.testimonials__cta{text-align:center;opacity:0;will-change:opacity, transform;margin-top:clamp(1.5rem,3vw,2.5rem);transition:opacity .7s cubic-bezier(.22,1,.36,1) .32s,transform .7s cubic-bezier(.22,1,.36,1) .32s;transform:translateY(36px)}.testimonials--visible .testimonials__cta{opacity:1;transform:translateY(0)}.testimonials__cta-link{font-family:var(--font-body);font-size:var(--text-body);color:var(--color-accent-dark);transition:color var(--transition-fast), border-color var(--transition-fast), transform var(--transition-fast);border-bottom:2px solid #0000;align-items:center;gap:.55rem;padding:.65rem .5rem;font-weight:600;text-decoration:none;display:inline-flex}.testimonials__cta-link:hover,.testimonials__cta-link:focus-visible{color:var(--color-primary);border-color:var(--color-accent);transform:translateY(-1px)}.testimonials__cta-link svg{color:var(--color-accent);transition:color var(--transition-fast);flex-shrink:0}.testimonials__cta-link:hover svg,.testimonials__cta-link:focus-visible svg{color:var(--color-accent-dark)}@media (max-width:768px){.testimonial-card{flex:0 0 290px;min-width:260px;padding:2rem 1.5rem 1.4rem}.testimonial-featured__quote p{font-size:var(--text-body-large)}.testimonial-featured__quote-mark{right:1rem}}@media (max-width:420px){.testimonial-card{flex:0 0 86vw;min-width:240px}.testimonial-featured{padding:1.75rem 1.4rem}}@media (prefers-reduced-motion:reduce){.testimonial-featured,.testimonials__carousel-section,.testimonials__cta{opacity:1;transition:none;transform:none}.testimonials__carousel{scroll-behavior:auto}.testimonial-card:before{width:0;transition:none}.testimonial-card:hover:before,.testimonial-card:focus-within:before{width:0}.testimonial-card:hover,.testimonial-card:focus-within,.testimonial-featured:hover,.testimonial-featured:focus-within{transform:none}}
.gallery-section{padding-bottom:clamp(1.5rem,3vw,2rem);position:relative;overflow:hidden}.gallery-divider{justify-content:center;align-items:center;gap:1rem;margin-bottom:clamp(1rem,3vw,2rem);display:flex}.gallery-divider__line{background:var(--gradient-gold);border-radius:2px;width:clamp(40px,10vw,120px);height:1px}.gallery-divider__diamond{color:var(--color-accent);font-size:var(--text-caption);animation:3s ease-in-out infinite float}.gallery-grid{grid-template-columns:repeat(4,1fr);grid-auto-rows:220px;gap:clamp(.75rem,1.5vw,1.25rem);display:grid}.gallery-item:first-child{grid-row:span 2}.gallery-item:nth-child(4){grid-column:span 2}.gallery-item:nth-child(7){grid-row:span 2}.gallery-item{border-radius:var(--card-radius);cursor:pointer;box-shadow:var(--shadow-card);background-color:var(--color-dark);opacity:0;transition:opacity .6s,transform .6s,box-shadow .3s;transition-delay:var(--stagger,0s);background-position:50%;background-repeat:no-repeat;background-size:cover;position:relative;overflow:hidden;transform:translateY(24px)scale(.97)}.gallery--visible .gallery-item{opacity:1;transition:opacity .6s,transform .3s,box-shadow .3s;transform:translateY(0)scale(1)}.gallery-item:hover{box-shadow:var(--shadow-card-hover);transform:translateY(-6px)scale(1.02)}.gallery-item__overlay{opacity:0;transition:opacity var(--transition-base);z-index:1;background:linear-gradient(#0000 40%,#2d0a1abf 100%);position:absolute;inset:0}.gallery-item:hover .gallery-item__overlay{opacity:1}.gallery-item__content{z-index:2;opacity:0;transition:opacity var(--transition-base), transform var(--transition-base);align-items:center;gap:.65rem;padding:1.25rem;display:flex;position:absolute;bottom:0;left:0;right:0;transform:translateY(8px)}.gallery-item:hover .gallery-item__content{opacity:1;transform:translateY(0)}.gallery-item__icon{font-size:var(--text-h4);flex-shrink:0}.gallery-item__label{font-family:var(--font-display);font-size:var(--text-body);color:var(--color-white);text-shadow:0 1px 4px #0000004d;font-weight:600}.gallery-cta{text-align:center;margin-top:clamp(2rem,4vw,3rem)}.gallery-cta__text{color:var(--color-text-muted);font-size:var(--text-body);margin-bottom:1rem}@media (max-width:960px){.gallery-grid{grid-template-columns:repeat(3,1fr);grid-auto-rows:180px}.gallery-item:first-child{grid-row:span 1}.gallery-item:nth-child(4){grid-column:span 1}.gallery-item:nth-child(7){grid-row:span 1}}@media (max-width:640px){.gallery-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:160px}.gallery-item__overlay{opacity:.6}.gallery-item__content{opacity:1;transform:translateY(0)}.gallery-item__label{font-size:var(--text-small)}}@media (prefers-reduced-motion:reduce){.gallery-item{opacity:1;transition:none;transform:none}.gallery-divider__diamond{animation:none}}
.faq-section{padding-top:clamp(1.5rem,3vw,2rem);position:relative;overflow:hidden}.faq-section:before{content:"";pointer-events:none;z-index:0;background:radial-gradient(circle,#c8a95114 0%,#0000 70%);border-radius:50%;width:300px;height:300px;position:absolute;top:10%;right:-100px}.faq-section .container{z-index:1;position:relative}.faq-list{flex-direction:column;gap:.85rem;max-width:820px;margin:0 auto;display:flex}.faq-item{background:var(--color-card-bg);border:1px solid var(--color-border);border-radius:var(--card-radius);box-shadow:var(--shadow-soft);opacity:0;transition:opacity .5s ease, transform .5s ease, box-shadow var(--transition-base), border-color var(--transition-base);transition-delay:var(--stagger,0s);overflow:hidden;transform:translateY(20px)}.faq--visible .faq-item{opacity:1;transition-delay:0s;transform:translateY(0)}.faq-item:hover{box-shadow:var(--shadow-card);border-color:#c8a9514d}.faq-item--open{border-color:var(--color-accent);box-shadow:var(--shadow-card)}.faq-item--open:before{content:"";background:var(--gradient-gold);width:4px;position:absolute;top:0;bottom:0;left:0}.faq-item__question{text-align:left;cursor:pointer;width:100%;font-family:var(--font-display);font-size:var(--text-body);color:var(--color-primary);transition:color var(--transition-fast);background:0 0;border:none;justify-content:space-between;align-items:center;gap:1rem;padding:1.15rem 1.5rem;font-weight:600;line-height:1.4;display:flex}.faq-item__question:hover{color:var(--color-primary-dark)}.faq-item__q-text{flex:1}.faq-item__icon{width:32px;height:32px;color:var(--color-accent-dark);transition:transform var(--transition-base), background var(--transition-base), color var(--transition-base);background:#c8a9511f;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.faq-item--open .faq-item__icon{background:var(--gradient-gold);color:var(--color-white);transform:rotate(180deg)}.faq-item__answer-wrap{padding:0 1.5rem 1.25rem}.faq-item__answer{color:var(--color-text-muted);font-size:var(--text-body);border-top:1px solid var(--color-border);padding-top:.5rem;line-height:1.65}.faq-cta{text-align:center;flex-direction:column;align-items:center;gap:1rem;margin-top:clamp(2rem,4vw,3rem);display:flex}.faq-cta__text{color:var(--color-text-muted);font-size:var(--text-body)}@media (max-width:640px){.faq-item__question{font-size:var(--text-body);padding:1rem 1.15rem}.faq-item__answer-wrap{padding:0 1.15rem 1.1rem}.faq-item__answer{font-size:var(--text-small)}.faq-item__icon{width:28px;height:28px}}@media (max-width:768px){.faq-section{padding-bottom:clamp(2rem,4vw,3rem)}.faq-item__icon{background:#c8a95138;border:1.5px solid #c8a95166}}@media (prefers-reduced-motion:reduce){.faq-item{opacity:1;transition:none;transform:none}.faq-item__icon{transition:none}}
.booking-section{position:relative;overflow:hidden}.booking-bg-glow{filter:blur(90px);pointer-events:none;opacity:.12;z-index:0;border-radius:50%;position:absolute}.booking-bg-glow--left{background:var(--color-primary);width:320px;height:320px;top:10%;left:-120px}.booking-bg-glow--right{background:var(--color-accent);width:360px;height:360px;bottom:5%;right:-120px}.booking-section .container{z-index:1;position:relative}.booking-grid{opacity:0;grid-template-columns:.85fr 1.15fr;align-items:stretch;gap:clamp(1.5rem,3vw,2.5rem);max-width:1000px;margin:0 auto;transition:opacity .6s,transform .6s;display:grid;transform:translateY(28px)}.booking--visible .booking-grid{opacity:1;transform:translateY(0)}.booking-info{background:var(--gradient-primary);color:var(--color-white);border-radius:var(--card-radius);box-shadow:var(--shadow-card);flex-direction:column;padding:clamp(1.75rem,3vw,2.5rem);display:flex;position:relative;overflow:hidden}.booking-info:before{content:"";filter:blur(20px);background:#c8a95126;border-radius:50%;width:160px;height:160px;position:absolute;top:-40px;right:-40px}.booking-info__icon{background:var(--gradient-gold);width:56px;height:56px;color:var(--color-dark);box-shadow:var(--shadow-gold);z-index:1;border-radius:50%;justify-content:center;align-items:center;margin-bottom:1.25rem;display:flex;position:relative}.booking-info__title{font-family:var(--font-display);font-size:var(--text-h4);color:var(--color-white);z-index:1;margin-bottom:1.25rem;position:relative}.booking-info__list{z-index:1;flex-direction:column;flex:1;gap:.85rem;margin-bottom:1.5rem;display:flex;position:relative}.booking-info__list li{font-size:var(--text-small);color:#ffffffeb;align-items:flex-start;gap:.65rem;line-height:1.45;display:flex}.booking-info__list li svg{color:var(--color-accent-light);flex-shrink:0;margin-top:2px}.booking-info__note{font-size:var(--text-small);color:#fffc;z-index:1;border-top:1px solid #ffffff26;padding-top:1rem;position:relative}.booking-info__link{color:var(--color-accent-light);text-underline-offset:3px;font-weight:600;text-decoration:underline}.booking-info__link:hover{color:var(--color-white)}.booking-form-card{background:var(--color-card-bg);border-radius:var(--card-radius);box-shadow:var(--shadow-card);border:1px solid var(--color-border);padding:clamp(1.5rem,3vw,2.25rem)}.booking-form{flex-direction:column;gap:1.1rem;display:flex}.booking-form__row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.booking-form__alert{color:var(--color-primary-dark);font-size:var(--text-small);background:#b94a6e1a;border:1px solid #b94a6e4d;border-radius:.75rem;align-items:center;gap:.55rem;padding:.75rem 1rem;display:flex}.booking-field{flex-direction:column;gap:.4rem;display:flex;position:relative}.booking-field__label{font-size:var(--text-small);color:var(--color-primary);align-items:center;gap:.4rem;font-weight:600;display:inline-flex}.booking-field__label svg{color:var(--color-accent-dark)}.booking-field__optional{font-weight:400;font-size:var(--text-small);color:var(--color-text-light)}.booking-field__input{border:1.5px solid var(--color-border);background:var(--color-surface);width:100%;color:var(--color-text);font-family:var(--font-body);font-size:var(--text-small);transition:border-color var(--transition-fast), box-shadow var(--transition-fast), background var(--transition-fast);border-radius:.65rem;padding:.7rem .9rem}.booking-field__input::placeholder{color:var(--color-text-light);opacity:.7}.booking-field__input:focus{border-color:var(--color-accent);background:var(--color-white);outline:none;box-shadow:0 0 0 3px #c8a95126}.booking-field__select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%237A1F3D' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-position:right .9rem center;background-repeat:no-repeat;background-size:12px;padding-right:2.25rem}.booking-field__textarea{resize:vertical;min-height:72px;font-family:var(--font-body)}.booking-field__count{font-size:var(--text-caption);color:var(--color-text-light);pointer-events:none;position:absolute;bottom:.55rem;right:.75rem}.booking-field__error{font-size:var(--text-small);color:var(--color-secondary);font-weight:500}.booking-field--error .booking-field__input{border-color:var(--color-secondary);background:#b94a6e0a}.booking-field--error .booking-field__input:focus{box-shadow:0 0 0 3px #b94a6e1f}.booking-form__submit{width:100%;font-size:var(--text-body);margin-top:.4rem;padding:1rem}.booking-form__submit:disabled{opacity:.7;cursor:not-allowed}.booking-spinner{animation:.8s linear infinite booking-spin}@keyframes booking-spin{to{transform:rotate(360deg)}}.booking-form__hint{text-align:center;font-size:var(--text-small);color:var(--color-text-light)}.booking-success{text-align:center;flex-direction:column;align-items:center;gap:1rem;padding:1.5rem 1rem;display:flex}.booking-success__icon{width:84px;height:84px;color:var(--color-whatsapp);background:#25d3661f;border-radius:50%;justify-content:center;align-items:center;animation:.5s both scaleIn;display:flex}.booking-success__title{font-family:var(--font-display);font-size:var(--text-h4);color:var(--color-primary)}.booking-success__text{color:var(--color-text-muted);font-size:var(--text-body);max-width:380px;line-height:1.55}.booking-success__btn{padding:.85rem 2rem}.booking-success__reset{color:var(--color-text-light);font-size:var(--text-small);text-underline-offset:3px;cursor:pointer;background:0 0;border:none;padding:.3rem;text-decoration:underline}.booking-success__reset:hover{color:var(--color-primary)}@media (max-width:820px){.booking-grid{grid-template-columns:1fr}.booking-info{order:2}}@media (max-width:540px){.booking-form__row{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.booking-grid{opacity:1;transition:none;transform:none}.booking-spinner,.booking-success__icon{animation:none}}@media (max-width:768px){.booking-grid{grid-template-columns:1fr}.booking-section{padding-top:clamp(2rem,4vw,3rem)}}.booking-field--date{position:relative}.booking-field__date-placeholder{font-family:var(--font-body);font-size:var(--text-small);color:var(--color-text-light);opacity:.7;pointer-events:none;z-index:1;transition:opacity var(--transition-fast);align-items:center;padding:.7rem .9rem;display:flex;position:absolute;inset:0}.booking-field--date.has-value .booking-field__date-placeholder,.booking-field--date:focus-within .booking-field__date-placeholder{opacity:0}
.contact-section{isolation:isolate;position:relative;overflow:hidden}.contact-section:before,.contact-section:after{content:"";filter:blur(90px);z-index:0;pointer-events:none;border-radius:50%;position:absolute}.contact-section:before{background:radial-gradient(circle,#7a1f3d1a 0%,#0000 70%);width:380px;height:380px;top:-120px;left:-120px}.contact-section:after{background:radial-gradient(circle,#c8a9511f 0%,#0000 70%);width:420px;height:420px;bottom:-160px;right:-140px}.contact-section .container{z-index:1;position:relative}.contact-headline{margin-bottom:clamp(2rem,4vw,3.5rem)}.contact-grid{grid-template-columns:1fr;align-items:stretch;gap:clamp(1.75rem,4vw,3rem);display:grid}@media (min-width:940px){.contact-grid{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr)}}.contact-card{background:var(--color-card-bg);border-radius:var(--card-radius);box-shadow:var(--shadow-card);border:1px solid var(--color-border);transition:transform var(--transition-base), box-shadow var(--transition-base);flex-direction:column;padding:clamp(1.75rem,4vw,2.75rem);display:flex;position:relative;overflow:hidden}.contact-card:hover{box-shadow:var(--shadow-card-hover);transform:translateY(-3px)}.contact-card__top-accent{background:var(--gradient-gold);opacity:.85;height:4px;transition:opacity var(--transition-base);position:absolute;top:0;left:0;right:0}.contact-card:hover .contact-card__top-accent{opacity:1}.contact-card:after{content:"";opacity:0;width:60%;height:100%;transition:opacity var(--transition-slow);pointer-events:none;z-index:0;background:radial-gradient(circle,#c8a9511a 0%,#0000 70%);position:absolute;top:-50%;right:-30%}.contact-card:hover:after,.contact-card:focus-within:after{opacity:1}.contact-card__header{z-index:1;margin-bottom:1.25rem;position:relative}.contact-card__eyebrow{font-family:var(--font-body);font-size:var(--text-caption);letter-spacing:.18em;text-transform:uppercase;color:var(--color-accent-dark);align-items:center;gap:.5rem;margin-bottom:.55rem;font-weight:600;display:inline-flex}.contact-card__eyebrow:before{content:"";background:var(--gradient-gold);border-radius:2px;width:1.5rem;height:1.5px}.contact-card__title{font-family:var(--font-display);font-size:var(--text-h4);color:var(--color-primary);line-height:1.2}.contact-card__intro{color:var(--color-text-muted);font-size:var(--text-body);margin-top:.55rem;line-height:1.55}.contact-list{z-index:1;flex-direction:column;gap:.1rem;margin:.25rem 0 1.5rem;display:flex;position:relative}.contact-row{transition:background var(--transition-fast), padding-left var(--transition-fast);border-bottom:1px dashed #7a1f3d24;border-radius:8px;grid-template-columns:auto 1fr;align-items:start;gap:1rem;padding:.85rem .5rem .85rem .25rem;display:grid}.contact-row:last-child{border-bottom:none}.contact-row:hover{background:#c8a9510f;padding-left:.6rem}.contact-row__icon{width:44px;height:44px;color:var(--color-primary);transition:transform var(--transition-base), background var(--transition-base), box-shadow var(--transition-base), color var(--transition-base);background:linear-gradient(135deg,#7a1f3d14,#c8a9511f);border:1px solid #c8a95159;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.contact-row:hover .contact-row__icon{background:var(--gradient-primary);color:var(--color-accent-light);transform:scale(1.06);box-shadow:0 6px 16px #7a1f3d40}.contact-row__body{flex-direction:column;gap:.18rem;min-width:0;display:flex}.contact-row__label{font-family:var(--font-body);font-size:var(--text-caption);letter-spacing:.16em;text-transform:uppercase;color:var(--color-text-light);font-weight:600}.contact-row__value{font-family:var(--font-body);font-size:var(--text-body);color:var(--color-text);word-break:break-word;font-weight:500;line-height:1.5}.contact-row__address{color:var(--color-text);font-style:normal;font-weight:500;line-height:1.5}.contact-row__link{color:var(--color-primary);transition:color var(--transition-fast);font-weight:600;text-decoration:none;display:inline-block;position:relative}.contact-row__link:hover{color:var(--color-accent-dark)}.contact-row__link:after{content:"";background:var(--gradient-gold);transform-origin:0;width:100%;height:1.5px;transition:transform var(--transition-base);position:absolute;bottom:-2px;left:0;transform:scaleX(0)}.contact-row__link:hover:after,.contact-row__link:focus-visible:after{transform:scaleX(1)}.contact-card__cta{z-index:1;align-self:stretch;margin-top:auto;padding-top:.5rem;position:relative}.contact-card__cta .btn{width:100%;font-size:var(--text-body);padding:1rem 1.75rem}.contact-map{flex-direction:column;gap:.85rem;display:flex;position:relative}.map-frame{border-radius:var(--card-radius);width:100%;box-shadow:var(--shadow-card);background:linear-gradient(var(--color-card-bg), var(--color-card-bg)) padding-box, var(--gradient-gold) border-box;transition:box-shadow var(--transition-base), transform var(--transition-base);border:3px solid #0000;line-height:0;position:relative;overflow:hidden}.map-frame:hover,.map-frame:focus-within{box-shadow:var(--shadow-card-hover), 0 0 0 6px #c8a9512e;transform:translateY(-3px)}.map-frame iframe{background:var(--color-surface-alt);width:100%;display:block}.map-corner{border-color:var(--color-accent);pointer-events:none;z-index:2;width:28px;height:28px;transition:width var(--transition-base), height var(--transition-base), border-color var(--transition-base);border-style:solid;border-width:0;position:absolute}.contact-map:hover .map-corner,.contact-map:focus-within .map-corner{border-color:var(--color-accent-light);width:36px;height:36px}.map-corner--tl{border-top-left-radius:var(--card-radius);border-top-width:3px;border-left-width:3px;top:-3px;left:-3px}.map-corner--tr{border-top-right-radius:var(--card-radius);border-top-width:3px;border-right-width:3px;top:-3px;right:-3px}.map-corner--bl{border-bottom-left-radius:var(--card-radius);border-bottom-width:3px;border-left-width:3px;bottom:-3px;left:-3px}.map-corner--br{border-bottom-right-radius:var(--card-radius);border-bottom-width:3px;border-right-width:3px;bottom:-3px;right:-3px}.contact-map__caption{font-family:var(--font-body);font-size:var(--text-small);letter-spacing:.04em;color:var(--color-text-light);text-align:left;align-items:center;gap:.5rem;margin:0;padding:0 .25rem;font-weight:500;display:inline-flex}.contact-map__caption svg{color:var(--color-accent-dark);flex-shrink:0}.contact-headline,.contact-card,.contact-map{opacity:0;will-change:opacity, transform;transition:opacity .7s,transform .7s;transform:translateY(32px)}.contact-headline{transition-delay:0s}.contact-card{transition-delay:.1s}.contact-map{transition-delay:.22s}.contact-headline.is-visible,.contact-card.is-visible,.contact-map.is-visible{opacity:1;transition-delay:0s;transform:translateY(0)}@media (max-width:939px){.map-frame iframe{height:360px!important}}@media (max-width:560px){.contact-card{padding:1.5rem 1.25rem}.contact-row{gap:.75rem;padding:.8rem .25rem}.contact-row:hover{padding-left:.4rem}.contact-row__icon{width:38px;height:38px}.map-frame iframe{height:320px!important}}@media (max-width:380px){.contact-row{grid-template-columns:1fr;gap:.5rem}.contact-row__icon{width:34px;height:34px}}@media (prefers-reduced-motion:reduce){.contact-card,.contact-card:after,.contact-card__top-accent,.map-corner,.map-frame,.contact-row,.contact-row__icon,.contact-row__link:after{transition:none!important}.contact-card:hover{transform:none}.contact-map:hover .map-corner,.contact-map:focus-within .map-corner{width:28px;height:28px}}.map-skeleton{border-radius:var(--card-radius);background:linear-gradient(135deg, var(--color-surface-alt) 0%, var(--color-surface) 50%, var(--color-surface-alt) 100%);z-index:1;flex-direction:column;justify-content:center;align-items:center;gap:.85rem;display:flex;position:absolute;inset:0;overflow:hidden}.map-skeleton__shimmer{background:linear-gradient(90deg,#0000 0%,#c8a9511f 50%,#0000 100%) 0 0/200% 100%;animation:1.8s ease-in-out infinite map-shimmer;position:absolute;inset:0}@keyframes map-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.map-skeleton__icon{background:var(--color-card-bg);width:64px;height:64px;color:var(--color-primary);box-shadow:var(--shadow-soft);z-index:1;border-radius:50%;justify-content:center;align-items:center;animation:1.4s ease-in-out infinite map-bounce;display:flex;position:relative}@keyframes map-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.map-skeleton__text{font-family:var(--font-body);font-size:var(--text-small);color:var(--color-text-muted);letter-spacing:.02em;z-index:1;font-weight:500;position:relative}@media (prefers-reduced-motion:reduce){.map-skeleton__shimmer,.map-skeleton__icon{animation:none}}.map-static-fallback{display:none}@media (max-width:768px){.map-iframe-live{display:none!important}.map-skeleton{display:none}.map-static-fallback{display:block}.map-static-fallback__inner{text-align:center;background:linear-gradient(135deg, var(--color-surface-alt) 0%, var(--color-surface) 50%, var(--color-surface-alt) 100%);border-radius:var(--card-radius);flex-direction:column;justify-content:center;align-items:center;gap:1rem;min-height:280px;padding:clamp(2.5rem,5vw,3.5rem) 1.5rem;display:flex}.map-static-fallback__icon{width:72px;height:72px;color:var(--color-primary);box-shadow:var(--shadow-soft);background:linear-gradient(135deg,#7a1f3d14,#c8a95126);border:1.5px solid #c8a95166;border-radius:50%;justify-content:center;align-items:center;display:flex}.map-static-fallback__address{color:var(--color-text-muted);font-size:var(--text-small);max-width:280px;line-height:1.55}.map-static-fallback__btn{font-size:var(--text-small);padding:.85rem 1.75rem}}
.site-footer{isolation:isolate;background-color:var(--color-dark);color:#ffffffc7;font-family:var(--font-body);position:relative;overflow:hidden}.site-footer:before{content:"";background:linear-gradient(180deg, #2d0a1af2 0%, #2d0a1a 100%), var(--gradient-hero);z-index:-2;position:absolute;inset:0}.site-footer:after{content:"";z-index:-1;pointer-events:none;background:radial-gradient(60% 50% at 10% 0,#c8a95129,#0000 70%),radial-gradient(50% 60% at 95% 100%,#7a1f3d73,#0000 70%);position:absolute;inset:0}.footer-sparkles{z-index:-1;pointer-events:none;position:absolute;inset:0;overflow:hidden}.footer-sparkles span{background:var(--color-accent-light);opacity:.55;border-radius:50%;width:3px;height:3px;animation:4.5s ease-in-out infinite footerTwinkle;display:block;position:absolute;box-shadow:0 0 6px #d4bc6ad9,0 0 14px #c8a95173}.footer-sparkles span:first-child{width:2px;height:2px;animation-delay:0s;top:10%;left:5%}.footer-sparkles span:nth-child(2){animation-delay:.7s;top:22%;left:18%}.footer-sparkles span:nth-child(3){width:4px;height:4px;animation-delay:1.3s;top:6%;left:32%}.footer-sparkles span:nth-child(4){width:2px;height:2px;animation-delay:.4s;top:30%;left:47%}.footer-sparkles span:nth-child(5){animation-delay:2s;top:16%;left:62%}.footer-sparkles span:nth-child(6){width:4px;height:4px;animation-delay:1s;top:34%;left:75%}.footer-sparkles span:nth-child(7){width:2px;height:2px;animation-delay:.5s;top:8%;left:88%}.footer-sparkles span:nth-child(8){animation-delay:2.5s;top:52%;left:8%}.footer-sparkles span:nth-child(9){width:2px;height:2px;animation-delay:1.6s;top:64%;left:28%}.footer-sparkles span:nth-child(10){animation-delay:.5s;top:48%;left:56%}.footer-sparkles span:nth-child(11){width:4px;height:4px;animation-delay:2.2s;top:72%;left:72%}.footer-sparkles span:nth-child(12){width:2px;height:2px;animation-delay:1.2s;top:82%;left:14%}.footer-sparkles span:nth-child(13){animation-delay:.8s;top:88%;left:46%}.footer-sparkles span:nth-child(14){width:4px;height:4px;animation-delay:1.9s;top:78%;left:90%}@keyframes footerTwinkle{0%,to{opacity:.22;transform:scale(.85)}50%{opacity:.85;transform:scale(1.15)}}.footer-trust{z-index:1;background:#c8a9510d;border-top:1px solid #c8a9518c;border-bottom:1px solid #c8a9518c;padding:.75rem 0;position:relative}.footer-trust__list{max-width:var(--container-max);padding:0 var(--container-padding);font-size:var(--text-small);letter-spacing:.16em;text-transform:uppercase;color:var(--color-accent-light);text-align:center;flex-wrap:wrap;justify-content:center;align-items:center;gap:.35rem .9rem;margin:0 auto;font-weight:600;display:flex}.footer-trust__item{align-items:center;gap:.45rem;line-height:1.4;display:inline-flex}.footer-trust__spark{width:12px;height:12px;color:var(--color-accent);flex-shrink:0;animation:3s ease-in-out infinite footerSparkPulse}.footer-trust__item:nth-child(2) .footer-trust__spark{animation-delay:.6s}.footer-trust__item:nth-child(3) .footer-trust__spark{animation-delay:1.2s}.footer-trust__item:nth-child(4) .footer-trust__spark{animation-delay:1.8s}@keyframes footerSparkPulse{0%,to{opacity:.55;transform:scale(.9)}50%{opacity:1;transform:scale(1.1)}}.footer-trust__sep{color:#c8a95199;font-size:var(--text-small);margin:0 .15rem}.footer-inner{z-index:1;padding:clamp(3rem,6vw,4.75rem) 0 clamp(2.25rem,4vw,3rem);position:relative}.footer-grid{grid-template-columns:1fr;gap:clamp(2.25rem,4vw,3.25rem);display:grid}@media (min-width:640px){.footer-grid{grid-template-columns:repeat(2,1fr);gap:clamp(2.5rem,4vw,3rem) clamp(1.75rem,4vw,3rem)}.footer-col--brand,.footer-col--connect{grid-column:1/-1}}@media (min-width:980px){.footer-grid{grid-template-columns:1.6fr .85fr 1.15fr 1.25fr;gap:clamp(2rem,4vw,3.25rem)}.footer-col--brand,.footer-col--connect{grid-column:auto}}.footer-heading{font-family:var(--font-display);font-size:var(--text-body-large);color:var(--color-accent-light);letter-spacing:.06em;margin-bottom:1.35rem;padding-bottom:.7rem;font-weight:600;display:inline-block;position:relative}.footer-heading:after{content:"";background:var(--gradient-gold);border-radius:2px;width:38px;height:2px;position:absolute;bottom:0;left:0}.footer-col--brand{flex-direction:column;gap:1.1rem;display:flex}.footer-brand__name{font-family:var(--font-display);font-size:var(--text-display);flex-direction:column;margin:0;font-weight:700;line-height:1.1;display:flex}.footer-brand__name-text{color:var(--color-white);letter-spacing:-.01em}.footer-brand__tag{font-family:var(--font-body);font-size:var(--text-caption);letter-spacing:.3em;text-transform:uppercase;color:var(--color-accent-light);margin-top:.45rem;font-weight:600;display:block}.footer-brand__story{color:#ffffffc7;font-size:var(--text-body);max-width:440px;padding-left:.95rem;font-style:italic;line-height:1.7;position:relative}.footer-brand__story:before{content:"";background:var(--gradient-gold);opacity:.75;border-radius:2px;width:2px;position:absolute;top:.25rem;bottom:.25rem;left:0}.footer-contact{flex-direction:column;gap:.85rem;margin-top:.15rem;font-style:normal;display:flex}.footer-contact__row{color:#fff5e6b8;font-size:var(--text-small);transition:color var(--transition-fast), transform var(--transition-fast);align-items:flex-start;gap:.7rem;line-height:1.55;display:flex}.footer-contact__row--address{max-width:420px}.footer-contact__icon{width:17px;height:17px;color:var(--color-accent);transition:color var(--transition-fast);flex-shrink:0;margin-top:2px}.footer-contact__row:hover,.footer-contact__row:focus-visible{color:var(--color-accent-light);transform:translate(2px)}.footer-contact__row:hover .footer-contact__icon,.footer-contact__row:focus-visible .footer-contact__icon{color:var(--color-accent-light)}.footer-links{flex-direction:column;gap:.7rem;display:flex}.footer-link{color:#fff5e6c7;width:fit-content;font-size:var(--text-body);transition:color var(--transition-fast), padding-left var(--transition-fast);align-items:center;padding-bottom:3px;display:inline-flex;position:relative}.footer-link:before{content:"";background:var(--color-accent);width:0;height:1px;transition:width var(--transition-fast), margin-right var(--transition-fast);margin-right:0;display:inline-block}.footer-link:after{content:"";background:var(--gradient-gold);width:0;height:1.5px;transition:width var(--transition-fast);border-radius:2px;position:absolute;bottom:0;left:0}.footer-link:hover,.footer-link:focus-visible{color:var(--color-accent-light);padding-left:.95rem}.footer-link:hover:before,.footer-link:focus-visible:before{width:.6rem;margin-right:.35rem}.footer-link:hover:after,.footer-link:focus-visible:after{width:100%}.footer-courses{flex-direction:column;gap:.6rem;display:flex}.footer-course{color:#fff5e6b8;font-size:var(--text-small);transition:color var(--transition-fast), border-color var(--transition-fast), transform var(--transition-fast);border-bottom:1px solid #c8a9511f;align-items:baseline;gap:.65rem;padding-bottom:.55rem;line-height:1.45;display:flex}.footer-course:last-child{border-bottom:none;padding-bottom:0}.footer-course__num{font-family:var(--font-display);font-size:var(--text-small);color:var(--color-accent);letter-spacing:.05em;flex-shrink:0;min-width:1.6rem;font-weight:700}.footer-course__name{transition:color var(--transition-fast);font-weight:500;display:block}.footer-course:hover{color:var(--color-accent-light);border-color:#c8a95159;transform:translate(2px)}.footer-course:hover .footer-course__num{color:var(--color-accent-light)}.footer-col--connect{flex-direction:column;display:flex}.footer-connect{flex-direction:column;align-items:flex-start;gap:.7rem;display:flex}.footer-pill{font-size:var(--text-small);letter-spacing:.02em;color:var(--color-accent-light);transition:background var(--transition-fast), color var(--transition-fast), border-color var(--transition-fast), transform var(--transition-fast), box-shadow var(--transition-fast);background:#c8a95114;border:1.5px solid #c8a95173;border-radius:50px;align-items:center;gap:.55rem;min-width:0;padding:.7rem 1.2rem;font-weight:600;display:inline-flex}.footer-pill__icon{flex-shrink:0;width:17px;height:17px}.footer-pill:hover,.footer-pill:focus-visible{transform:translateY(-3px);box-shadow:0 8px 22px #c8a95159}.footer-pill--instagram:hover,.footer-pill--instagram:focus-visible{background:linear-gradient(135deg, var(--color-primary) 0%, var(--color-secondary) 100%);color:var(--color-white);border-color:#0000;box-shadow:0 8px 22px #7a1f3d80}.footer-pill--whatsapp:hover,.footer-pill--whatsapp:focus-visible{background:var(--color-whatsapp);border-color:var(--color-whatsapp);color:var(--color-white);box-shadow:0 8px 22px #25d36673}.footer-pill--maps:hover,.footer-pill--maps:focus-visible{background:var(--gradient-gold);color:var(--color-dark);border-color:#0000;box-shadow:0 8px 22px #c8a95173}.footer-bottom{z-index:1;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#00000038;border-top:1px solid #c8a95147;padding:1.25rem 0;position:relative}.footer-bottom__inner{text-align:center;flex-direction:column;justify-content:space-between;align-items:center;gap:.5rem;display:flex}@media (min-width:760px){.footer-bottom__inner{text-align:left;flex-direction:row}}.footer-bottom__copy,.footer-bottom__crafted{font-size:var(--text-small);color:#fff5e6ad;letter-spacing:.01em;margin:0}.footer-bottom__crafted{font-style:italic}.site-footer{opacity:0;transition:opacity .7s,transform .7s;transform:translateY(28px)}.site-footer.site-footer--visible{opacity:1;transform:translateY(0)}.site-footer.site-footer--visible .footer-trust,.site-footer.site-footer--visible .footer-col--brand,.site-footer.site-footer--visible .footer-col:nth-child(2),.site-footer.site-footer--visible .footer-col:nth-child(3),.site-footer.site-footer--visible .footer-col--connect{animation:.7s both footerColRise}.site-footer.site-footer--visible .footer-trust{animation-delay:50ms}.site-footer.site-footer--visible .footer-col--brand{animation-delay:.15s}.site-footer.site-footer--visible .footer-col:nth-child(2){animation-delay:.25s}.site-footer.site-footer--visible .footer-col:nth-child(3){animation-delay:.35s}.site-footer.site-footer--visible .footer-col--connect{animation-delay:.45s}@keyframes footerColRise{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.site-footer{opacity:1;transition:none;transform:none}.site-footer.site-footer--visible .footer-trust,.site-footer.site-footer--visible .footer-col--brand,.site-footer.site-footer--visible .footer-col:nth-child(2),.site-footer.site-footer--visible .footer-col:nth-child(3),.site-footer.site-footer--visible .footer-col--connect{animation:none}.footer-sparkles span{opacity:.4;animation:none}.footer-trust__spark{animation:none}.footer-link,.footer-contact__row,.footer-course,.footer-pill{transition:none}.footer-link:hover,.footer-contact__row:hover,.footer-course:hover,.footer-pill:hover{transform:none}.footer-link:hover{padding-left:0}.footer-link:hover:before,.footer-link:hover:after{width:0}}@media (min-width:769px){.footer-courses-toggle{display:contents}.footer-courses-summary{display:none}}@media (max-width:768px){.footer-courses-toggle{border:1px solid #c8a9514d;border-radius:12px;overflow:hidden}.footer-courses-summary{font-family:var(--font-body);font-size:var(--text-small);color:var(--color-accent-light);cursor:pointer;transition:background var(--transition-fast);background:#c8a95114;justify-content:space-between;align-items:center;padding:.85rem 1.1rem;font-weight:600;list-style:none;display:flex}.footer-courses-summary::-webkit-details-marker{display:none}.footer-courses-summary:after{content:"▸";transition:transform var(--transition-fast);color:var(--color-accent);font-size:.85rem}.footer-courses-toggle[open] .footer-courses-summary:after{transform:rotate(90deg)}.footer-courses-toggle[open] .footer-courses-summary{border-bottom:1px solid #c8a95133}.footer-courses-toggle .footer-courses{padding:.5rem .75rem}.footer-connect{flex-direction:row;justify-content:center;gap:.75rem}.footer-pill{border-radius:50%;justify-content:center;width:44px;height:44px;padding:0}.footer-pill span:not(.footer-pill__icon){clip:rect(0,0,0,0);width:1px;height:1px;position:absolute;overflow:hidden}.footer-pill__icon{margin:0}}.footer-link:focus-visible,.footer-contact__row:focus-visible,.footer-pill:focus-visible{outline:2px solid var(--color-accent);outline-offset:4px;border-radius:6px}
.wa-fab,.scroll-to-top{--wa-size:54px;--call-size:46px;--wa-gap:12px;--wa-edge:24px;--stt-size:50px;--stt-gap:16px}@keyframes wa-pulse{0%{opacity:.3;transform:scale(1)}70%{opacity:0;transform:scale(1.6)}to{opacity:0;transform:scale(1.6)}}@keyframes wa-enter{0%{opacity:0;transform:translateY(24px)scale(.85)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes stt-enter{0%{opacity:0;transform:translateY(16px)scale(.85)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes wa-tooltip-in{0%{opacity:0;transform:translateY(-50%)translate(8px)}to{opacity:1;transform:translateY(-50%)translate(0)}}.wa-fab{right:var(--wa-edge);bottom:var(--wa-edge);z-index:50;align-items:center;gap:var(--wa-gap);opacity:0;pointer-events:none;will-change:transform, opacity;flex-direction:column;transition:opacity .45s cubic-bezier(.22,1,.36,1),transform .45s cubic-bezier(.22,1,.36,1);display:flex;position:fixed;transform:translateY(24px)scale(.85)}.wa-fab.is-visible{opacity:1;pointer-events:auto;animation:.55s cubic-bezier(.22,1,.36,1) both wa-enter;transform:translateY(0)scale(1)}.wa-fab>a{cursor:pointer;-webkit-tap-highlight-color:transparent;transition:transform var(--transition-base), box-shadow var(--transition-base), background var(--transition-base);border:none;border-radius:50%;outline:none;justify-content:center;align-items:center;padding:0;text-decoration:none;display:inline-flex;position:relative}.wa-fab>a:focus-visible{outline:3px solid var(--color-accent);outline-offset:4px}.wa-fab__call{width:var(--call-size);height:var(--call-size);background:var(--gradient-primary);color:var(--color-white);box-shadow:0 8px 20px #7a1f3d73,inset 0 0 0 1px #c8a95159}.wa-fab__call svg{stroke-width:2.4px;width:20px;height:20px}.wa-fab__call:hover{background:linear-gradient(135deg, var(--color-primary-dark) 0%, var(--color-primary-dark) 100%);transform:translateY(-2px)scale(1.05);box-shadow:0 12px 26px #7a1f3d8c,0 0 18px #c8a95173,inset 0 0 0 1px #c8a9518c}.wa-fab__call:active{transform:translateY(-1px)scale(.97)}.wa-fab__whatsapp{width:var(--wa-size);height:var(--wa-size);background:var(--color-whatsapp);color:var(--color-white);box-shadow:0 0 0 3px var(--color-dark), 0 4px 12px #0000004d;overflow:visible}.wa-fab__wa-icon{z-index:2;width:30px;height:30px;position:relative}.wa-fab__whatsapp:hover{background:var(--color-whatsapp-hover);transform:translateY(-3px)scale(1.04);box-shadow:0 16px 34px #25d3668c,0 6px 14px #2d0a1a3d}.wa-fab__whatsapp:active{transform:translateY(-1px)scale(.98)}.wa-fab__pulse{background:var(--color-whatsapp);opacity:0;z-index:1;pointer-events:none;border-radius:50%;animation:2.6s ease-out infinite wa-pulse;position:absolute;inset:0}.wa-fab__tooltip{background:var(--color-dark);color:var(--color-white);font-family:var(--font-body);font-size:var(--text-small);letter-spacing:.01em;white-space:nowrap;opacity:0;pointer-events:none;box-shadow:var(--shadow-card);transition:opacity var(--transition-base), transform var(--transition-base);z-index:3;border:1px solid #c8a9514d;border-radius:10px;padding:.5rem .85rem;font-weight:500;position:absolute;top:50%;right:calc(100% + 14px);transform:translateY(-50%)translate(8px)}.wa-fab__tooltip:after{content:"";border:6px solid #0000;border-left-color:var(--color-dark);position:absolute;top:50%;left:100%;transform:translateY(-50%)}.wa-fab__whatsapp:hover .wa-fab__tooltip,.wa-fab__whatsapp:focus-visible .wa-fab__tooltip{opacity:1;animation:.32s both wa-tooltip-in;transform:translateY(-50%)translate(0)}.scroll-to-top{right:var(--wa-edge);bottom:calc(var(--wa-edge) + var(--wa-size) + var(--wa-gap) + var(--call-size) + var(--stt-gap));z-index:51;cursor:pointer;-webkit-tap-highlight-color:transparent;opacity:0;pointer-events:none;transition:opacity var(--transition-base), transform var(--transition-base);will-change:transform, opacity;background:0 0;border:none;outline:none;justify-content:center;align-items:center;padding:0;display:inline-flex;position:fixed;transform:translateY(16px)scale(.85)}.scroll-to-top.is-visible{opacity:1;pointer-events:auto;animation:.4s cubic-bezier(.22,1,.36,1) both stt-enter;transform:translateY(0)scale(1)}.scroll-to-top:focus-visible{outline:3px solid var(--color-accent);outline-offset:4px;border-radius:50%}.scroll-to-top__inner{width:var(--stt-size);height:var(--stt-size);background:var(--gradient-primary);color:var(--color-white);transition:transform var(--transition-base), box-shadow var(--transition-base), color var(--transition-base);border-radius:50%;justify-content:center;align-items:center;display:inline-flex;position:relative;overflow:hidden;box-shadow:0 8px 22px #7a1f3d66,inset 0 0 0 1px #c8a95159}.scroll-to-top__inner:before{content:"";background:var(--gradient-gold);opacity:0;transition:opacity var(--transition-base);z-index:0;position:absolute;inset:0}.scroll-to-top__inner:after{content:"";pointer-events:none;z-index:1;border:1px solid #c8a95166;border-radius:50%;position:absolute;inset:2px}.scroll-to-top__inner svg{stroke-width:2.6px;z-index:2;width:22px;height:22px;transition:transform var(--transition-base);position:relative}.scroll-to-top:hover .scroll-to-top__inner{color:var(--color-white);transform:translateY(-4px)scale(1.06);box-shadow:0 14px 30px #7a1f3d80,0 0 22px #c8a9518c,inset 0 0 0 1px #c8a95199}.scroll-to-top:hover .scroll-to-top__inner:before{opacity:.4}.scroll-to-top:hover .scroll-to-top__inner svg{transform:translateY(-2px)}.scroll-to-top:active .scroll-to-top__inner{transform:translateY(-1px)scale(.98)}@media (max-width:480px){.wa-fab,.scroll-to-top{--wa-size:48px;--call-size:42px;--wa-gap:10px;--wa-edge:16px;--stt-size:46px;--stt-gap:12px}.wa-fab__wa-icon{width:27px;height:27px}.wa-fab__call svg{width:18px;height:18px}.scroll-to-top__inner svg{width:20px;height:20px}.wa-fab__tooltip{display:none}}@media (hover:none){.wa-fab__tooltip{display:none}}@media (max-width:768px){.wa-fab__whatsapp{background:var(--color-dark);box-shadow:0 0 0 3px var(--color-dark), 0 4px 12px #0000004d}.wa-fab__whatsapp:hover{background:var(--color-primary-dark)}}@media (prefers-reduced-motion:reduce){.wa-fab__pulse{opacity:0!important;animation:none!important}.wa-fab,.wa-fab.is-visible,.scroll-to-top,.scroll-to-top.is-visible{animation:none!important}.wa-fab,.scroll-to-top,.wa-fab>a,.wa-fab__call,.wa-fab__whatsapp,.wa-fab__tooltip,.scroll-to-top__inner,.scroll-to-top__inner svg{transition-duration:.01ms!important}html{scroll-behavior:auto}}
