.sl-contact-intro{background:var(--soft);padding:64px 0 48px;border-bottom:1px solid var(--line)}
.sl-contact-intro-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:64px;align-items:center}
.sl-contact-intro h1{font-size:clamp(36px,3.5vw,52px);line-height:1.15;letter-spacing:-.035em;margin:0 0 22px;text-wrap:balance}
.sl-contact-intro h1 em{font-style:normal;color:var(--brand)}
html[data-theme=dark] .sl-contact-intro h1 em{color:var(--accent)}
.sl-contact-intro-grid>div>p{font-size:18px;max-width:55ch;color:var(--muted);margin:0;line-height:1.7}
.sl-contact-direct{display:flex;flex-direction:column;align-items:flex-start;gap:16px}
.sl-contact-direct .sl-button{font-size:17px;min-height:54px}.sl-contact-phone{font-size:17px;text-decoration:underline;text-underline-offset:5px;font-weight:600}
.sl-contact-direct>p{border-top:1px solid var(--line);padding-top:20px;font-size:15px!important;line-height:1.7}
.sl-contact-direct>p a{color:var(--text);text-decoration:underline;text-underline-offset:4px}
.sl-contact-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:64px;align-items:start;padding-block:64px}
.sl-contact-page h2{font-size:32px;letter-spacing:-.025em;margin:0 0 16px}.sl-contact-lead{font-size:17px;color:var(--muted);max-width:55ch;margin-bottom:28px}
.sl-contact-page .sl-contact-grid{display:block}.sl-contact-page .sl-contact-grid>div:first-child{display:none}
.sl-contact-page .slc-public-form{padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;min-width:0}
.sl-contact-page .sl-form-grid{gap:20px}.sl-contact-page .slc-public-form label{font-size:15px;font-weight:600;color:var(--text);line-height:1.5}
.sl-contact-page input:not([type=checkbox]),.sl-contact-page select,.sl-contact-page textarea{width:100%;min-height:48px;padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--text);font-size:16px;margin-top:7px;caret-color:var(--brand)}
.sl-contact-page textarea{min-height:135px;resize:vertical}.sl-contact-page input[type=file]{font-size:14px;padding:14px;line-height:1.7}
.sl-contact-page .sl-check{display:flex;gap:10px;align-items:flex-start;font-weight:400!important;margin-block:22px;font-size:14px!important}.sl-contact-page .sl-check input{width:18px;height:18px;flex-shrink:0;margin-top:2px;accent-color:var(--brand)}
.sl-contact-page .slc-public-form>.sl-button{font-size:17px;min-height:52px}.sl-contact-page .slc-result{margin-top:16px;overflow-wrap:anywhere}
.sl-contact-location{background:var(--surface);border:1px solid var(--line);border-radius:14px;overflow:hidden}
.sl-contact-photo{width:100%;height:280px;display:block;object-fit:cover;object-position:50% 44%}
.sl-contact-location-copy{padding:28px}.sl-contact-location-copy h2{font-size:27px}.sl-contact-location address{font-size:18px;font-style:normal;line-height:1.7;margin-bottom:22px}.sl-contact-location .sl-outline-button{font-size:16px;border-color:var(--brand)}
.sl-contact-location h3{font-size:19px;letter-spacing:-.02em;margin:24px 0 10px}.sl-contact-visit-note{font-size:14px;line-height:1.7;color:var(--muted);margin:24px 0 0}
.sl-contact-next{padding:48px 0;background:var(--soft)}.sl-contact-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:28px}.sl-contact-steps>div{border-top:1px solid var(--line);padding-top:22px}.sl-contact-steps h3{font-size:21px;letter-spacing:-.02em;margin-bottom:12px}.sl-contact-steps p{font-size:16px;color:var(--muted);margin:0}.sl-contact-legal{font-size:13px;color:var(--muted);margin:36px 0 0}
@media(max-width:1000px){.sl-contact-intro-grid{gap:32px;grid-template-columns:1.2fr 1fr}.sl-contact-layout{gap:32px;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}}
@media(max-width:750px){.sl-contact-intro{padding:36px 0}.sl-contact-intro-grid,.sl-contact-layout{grid-template-columns:1fr;gap:32px}.sl-contact-intro h1{font-size:38px}.sl-contact-intro h1 br{display:none}.sl-contact-layout{padding-block:36px}.sl-contact-direct{gap:16px}.sl-contact-direct .sl-button{width:100%}.sl-contact-page .sl-form-grid{grid-template-columns:1fr 1fr}.sl-contact-steps{grid-template-columns:1fr;gap:24px}.sl-contact-photo{height:260px}.sl-contact-next{padding-block:36px}}
@media(max-width:420px){.sl-contact-page .sl-form-grid{grid-template-columns:1fr}.sl-contact-intro h1{font-size:34px}.sl-contact-page h2{font-size:28px}}
