:root{--teal:#11999e;--teal-dark:#087f84;--blue-bg:#eef5fb;--ink:#1f2533;--muted:#596172;--olive:#a2b654;--coral:#f58f63;--orange:#ff6a21;--purple:#9e84d8;--white:#fff;--line:#dce7ef;--shadow:0 10px 30px rgba(31,37,51,0.08);--radius:24px;--container:1180px}*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:#fff;font-family:Manrope,Arial,sans-serif;font-size:16px;line-height:1.65}body.menu-open,body.modal-open{overflow:hidden}img{display:block;max-width:100%;height:auto}a{color:inherit}button,input,select,textarea{font:inherit}h1,h2,h3,p{margin-top:0}h1,h2,h3{color:var(--ink);line-height:1.18}h1{font-size:clamp(2.45rem,5vw,4.5rem)}h2{font-size:clamp(1.8rem,3vw,2.65rem)}h3{font-size:1.12rem}.container{width:min(calc(100% - 40px),var(--container));margin-inline:auto}.site-main{min-height:45vh}.section{padding:48px 0}.section-title{margin-bottom:30px}.section-title--center{text-align:center}.section-title span{color:var(--orange)}.section-heading{max-width:760px;margin:0 auto 34px;text-align:center}.section-heading p,.page-intro{color:var(--muted)}.btn{display:inline-flex;min-height:46px;align-items:center;justify-content:center;padding:11px 24px;border:0;border-radius:10px;cursor:pointer;font-weight:700;text-decoration:none;transition:transform 0.2s ease,box-shadow 0.2s ease,background 0.2s ease}.btn:hover,.btn:focus-visible{transform:translateY(-2px);box-shadow:0 8px 20px rgba(31,37,51,0.15)}.btn-primary{color:#fff;background:linear-gradient(135deg,#0fa5a6,#087f84)}.btn-accent{color:#fff;background:linear-gradient(135deg,#ff7c2c,#ff5d17)}.eyebrow{margin-bottom:8px;color:var(--teal);font-size:0.82rem;font-weight:800;letter-spacing:0.08em;text-transform:uppercase}.title-divider{display:flex;max-width:320px;align-items:center;gap:10px;justify-content:center;margin:12px auto 0}.title-divider span{width:125px;height:1px;background:var(--purple)}.title-divider img{width:27px;height:27px;object-fit:contain}.page-heading{padding:18px 0 38px;text-align:center}.page-heading h1{margin-bottom:10px;font-size:clamp(2.5rem,5vw,3.65rem)}.page-heading p{margin:14px 0 0;color:var(--muted);font-size:1.05rem}.soft-panel{border-radius:var(--radius);background:linear-gradient(135deg,#f3f8fc,#f7f5ff)}.screen-reader-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.consultation-modal{position:fixed;z-index:1000;inset:0;display:none;align-items:center;justify-content:center;padding:20px}.consultation-modal.is-open{display:flex}.consultation-modal__backdrop{position:absolute;inset:0;background:rgba(18,29,44,0.64);backdrop-filter:blur(5px)}.consultation-modal__dialog{position:relative;z-index:1;width:min(100%,650px);max-height:calc(100vh - 40px);overflow:auto;padding:38px;border-radius:24px;background:#fff;box-shadow:0 30px 80px rgba(14,32,47,0.25)}.consultation-modal__dialog>p:not(.eyebrow){color:var(--muted)}.consultation-modal__close{position:absolute;top:14px;right:16px;width:40px;height:40px;border:0;border-radius:50%;color:var(--ink);background:var(--blue-bg);cursor:pointer;font-size:1.6rem}.consultation-form{display:grid;gap:16px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.consultation-form label{display:grid;gap:6px;color:var(--ink);font-size:0.88rem;font-weight:700}.consultation-form input,.consultation-form select,.consultation-form textarea{width:100%;padding:12px 14px;border:1px solid var(--line);border-radius:10px;color:var(--ink);background:#fafdff}.consultation-form input[type="checkbox"]{width:18px;height:18px;margin:2px 0 0;padding:0;accent-color:var(--teal);flex:0 0 auto}.consultation-form [aria-invalid="true"]{border-color:#c33}.consultation-form .form-privacy{display:flex;align-items:flex-start;gap:10px;margin:0;color:var(--muted);font-size:0.86rem;font-weight:600;line-height:1.45}.form-privacy a{color:var(--teal-dark);text-decoration:underline;text-underline-offset:3px}.form-privacy input[aria-invalid="true"]{outline:2px solid #c33;outline-offset:2px}.form-status{min-height:22px;margin:0;font-size:0.9rem}.form-status.is-success{color:#167548}.form-status.is-error{color:#b42318}