.contact-page{background:var(--surface-grey);color:var(--ink)}.contact-page .arrow{display:inline-block}.contact-main{padding-block:var(--space-section)}.contact-layout{grid-template:"title form""direct form""place form"".form"1fr/minmax(0,.38fr) minmax(0,.62fr);align-items:start;gap:0 clamp(2rem,5vw,5rem);max-width:1320px;display:grid}.contact-title{margin:0 0 var(--space-lead);font-size:var(--type-hero);letter-spacing:-.055em;text-transform:uppercase;grid-area:title;font-weight:700;line-height:.92}.contact-info{margin:0}.contact-info-direct{grid-area:direct}.contact-info-place{grid-area:place}.contact-info>div{border-top:1px solid var(--line-on-light);padding-block:.65rem}.contact-info-place>div:last-child{border-bottom:1px solid var(--line-on-light)}.contact-info dt{color:var(--ink-muted);font-size:var(--type-meta);letter-spacing:var(--tracking-meta);text-transform:uppercase;margin-bottom:.15rem;font-weight:700;line-height:1.3}.contact-info dd{margin:0;font-size:1rem;line-height:1.45}.contact-info dd a{overflow-wrap:anywhere;min-height:44px;transition:color var(--motion-fast) ease;align-items:center;gap:.45rem;font-weight:700;display:inline-flex}.contact-info dd a:hover,.contact-info .arrow{color:var(--action)}.contact-phone{letter-spacing:-.02em;font-size:clamp(1.35rem,1.1rem + .8vw,1.75rem)}.contact-hours{margin:0;padding:0;list-style:none}.contact-hours li{padding-block:.1rem}.contact-info address{font-style:normal}.contact-map-link{font-size:.92rem;min-height:40px!important}.contact-form-panel{border:1px solid var(--line-on-light);border-top:3px solid var(--action);background:var(--surface-white);border-radius:6px;grid-area:form;min-width:0;padding:clamp(1.25rem,2.4vw,2.25rem);box-shadow:0 1px 2px #2026270a,0 12px 32px -18px #2026272e}.contact-form-panel form{gap:1rem;display:grid}.branch-picker,.branch-fields{border:0;min-width:0;margin:0;padding:0}.branch-fields[hidden]{display:none!important}.branch-picker legend{margin-bottom:.4rem;padding:0;font-size:.86rem;font-weight:700}.branch-picker legend span,.field label span{color:var(--action)}.branch-options{grid-template-columns:1fr 1fr;gap:.5rem;display:grid}.branch-option{cursor:pointer;min-width:0;display:block;position:relative}.branch-option input{z-index:1;width:18px;height:18px;accent-color:var(--action);margin:0;position:absolute;top:50%;left:.9rem;translate:0 -50%}.branch-option>span{border:1px solid var(--line-on-light);background:var(--surface-paper);min-height:48px;transition:border-color .18s ease, background-color .18s ease, scale .16s var(--motion-ease);border-radius:4px;flex-wrap:wrap;align-items:baseline;gap:0 .35rem;padding:.7rem .9rem .7rem 2.6rem;line-height:1.3;display:flex}.branch-option strong{font-size:1rem}.branch-option small{color:var(--ink-muted);font-size:.88rem}.branch-option input:checked+span{border-color:var(--action);box-shadow:inset 0 0 0 1px var(--action);background:#fff}.branch-option input:focus-visible+span{outline:3px solid var(--action);outline-offset:2px}.branch-option:hover>span{border-color:var(--action)}.branch-option:active>span{scale:.985}.field-grid{grid-template-columns:1fr 1fr;gap:.85rem 1rem;display:grid}.field{flex-direction:column;min-width:0;display:flex}.field-full,.field-grid:has(>.field-company[hidden]) .field-name{grid-column:1/-1}.field label{margin-bottom:.3rem;font-size:.86rem;font-weight:700;line-height:1.3}.field input,.field select,.field textarea{width:100%;min-height:46px;color:var(--ink);font:400 1rem/1.4 var(--font-sans);color-scheme:light;background:#fff;border:1px solid #aeb6b2;border-radius:4px;outline:none;padding:.55rem .8rem;display:block}.field textarea{resize:vertical;min-height:112px}.field input::placeholder,.field textarea::placeholder{color:#5f6a66;opacity:1}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--action);box-shadow:inset 0 0 0 1px var(--action)}.field input[aria-invalid=true],.field select[aria-invalid=true],.field textarea[aria-invalid=true]{border-color:#a6222c}.field-error{color:#8f1e27;margin:.3rem 0 0;font-size:.84rem;font-weight:700;line-height:1.3}.upload-area{background:var(--surface-paper);border:1px dashed #9aa4a0;border-radius:4px;flex-flow:wrap;justify-content:space-between;align-items:center;gap:.5rem 1rem;padding:.6rem .8rem}.upload-area.is-industrial{border-style:solid}.upload-text{flex-wrap:wrap;align-items:baseline;gap:0 .5rem;min-width:0;display:flex}.upload-area .upload-text label{margin:0;font-size:.92rem}.upload-text>span{color:var(--ink-muted);font-size:.86rem}.upload-control{flex-wrap:wrap;align-items:center;gap:.4rem .9rem;min-width:0;display:flex}.upload-control input{opacity:0;width:1px;height:1px;position:absolute}.upload-button{border:1px solid var(--action);min-height:44px;color:var(--action);cursor:pointer;transition:background-color .16s ease, color .16s ease, scale .16s var(--motion-ease);background:#fff;border-radius:4px;align-items:center;padding:.5rem .85rem;font-size:.88rem;font-weight:700;display:inline-flex;margin:0!important}.upload-control input:focus-visible+.upload-button{outline:3px solid var(--action);outline-offset:3px}.upload-button:active{scale:.97}.file-name{min-width:0;color:var(--ink-muted);overflow-wrap:anywhere;font-size:.84rem}.form-extra{border-top:1px solid var(--line-on-light)}.form-extra summary{min-height:48px;color:var(--ink);cursor:pointer;align-items:center;gap:.6rem;font-size:.92rem;font-weight:700;list-style:none;display:flex}.form-extra summary::-webkit-details-marker{display:none}.form-extra summary:before{border:1px solid var(--action);width:20px;height:20px;color:var(--action);content:"+";border-radius:3px;flex:none;place-items:center;font-size:1rem;font-weight:400;line-height:1;display:grid}.form-extra[open] summary:before{content:"−"}.form-extra summary:focus-visible{outline:3px solid var(--action);outline-offset:2px}.form-extra-grid{padding-bottom:.5rem}.field-subgrid{display:contents}.form-privacy{border-left:3px solid var(--action);background:var(--surface-paper);color:#3f4845;padding:.8rem .9rem;font-size:.86rem;line-height:1.45}.form-privacy-info{border-block:1px solid var(--line-on-light);margin-block:.6rem;padding-block:.6rem}.form-privacy-title{color:var(--ink);margin:0 0 .3rem;font-size:.84rem;font-weight:700}.form-privacy-info p{margin:0 0 .3rem}.form-privacy-info p:last-child{margin-bottom:0}.form-privacy ul{margin:0 0 .4rem;padding-left:1.1rem;list-style:outside}.form-privacy a{color:var(--action);text-underline-offset:.2em;font-weight:700;text-decoration:underline}.field-consent label{min-height:44px;color:var(--ink);cursor:pointer;align-items:flex-start;gap:.6rem;margin:0;padding-top:.3rem;font-size:.9rem;font-weight:600;line-height:1.4;display:flex}.field-consent:last-child label{font-weight:400}.field-consent input{width:20px;height:20px;accent-color:var(--action);flex:none;margin:0}.field-consent input:focus-visible{outline:3px solid var(--action);outline-offset:2px}.form-privacy-note{color:#56605c;margin:.2rem 0 0 calc(20px + .6rem);font-size:.8rem}.form-finish{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.6rem 1.2rem;display:grid}.form-finish button{background:var(--action);color:#fff;min-width:220px;min-height:50px;font:700 1rem var(--font-sans);cursor:pointer;transition:background-color .18s ease, scale .16s var(--motion-ease);border:0;border-radius:4px;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 1.1rem;display:flex}.form-finish button:hover:not(:disabled){background:var(--action-hover)}.form-finish button:not(:disabled):active{scale:.97}.form-finish button:disabled{cursor:not-allowed;background:#8f8285}.form-finish>p{color:#3f4845;margin:0;font-size:.88rem;line-height:1.4}.form-status{border-left:4px solid var(--action);background:var(--surface-paper);margin:0;padding:.8rem 1rem;font-size:.95rem;line-height:1.45}.form-status[data-state=error]{background:#f7eeee;border-left-color:#a6222c}.contact-place{padding-block:var(--space-section);border-top:1px solid var(--line-on-light);background:var(--surface-paper)}.place-grid{grid-template-columns:minmax(0,.38fr) minmax(0,.62fr);align-items:center;gap:1.25rem clamp(2rem,5vw,5rem);max-width:1320px;display:grid}.place-info{flex-direction:column;align-items:flex-start;gap:.4rem;display:flex}.place-info h2{font-size:var(--type-h4);letter-spacing:-.01em;text-transform:uppercase;margin:0 0 .2rem;font-weight:700;line-height:1.15}.place-info address{font-style:normal;font-weight:700;line-height:1.45}.place-info p{color:var(--ink-muted);margin:0;font-size:.95rem;line-height:1.5}.place-info>a{border-bottom:1px solid var(--action);min-height:44px;color:var(--action);transition:scale .16s var(--motion-ease);align-items:center;gap:.6rem;font-weight:700;display:inline-flex}.place-info>a:active{scale:.97}.place-map{border:1px solid var(--line-on-light);background:#e4e8e3;border-radius:6px;height:clamp(220px,20vw,280px);position:relative;overflow:hidden}.place-map-facade{text-align:center;background:linear-gradient(118deg,#0000 47.6%,#fffffff2 47.6% 50.4%,#0000 50.4%),linear-gradient(24deg,#0000 61.5%,#ffffffe6 61.5% 63%,#0000 63%),linear-gradient(162deg,#0000 30%,#ffffffbf 30% 31.2%,#0000 31.2%),repeating-linear-gradient(0deg,#0000 0 47px,#2024230e 47px 48px),repeating-linear-gradient(90deg,#0000 0 47px,#2024230e 47px 48px),#e4e8e3;flex-direction:column;justify-content:center;align-items:center;gap:.6rem;padding:1.25rem;display:flex;position:absolute;inset:0}.place-map-pin{background:var(--action);border-radius:50% 50% 50% 0;width:24px;height:24px;position:relative;rotate:-45deg;box-shadow:0 6px 14px #00000038}.place-map-pin:after{content:"";background:#fff;border-radius:50%;position:absolute;inset:7px}.place-map-enhanced{flex-direction:column;align-items:center;gap:.5rem;display:flex}.place-map-enhanced[hidden]{display:none}.place-map-load{background:var(--action);color:#fff;min-height:46px;font:700 .95rem var(--font-sans);cursor:pointer;transition:background-color .18s ease, scale .16s var(--motion-ease);border:0;border-radius:4px;align-items:center;gap:1rem;padding:.6rem 1rem;display:inline-flex}.place-map-load:hover{background:var(--action-hover)}.place-map-load:active{scale:.97}.place-map-load:focus-visible{outline:3px solid var(--action);outline-offset:3px}.place-map-note{color:#3f4845;background:#ffffffd9;max-width:40ch;margin:0;padding:.3rem .6rem;font-size:.8rem;line-height:1.4}.place-map iframe{opacity:0;border:0;width:100%;height:100%;transition:opacity .32s;position:absolute;inset:0}.place-map.is-loaded iframe{opacity:1}.place-map.is-loading .place-map-enhanced{opacity:.55;pointer-events:none}@media (hover:hover) and (pointer:fine){.contact-page .arrow{transition:translate .22s var(--motion-ease)}.contact-page a:hover .arrow,.form-finish button:not(:disabled):hover .arrow{translate:3px -3px}.upload-button:hover{background:var(--action);color:#fff}}@media (prefers-reduced-motion:no-preference){.branch-fields:not([hidden]){transition:opacity .24s var(--ease-out-strong), translate .24s var(--ease-out-strong)}@starting-style{.branch-fields:not([hidden]){opacity:0;translate:0 6px}}.field-error:not([hidden]),.form-status:not([hidden]){transition:opacity .18s ease, translate .18s var(--ease-out-strong)}@starting-style{.field-error:not([hidden]),.form-status:not([hidden]){opacity:0;translate:0 -3px}}}@media (prefers-reduced-motion:reduce){.branch-option>span,.place-map iframe,.place-map-load,.upload-button,.form-finish button{transition:none}}@media (width<=900px){.contact-layout,.place-grid{grid-template-columns:1fr}.contact-layout{grid-template-rows:auto;grid-template-areas:"title""direct""form""place"}.contact-info-direct{margin-bottom:1.25rem}.contact-info-direct>div:last-child{border-bottom:1px solid var(--line-on-light)}.contact-info-place{margin-top:1.5rem}}@media (width<=900px) and (width>=561px){.contact-info{grid-template-columns:repeat(3,minmax(0,1fr));gap:0 1rem;display:grid}.contact-info-direct>div,.contact-info-place>div{border-bottom:1px solid var(--line-on-light)}}@media (width<=560px){.contact-info-direct>div{padding-block:.3rem}.contact-info-direct dd a{min-height:40px}.field-grid,.branch-options,.form-finish{grid-template-columns:1fr}.form-finish button{width:100%;min-width:0}.upload-area{flex-direction:column;align-items:flex-start}.place-map{height:200px}}@media (width<=380px){.contact-page .header-phone{display:none}}
