*{box-sizing:border-box;margin:0;padding:0}:root{--primary:#4f6ef7;--primary-dark:#2f49c9;--primary-light:#8aa0ff;--dark:#142057;--dark-soft:#2a3872;--light:#f6f9fc;--gray:#64748b;--border:#e7ecf3;--white:#fff;--success:#10b981;--danger:#ef4444;--radius:14px;--ticker-h:34px;--shadow-sm:0 2px 10px #1018280f;--shadow-md:0 14px 34px #10182817;--shadow-lg:0 30px 70px #10182829;--ease:cubic-bezier(.16, 1, .3, 1)}html{scroll-behavior:smooth}body{color:var(--dark);background-color:var(--white);-webkit-font-smoothing:antialiased;font-family:Poppins,sans-serif;line-height:1.7}h1,h2,h3,h4,.logo,.step-number,.num{font-family:Sora,sans-serif}.container{max-width:1200px;margin:0 auto;padding:0 24px}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}.reveal{opacity:0;transition:opacity .7s var(--ease), transform .7s var(--ease);transform:translateY(26px)}.reveal[data-visible=true]{opacity:1;transform:translateY(0)}.logo{color:var(--dark);letter-spacing:-.3px;align-items:center;gap:11px;font-size:1.3rem;font-weight:700;text-decoration:none;display:flex}.logo-img{object-fit:fill;border-radius:10px;width:66px;height:58px;display:block}.logo-mark{background:linear-gradient(135deg, var(--primary), var(--primary-dark));width:38px;height:38px;color:var(--white);border-radius:11px;justify-content:center;align-items:center;font-size:1.02rem;font-weight:800;display:flex;box-shadow:0 8px 18px -6px #2563eb80,inset 0 1px #ffffff4d}.logo span{color:var(--primary)}.btn{letter-spacing:.1px;cursor:pointer;transition:transform .3s var(--ease), box-shadow .3s var(--ease), background .3s var(--ease), color .3s var(--ease), border-color .3s var(--ease);border:none;border-radius:100px;justify-content:center;align-items:center;gap:8px;padding:14px 30px;font-family:inherit;font-size:.94rem;font-weight:600;text-decoration:none;display:inline-flex}.btn-primary{background:linear-gradient(135deg, var(--primary) 0%, var(--primary-dark) 100%);color:var(--white);box-shadow:0 12px 26px -8px #173fc28c,inset 0 1px #ffffff2e}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 18px 34px -8px #173fc299,inset 0 1px #ffffff38}.btn-primary:disabled{opacity:.75;cursor:default;transform:none}.btn-secondary{background:var(--white);color:var(--primary);border:1.5px solid var(--border)}.btn-secondary:hover{border-color:var(--primary);box-shadow:var(--shadow-sm);transform:translateY(-2px)}.section-title{text-align:center;margin-bottom:60px}.eyebrow{color:var(--primary-dark);letter-spacing:.3px;align-items:center;gap:8px;margin-bottom:12px;font-size:.85rem;font-weight:700;display:inline-flex}.eyebrow:before{content:"";background:linear-gradient(90deg, var(--primary-light), var(--primary));border-radius:2px;width:18px;height:2px}.section-title h2{color:var(--dark);letter-spacing:-.6px;margin-bottom:1rem;font-size:2.35rem;font-weight:700}.section-title p{color:var(--gray);max-width:620px;margin:0 auto;font-size:1.05rem}@media (width<=768px){.section-title h2{font-size:1.85rem}}.scroll-progress{background:linear-gradient(90deg, var(--primary), var(--primary-dark));z-index:1200;width:0%;height:3px;transition:width .1s linear;position:fixed;top:0;left:0}header{-webkit-backdrop-filter:blur(16px)saturate(160%);backdrop-filter:blur(16px)saturate(160%);box-shadow:0 1px 0 var(--border);z-index:1000;background:#ffffffd1;width:100%;position:fixed;top:0}nav{justify-content:space-between;align-items:center;padding:1.15rem 0;display:flex}.nav-cta-group{align-items:center;gap:12px;display:flex}@media (width<=880px){.nav-cta-group .btn-secondary{display:none}}.nav-links{gap:2.2rem;list-style:none;display:flex}.nav-links a{color:var(--gray);transition:color .25s var(--ease);padding-bottom:3px;font-size:.94rem;font-weight:500;text-decoration:none;position:relative}.nav-links a:after{content:"";background:var(--primary);width:0;height:1.5px;transition:width .3s var(--ease);position:absolute;bottom:0;left:0}.nav-links a:hover{color:var(--dark)}.nav-links a:hover:after{width:100%}.nav-links a.active{color:var(--primary)}.nav-links a.active:after{width:100%}@media (width<=768px){.nav-links{display:none}}.hours-ticker{width:100%;height:var(--ticker-h);background:linear-gradient(90deg, var(--primary-dark), var(--primary), var(--primary-dark));color:var(--white);white-space:nowrap;overflow:hidden}.hours-ticker-track{align-items:center;min-width:max-content;height:100%;font-size:.76rem;font-weight:600;animation:50s linear infinite hoursScroll;display:flex}.hours-ticker-group{align-items:center;gap:56px;padding-right:56px;display:inline-flex}.hours-ticker-track span{align-items:center;gap:8px;display:inline-flex}.hours-ticker-track .status-dot{background:#34d399;border-radius:50%;width:7px;height:7px;box-shadow:0 0 8px #34d399}.hours-ticker-track .status-dot[data-open=false]{background:#f87171;box-shadow:0 0 8px #f87171}@keyframes hoursScroll{0%{transform:translate(0)}to{transform:translate(-50%)}}@media (prefers-reduced-motion:reduce){.hours-ticker-track{animation-duration:.01ms!important}}.hero{background-color:var(--dark);color:var(--white);padding:calc(140px + var(--ticker-h)) 0 0;background-position:50% 15%;background-repeat:no-repeat;background-size:cover;position:relative;overflow:hidden}.hero:before{content:"";opacity:.3;pointer-events:none;background-image:radial-gradient(circle at 1px 1px,#ffffff24 1px,#0000 0);background-size:26px 26px;position:absolute;inset:0}.hero:after{content:"";pointer-events:none;background:radial-gradient(circle,#06b6d452,#0000 70%);border-radius:50%;width:680px;height:680px;animation:10s ease-in-out infinite blob-drift;position:absolute;top:-240px;right:-180px}@keyframes blob-drift{0%,to{transform:translate(0)scale(1)}50%{transform:translate(-30px,30px)scale(1.08)}}.hero-inner{z-index:1;max-width:1040px;padding-bottom:100px;position:relative}.hero-badge{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);opacity:0;animation:hero-fade-up .7s var(--ease) .1s forwards;background:#ffffff1f;border:1px solid #ffffff3d;border-radius:100px;align-items:center;gap:9px;margin-bottom:26px;padding:8px 18px;font-size:.85rem;font-weight:600;display:inline-flex}.hero-badge .dot{background:#34d399;border-radius:50%;width:7px;height:7px;animation:2s infinite blink;box-shadow:0 0 8px #34d399}@keyframes blink{0%,to{opacity:1}50%{opacity:.4}}@keyframes hero-fade-up{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.hero h1{letter-spacing:-.8px;opacity:0;animation:hero-fade-up .7s var(--ease) .25s forwards;margin-bottom:1.4rem;font-size:3rem;font-weight:700;line-height:1.16}.hero p{opacity:0;max-width:520px;animation:hero-fade-up-p .7s var(--ease) .4s forwards;margin:0 0 2.6rem;font-size:1.1rem}@keyframes hero-fade-up-p{0%{opacity:0;transform:translateY(24px)}to{opacity:.88;transform:translateY(0)}}.hero-buttons{opacity:0;animation:hero-fade-up .7s var(--ease) .55s forwards;flex-wrap:wrap;gap:1rem;display:flex}.hero .btn-secondary{color:var(--white);background:0 0;border-color:#ffffff80}.hero .btn-secondary:hover{background:var(--white);color:var(--primary);border-color:var(--white)}.hero-buttons .btn{transition:transform .25s var(--ease), box-shadow .25s var(--ease)}.hero-buttons .btn:hover{transform:translateY(-3px);box-shadow:0 12px 24px -8px #00000059}@media (prefers-reduced-motion:reduce){.hero-badge,.hero h1,.hero p,.hero-buttons{opacity:1;animation:none}.hero:after{animation:none}}@media (width<=980px){.hero-inner{text-align:center;margin:0 auto;padding-bottom:100px}.hero p{margin:0 auto 2.6rem}.hero-buttons{justify-content:center}}@media (width<=768px){.hero{padding-top:calc(120px + var(--ticker-h))}.hero h1{font-size:2.05rem}.hero p{font-size:1rem}}.stats{z-index:2;background:var(--white);max-width:980px;box-shadow:var(--shadow-lg), 0 0 0 1px #10182805;border-radius:18px;grid-template-columns:repeat(4,1fr);margin:-54px auto 0;padding:38px 20px;display:grid;position:relative}.stat-item{text-align:center;border-right:1px solid var(--border)}.stat-item:last-child{border-right:none}.stat-item .num{color:var(--primary);letter-spacing:-.5px;font-variant-numeric:tabular-nums;font-size:2.1rem;font-weight:700;transition:color .3s}.stat-item .num.bump{animation:.5s statBump}@keyframes statBump{0%{color:var(--primary);transform:scale(1)}30%{color:#22c55e;transform:scale(1.25)}to{color:var(--primary);transform:scale(1)}}.stat-item .num-static{color:var(--primary);letter-spacing:-.5px;font-family:Sora,sans-serif;font-size:2.1rem;font-weight:700}.stat-item p{color:var(--gray);margin-top:5px;font-size:.84rem}@media (width<=980px){.stats{grid-template-columns:repeat(2,1fr);row-gap:24px;margin-top:-40px}.stat-item:nth-child(2){border-right:none}}@media (width<=768px){.stats{grid-template-columns:1fr}.stat-item{border-right:none;border-bottom:1px solid var(--border);padding-bottom:16px}.stat-item:last-child{border-bottom:none;padding-bottom:0}}.services{background:var(--light);border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:110px 0}.value-row{color:var(--dark-soft);flex-wrap:wrap;justify-content:center;gap:14px 34px;margin-top:28px;font-size:.96rem;font-weight:600;display:flex}.value-row span{padding-left:20px;position:relative}.value-row span:before{content:"✓";color:var(--success);font-weight:700;position:absolute;left:0}.services-grid{flex-wrap:wrap;justify-content:center;gap:26px;display:flex}.services-grid .service-card{flex:320px;max-width:360px}@media (width<=560px){.services-grid .service-card{flex-basis:100%;max-width:none}}.service-card{background:var(--white);border-radius:var(--radius);box-shadow:var(--shadow-sm);border:1px solid var(--border);cursor:pointer;transition:transform .35s var(--ease), box-shadow .35s var(--ease), border-color .35s var(--ease);padding:34px 30px;position:relative;overflow:hidden}.service-card:before{content:"";background:linear-gradient(90deg, var(--primary), var(--primary-dark));transform-origin:0;height:3px;transition:transform .4s var(--ease);border-radius:3px 3px 0 0;position:absolute;top:0;left:0;right:0;transform:scaleX(0)}.service-card:hover:before,.service-card.open:before{transform:scaleX(1)}.service-card:hover{box-shadow:var(--shadow-lg);border-color:#2563eb38;transform:translateY(-6px)}.service-top{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.service-icon{background:linear-gradient(135deg, var(--primary), var(--primary-dark));width:54px;height:54px;color:var(--white);border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;margin-bottom:22px;font-size:1.4rem;display:flex;box-shadow:0 10px 20px -6px #2563eb66,inset 0 1px #ffffff40}.service-expand-icon{border:1.5px solid var(--border);width:30px;height:30px;color:var(--gray);transition:transform .35s var(--ease), background .35s var(--ease), color .35s var(--ease), border-color .35s var(--ease);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.9rem;display:flex}.service-card.open .service-expand-icon{background:var(--primary);color:var(--white);border-color:var(--primary);transform:rotate(45deg)}.service-card h3{color:var(--dark);letter-spacing:-.2px;margin-bottom:12px;font-size:1.2rem;font-weight:600}.service-card p.desc{color:var(--gray);font-size:.94rem;line-height:1.7}.service-detail{max-height:0;transition:max-height .4s var(--ease), margin-top .4s var(--ease);overflow:hidden}.service-card.open .service-detail{max-height:200px;margin-top:16px}.service-detail ul{border-top:1px solid var(--border);flex-direction:column;gap:8px;padding-top:14px;list-style:none;display:flex}.service-detail li{color:var(--dark-soft);align-items:center;gap:8px;font-size:.86rem;display:flex}.service-detail li:before{content:"✓";color:var(--success);font-weight:700}.why-us{background:var(--white);border-bottom:1px solid var(--border);padding:110px 0}.features-grid{grid-template-columns:repeat(3,1fr);gap:30px;display:grid}@media (width<=900px){.features-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=560px){.features-grid{grid-template-columns:1fr}}.feature{text-align:center;transition:transform .4s var(--ease);padding:30px 20px}.feature:hover{transform:translateY(-4px)}.feature-icon{width:74px;height:74px;color:var(--primary);background:linear-gradient(135deg,#2563eb14,#06b6d414);border:1px solid #2563eb29;border-radius:50%;justify-content:center;align-items:center;margin:0 auto 22px;font-size:1.85rem;display:flex;box-shadow:0 8px 20px -10px #2563eb59}.feature h3{color:var(--dark);letter-spacing:-.2px;margin-bottom:12px;font-size:1.12rem;font-weight:600}.feature p{color:var(--gray);font-size:.92rem;line-height:1.7}.process{background:var(--light);color:var(--dark);border-bottom:1px solid var(--border);padding:110px 0;position:relative;overflow:hidden}.process:before{display:none}.process .container{z-index:1;position:relative}.process .section-title h2{color:var(--dark)}.process .section-title p{color:var(--gray)}.process .eyebrow{color:var(--primary-dark)}.process-steps{flex-wrap:wrap;justify-content:center;gap:44px 24px;margin-top:60px;display:flex;position:relative}.process-steps:before{content:"";background:linear-gradient(90deg,#0000,#4f6ef740,#0000);height:1px;position:absolute;top:30px;left:10%;right:10%}.step{text-align:center;flex:160px;max-width:190px;position:relative}.step-number{background:linear-gradient(135deg, var(--primary), var(--primary-dark));z-index:1;width:58px;height:58px;box-shadow:0 0 0 7px var(--white), 0 10px 24px -8px #06b6d480;border-radius:50%;justify-content:center;align-items:center;margin:0 auto 20px;font-size:1.25rem;font-weight:700;display:flex;position:relative}.step h3{letter-spacing:-.1px;margin-bottom:10px;font-size:1.04rem;font-weight:600}.step p{color:var(--gray);font-size:.87rem}@media (width<=980px){.process-steps:before{display:none}}@media (width<=768px){.step{flex-basis:100%;max-width:280px}}.testimonials{background:var(--light);padding:100px 0}.feedback-grid{background:var(--white);border:1px solid var(--border);box-shadow:var(--shadow-md);border-radius:24px;grid-template-columns:.85fr 1.15fr;align-items:stretch;gap:0;display:grid;overflow:hidden}.feedback-info{background:linear-gradient(160deg, var(--dark), var(--primary));color:var(--white);padding:54px 46px}.feedback-info .eyebrow{color:#b9c6ff}.feedback-info .eyebrow:before{background:linear-gradient(90deg, var(--primary-light), var(--white))}.feedback-info h3{color:var(--white);margin-bottom:18px;font-size:1.9rem;font-weight:700}.feedback-info>p{color:#ffffffc7;margin-bottom:0}.feedback-points{flex-direction:column;gap:14px;margin-top:26px;list-style:none;display:flex}.feedback-points li{color:#ffffffe6;padding-left:26px;font-size:.92rem;position:relative}.feedback-points li:before{content:"✓";color:#b9c6ff;font-weight:700;position:absolute;left:0}.feedback-content{background:var(--white);padding:42px 46px}.feedback-list{grid-template-columns:repeat(2,1fr);gap:14px;display:grid}.feedback-status{color:var(--gray);grid-column:1/-1;font-size:.82rem}.feedback-review{border:1px solid var(--border);background:var(--light);border-radius:12px;padding:16px}.feedback-review .review-head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;display:flex}.feedback-review .review-author{flex-direction:column;align-items:flex-start;gap:4px;display:flex}.feedback-review strong{color:var(--dark);font-size:.86rem}.feedback-review .review-service{color:var(--primary);background:#2563eb1a;border-radius:999px;padding:3px 7px;font-size:.65rem;font-weight:700}.feedback-review .stars{color:#f59e0b;letter-spacing:1px;font-size:.78rem}.feedback-review p{color:var(--gray);font-size:.76rem;line-height:1.55}.feedback-review time{color:var(--gray);margin-top:8px;font-size:.68rem;display:block}.feedback-cta{justify-content:center;margin-top:24px;display:flex}.feedback-form-wrapper{margin-top:24px}.feedback-form-wrapper.submitted form{display:none}.rating-group{gap:8px;display:flex}.rating-group button{border:1.5px solid var(--border);background:var(--white);cursor:pointer;width:42px;height:42px;color:var(--border);transition:border-color .25s var(--ease), color .25s var(--ease), background .25s var(--ease);border-radius:10px;font-size:1.15rem}.rating-group button.selected,.rating-group button:hover{color:#f59e0b;background:#f59e0b14;border-color:#f59e0b}@media (width<=900px){.feedback-grid{grid-template-columns:1fr}.feedback-info{padding:40px 30px}.feedback-content{padding:34px 26px}.feedback-list{grid-template-columns:1fr}}.form-group{margin-bottom:12px}.form-group label{color:var(--dark);margin-bottom:4px;font-size:.82rem;font-weight:500;display:block}.form-group input,.form-group select,.form-group textarea{border:1.5px solid var(--border);width:100%;transition:border-color .25s var(--ease), box-shadow .25s var(--ease), background .25s var(--ease);background:var(--white);border-radius:8px;padding:8px 12px;font-family:inherit;font-size:.88rem}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 4px #2563eb1a}.form-group input.invalid,.form-group textarea.invalid,.form-group select.invalid{border-color:var(--danger)}.form-group input.valid,.form-group textarea.valid,.form-group select.valid{border-color:var(--success)}.field-error{color:var(--danger);animation:field-error-in .2s var(--ease);margin-top:4px;font-size:.78rem;display:block}@keyframes field-error-in{0%{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:translateY(0)}}.form-hint{color:var(--gray);margin-top:4px;font-size:.78rem;display:block}.form-error{border:1px solid var(--danger);color:var(--danger);animation:field-error-in .2s var(--ease);background:#ef444414;border-radius:8px;margin-bottom:12px;padding:10px 14px;font-size:.85rem}.form-group textarea{resize:vertical;min-height:60px}.form-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.form-actions{grid-template-columns:1.45fr .55fr;gap:10px;margin-top:4px;display:grid}.form-actions .btn{width:100%}.form-actions button[type=submit]{min-height:44px;padding:11px 24px;font-size:.92rem}.form-success{text-align:center;padding:16px 10px;display:none}.form-success.show{display:block}.form-success .check{width:48px;height:48px;color:var(--success);background:#10b9811f;border-radius:50%;justify-content:center;align-items:center;margin:0 auto 12px;font-size:1.3rem;display:flex}.form-success h4{margin-bottom:6px}.form-success p{color:var(--gray);font-size:.88rem}@media (width<=768px){.form-row,.form-actions{grid-template-columns:1fr}}.faq{display:none}.faq-list{flex-direction:column;gap:14px;max-width:760px;margin:0 auto;display:flex}.faq-item{background:var(--white);border:1px solid var(--border);border-radius:12px;overflow:hidden}.faq-question{cursor:pointer;color:var(--dark);justify-content:space-between;align-items:center;gap:16px;padding:20px 24px;font-size:.98rem;font-weight:600;display:flex}.faq-question .icon{background:var(--light);width:26px;height:26px;color:var(--primary);transition:transform .35s var(--ease), background .35s var(--ease), color .35s var(--ease);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:1rem;display:flex}.faq-item.open .faq-question .icon{background:var(--primary);color:var(--white);transform:rotate(45deg)}.faq-answer{max-height:0;transition:max-height .4s var(--ease);overflow:hidden}.faq-item.open .faq-answer{max-height:200px}.faq-answer p{color:var(--gray);padding:0 24px 22px;font-size:.92rem;line-height:1.7}.appointment{background:var(--light);border-bottom:1px solid var(--border);padding:110px 0;display:none}.appointment.appointment-open{-webkit-backdrop-filter:blur(8px);z-index:1050;scrollbar-width:none;-ms-overflow-style:none;animation:modal-backdrop-in .25s var(--ease);background:#0a10298c;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0;overflow-y:auto}.appointment.appointment-open::-webkit-scrollbar{display:none}.appointment.appointment-open .container{width:100%;margin:auto;padding:0}.appointment-card{background:var(--white);box-shadow:var(--shadow-md);border:1px solid var(--border);border-radius:24px;grid-template-columns:.85fr 1.15fr;display:grid;overflow:hidden}.appointment.appointment-open .appointment-card{scrollbar-width:none;-ms-overflow-style:none;max-height:calc(100vh - 48px);box-shadow:var(--shadow-lg);animation:modal-card-in .3s var(--ease);overflow-y:auto}.appointment.appointment-open .appointment-card::-webkit-scrollbar{display:none}@keyframes modal-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes modal-card-in{0%{opacity:0;transform:translateY(16px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.appointment-info{background:linear-gradient(160deg, #142057, var(--primary));color:var(--white);padding:30px 32px}.appointment-info .eyebrow{color:#b9c6ff}.appointment-info h2{color:var(--white);margin-bottom:.6rem;font-size:1.5rem}.appointment-info p{color:#ffffffc7;font-size:.9rem}.appointment-points{flex-direction:column;gap:8px;margin-top:16px;list-style:none;display:flex}.appointment-points li{color:#ffffffe6;padding-left:24px;font-size:.86rem;position:relative}.appointment-points li:before{content:"✓";color:#b9c6ff;font-weight:700;position:absolute;left:0}.appointment-form-wrapper{padding:28px 32px;position:relative}.appointment-form-wrapper form{display:none}.appointment-form-wrapper.form-open form{display:block}.appointment-intro{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:16px;min-height:100%;display:flex}.appointment-intro p{color:var(--gray);max-width:330px;font-size:.94rem}.appointment-form-wrapper.form-open .appointment-intro,.appointment-form-wrapper.submitted form{display:none}@media (width<=900px){.appointment-card{grid-template-columns:1fr}.appointment-info{padding:24px 22px}.appointment-form-wrapper{padding:22px 20px}}.contact{background:var(--light);border-bottom:1px solid var(--border);padding:110px 0;display:none}.contact.contact-open{-webkit-backdrop-filter:blur(8px);z-index:1050;scrollbar-width:none;-ms-overflow-style:none;animation:modal-backdrop-in .25s var(--ease);background:#0a10298c;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0;overflow-y:auto}.contact.contact-open::-webkit-scrollbar{display:none}.contact.contact-open .container{width:100%;margin:auto;padding:0}.contact.contact-open .reveal{opacity:1;transform:none}.contact-grid{background:var(--white);border:1px solid var(--border);box-shadow:var(--shadow-lg);border-radius:24px;grid-template-columns:.85fr 1.15fr;align-items:stretch;gap:0;display:grid;overflow:hidden}.contact.contact-open .contact-grid{scrollbar-width:none;-ms-overflow-style:none;max-height:calc(100vh - 48px);animation:modal-card-in .3s var(--ease);overflow-y:auto}.contact.contact-open .contact-grid::-webkit-scrollbar{display:none}.contact-info{background:linear-gradient(160deg, #142057, var(--primary));color:var(--white);padding:30px 32px}.contact-info .eyebrow{color:#b9c6ff}.contact-info h3{color:var(--white);margin-bottom:10px;font-size:1.5rem;font-weight:700}.contact-info>p{color:#ffffffc7;margin-bottom:0;font-size:.9rem;line-height:1.55}.contact-item{align-items:center;gap:16px;margin-bottom:20px;display:flex}.contact-icon{background:linear-gradient(135deg, var(--primary), var(--primary-dark));width:50px;height:50px;color:var(--white);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;font-size:1.2rem;display:flex;box-shadow:0 8px 18px -6px #2563eb66}.contact-text strong{color:var(--dark);margin-bottom:3px;font-size:.95rem;display:block}.contact-text span{color:var(--gray);font-size:.9rem}.contact-form{background:var(--white);box-shadow:none;border:0;border-radius:0;padding:28px 32px;display:none;position:relative}.contact-form.form-open{opacity:1;display:block;transform:none}.contact-form.submitted form{display:none}@media (width<=980px){.contact-grid{grid-template-columns:1fr}.contact-info{padding:40px 30px}}@media (width<=768px){.contact-form{padding:22px 20px}}footer{background:linear-gradient(100deg, #142057 0%, #2138a8 48%, var(--primary) 100%);color:var(--white);padding:26px 0 14px}footer .logo-img{width:74px;height:64px}.footer-grid{grid-template-columns:1.4fr .8fr .9fr 1.35fr;gap:22px;margin-bottom:18px;display:grid}.footer-about{position:relative;left:-78px}.footer-about .logo{color:var(--white);margin-bottom:9px}.footer-about p{color:#ffffffb8;max-width:400px;font-size:.84rem;line-height:1.5}.footer-links h4{margin-bottom:8px;font-size:.82rem;font-weight:600}.footer-links ul{list-style:none}.footer-links li{margin-bottom:5px}.footer-links a{color:#ffffffb8;transition:color .25s var(--ease);font-size:.72rem;text-decoration:none}.footer-links a:hover{color:#b9c6ff}.footer-contact h4{margin-bottom:8px;font-size:.82rem;font-weight:600}.footer-contact .contact-details{gap:6px;display:grid}.footer-contact .contact-item{align-items:center;gap:9px;margin:0}.footer-contact .contact-icon{border-radius:9px;width:32px;height:32px;font-size:.8rem}.footer-contact .contact-text strong{color:var(--white);font-size:.68rem}.footer-contact .contact-text span{color:#ffffff9e;font-size:.62rem;line-height:1.25}.footer-contact .contact-text a{color:#ffffff9e;font-size:.62rem;line-height:1.25;text-decoration:none}.footer-contact .contact-text a:hover{color:#b9c6ff}.footer-bottom{text-align:center;color:#ffffff9e;border-top:1px solid #ffffff2e;padding-top:10px;font-size:.68rem}@media (width<=980px){.footer-grid{grid-template-columns:1fr;gap:22px}}.assistant-toggle{z-index:1100;background:linear-gradient(135deg, var(--primary), var(--primary-dark));width:60px;height:60px;color:var(--white);cursor:pointer;transition:transform .3s var(--ease);border:none;border-radius:50%;justify-content:center;align-items:center;font-size:1.4rem;display:flex;position:fixed;bottom:26px;right:26px;box-shadow:0 16px 32px -8px #173fc28c,inset 0 1px #fff3}.assistant-toggle:hover{transform:scale(1.07)}.assistant-toggle .ping{background:var(--success);border:2px solid var(--white);border-radius:50%;width:14px;height:14px;position:absolute;top:-3px;right:-3px}.assistant-panel{z-index:1100;background:var(--white);width:320px;max-width:calc(100vw - 40px);box-shadow:var(--shadow-lg);border:1px solid var(--border);opacity:0;pointer-events:none;transition:transform .3s var(--ease), opacity .3s var(--ease);border-radius:16px;position:fixed;bottom:100px;right:26px;overflow:hidden;transform:translateY(16px)scale(.97)}.assistant-panel.open{opacity:1;pointer-events:auto;transform:translateY(0)scale(1)}.assistant-head{background:linear-gradient(135deg, var(--primary), var(--primary-dark));color:var(--white);align-items:center;gap:12px;padding:18px 20px;display:flex}.assistant-head strong{font-size:.95rem;display:block}.assistant-head span{opacity:.85;font-size:.78rem}.assistant-body{scrollbar-gutter:stable;flex-direction:column;gap:12px;max-height:320px;padding:18px 20px;display:flex;overflow-y:scroll}.visual-typing{background:var(--light);border-radius:11px 11px 11px 3px;align-self:flex-start;gap:4px;padding:12px 14px;display:inline-flex}.visual-typing span{background:var(--gray);border-radius:50%;width:6px;height:6px;animation:1.2s infinite typingDot}.visual-typing span:nth-child(2){animation-delay:.15s}.visual-typing span:nth-child(3){animation-delay:.3s}@keyframes typingDot{0%,60%,to{opacity:.4;transform:translateY(0)}30%{opacity:1;transform:translateY(-4px)}}.assistant-msg{background:var(--light);border-radius:10px 10px 10px 3px;max-width:90%;padding:10px 14px;font-size:.78rem}.assistant-msg.user{background:var(--primary);color:var(--white);border-bottom-right-radius:3px;border-bottom-left-radius:10px;align-self:flex-end}.assistant-quick{flex-direction:column;gap:8px;padding:0 20px 18px;display:flex}.assistant-quick button{text-align:left;background:var(--light);border:1px solid var(--border);cursor:pointer;color:var(--dark);transition:border-color .25s var(--ease), background .25s var(--ease);border-radius:10px;padding:10px 14px;font-family:inherit;font-size:.76rem}.assistant-quick button:hover{border-color:var(--primary);background:#2563eb0f}@media (width<=768px){.assistant-panel{bottom:92px;right:16px}.assistant-toggle{bottom:16px;right:16px}}
