.contact-page{--ct-navy:#0e2a47;--ct-green:#4e7a63;--ct-muted:#667085;--ct-line:rgba(14,42,71,0.1);--ct-ease:cubic-bezier(0.22,1,0.36,1);position:relative;isolation:isolate;min-height:calc(100svh - 5rem);padding:clamp(2.5rem,6vw,4.5rem) 0 calc(clamp(3rem, 7vw, 5.5rem) + env(safe-area-inset-bottom));color:var(--ct-navy);background:radial-gradient(70% 55% at 100% 0,rgba(78,122,99,.1) 0,transparent 55%),radial-gradient(55% 45% at 0 100%,rgba(14,42,71,.07) 0,transparent 50%),linear-gradient(180deg,#f7f9fb,#eef2f6)}.contact-page *,.contact-page :after,.contact-page :before{box-sizing:border-box}.contact-page a{color:inherit;text-decoration:none}.contact-shell{width:min(100% - clamp(1.35rem,4vw,2.75rem),1080px);margin-inline:auto}.contact-grid{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:clamp(2rem,5vw,4.5rem);align-items:start}.contact-intro{padding-top:.35rem;animation:contact-rise .52s var(--ct-ease) both}.contact-intro__brand{margin:0 0 .85rem;font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;color:var(--ct-green)}.contact-intro__brand,.contact-intro__title{font-family:var(--font-title);font-weight:700}.contact-intro__title{margin:0;font-size:clamp(2.4rem,5vw,3.6rem);letter-spacing:-.04em;line-height:1}.contact-intro__lead{margin:1rem 0 0;max-width:22rem;color:var(--ct-muted);font-size:1rem;line-height:1.65;font-weight:500}.contact-details{list-style:none;margin:2.25rem 0 0;padding:0;border-top:1px solid var(--ct-line)}.contact-details li{display:grid;grid-template-columns:6.5rem minmax(0,1fr);gap:.85rem;padding:1rem 0;border-bottom:1px solid var(--ct-line)}.contact-details span{font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ct-muted);padding-top:.15rem}.contact-details a,.contact-details p{margin:0;font-size:.95rem;font-weight:600;line-height:1.45;color:var(--ct-navy)}.contact-details a{transition:color .18s ease}.contact-details a:hover{color:var(--ct-green)}.contact-intro__links{display:flex;flex-wrap:wrap;align-items:center;gap:.65rem;margin:1.6rem 0 0;color:var(--ct-muted);font-size:.88rem;font-weight:600}.contact-intro__links a{color:var(--ct-navy);border-bottom:1px solid rgba(14,42,71,.22);transition:color .16s ease,border-color .16s ease}.contact-intro__links a:hover{color:var(--ct-green);border-color:var(--ct-green)}.contact-form-block{padding:clamp(1.5rem,3vw,2.15rem);border:1px solid rgba(14,42,71,.08);border-radius:22px;background:rgba(255,255,255,.82);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 18px 48px rgba(14,42,71,.06);animation:contact-rise .62s var(--ct-ease) 80ms both}.contact-form-block__title{margin:0 0 1.25rem;font-family:var(--font-title);font-size:1.15rem;font-weight:700;letter-spacing:-.02em;color:var(--ct-navy)}.contact-form{display:grid;gap:1.05rem}.contact-form__row{display:grid;grid-template-columns:1fr 1fr;gap:.9rem}.contact-form__field{display:grid;gap:.4rem}.contact-form__field>span{font-size:.75rem;font-weight:700;letter-spacing:.04em;color:var(--ct-navy)}.contact-form__field em{margin-left:.35rem;font-style:normal;font-weight:500;color:var(--ct-muted);letter-spacing:0;text-transform:none;font-size:.72rem}.contact-form__field input,.contact-form__field select,.contact-form__field textarea{width:100%;min-height:3rem;padding:.75rem .95rem;border:1px solid rgba(14,42,71,.12);border-radius:12px;background:#fff;color:var(--ct-navy);font:inherit;font-size:.94rem;font-weight:500;outline:none;transition:border-color .16s ease,box-shadow .18s ease}.contact-form__field textarea{min-height:8.5rem;resize:vertical;line-height:1.5}.contact-form__field input::placeholder,.contact-form__field textarea::placeholder{color:rgba(14,42,71,.38)}.contact-form__field input:focus,.contact-form__field select:focus,.contact-form__field textarea:focus{border-color:rgba(14,42,71,.35);box-shadow:0 0 0 3px rgba(14,42,71,.08)}.contact-form__error{margin:0;color:#b42318;font-size:.82rem;font-weight:600}.contact-form__footer{display:flex;justify-content:flex-end;padding-top:.25rem}.contact-form__submit{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;min-height:3.1rem;padding:.7rem 1.35rem;border:0;border-radius:999px;background:var(--ct-navy);color:#fff;font:inherit;font-size:.92rem;font-weight:700;cursor:pointer;transition:background .18s ease,transform .18s var(--ct-ease)}.contact-form__submit:hover:not(:disabled){background:#0a1f35;transform:translateY(-1px)}.contact-form__submit:disabled{opacity:.65;cursor:progress}.contact-form__success{display:flex;align-items:flex-start;gap:.85rem;padding:.35rem .15rem;color:var(--ct-navy);animation:contact-rise .42s var(--ct-ease) both}.contact-form__success svg{flex-shrink:0;margin-top:.15rem;color:var(--ct-green)}.contact-form__success h3{margin:0;font-family:var(--font-title);font-size:1.25rem;font-weight:700;letter-spacing:-.02em}.contact-form__success p{margin:.4rem 0 0;color:var(--ct-muted);font-size:.92rem;line-height:1.55}@keyframes contact-rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (max-width:900px){.contact-grid{grid-template-columns:1fr;gap:1.75rem}.contact-intro__lead{max-width:28rem}.contact-details{margin-top:1.5rem}}@media (max-width:560px){.contact-details li,.contact-form__row{grid-template-columns:1fr}.contact-details li{gap:.3rem}.contact-form-block{padding:1.25rem;border-radius:18px}.contact-form__footer{justify-content:stretch}.contact-form__submit{width:100%}}@media (prefers-reduced-motion:reduce){.contact-form-block,.contact-form__submit,.contact-form__success,.contact-intro{animation:none;transition:none}.contact-form__submit:hover:not(:disabled){transform:none}}