:root{--color-primary:#31298C;--color-primary-hover:#594ECC;--color-dark-navy:#122658;--color-light-bg:#F2F3F3;--color-body-text:#7F7F90;--color-headings:#000000;--color-white:#FFFFFF;--color-amber:#FFBC7D;--font-heading:'Raleway',sans-serif;--font-body:'Poppins',sans-serif}.skip-link{position:absolute;left:-9999px;top:auto;z-index:9999;padding:8px 16px;background:var(--color-primary);color:var(--color-white);font-size:14px;font-weight:600;text-decoration:none;border-radius:0 0 4px}.skip-link:focus{left:0;top:0;color:var(--color-white)}.accordion-header:focus-visible,.btn:focus-visible,[tabindex]:focus-visible,a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--color-primary);outline-offset:2px}:focus:not(:focus-visible){outline:0}*,::after,::before{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-body);font-size:16px;line-height:1.7;color:var(--color-body-text);background:var(--color-white)}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);color:var(--color-headings);font-weight:700;line-height:1.3}h1{font-size:2.5rem}h2{font-size:2rem}h3{font-size:1.5rem}h4{font-size:1.25rem}a{color:var(--color-primary);text-decoration:none;transition:color .3s}a:hover{color:var(--color-primary-hover)}img{max-width:100%;height:auto}.container{max-width:1200px;margin:0 auto;padding:0 20px}.btn{display:inline-block;padding:12px 32px;font-family:var(--font-body);font-size:15px;font-weight:500;border-radius:7px;border:1px solid transparent;cursor:pointer;transition:.3s;text-decoration:none;line-height:1.5}.btn-primary{background:var(--color-primary);color:var(--color-white);border-color:var(--color-primary)}.btn-primary:hover{background:var(--color-primary-hover);color:var(--color-white);border-color:var(--color-primary-hover)}.btn-outline{background:0 0;color:var(--color-white);border-color:var(--color-white)}.btn-outline:hover{background:var(--color-white);color:var(--color-primary)}.btn-sm{padding:8px 20px;font-size:14px}.btn-lg{padding:16px 40px;font-size:17px}.site-header{position:sticky;top:0;z-index:1000;background:var(--color-white);box-shadow:0 2px 10px rgba(0,0,0,.08)}.site-header .container{display:flex;align-items:center;justify-content:space-between;padding-top:12px;padding-bottom:12px}.site-logo img{height:50px;width:auto}.main-nav{display:flex;align-items:center;gap:8px;list-style:none}.main-nav a{color:var(--color-headings);font-family:var(--font-body);font-size:15px;font-weight:500;padding:8px 16px;transition:color .3s}.main-nav a:hover{color:var(--color-primary)}.nav-dropdown{position:relative}.nav-dropdown .dropdown-menu{display:none;position:absolute;top:100%;left:0;background:var(--color-white);box-shadow:0 4px 20px rgba(0,0,0,.1);border-radius:8px;padding:8px 0;min-width:220px;z-index:100;list-style:none}.nav-dropdown:hover .dropdown-menu{display:block}.dropdown-menu a{display:block;padding:10px 20px;font-size:14px}.dropdown-menu a:hover{background:var(--color-light-bg)}.nav-toggle{display:none;background:0 0;border:none;font-size:24px;cursor:pointer;padding:8px;color:var(--color-headings)}.nav-toggle span{display:block;width:24px;height:2px;background:var(--color-headings);margin:6px 0;transition:.3s}.section{padding:80px 0}.section-light{background:var(--color-light-bg)}.section-dark{background:var(--color-dark-navy);color:var(--color-white)}.section-dark h2,.section-dark h3{color:var(--color-white)}.section-gradient{background:linear-gradient(135deg,var(--color-primary) 0,var(--color-primary-hover) 100%);color:var(--color-white)}.section-gradient h2{color:var(--color-white)}.text-center{text-align:center}.row{display:flex;flex-wrap:wrap;margin:0 -15px}.col{padding:0 15px}.col-6{width:50%}.col-4{width:33.333%}.col-3{width:25%}.col-12{width:100%}.hero{position:relative;padding:100px 0;background:var(--color-dark-navy);overflow:hidden}.hero::before{content:'';position:absolute;inset:0;background:radial-gradient(at bottom right,rgba(242,243,243,.5) 0,#f2f3f3 75%);z-index:1}.hero .container{position:relative;z-index:2;display:flex;align-items:center;gap:40px}.hero-content{flex:1}.hero-content h1{font-size:2.8rem;margin-bottom:20px;color:var(--color-headings)}.hero-content p{font-size:16px;margin-bottom:30px;color:var(--color-body-text)}.hero-image{flex:1}.hero-image img{border-radius:12px;box-shadow:0 20px 60px rgba(0,0,0,.15)}.service-card{background:var(--color-white);border-radius:12px;padding:40px 30px;text-align:center;box-shadow:0 4px 30px rgba(0,0,0,.08);transition:transform .3s,box-shadow .3s}.service-card:hover{transform:translateY(-4px);box-shadow:0 8px 40px rgba(0,0,0,.12)}.service-card .icon{width:70px;height:70px;border-radius:50%;background:var(--color-primary);color:var(--color-white);display:flex;align-items:center;justify-content:center;font-size:28px;margin:0 auto 20px}.service-card h3{margin-bottom:15px}.service-card p{font-size:15px;margin-bottom:20px}.icon-box{display:flex;gap:20px;padding:30px;background:var(--color-white);border-radius:10px;box-shadow:0 2px 20px rgba(0,0,0,.06);margin-bottom:20px;transition:transform .3s}.icon-box:hover{transform:translateY(-2px)}.icon-box .icon{flex-shrink:0;width:56px;height:56px;border-radius:50%;background:var(--color-light-bg);color:var(--color-primary);display:flex;align-items:center;justify-content:center;font-size:24px}.icon-box h4{margin-bottom:8px}.icon-box p{font-size:15px}.accordion{max-width:800px}.accordion-item{margin-bottom:12px;border-radius:8px;overflow:hidden;border:1px solid #e8e8e8}.accordion-header{background:var(--color-light-bg);padding:18px 24px;cursor:pointer;display:flex;align-items:center;justify-content:space-between;font-family:var(--font-heading);font-weight:600;font-size:16px;color:var(--color-headings);transition:background .3s,color .3s}.accordion-header.active,.accordion-header:hover{background:var(--color-primary);color:var(--color-white)}.accordion-header .chevron{transition:transform .3s;font-size:20px}.accordion-header.active .chevron{transform:rotate(180deg)}.accordion-body{display:none;padding:20px 24px;color:var(--color-body-text);font-size:15px;line-height:1.8}.accordion-body.open{display:block}.cta-banner{position:relative;padding:80px 0;background:var(--color-dark-navy);text-align:center}.cta-banner h2{color:var(--color-white);margin-bottom:20px}.cta-banner p{color:rgba(255,255,255,.8);margin-bottom:30px;max-width:600px;margin-left:auto;margin-right:auto}.form-group{margin-bottom:20px}.form-group label{display:block;font-size:14px;font-weight:500;margin-bottom:6px;color:var(--color-headings)}.form-control{width:100%;padding:12px 16px;font-family:var(--font-body);font-size:15px;border:1px solid #ddd;border-radius:7px;background:var(--color-light-bg);color:var(--color-body-text);transition:border-color .3s}.form-control:focus{outline:0;border-color:var(--color-primary)}textarea.form-control{min-height:120px;resize:vertical}.appointment-form{background:var(--color-white);border-radius:12px;padding:30px;box-shadow:0 4px 30px rgba(0,0,0,.08)}.appointment-form h4{margin-bottom:20px;color:var(--color-primary)}.newsletter{padding:60px 0;text-align:center}.newsletter h2{margin-bottom:30px}.newsletter-form{display:flex;gap:12px;max-width:500px;margin:0 auto}.newsletter-form input{flex:1;padding:14px 20px;border:none;border-radius:7px;font-size:15px;font-family:var(--font-body)}.newsletter-form .btn{white-space:nowrap}.site-footer{background:var(--color-dark-navy);color:var(--color-white);padding:60px 0 30px}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.5fr 1fr;gap:30px;margin-bottom:40px}.footer-col h5{color:var(--color-white);font-size:16px;margin-bottom:20px;font-family:var(--font-heading)}.footer-col ul{list-style:none}.footer-col ul li{margin-bottom:10px}.footer-col a{color:rgba(255,255,255,.7);font-size:14px;transition:color .3s}.footer-col a:hover{color:#d0cdcd}.footer-col p{color:rgba(255,255,255,.7);font-size:14px;line-height:1.8}.footer-logo img{height:60px;margin-bottom:15px}.footer-logo-img{filter:brightness(0) invert(1)}.social-icons{display:flex;gap:12px;margin-top:15px}.social-icons a{width:36px;height:36px;border-radius:50%;background:var(--color-white);color:var(--color-primary);display:flex;align-items:center;justify-content:center;font-size:16px;transition:background .3s}.social-icons a:hover{background:var(--color-primary-hover);color:var(--color-white)}.footer-bottom{border-top:1px solid rgba(255,255,255,.15);padding-top:20px;text-align:center;font-size:14px;color:rgba(255,255,255,.5)}.page-header{background:var(--color-light-bg);padding:60px 0;text-align:center}.page-header h1{font-size:2.5rem}.page-header-label{font-family:var(--font-heading);font-size:1rem;font-weight:600;text-transform:uppercase;letter-spacing:1px;color:var(--color-body-text)}.page-header h4{color:var(--color-body-text);font-weight:400;margin-top:10px}.two-col{display:flex;align-items:center;gap:60px}.two-col>*{flex:1}.two-col-reverse{flex-direction:row-reverse}.two-col img{border-radius:12px}.blog-card{background:var(--color-white);border-radius:12px;overflow:hidden;box-shadow:0 2px 20px rgba(0,0,0,.06);margin-bottom:30px;transition:transform .3s}.blog-card:hover{transform:translateY(-3px)}.blog-card img{width:100%;height:220px;object-fit:cover}.blog-card-body{padding:25px}.blog-card-body h3{margin-bottom:10px}.blog-card-body h3 a{color:var(--color-headings)}.blog-card-body h3 a:hover{color:var(--color-primary)}.blog-card-body .date{font-size:13px;color:var(--color-body-text);margin-bottom:10px}.blog-card-body p{font-size:15px}.blog-card-image-link{display:block}.post-featured-image{width:100%;max-height:420px;object-fit:cover;border-radius:8px;margin-bottom:30px}.post-content{max-width:800px;margin:0 auto;padding:40px 20px}.post-content h1{margin-bottom:10px}.post-meta{color:var(--color-body-text);font-size:14px;margin-bottom:30px}.post-content h4{margin-top:30px;margin-bottom:15px}.post-content p{margin-bottom:20px}.post-content blockquote{border-left:4px solid var(--color-primary);padding:15px 20px;margin:25px 0;background:var(--color-light-bg);border-radius:0 8px 8px 0;font-style:italic}.contact-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:60px;align-items:start}.contact-info h2{margin-bottom:20px}.contact-info p{margin-bottom:15px}.contact-detail{display:flex;align-items:center;gap:12px;margin-bottom:15px;font-size:15px}.contact-detail .icon{width:40px;height:40px;border-radius:50%;background:var(--color-light-bg);color:var(--color-primary);display:flex;align-items:center;justify-content:center}.mb-0{margin-bottom:0}.mb-1{margin-bottom:10px}.mb-2{margin-bottom:20px}.mb-3{margin-bottom:30px}.mb-4{margin-bottom:40px}.mt-2{margin-top:20px}.mt-3{margin-top:30px}.mt-4{margin-top:40px}@media (max-width:992px){.hero .container{flex-direction:column;text-align:center}.hero-content h1{font-size:2.2rem}.two-col,.two-col-reverse{flex-direction:column}.footer-grid{grid-template-columns:1fr 1fr}.contact-grid{grid-template-columns:1fr}.col-3,.col-4,.col-6{width:100%}.row{gap:30px}}@media (max-width:768px){.main-nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--color-white);flex-direction:column;padding:20px;box-shadow:0 4px 20px rgba(0,0,0,.1)}.main-nav.open{display:flex}.nav-toggle{display:block}.header-cta{display:none}.nav-dropdown .dropdown-menu{position:static;box-shadow:none;padding-left:20px;display:block}h1{font-size:2rem}h2{font-size:1.6rem}.hero{padding:60px 0}.section{padding:50px 0}.footer-grid{grid-template-columns:1fr}.newsletter-form{flex-direction:column}.blog-grid{grid-template-columns:1fr}}.category-nav{background:var(--color-white);border-bottom:1px solid #e8e8e8;padding:16px 0}.category-nav-list{display:flex;flex-wrap:wrap;gap:8px;list-style:none;justify-content:center}.category-nav-link{display:inline-block;padding:6px 16px;font-size:14px;font-weight:500;color:var(--color-body-text);border:1px solid #e0e0e0;border-radius:20px;transition:.2s}.category-nav-link:hover{color:var(--color-primary);border-color:var(--color-primary)}.category-nav-link.active{background:var(--color-primary);color:var(--color-white);border-color:var(--color-primary)}.blog-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:30px}.programs-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:20px}.faq-layout{display:grid;grid-template-columns:1.5fr 1fr;gap:40px;align-items:start}@media (max-width:992px){.faq-layout{grid-template-columns:1fr}}.pagination{display:flex;align-items:center;justify-content:center;gap:20px}.pagination-info{font-size:14px;color:var(--color-body-text)}.blog-category{display:inline-block;font-size:12px;font-weight:600;color:var(--color-primary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.post-content h2{margin-top:35px;margin-bottom:15px}.post-content h3{margin-top:25px;margin-bottom:12px}.post-content ol,.post-content ul{margin-bottom:20px;padding-left:24px}.post-content li{margin-bottom:8px}.post-content a{text-decoration:underline}.related-posts{background:var(--color-light-bg);padding:60px 0}.related-posts h2{text-align:center;margin-bottom:30px}.related-posts-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:30px;max-width:1200px;margin:0 auto}@media (max-width:768px){.related-posts-grid{grid-template-columns:1fr}}.footer-updated{color:rgba(255,255,255,.4);margin-top:8px}.pricing-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:30px;margin-top:40px}.pricing-card{background:var(--color-white);border-radius:12px;padding:40px 30px;text-align:center;box-shadow:0 4px 30px rgba(0,0,0,.08);transition:transform .3s,box-shadow .3s;border:2px solid transparent;position:relative}.pricing-card:hover{transform:translateY(-4px);box-shadow:0 8px 40px rgba(0,0,0,.12);border-color:var(--color-primary)}.pricing-card.featured{border-color:var(--color-primary);background:var(--color-primary)}.pricing-card.featured .price-period,.pricing-card.featured h3,.pricing-card.featured p{color:var(--color-white)}.pricing-card .icon{width:70px;height:70px;border-radius:50%;background:var(--color-primary);color:var(--color-white);display:flex;align-items:center;justify-content:center;font-size:28px;margin:0 auto 20px}.pricing-card.featured .icon{background:rgba(255,255,255,.2)}.pricing-card h3{margin-bottom:5px}.pricing-badge{position:absolute;top:-13px;left:50%;transform:translateX(-50%);background:var(--color-amber);color:var(--color-headings);font-size:11px;font-weight:700;padding:4px 16px;border-radius:20px;white-space:nowrap;font-family:var(--font-heading);text-transform:uppercase;letter-spacing:.5px}.price-amount{font-family:var(--font-heading);font-size:2.75rem;font-weight:800;color:var(--color-primary);margin:15px 0 4px;line-height:1}.pricing-card.featured .price-amount{color:var(--color-white)}.price-period{font-size:13px;color:var(--color-body-text);margin-bottom:20px}.pricing-features{list-style:none;text-align:left;margin:20px 0 28px;font-size:14px}.pricing-features li{padding:8px 0;border-bottom:1px solid #f0f0f0;display:flex;align-items:center;gap:10px;color:var(--color-body-text)}.pricing-features li:last-child{border-bottom:none}.pricing-card.featured .pricing-features li{border-bottom-color:rgba(255,255,255,.15);color:rgba(255,255,255,.85)}.pricing-features .check{color:var(--color-primary);font-weight:700;font-size:15px;flex-shrink:0;line-height:1}.pricing-card.featured .pricing-features .check{color:var(--color-amber)}.booking-embed-wrapper{background:var(--color-white);border-radius:12px;overflow:hidden;box-shadow:0 4px 30px rgba(0,0,0,.08);min-height:600px}.booking-embed-wrapper iframe{width:100%;min-height:660px;border:none;display:block}.booking-embed-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:500px;padding:60px 20px;text-align:center;background:var(--color-light-bg);border-radius:12px;border:2px dashed #d0d0d0}.booking-placeholder-icon{width:80px;height:80px;border-radius:50%;background:var(--color-primary);color:var(--color-white);display:flex;align-items:center;justify-content:center;margin:0 auto 24px}.booking-embed-placeholder code{background:rgba(49,41,140,.08);color:var(--color-primary);padding:2px 6px;border-radius:4px;font-size:13px}.testimonial-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:30px;margin-top:40px}.testimonial-card{background:var(--color-white);border-radius:12px;padding:35px 30px;box-shadow:0 4px 30px rgba(0,0,0,.07);position:relative;transition:transform .3s}.testimonial-card:hover{transform:translateY(-3px)}.testimonial-card::before{content:'\201C';font-size:90px;line-height:1;color:var(--color-primary);opacity:.1;position:absolute;top:10px;left:18px;font-family:Georgia,serif;font-weight:700}.testimonial-stars{color:var(--color-amber);font-size:16px;margin-bottom:15px;letter-spacing:2px}.testimonial-text{font-size:15px;line-height:1.8;color:var(--color-body-text);margin-bottom:25px;position:relative;z-index:1}.testimonial-author{display:flex;align-items:center;gap:14px}.testimonial-avatar{width:50px;height:50px;border-radius:50%;background:var(--color-primary);color:var(--color-white);display:flex;align-items:center;justify-content:center;font-family:var(--font-heading);font-weight:700;font-size:16px;flex-shrink:0}.testimonial-name{font-family:var(--font-heading);font-weight:600;color:var(--color-headings);font-size:15px;margin-bottom:2px}.testimonial-title{font-size:13px;color:var(--color-body-text)}@media (max-width:768px){.pricing-grid,.testimonial-grid{grid-template-columns:1fr}}