:root { --color-navy: #23445C; --color-sage: #4C5B3C; --color-light-sage: #E8EDE1; --color-cream: #FAF8F4; --color-text: #18364C; --color-white: #FFFFFF; --color-border: rgba(35, 68, 92, 0.12); --color-text-alt: #3F4A4F; --color-border-soft: #DCE2D6; --color-shadow-soft: 0 10px 30px rgba(35, 68, 92, 0.09); --font-main: 'Montserrat', system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; --transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1); --shadow-sm: 0 2px 8px rgba(35, 68, 92, 0.04); --shadow-md: 0 6px 20px rgba(35, 68, 92, 0.08); --shadow-lg: 0 12px 32px rgba(35, 68, 92, 0.15); --radius: 12px; --radius-lg: 20px; } *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; } html { scroll-behavior: smooth; } body { font-family: var(--font-main); background-color: var(--color-cream); color: var(--color-text); line-height: 1.6; -webkit-font-smoothing: antialiased; } a { color: inherit; text-decoration: none; transition: var(--transition); } ul { list-style: none; } .btn { display: inline-flex; align-items: center; justify-content: center; padding: 0.85rem 1.75rem; border-radius: var(--radius); font-weight: 600; font-size: 0.95rem; cursor: pointer; border: 1px solid transparent; transition: var(--transition); min-height: 48px; text-align: center; gap: 0.5rem; white-space: nowrap; font-family: var(--font-main); } .btn-primary { background-color: var(--color-navy); color: var(--color-white); } .btn-primary:hover { background-color: #172e3f; color: var(--color-white); transform: translateY(-2px); } .btn-secondary { background-color: var(--color-sage); color: var(--color-white) !important; } .btn-secondary:hover { background-color: #788b66; color: var(--color-white); transform: translateY(-2px); } .btn-outline { color: var(--color-navy); border: 1px solid var(--color-navy); background: transparent; } .lang-switch { display: inline-flex; align-items: center; gap: 4px; background: var(--color-white); border: 1.5px solid var(--color-sage); border-radius: 30px; padding: 4px; } .lang-item { display: inline-flex; align-items: center; gap: 0.4rem; padding: 0.3rem 0.75rem 0.3rem 0.3rem; border-radius: 24px; font-size: 0.82rem; font-weight: 600; color: var(--color-text); opacity: 1; white-space: nowrap; transition: var(--transition); } a.lang-item:hover { opacity: 0.9; } .lang-item.active { opacity: 1; color: var(--color-white); background: var(--color-sage); cursor: default; } .lang-flag { display: inline-flex; align-items: center; justify-content: center; line-height: 1; width: 22px; height: 22px; flex-shrink: 0; border-radius: 50%; overflow: hidden; box-shadow: 0 0 0 2px var(--color-white), 0 0 0 3px rgba(35, 68, 92, 0.14); transition: var(--transition); } .lang-item.active .lang-flag { box-shadow: 0 0 0 2px var(--color-sage), 0 0 0 3px rgba(255, 255, 255, 0.55); } .lang-flag svg { display: block; width: 100%; height: 100%; } .footer-socials { margin-top: 0.75rem; display: flex; justify-content: center; gap: 1.5rem; } .footer-socials a { color: var(--color-light-sage); font-weight: 500; } .footer-socials a:hover { color: var(--color-white); text-decoration: underline; } .svg-defs-hidden { position: absolute; } .nav-cta-btn { padding: 0.6rem 1.25rem; } .mobile-drawer-logo { width: 130px; height: auto; } .lang-switch-drawer { margin-bottom: 1.25rem; } .btn-full-width { width: 100%; } .about-highlight { background-color: var(--color-light-sage); border-radius: var(--radius); padding: 2rem; text-align: center; } .about-highlight-title { font-weight: 700; color: var(--color-navy); font-size: 1.2rem; margin-bottom: 0.5rem; } .about-highlight-text { font-size: 0.95rem; color: var(--color-text); } .section-alt { background-color: rgba(232, 237, 225, 0.2); } .offer-card-accent-border { border-color: var(--color-sage); } .offer-cta-wrapper { margin-top: 2.5rem; } .growth-title { font-size: 1.6rem; } .mb-2rem { margin-bottom: 2rem; } .team-subtitle-tight { margin-bottom: 0.15rem; } .updates-subtitle { margin-bottom: 1.75rem; } .contact-intro-text { margin-top: 0.5rem; opacity: 0.9; } .btn-cta-lg { font-size: 1.05rem; padding: 1rem 2rem; } .js-hidden { display: none; } .selected-class-label { font-size: 0.85rem; color: var(--color-sage); font-weight: 700; text-transform: uppercase; } .btn-compact { min-height: 36px; padding: 0.4rem 1rem; font-size: 0.8rem; } .mt-1rem { margin-top: 1rem; } .form-label-block { display: block; margin-bottom: 0.75rem; } .checkbox-grid-spacing { margin-bottom: 1.5rem; } .checkbox-label-center { align-items: center; } .field-hint-text { font-size: 0.8rem; color: var(--color-text-alt); margin-top: 0.5rem; margin-left: 28px; } .btn-submit-full { width: 100%; font-size: 1.1rem; padding: 1rem; } .alt-contact-header { margin-bottom: 2.5rem; } .final-cta-container { text-align: center; } .final-cta-tagline { font-size: 1.25rem; font-weight: 700; color: var(--color-sage); margin-bottom: 0.5rem; } .final-cta-button { padding: 1rem 2.5rem; font-size: 1.05rem; } .hp-field { display: none; } .sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; } .popup-overlay[aria-hidden="true"],.mobile-drawer[aria-hidden="true"],.drawer[aria-hidden="true"],.course-modal[aria-hidden="true"] { visibility:hidden; pointer-events:none; transition:opacity 0.3s ease,visibility 0s linear 0.3s; } .popup-overlay[aria-hidden="false"],.mobile-drawer[aria-hidden="false"],.drawer[aria-hidden="false"],.course-modal[aria-hidden="false"] { visibility:visible; transition:opacity 0.3s ease,visibility 0s linear 0s; } *, *::before, *::after { font-family:var(--font-main); } input::placeholder,textarea::placeholder { font-family:inherit; }