.contact-page{background:#f7f8f5;color:#183c37}.contact-hero{position:relative;overflow:hidden;padding:78px 0 58px;background:linear-gradient(135deg,#0d4e46,#153f3a);color:#fff}.contact-hero:after{content:"";position:absolute;width:430px;height:430px;border-radius:50%;left:-120px;top:-220px;background:radial-gradient(circle,#dbb66e55,transparent 68%)}.contact-hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.1fr .9fr;gap:42px;align-items:center}.contact-hero h1{font-size:clamp(2.5rem,5vw,5rem);line-height:1.16;margin:13px 0}.contact-hero p{color:#dbe9e5;line-height:2;max-width:680px}.contact-quick{display:grid;grid-template-columns:1fr 1fr;gap:13px}.contact-quick a{display:flex;min-height:118px;flex-direction:column;justify-content:center;padding:20px;border:1px solid #ffffff2b;border-radius:24px;background:#ffffff0d;color:#fff;transition:.2s}.contact-quick a:hover{transform:translateY(-3px);background:#ffffff18}.contact-quick b{font-size:1.08rem}.contact-quick span{color:#c9ddd8;margin-top:7px;font-size:.88rem}.contact-main{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);gap:26px;align-items:start}.contact-form-card,.visit-card{background:#fff;border:1px solid #dee8e4;border-radius:30px;padding:clamp(24px,4vw,38px);box-shadow:0 18px 55px rgba(12,77,69,.06)}.contact-form-card h2,.visit-card h2{margin:0 0 10px;color:#0c4d45}.contact-form-card>p,.visit-card>p{line-height:1.9;color:#60736f}.path-choice{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:24px 0}.path-choice label{cursor:pointer}.path-choice input{position:absolute;opacity:0}.path-choice span{display:flex;min-height:74px;align-items:center;justify-content:center;text-align:center;padding:12px;border:1px solid #d8e5e1;border-radius:18px;background:#f8faf9;color:#315d56;font-weight:750;transition:.2s}.path-choice input:checked+span{background:#0c4d45;color:#fff;border-color:#0c4d45;box-shadow:0 9px 24px #0c4d4530}.contact-fields{display:grid;grid-template-columns:1fr 1fr;gap:15px}.contact-fields label{display:grid;gap:7px;color:#335b55;font-size:.92rem}.contact-fields input,.contact-fields select,.contact-fields textarea{width:100%;border:1px solid #d5e2de;border-radius:15px;background:#fbfcfb;padding:13px;font:inherit;color:#183c37;outline:none}.contact-fields input:focus,.contact-fields select:focus,.contact-fields textarea:focus{border-color:#0c7969;box-shadow:0 0 0 3px #0c79691c}.contact-fields .wide{grid-column:1/-1}.contact-fields textarea{min-height:100px;resize:vertical}.contact-submit{display:flex;gap:16px;align-items:center;margin-top:18px}.contact-submit .btn{border:0;cursor:pointer}.contact-message{line-height:1.7;color:#0c6c5f}.visit-card{position:sticky;top:90px}.address-box{padding:20px;margin:20px 0;border-radius:20px;background:#edf5f2}.address-box b,.address-box span{display:block}.address-box span{line-height:1.9;margin-top:7px;color:#526c66}.visit-actions{display:grid;gap:10px}.visit-actions a{display:flex;justify-content:space-between;gap:14px;padding:15px 17px;border:1px solid #d9e5e1;border-radius:16px;color:#164d45;font-weight:750}.arrival-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.arrival-steps article{position:relative;padding:26px;border-radius:24px;background:#fff;border:1px solid #dfe9e5}.arrival-steps span{display:grid;width:42px;height:42px;place-items:center;border-radius:14px;background:#0c4d45;color:#fff;font-weight:900}.arrival-steps h3{margin:17px 0 7px}.arrival-steps p{line-height:1.8;color:#60736f}.county-banner{display:grid;grid-template-columns:1fr auto;gap:30px;align-items:center;padding:34px;border-radius:30px;background:#f2e6cf}.county-banner h2{margin:0 0 9px}.county-banner p{line-height:1.9;color:#625a4d}.privacy-note{font-size:.86rem;color:#687a76;margin-top:14px}@media(max-width:900px){.contact-hero-grid,.contact-main{grid-template-columns:1fr}.visit-card{position:static}.arrival-steps{grid-template-columns:1fr}.county-banner{grid-template-columns:1fr}}@media(max-width:620px){.contact-quick,.path-choice,.contact-fields{grid-template-columns:1fr}.contact-fields .wide{grid-column:auto}.contact-hero{padding-top:54px}.contact-form-card,.visit-card{border-radius:22px}.contact-submit{align-items:stretch;flex-direction:column}}
