@import"https://fonts.googleapis.com/css2?family=Poppins:wght@500;600;700;800&family=Inter:ital,wght@0,300;0,400;0,500;0,600;0,700;1,400&display=swap";.section-title{margin-bottom:var(--space-xl);max-width:800px}.section-title--center{margin-left:auto;margin-right:auto;text-align:center}.section-title--left{text-align:left}.section-title--right{text-align:right;margin-left:auto}.section-title__subtitle{display:block;font-size:.85rem;font-weight:var(--font-semibold);color:var(--color-primary);letter-spacing:var(--tracking-wide);margin-bottom:var(--space-xs);text-transform:uppercase}.section-title__heading{font-size:clamp(2rem,5vw,3rem);line-height:1.1;margin-bottom:var(--space-sm);color:var(--color-text)}.section-title__description{font-size:1.1rem;color:var(--color-text-muted);line-height:var(--leading-normal);margin-bottom:0}.section-title--light .section-title__heading,.section-title--light .section-title__description{color:#fff}.section-title--light .section-title__subtitle{color:var(--color-primary-light)}@media(max-width:768px){.section-title{margin-bottom:var(--space-lg)}}.card{height:100%;background:var(--color-surface);border-radius:var(--radius-md);overflow:hidden;border:1px solid var(--color-gray-200);transition:border-color var(--transition-fast)}.card:hover{border-color:var(--color-primary)}.card__link{display:flex;flex-direction:column;height:100%;text-decoration:none;color:inherit}.card__image{position:relative;aspect-ratio:4 / 3;overflow:hidden}.card__image img{width:100%;height:100%;object-fit:cover;transition:transform var(--transition-slow)}.card:hover .card__image img{transform:scale(1.04)}.card__overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.4),transparent);opacity:0;transition:opacity var(--transition-base)}.card:hover .card__overlay{opacity:1}.card__content{padding:var(--space-lg);display:flex;flex-direction:column;flex-grow:1}.card__title{font-size:1.25rem;margin-bottom:var(--space-2xs);font-family:var(--font-body);font-weight:var(--font-bold);color:var(--color-text);transition:color var(--transition-fast)}.card:hover .card__title{color:var(--color-primary)}.card__description{font-size:.95rem;color:var(--color-text-muted);line-height:var(--leading-snug);margin-bottom:var(--space-md);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;line-clamp:3;overflow:hidden}.card__cta{margin-top:auto;display:inline-flex;align-items:center;transition:gap var(--transition-base)}.card:hover .card__cta{gap:var(--space-md)}.card__cta svg{transition:transform var(--transition-base)}.card:hover .card__cta svg{transform:translate(4px)}.page-hero{position:relative;height:46vh;min-height:380px;display:flex;align-items:center;justify-content:center;overflow:hidden;background-color:var(--color-secondary-dark)}.page-hero__background{position:absolute;inset:-10% 0 0;overflow:hidden;height:120%;width:100%}.page-hero__image-picture{position:absolute;top:0;left:0;width:100%;height:100%}.page-hero__image{width:100%;height:100%;object-fit:cover;object-position:center;transform:scale(1.1);filter:grayscale(.35) contrast(1.05) brightness(.92)}.page-hero__overlay{position:absolute;inset:0;z-index:1;background:radial-gradient(70% 45% at 50% 118%,rgba(213,43,32,.18),transparent 70%),radial-gradient(125% 125% at 50% 8%,transparent 38%,rgba(8,8,8,.62) 100%),linear-gradient(to bottom,#0c0c0c8c,#0c0c0c2e 45%,#0c0c0cb8)}.page-hero__content{position:relative;z-index:var(--z-elevated);width:100%;display:flex;justify-content:center;text-align:center}.page-hero__text-wrapper{max-width:1000px;width:100%;margin:0 auto;padding:0 var(--space-md);display:flex;flex-direction:column;align-items:center}.page-hero__subtitle{display:block;font-family:var(--font-body);color:#ffffffeb;font-size:.8rem;font-weight:500;margin-bottom:var(--space-sm);letter-spacing:var(--tracking-widest);text-transform:uppercase}.page-hero__divider{display:block;width:54px;height:1px;margin:0 auto var(--space-md);background-color:var(--color-primary)}.page-hero__title{font-family:var(--font-heading);font-size:clamp(2rem,4vw,4rem);line-height:1.2;color:var(--color-primary);margin-bottom:var(--space-lg);font-weight:400;letter-spacing:.03em;white-space:pre-line}.page-hero__description{font-size:1.25rem;color:#ffffffe6;margin-bottom:var(--space-lg);max-width:700px;line-height:var(--leading-normal);font-family:var(--font-body);font-weight:var(--font-light);letter-spacing:.03em}@media(max-width:768px){.page-hero{height:42vh;min-height:300px}}.loading-container{display:flex;align-items:center;justify-content:center;min-height:400px;height:100vh;width:100%;background-color:var(--color-background)}.loading-content{display:flex;flex-direction:column;align-items:center;gap:2rem}.loading-logo-wrapper{position:relative;width:80px;height:80px;display:flex;align-items:center;justify-content:center}.loading-ring{position:absolute;width:100%;height:100%;border:2px solid transparent;border-top-color:var(--color-primary);border-right-color:var(--color-primary);border-radius:50%}.loading-core{width:20px;height:20px;background-color:var(--color-primary);border-radius:50%;box-shadow:0 0 15px #c9a96266}.loading-content p{font-family:var(--font-heading);color:var(--color-text);letter-spacing:.2rem;text-transform:uppercase;font-size:.875rem;margin:0}.language-switcher{position:relative;z-index:var(--z-dropdown)}.language-switcher__trigger{display:flex!important;align-items:center!important;justify-content:center!important;gap:4px;width:auto!important;padding:0 8px!important;border-radius:var(--radius-sm, 4px);transition:background-color var(--transition-fast)!important}.language-switcher__trigger:hover{background-color:var(--color-gray-50, #f9f9f9)!important;opacity:1!important}.language-switcher__chevron{transition:transform var(--transition-fast, .2s) ease;color:currentColor;margin-top:1px}.language-switcher__chevron.open{transform:rotate(180deg)}.language-switcher__code{font-family:var(--font-body);font-size:.8rem;font-weight:600;letter-spacing:var(--tracking-tight);line-height:1}.language-switcher__dropdown{position:absolute;top:130%;right:-.5rem;background:var(--color-surface);border:none;border-radius:var(--radius-sm);box-shadow:0 10px 40px #0000001a;padding:.5rem 0;min-width:180px;display:flex;flex-direction:column;animation:fadeIn .2s ease-out}.language-switcher__option{display:flex;align-items:center;gap:.75rem;background:none;border:none;text-align:left;padding:.75rem 1.25rem;font-family:var(--font-body);font-size:.85rem;color:var(--color-text);cursor:pointer;width:100%;transition:all var(--transition-fast)}.language-switcher__option:hover{background-color:var(--color-gray-50);color:var(--color-primary)}.language-switcher__option.active{color:var(--color-primary);font-weight:600;background-color:transparent}.lang-code{font-size:.75rem;font-weight:700;letter-spacing:var(--tracking-tight);line-height:1;min-width:1.75rem}.lang-label{line-height:1}@keyframes fadeIn{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.language-switcher__flag{width:18px;height:12.6px;flex-shrink:0;display:block;border-radius:1.5px;box-shadow:0 0 0 1px #00000024}.language-switcher__option .language-switcher__flag{width:20px;height:14px}.class-schedule{width:100%;margin:var(--space-xl) 0;background-color:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);overflow:hidden;border:1px solid var(--color-gray-200)}.table-responsive-wrapper{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.schedule-table{width:100%;border-collapse:collapse;min-width:900px;text-align:left;font-family:var(--font-body)}.schedule-table th,.schedule-table td{padding:var(--space-md);border:1px solid var(--color-gray-200);vertical-align:top}.schedule-table th{background-color:var(--color-background-soft);font-family:var(--font-heading);font-weight:500;color:var(--color-primary);text-transform:uppercase;font-size:.9rem;letter-spacing:var(--tracking-tight);white-space:nowrap}.schedule-table tbody tr{transition:background-color var(--transition-fast)}.schedule-table tbody tr:hover{background-color:var(--color-background-soft)}.sticky-col{position:sticky;left:0;background-color:var(--color-background-soft);z-index:10;border-right:2px solid var(--color-gray-300)}.schedule-table tbody .sticky-col{background-color:var(--color-surface)}.schedule-table tbody tr:hover .sticky-col{background-color:var(--color-background-soft)}.time-col{font-weight:600;color:var(--color-text);white-space:nowrap}.schedule-cell-empty{color:var(--color-gray-400);text-align:center;font-weight:500}.schedule-cell-content{display:flex;flex-direction:column;gap:var(--space-sm)}.schedule-class-item{font-size:.8rem;font-weight:600;padding:.6rem .8rem;border-radius:var(--radius-sm);line-height:1.3;word-break:break-word;color:#fff;box-shadow:var(--shadow-sm);text-align:center}.teacher-pepito{background-color:#a01122;color:#fff}.teacher-stefani{background-color:#d32f2f;color:#fff}.teacher-fanny{background-color:#f06292;color:#fff}.teacher-yulia{background-color:#1976d2;color:#fff}.teacher-airinda{background-color:#4fc3f7;color:var(--color-text)}.teacher-aisya{background-color:navy;color:#fff}.header{position:sticky;top:0;left:0;right:0;z-index:var(--z-header);background-color:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border-bottom:1px solid var(--glass-border);box-shadow:var(--shadow-sm);transition:all var(--transition-base)}.header__container{max-width:var(--container-max);margin:0 auto;padding:.75rem 2rem;display:flex;align-items:center;justify-content:space-between;position:relative;height:75px;transition:all var(--transition-base)}.header--scrolled .header__container{height:65px}.header__cta{padding:.5rem 1.25rem!important;font-size:.75rem!important;font-weight:700!important;letter-spacing:var(--tracking-tight);border-radius:var(--radius-sm)}@media(max-width:480px){.header__cta{display:none}}.header__left{display:flex;align-items:center;z-index:2;flex:1}.hamburger-icon{display:none}.header__center{position:absolute;left:50%;transform:translate(-50%);display:flex;align-items:center;justify-content:center;z-index:1}.header__logo{display:block;text-decoration:none}.logo-clip{display:block;overflow:hidden;width:208px;height:40px;flex-shrink:0}.logo-image{height:40px;width:auto;display:block;transition:height var(--transition-base)}.header--scrolled .logo-clip{width:166px;height:32px}.header--scrolled .logo-image{height:32px}.header__logo:hover .logo-image{transform:scale(1.02)}.header__right{display:flex;justify-content:flex-end;align-items:center;gap:var(--space-md)}.header__actions{display:flex;align-items:center;gap:var(--space-md)}.header__icon-btn{display:flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;background:transparent;border:none;color:#000;cursor:pointer;transition:opacity var(--transition-fast)}.header__icon-btn:hover{opacity:.5;background:transparent;box-shadow:none}.header__icon-btn svg{display:block}.overlay-menu{position:fixed;inset:0;background:var(--color-background);z-index:var(--z-modal);display:flex;flex-direction:column;overflow-y:auto}.overlay-menu__header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-md) var(--container-padding)}.overlay-menu__close{color:#000}.overlay-menu__content{flex-grow:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-2xl) var(--container-padding)}.overlay-menu__nav{display:flex;flex-direction:column;align-items:center;gap:var(--space-lg);text-align:center}.overlay-nav-link{font-family:var(--font-body);font-size:.85rem;letter-spacing:var(--tracking-wider);font-weight:500;color:var(--color-text);text-decoration:none;transition:color var(--transition-base);line-height:var(--leading-snug)}.overlay-nav-link:hover,.overlay-nav-link--active{color:var(--color-primary)}.header__logo--desktop,.header__nav-desktop,.header__cta-btn{display:none}@media(min-width:1024px){.header__menu-btn{display:none!important}.header__left{flex:0 0 auto!important;min-width:0}.header__logo--desktop{display:block}.header__center--mobile{display:none!important}.header__nav-desktop{display:flex;align-items:center;gap:1.5rem;flex:1 1 auto;justify-content:center;height:100%}.header__nav-link{font-family:var(--font-body);font-size:var(--text-sm);font-weight:500;letter-spacing:var(--tracking-wider);color:var(--color-text);text-decoration:none;padding:.5rem .25rem;position:relative;transition:color var(--transition-base)}.header__nav-link:hover{color:var(--color-primary)}.header__nav-link--active{color:var(--color-primary);font-weight:600}.header__nav-link-indicator{position:absolute;bottom:-4px;left:0;right:0;height:2px;background-color:var(--color-primary);border-radius:2px}.header__right{flex:0 0 auto!important;gap:var(--space-md)}.header__cta-btn{display:inline-flex;align-items:center;justify-content:center;padding:.5rem 1.25rem;font-family:var(--font-body);font-size:.75rem;font-weight:600;letter-spacing:var(--tracking-wider);color:var(--color-primary);background-color:var(--color-surface);border:2px solid var(--color-primary);border-radius:var(--radius-sm);text-decoration:none;transition:background-color var(--transition-fast),color var(--transition-fast)}.header__cta-btn:hover{background-color:var(--color-primary);color:var(--color-text-on-dark)}}@media(max-width:768px){.header__container{height:70px;padding:1rem var(--container-padding-mobile)}.header__menu-text{display:none}.logo-clip{width:166px;height:32px}.logo-image{height:32px}.overlay-menu__content{padding:var(--space-xl) var(--container-padding-mobile)}.overlay-menu__nav{gap:var(--space-md)}.header__icon-btn{width:48px;height:48px}}.footer-sylvan{background-color:var(--color-background);border-top:1px solid var(--color-gray-200);padding-top:var(--space-4xl);padding-bottom:var(--space-xl);color:var(--color-text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}.footer-sylvan__container{max-width:var(--container-max);margin:0 auto;padding:0 var(--space-md)}.footer-sylvan__grid{display:grid;gap:var(--space-3xl)}@media(min-width:768px){.footer-sylvan__grid{grid-template-columns:repeat(6,1fr)}}@media(min-width:768px){.footer-sylvan__brand{grid-column:span 2 / span 2}}.footer-sylvan__logo{display:block;width:fit-content;height:40px}.footer-sylvan__logo img{height:100%;width:auto}.footer-sylvan__motto{margin-top:var(--space-lg);max-width:280px}.footer-sylvan__motto p{font-family:var(--font-heading);font-size:1.25rem;line-height:1.4;color:var(--color-primary);margin-bottom:var(--space-xs);font-weight:500}.footer-sylvan__location-meta{font-size:.8rem;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:var(--tracking-normal)}@media(max-width:768px){.footer-sylvan__motto{width:100%;max-width:none;margin-bottom:var(--space-lg)}.footer-sylvan__nav-cols{grid-template-columns:1fr;gap:var(--space-lg)}}.footer-sylvan__nav-cols{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-md)}@media(min-width:768px){.footer-sylvan__nav-cols{grid-column:span 3 / span 3;gap:var(--space-md)}}.footer-sylvan__nav-group{display:flex;flex-direction:column;gap:var(--space-sm)}.footer-sylvan__nav-title{display:block;font-weight:var(--font-medium);font-size:var(--text-base);color:var(--color-text);margin-bottom:var(--space-xs)}.footer-sylvan__nav-link{color:var(--color-text-muted);text-decoration:none;transition:color var(--transition-fast);font-size:var(--text-sm);display:block}.footer-sylvan__nav-link--contact{display:flex;align-items:center;gap:.5rem}.footer-sylvan__nav-icon{width:16px;height:16px;color:#25d366}.footer-sylvan__nav-link:hover{color:var(--color-primary)}.footer-sylvan__bottom{margin-top:var(--space-3xl);padding-top:var(--space-md);border-top:1px solid var(--color-gray-200);display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:var(--space-md)}.footer-sylvan__bottom-left{display:flex;flex-direction:column;gap:var(--space-xs);align-items:center;order:2;width:100%}.footer-sylvan__copyright{color:var(--color-text-muted);font-size:var(--text-sm);text-align:center}.footer-sylvan__legal{display:flex;align-items:center;gap:var(--space-md)}.footer-sylvan__legal-link{color:var(--color-text-muted);font-size:var(--text-sm);text-decoration:underline;transition:color var(--transition-fast)}.footer-sylvan__legal-link:hover{color:var(--color-primary)}.footer-sylvan__socials{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-md);order:1;width:100%}@media(min-width:768px){.footer-sylvan__bottom{padding-top:var(--space-lg)}.footer-sylvan__bottom-left{order:1;width:auto;align-items:flex-start}.footer-sylvan__copyright{text-align:left}.footer-sylvan__socials{order:2;width:auto;justify-content:flex-end}}.footer-sylvan__social-link{color:var(--color-text-muted);transition:color var(--transition-fast);display:flex;align-items:center;justify-content:center;min-width:48px;min-height:48px}.footer-sylvan__social-link:hover{color:var(--color-primary)}.footer-sylvan__social-icon{width:24px;height:24px}.layout{display:flex;flex-direction:column;min-height:100vh}.main-content{flex:1}:root{--color-background: #fdfcf9;--color-background-soft: #f4f2eb;--color-background-alt: #e9e6dc;--color-surface: #ffffff;--color-surface-hover: #faf9f6;--color-primary: #ec2127;--color-primary-hover: #d1161c;--color-primary-light: #f04a4f;--color-primary-dark: #aa050e;--color-secondary: #575756;--color-secondary-light: #929292;--color-secondary-dark: #333333;--color-sage: #929292;--color-sage-light: #f0f0f0;--color-gray-50: #fcfbf9;--color-gray-100: #f7f6f2;--color-gray-200: #eadecf;--color-gray-300: #d5ccbe;--color-gray-400: #a79e92;--color-gray-500: #7b7367;--color-gray-600: #625c52;--color-gray-700: #49453e;--color-gray-800: #302e29;--color-gray-900: #1b1a17;--color-text: #333333;--color-text-muted: #575756;--color-text-light: #929292;--color-text-on-dark: #ffffff;--color-success: #5c7f66;--color-error: #bf5a3b;--color-warning: #bda15c;--color-info: #5b7da8;--glass-bg: rgba(253, 252, 249, .85);--glass-bg-dark: rgba(51, 51, 51, .88);--glass-border: rgba(51, 51, 51, .08);--glass-blur: blur(12px);--font-heading: "Poppins", "Helvetica Neue", Helvetica, Arial, sans-serif;--font-body: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: clamp(1.125rem, 1.09rem + .16vw, 1.22rem);--text-xl: clamp(1.25rem, 1.2rem + .25vw, 1.4rem);--text-2xl: clamp(1.5rem, 1.35rem + .75vw, 2rem);--text-3xl: clamp(1.75rem, 1.45rem + 1.5vw, 2.75rem);--text-4xl: clamp(2.2rem, 1.9rem + 1.5vw, 3.2rem);--text-5xl: clamp(2.75rem, 2.3rem + 2.2vw, 4rem);--tracking-tight: 0;--tracking-normal: .01em;--tracking-wide: .04em;--tracking-wider: .06em;--tracking-widest: .4em;--leading-tight: 1.15;--leading-snug: 1.5;--leading-normal: 1.5;--leading-relaxed: 1.6;--leading-loose: 1.7;--color-accent: var(--color-primary-light);--color-border: var(--color-gray-200);--font-light: 300;--font-normal: 400;--font-medium: 500;--font-semibold: 600;--font-bold: 700;--font-black: 800;--space-3xs: .25rem;--space-2xs: clamp(.5rem, .48rem + .1vw, .6rem);--space-xs: clamp(.7rem, .66rem + .18vw, .85rem);--space-sm: clamp(.9rem, .85rem + .25vw, 1.1rem);--space-md: clamp(1.2rem, 1.1rem + .5vw, 1.6rem);--space-lg: clamp(1.6rem, 1.45rem + .75vw, 2.2rem);--space-xl: clamp(2rem, 1.8rem + 1vw, 2.75rem);--space-2xl: clamp(2.5rem, 2.2rem + 1.5vw, 3.5rem);--space-3xl: clamp(3rem, 2.6rem + 2vw, 4.5rem);--space-4xl: clamp(2.5rem, 2.2rem + 1.5vw, 3.5rem);--space-5xl: clamp(3.5rem, 3rem + 2.5vw, 5.5rem);--container-max: 1260px;--container-text: 960px;--container-padding: clamp(1.25rem, .9rem + 1.6vw, 2rem);--container-padding-mobile: 1.25rem;--radius-xs: 2px;--radius-sm: 3px;--radius-md: 6px;--radius-lg: 8px;--radius-xl: 12px;--radius-full: 9999px;--transition-fast: .15s cubic-bezier(.16, 1, .3, 1);--transition-base: .3s cubic-bezier(.16, 1, .3, 1);--transition-slow: .5s cubic-bezier(.16, 1, .3, 1);--shadow-sm: 0 1px 2px rgba(20, 20, 19, .05);--shadow-md: 0 4px 12px rgba(20, 20, 19, .05);--shadow-lg: 0 12px 24px rgba(20, 20, 19, .05);--shadow-xl: 0 24px 48px rgba(20, 20, 19, .05);--shadow-inner: inset 0 1px 3px rgba(20, 20, 19, .05);--z-negative: -1;--z-elevated: 1;--z-header: 1000;--z-dropdown: 1100;--z-modal-bg: 2000;--z-modal: 2100;--z-toast: 3000}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px;overflow-x:hidden}body{font-family:var(--font-body);font-weight:var(--font-normal);line-height:var(--leading-normal);color:var(--color-text);background-color:var(--color-background);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:var(--font-semibold);line-height:var(--leading-tight);letter-spacing:-.015em;color:var(--color-text);text-wrap:balance}h1{font-size:var(--text-5xl);font-weight:var(--font-black)}h2{font-size:var(--text-4xl);font-weight:var(--font-bold)}h3{font-size:var(--text-3xl)}h4{font-size:var(--text-2xl)}h5{font-size:var(--text-xl)}h6{font-size:var(--text-lg)}p{max-width:65ch;margin-bottom:1.25em}a{color:inherit;text-decoration:none;transition:all var(--transition-fast)}img,video{max-width:100%;height:auto;display:block;border-radius:var(--radius-md)}.img-wrapper{position:relative;overflow:hidden;border-radius:var(--radius-md);background-color:var(--color-background-soft);display:block}.img-wrapper img{width:100%;height:100%;object-fit:cover;transition:transform var(--transition-slow)}.img-wrapper:after{content:"";position:absolute;inset:0;background:transparent;pointer-events:none;transition:opacity var(--transition-base)}.img-wrapper:hover img{transform:scale(1.05)}button{font-family:inherit;cursor:pointer;border:none;background:none;outline:none}ul,ol{list-style:none}.container{width:100%;max-width:var(--container-max);margin:0 auto;padding:0 var(--container-padding)}.container--text{max-width:var(--container-text)}.section{padding:var(--space-2xl) 0}.section-tight{padding:var(--space-lg) 0}.text-center{text-align:center}.text-right{text-align:right}.text-primary{color:var(--color-primary)}.text-muted{color:var(--color-text-muted)}.text-small{font-size:var(--text-sm)}.text-uppercase{text-transform:uppercase;letter-spacing:var(--tracking-normal)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2xs);padding:.7rem 1.35rem;font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--font-medium);letter-spacing:var(--tracking-tight);text-transform:none;border-radius:var(--radius-sm);transition:background var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast);cursor:pointer;white-space:nowrap}.btn-primary{background:var(--color-primary);color:var(--color-text-on-dark);border:1px solid var(--color-primary)}.btn-primary:hover{background:var(--color-primary-hover);border-color:var(--color-primary-hover)}.btn-outline{background:var(--color-surface);color:var(--color-primary);border:2px solid var(--color-primary)}.btn-outline:hover{background:var(--color-primary);color:var(--color-text-on-dark)}.btn-ghost{background:transparent;color:var(--color-text)}.btn-ghost:hover{background:var(--color-gray-100)}.glass{background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border)}@media(max-width:768px){html{font-size:16px}h1{font-size:var(--text-3xl)}h2{font-size:1.875rem}h3{font-size:var(--text-2xl)}h4{font-size:var(--text-xl)}h5{font-size:var(--text-lg)}h6{font-size:var(--text-base)}p{font-size:var(--text-base);line-height:var(--leading-normal)}.container{padding:0 var(--container-padding-mobile)}.section{padding:var(--space-xl) 0}.section-tight{padding:var(--space-lg) 0}.btn{padding:.75rem 1.5rem;font-size:.85rem;min-height:44px}}.loader{width:48px;height:48px;display:inline-flex;align-items:center;justify-content:center;position:relative}.loader:after{content:"✦";font-size:32px;color:var(--color-primary);animation:rotation 2s cubic-bezier(.68,-.55,.265,1.55) infinite}@keyframes rotation{0%{transform:rotate(0) scale(.8)}50%{transform:rotate(180deg) scale(1.2)}to{transform:rotate(360deg) scale(.8)}}.skeleton{background:linear-gradient(90deg,#0000000d 25%,#0000001a 37%,#0000000d 63%);background-size:400% 100%;animation:skeleton-loading 1.4s ease infinite}@keyframes skeleton-loading{0%{background-position:100% 50%}to{background-position:0% 50%}}
