/* VW_STORE_CONTACT_PREMIUM_CUSTOMIZATION_V3 */
/* VW_STORE_CONTACT_DB_PRIMARY_PUBLIC_CSS_V6 */

body.vw-storefront .vw-contact-hero{
    position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px;overflow:hidden;
    margin:0 0 22px;padding:clamp(30px,5vw,58px);border:1px solid var(--vw-border);
    border-radius:var(--vw-radius-lg);
    background:radial-gradient(circle at 90% 0%,color-mix(in srgb,var(--vw-accent) 18%,transparent),transparent 34%),
               linear-gradient(135deg,var(--vw-surface),color-mix(in srgb,var(--vw-primary) 5%,var(--vw-surface)))
}
.vw-contact-hero__copy{max-width:780px}
.vw-contact-kicker{display:inline-block;margin-bottom:10px;color:var(--vw-accent);font-size:11px;font-weight:850;letter-spacing:.13em;text-transform:uppercase}
.vw-contact-hero h1,.vw-contact-section-head h2,.vw-contact-map__head h2{margin:0;color:var(--vw-text);letter-spacing:-.04em}
.vw-contact-hero h1{font-size:clamp(36px,5vw,62px);line-height:1.02}
.vw-contact-hero p,.vw-contact-section-head p,.vw-contact-map__head p{max-width:700px;margin:15px 0 0;color:var(--vw-muted);line-height:1.7}
.vw-contact-hero__mark{display:grid;width:clamp(80px,10vw,124px);height:clamp(80px,10vw,124px);place-items:center;align-self:center;border:1px solid color-mix(in srgb,var(--vw-primary) 16%,transparent);border-radius:32px;color:var(--vw-primary);background:color-mix(in srgb,var(--vw-primary) 8%,var(--vw-surface));font-size:clamp(34px,5vw,54px);font-weight:800}

.vw-contact-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin:0 0 22px}
body.vw-storefront a.vw-contact-card{display:flex;min-width:0;align-items:center;gap:14px;padding:18px;border:1px solid var(--vw-border);border-radius:var(--vw-radius);color:var(--vw-text);background:var(--vw-surface);box-shadow:0 10px 30px rgba(15,23,42,.04);text-decoration:none;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
body.vw-storefront a.vw-contact-card:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--vw-primary) 28%,var(--vw-border));box-shadow:var(--vw-shadow)}
.vw-contact-card__icon,.vw-contact-detail__icon,.vw-contact-note__icon{display:grid;width:44px;height:44px;flex:0 0 44px;place-items:center;border-radius:13px;color:#fff;background:var(--vw-primary);font-size:16px;font-weight:850}
.vw-contact-card__body{display:grid;min-width:0;gap:3px}
.vw-contact-card__body small,.vw-contact-detail small,.vw-contact-note small{color:var(--vw-muted);font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.vw-contact-card__body strong{overflow:hidden;color:var(--vw-text);font-size:14px;text-overflow:ellipsis;white-space:nowrap}
.vw-contact-card__body em{margin-top:2px;color:var(--vw-primary);font-size:12px;font-style:normal;font-weight:750}

.vw-contact-note{display:flex;gap:14px;align-items:flex-start;margin:0 0 22px;padding:18px;border:1px solid color-mix(in srgb,var(--vw-primary) 18%,var(--vw-border));border-radius:18px;background:color-mix(in srgb,var(--vw-primary) 5%,var(--vw-surface))}
.vw-contact-note>div{display:grid;gap:5px}
.vw-contact-note p{margin:0;color:var(--vw-text);line-height:1.65}

.vw-contact-layout{display:grid;grid-template-columns:minmax(0,.92fr) minmax(360px,1.08fr);gap:20px;align-items:start}
.vw-contact-details,.vw-contact-form-card{padding:clamp(22px,3vw,32px);border:1px solid var(--vw-border);border-radius:var(--vw-radius-lg);background:var(--vw-surface)}
.vw-contact-section-head h2{font-size:clamp(26px,3vw,36px)}
.vw-contact-detail-list{display:grid;gap:12px;margin-top:24px}
.vw-contact-detail{display:flex;gap:14px;padding:16px;border:1px solid var(--vw-border);border-radius:16px;background:color-mix(in srgb,var(--vw-bg) 58%,var(--vw-surface))}
.vw-contact-detail>div{display:grid;min-width:0;gap:5px}
.vw-contact-detail strong{color:var(--vw-text);font-size:14px;line-height:1.55}
body.vw-storefront .vw-contact-detail a{color:var(--vw-primary);font-size:13px;font-weight:750}

.vw-contact-form{display:grid;gap:16px;margin-top:24px}
.vw-contact-form__two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.vw-contact-field label span{color:#b42318}
.vw-contact-field textarea{min-height:150px}
.vw-contact-submit{display:inline-flex;min-height:52px;align-items:center;justify-content:space-between;gap:14px;padding:13px 18px;border:0;border-radius:14px;color:#fff;background:var(--vw-primary);box-shadow:0 14px 30px color-mix(in srgb,var(--vw-primary) 22%,transparent);font:inherit;font-weight:800}
.vw-contact-honeypot{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;white-space:nowrap!important}

.vw-contact-map{margin-top:20px;overflow:hidden;border:1px solid var(--vw-border);border-radius:var(--vw-radius-lg);background:var(--vw-surface)}
.vw-contact-map__head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:clamp(20px,3vw,30px)}
.vw-contact-map__head h2{font-size:clamp(25px,3vw,36px)}
body.vw-storefront .vw-contact-map__head>a{display:inline-flex;min-height:44px;align-items:center;padding:10px 15px;border:1px solid var(--vw-border);border-radius:12px;color:var(--vw-primary);background:var(--vw-surface);font-weight:800;text-decoration:none;white-space:nowrap}
.vw-contact-map__frame{position:relative;min-height:390px;border-top:1px solid var(--vw-border);background:color-mix(in srgb,var(--vw-bg) 70%,var(--vw-surface))}
.vw-contact-map__frame iframe{display:block;width:100%;height:430px;border:0}

.vw-contact-empty{margin-top:20px;padding:18px;border:1px dashed var(--vw-border-strong);border-radius:16px;color:var(--vw-muted);background:var(--vw-surface);text-align:center}

@media(max-width:900px){
    .vw-contact-cards{grid-template-columns:1fr}
    .vw-contact-layout{grid-template-columns:1fr}
}
@media(max-width:620px){
    body.vw-storefront .vw-contact-hero{grid-template-columns:1fr;padding:26px 20px}
    .vw-contact-hero__mark{display:none}
    .vw-contact-form__two{grid-template-columns:1fr}
    .vw-contact-details,.vw-contact-form-card{padding:20px}
    .vw-contact-map__head{flex-direction:column}
    .vw-contact-map__head>a{width:100%;justify-content:center}
    .vw-contact-map__frame,.vw-contact-map__frame iframe{min-height:310px;height:310px}
}
