.fd-contact,.fd-privacy{color:#172c25;background-color:#f7f5ee;font-family:'Funnel Sans',Arial,sans-serif}
.fc-wrap{max-width:1360px;padding:0 clamp(20px,5vw,90px);margin:0 auto}
.fc-breadcrumb{display:flex;align-items:center;gap:12px;color:#4f5c52;padding-top:36px;font:500 11px/1.5 'JetBrains Mono',monospace;letter-spacing:.055em;text-transform:uppercase}
.fc-breadcrumb a{text-decoration:none;color:inherit}
.fc-breadcrumb a:hover{text-decoration:underline}
.fc-intro{display:grid;grid-template-columns:1.3fr .7fr;gap:5vw;align-items:end;padding:clamp(38px,6vw,90px) 0 clamp(38px,5vw,65px);border-bottom:1px solid #abb1a6}
.fc-intro h1,.fc-formarea h2,.fc-appointment h2,.fp-title,.fp-content h2{font-family:'Instrument Serif',Georgia,serif;font-weight:400;color:inherit;margin:0;letter-spacing:-.043em}
.fc-intro h1,.fp-title{font-size:clamp(65px,8.6vw,133px);line-height:.91}
.fc-intro h1 em,.fp-title em{color:#2c6637}
.fc-intro p{line-height:1.55;font-size:clamp(17px,1.5vw,23px);margin:0 0 3px;max-width:34ch}
.fc-layout{display:grid;grid-template-columns:1.3fr .75fr;gap:clamp(44px,8vw,135px);align-items:start;padding:clamp(40px,5vw,80px) 0 clamp(70px,8vw,120px)}
.fc-formarea h2{font-size:clamp(45px,5vw,75px);line-height:1}
.fc-formlead{font-size:17px;line-height:1.5;margin:14px 0 30px;max-width:49ch}
.fc-fields{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.fc-formarea label{display:block;margin:0 0 23px;font-size:15px;font-weight:600;line-height:1.4}
.fc-formarea label small{font-weight:400;font-size:13px;color:#525f53}
.fc-formarea input,.fc-formarea textarea,.fc-formarea select{width:100%;box-sizing:border-box;border-radius:3px;border:1px solid #a1aa9e;background:#fffdf8;color:#172c25;font:400 16px/1.4 'Funnel Sans',Arial,sans-serif;padding:12px 13px;margin-top:6px}
.fc-formarea textarea{display:block;resize:vertical;min-height:130px;max-height:450px}
.fc-formarea button,.fc-appointment a,.fc-direct a{touch-action:manipulation}
.fc-formarea :focus-visible,.fc-appointment a:focus-visible,.fc-direct a:focus-visible,.fc-breadcrumb a:focus-visible,.fp-content a:focus-visible{outline:3px solid #2c6637;outline-offset:3px}
.fc-formarea textarea::placeholder{color:#687467}
.fc-actions{display:flex;gap:20px;align-items:center;flex-wrap:wrap}
.fc-submit,.fc-copy{font-family:inherit;font-weight:550;font-size:16px;cursor:pointer}
.fc-submit{background:#172c25;color:#fffdf8;border:1px solid #172c25;border-radius:100px;display:inline-flex;align-items:center;justify-content:space-between;gap:24px;padding:13px 22px}
.fc-submit:hover{background:#2c6637}
.fc-submit span,.fc-appointment a span{font-family:Arial,sans-serif;font-size:21px;line-height:1}
.fc-copy{border:0;background:none;color:#234e2a;text-decoration:underline;text-underline-offset:4px;padding:8px 0}
.fc-formarea [hidden]{display:none}
.fc-status{line-height:1.45;font-size:15px;color:#2b5733;margin:17px 0 0}
.fc-status:empty{display:none}
.fc-appointment{padding:clamp(26px,3.1vw,46px);color:#f8f6ee;background:#172c25}
.fc-appointment h2{font-size:clamp(41px,3.6vw,60px);line-height:.99}
.fc-appointment h2 em{display:block;color:#d7e6bc}
.fc-appointment p{font-size:16px;line-height:1.5;margin:21px 0 28px;max-width:36ch}
.fc-appointment a{display:flex;justify-content:space-between;align-items:center;gap:12px;border-top:1px solid #67796a;color:inherit;text-decoration:none;font-weight:550;padding:15px 0}
.fc-appointment a:last-child{padding-bottom:0}
.fc-appointment a:hover{color:#d7e6bc}
.fc-appointment a:focus-visible{outline-color:#d7e6bc}
.fc-direct{padding:30px 0;display:grid;justify-items:start;gap:9px}
.fc-overline,.fp-kicker{font:500 11px/1.45 'JetBrains Mono',monospace;letter-spacing:.08em;text-transform:uppercase;color:#526153}
.fc-direct a,.fp-content a{color:#244e2e;text-decoration:underline;text-underline-offset:4px}
.fc-direct>a:not(.fc-smalllink){font-size:clamp(21px,1.8vw,29px)}
.fc-direct .fc-smalllink{font-size:14px;margin-top:10px}
.fc-direct a:hover,.fp-content a:hover{color:#172c25}
.fp-wrap{max-width:890px;margin:auto;padding:0 clamp(20px,5vw,70px) clamp(70px,8vw,120px)}
.fp-title{font-size:clamp(58px,7vw,100px);margin:clamp(36px,5vw,70px) 0 26px}
.fp-lead{line-height:1.5;font-size:clamp(19px,2vw,24px);margin:0 0 34px;max-width:51ch}
.fp-content{border-top:1px solid #a6b0a4;padding-top:10px}
.fp-content section{margin-top:32px;scroll-margin-top:110px}
.fp-content h2{font-size:clamp(33px,3.6vw,49px);line-height:1.12}
.fp-content p{font-size:17px;line-height:1.62;max-width:66ch;margin:10px 0 0}
@media(max-width:790px){
  .fc-intro{grid-template-columns:1fr;gap:24px}
  .fc-layout{grid-template-columns:1fr;gap:40px}
  .fc-side{border-top:1px solid #abb1a6;padding-top:36px}
  .fc-appointment h2 em{display:inline}
  .fc-direct{padding-bottom:0}
}
@media(max-width:540px){
  .fc-breadcrumb{padding-top:22px}
  .fc-fields{grid-template-columns:1fr;gap:0}
  .fc-intro h1{font-size:clamp(61px,14.7vw,78px)}
  .fc-intro{gap:20px}
}
.fc-privacy{display:flex!important;align-items:flex-start;gap:.65rem;font-size:.9rem;line-height:1.5}.fc-privacy input{width:18px!important;height:18px;flex:0 0 18px;margin-top:.15rem}.fc-submit:disabled{opacity:.6;cursor:wait}
