.contact__section{background:var(--bg-surface)}.contact__grid{margin-top:var(--section-gap);display:grid;grid-template-columns:minmax(0,1.1fr) minmax(300px,380px);gap:var(--space-11);align-items:start}.form{padding:var(--space-8);border:1px solid var(--border);border-radius:var(--radius-xl);background-color:var(--bg-surface);background-image:radial-gradient(135% 100% at 100% 0%,color-mix(in srgb,var(--color-primary) 7%,transparent) 0%,transparent 58%)}.form__grid{margin-top:var(--space-6);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-5)}.form__field--wide{grid-column:1 / -1}.form__label{display:block;margin-bottom:var(--space-2);color:var(--text-title);font-size:var(--fs-sm);font-weight:var(--fw-semibold);line-height:var(--lh-snug)}.form__req{color:var(--color-danger)}.form__input,.form__select,.form__textarea{width:100%;padding:var(--space-4);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--bg-surface);color:var(--text-title);font-family:var(--font-sans);font-size:var(--fs-base);line-height:var(--lh-snug);transition:border-color var(--dur) ease,box-shadow var(--dur) ease}.form__input::-moz-placeholder,.form__textarea::-moz-placeholder{color:var(--text-muted)}.form__input::placeholder,.form__textarea::placeholder{color:var(--text-muted)}.form__input:focus,.form__select:focus,.form__textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-primary) 18%,transparent)}.form__textarea{min-height:148px;resize:vertical}.form__select{-moz-appearance:none;appearance:none;-webkit-appearance:none;padding-right:var(--space-9);background-image:linear-gradient(45deg,transparent 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,transparent 50%);background-position:calc(100% - 22px) 52%,calc(100% - 16px) 52%;background-size:6px 6px,6px 6px;background-repeat:no-repeat;cursor:pointer}.form__input[aria-invalid=true],.form__select[aria-invalid=true],.form__textarea[aria-invalid=true]{border-color:var(--color-danger)}.form__error{display:none;margin-top:var(--space-2);color:var(--color-danger);font-size:var(--fs-xs);line-height:var(--lh-snug)}.form__error.is-shown{display:block}.form__consent{grid-column:1 / -1;display:flex;align-items:flex-start;gap:var(--space-3);color:var(--text-body);font-size:var(--fs-sm);line-height:var(--lh-snug)}.form__check{flex:none;width:18px;height:18px;margin-top:2px;accent-color:var(--color-primary);cursor:pointer}.form__foot{margin-top:var(--space-7);display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-5)}.form__note{color:var(--text-muted);font-size:var(--fs-xs);line-height:var(--lh-snug)}.form__status{grid-column:1 / -1;display:none;margin-top:var(--space-6);padding:var(--space-5);border-radius:var(--radius-md);border:1px solid var(--color-primary-border);background:var(--color-primary-soft);color:var(--text-body);font-size:var(--fs-sm);line-height:var(--lh-body)}.form__status.is-shown{display:block}.form__status--error{border-color:color-mix(in srgb,var(--color-danger) 45%,transparent);background:color-mix(in srgb,var(--color-danger) 10%,transparent)}.channels{display:flex;flex-direction:column;gap:var(--space-4)}.channel{display:flex;align-items:flex-start;gap:var(--space-4);padding:var(--space-6);border:1px solid var(--border);border-radius:var(--radius-lg);background-color:var(--bg-surface);background-image:radial-gradient(135% 100% at 100% 0%,color-mix(in srgb,var(--color-primary) 7%,transparent) 0%,transparent 58%);color:inherit;transition:transform .35s var(--ease),box-shadow .35s ease,border-color .35s ease}.channel:hover{transform:translateY(-3px);border-color:var(--color-primary-border);box-shadow:var(--shadow-md);color:inherit}.channel__icon{display:grid;place-items:center;flex:none;width:44px;height:44px;border-radius:var(--radius-sm);border:1px solid var(--color-primary-border);background:var(--color-primary-soft);color:var(--color-primary);transition:background-color .35s ease,color .35s ease,border-color .35s ease}.channel:hover .channel__icon{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-on-primary)}.channel__icon svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}.channel__body{min-width:0}.channel__value{display:block;margin-top:var(--space-2);color:var(--text-title);font-size:var(--fs-base);font-weight:var(--fw-semibold);line-height:var(--lh-snug);word-break:break-word;transition:color var(--dur) ease}.channel:hover .channel__value{color:var(--color-primary)}.channel__note{display:block;margin-top:var(--space-2);color:var(--text-muted);font-size:var(--fs-xs);line-height:var(--lh-snug)}.hours{padding:var(--space-6);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-subtle)}.hours__list{margin:var(--space-4) 0 0;display:grid;gap:var(--space-3)}.hours__row{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-4);color:var(--text-body);font-size:var(--fs-sm);line-height:var(--lh-snug)}.hours__time{color:var(--text-title);font-weight:var(--fw-semibold);white-space:nowrap}.office__section{padding-block:var(--section-y);border-block:1px solid var(--border)}.office__grid{margin-top:var(--section-gap);display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,420px);gap:var(--space-11);align-items:stretch}.office__media{position:relative;min-height:340px;overflow:hidden;border-radius:var(--radius-xl);border:1px solid var(--border)}.office__media .media-photo{transition:transform 1.2s var(--ease)}.office__media:hover .media-photo{transform:scale(1.04)}.office__body{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:var(--space-5)}.office__address{color:var(--text-body);font-size:var(--fs-md);font-style:normal;line-height:var(--lh-body)}.office__list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:var(--space-3);width:100%}.office__item{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-4);padding-bottom:var(--space-3);border-bottom:1px solid var(--border);color:var(--text-body);font-size:var(--fs-sm);line-height:var(--lh-snug)}.office__item:last-child{padding-bottom:0;border-bottom:0}.office__item-value{color:var(--text-title);font-weight:var(--fw-semibold);text-align:right}.faq__section{background:var(--bg-surface)}.faq__list{margin-top:var(--section-gap);max-width:860px;display:flex;flex-direction:column;gap:var(--space-3)}.faq__item{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-surface);transition:border-color var(--dur) ease,box-shadow var(--dur) ease}.faq__item:hover{border-color:var(--border-strong)}.faq__item[open]{border-color:var(--color-primary-border);box-shadow:var(--shadow-sm)}.faq__q{display:flex;align-items:center;justify-content:space-between;gap:var(--space-5);padding:var(--space-6);cursor:pointer;color:var(--text-title);font-family:var(--font-display);font-size:var(--fs-h4);font-weight:var(--fw-bold);letter-spacing:var(--ls-heading);line-height:var(--lh-heading);list-style:none}.faq__q::-webkit-details-marker{display:none}.faq__item[open] .faq__q{color:var(--color-primary)}.faq__mark{position:relative;flex:none;width:24px;height:24px;border-radius:50%;border:1px solid var(--color-primary-border);background:var(--color-primary-soft)}.faq__mark:before,.faq__mark:after{content:"";position:absolute;top:50%;left:50%;width:10px;height:2px;border-radius:2px;background:var(--color-primary);transform:translate(-50%,-50%);transition:transform .35s var(--ease)}.faq__mark:after{transform:translate(-50%,-50%) rotate(90deg)}.faq__item[open] .faq__mark:after{transform:translate(-50%,-50%) rotate(0)}.faq__a{padding:0 var(--space-6) var(--space-6);max-width:68ch;color:var(--text-body);font-size:var(--fs-base);line-height:var(--lh-body)}@media(max-width:1000px){.contact__grid,.office__grid{grid-template-columns:1fr;gap:var(--space-8)}.office__media{min-height:260px}.section-lead{max-width:none}}@media(max-width:640px){.form{padding:var(--space-6)}.form__grid{grid-template-columns:1fr}.form__foot{flex-direction:column;align-items:stretch}.form__foot .btn{width:100%}.office__media{min-height:220px}.faq__q{padding:var(--space-5);font-size:var(--fs-base)}.faq__a{padding:0 var(--space-5) var(--space-5)}}
