.theme-contact .contact-intro{max-width:760px}
.theme-contact .form-wrap{border:1px solid var(--line);border-radius:6px}
.request-step{margin:0 0 34px;padding:0 0 32px;border:0;border-bottom:1px solid var(--line)}
.request-step legend{font:700 clamp(1.25rem,2.5vw,1.7rem) var(--serif);letter-spacing:-.025em;margin:0 0 16px}
.request-options{display:grid;gap:12px}
.request-size-options{grid-template-columns:repeat(3,minmax(0,1fr))}
.service-options{grid-template-columns:repeat(3,minmax(0,1fr))}
.theme-contact .request-option{display:block;position:relative;margin:0;padding:0;border:0;background:transparent;cursor:pointer}
.theme-contact .request-option input{position:absolute;top:18px;left:17px;width:19px;height:19px;margin:0;accent-color:#244436;z-index:1}
.request-option span{display:block;height:100%;min-height:118px;padding:17px 18px 17px 47px;border:2px solid var(--line);border-radius:5px;background:#fff;transition:border-color .15s,background .15s}
.request-option strong{display:flex;justify-content:space-between;gap:10px;font-size:1rem;line-height:1.35}
.request-option strong em{font-style:normal;color:var(--clay-dark);white-space:nowrap}
.request-option small{display:block;margin-top:8px;font-size:.87rem;line-height:1.45;color:#48534a;font-weight:400}
.request-option:hover span{border-color:#818e78}
.request-option input:checked+span{border-color:#244436;background:#f1f5ec}
.request-option input:focus-visible+span{outline:3px solid #af5d2b;outline-offset:3px}
.service-group[hidden],.request-hint[hidden],.guide-field[hidden],.location-field[hidden]{display:none!important}
.request-hint{margin:2px 0 0;color:#48534a}
.request-includes:not(:empty){padding:19px 22px;margin:-4px 0 34px;border-left:4px solid var(--clay);background:#fff}
.request-includes h2{font-size:1.12rem;margin:0 0 7px}
.request-includes p{margin:0;line-height:1.6}
.theme-contact .form-note{font-size:.9rem;line-height:1.5;max-width:760px;margin:0 0 18px}
@media(max-width:900px){.service-options{grid-template-columns:1fr}.request-option span{min-height:0}}
@media(max-width:680px){.request-size-options{grid-template-columns:1fr}.request-step{margin-bottom:27px;padding-bottom:26px}.request-option strong{font-size:.96rem}}

.contact-mode-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:0 0 40px}
.contact-mode-choice{min-height:76px;padding:17px 22px;border:1px solid #c7bdaf;border-radius:14px;background:#fffdf9;color:var(--ink);font:700 clamp(16px,1.7vw,21px)/1.3 var(--sans);text-align:left;cursor:pointer;transition:background .15s,border-color .15s,box-shadow .15s}
.contact-mode-choice:hover{border-color:#5a6c57;box-shadow:0 5px 18px rgba(30,35,25,.08)}
.contact-mode-choice.is-active{background:#263c30;border-color:#263c30;color:#fff}
.contact-mode-choice:focus-visible{outline:3px solid #af5d2b;outline-offset:3px}
.contact-mode-panel[hidden]{display:none!important}
.contact-mode-panel .contact-intro{margin-bottom:32px}
@media(max-width:680px){.contact-mode-choices{gap:10px;margin-bottom:28px}.contact-mode-choice{min-height:78px;padding:14px;font-size:15px}}
