﻿/* contact */
.page-hero{padding:125px 60px 150px;position:relative;overflow:hidden;background:linear-gradient(180deg,#111 0%,var(--black) 100%)}
.hero-content{position:relative;z-index:2}

/* STORE LOCATOR */
.locator-section{padding:60px 60px 0}
.locator-eyebrow{font-family:var(--font-display);font-size:var(--typ-small);font-weight:700;letter-spacing:0.4em;text-transform:uppercase;color:var(--yellow);display:flex;align-items:center;gap:10px;margin-bottom:12px}
.locator-eyebrow::before{display:none}
.locator-eyebrow::after{content:'';flex:1;height:1px;background:#fff;max-width:250px;}
.locator-title{font-family:var(--font-display);font-size:var(--typ-heading);font-weight:900;text-transform:uppercase;line-height:0.95;margin-bottom:32px}
.locator-title em{font-style:italic;color:var(--yellow)}
.locator-layout{display:grid;grid-template-columns:minmax(280px,340px) 1fr;gap:16px;align-items:stretch}
.locator-panel{background:var(--form-bg);border-radius:0;display:flex;flex-direction:column;}
.locator-filter{padding:20px 20px 8px}
.locator-filter-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;gap:12px}
.locator-filter-label{font-family:var(--font-display);font-size:var(--typ-small);font-weight:700;letter-spacing:0.22em;text-transform:uppercase;color:var(--text-dark);display:block;margin:0}
.store-count{font-family:var(--font-display);font-size:var(--typ-small);font-weight:700;letter-spacing:0.18em;text-transform:uppercase;color:var(--text-dark);white-space:nowrap}
.state-select{width:100%;padding:12px 40px 12px 14px;background:var(--form-bg);border:1px solid #111;color:var(--text-dark);font-family:var(--font-display);font-size:var(--typ-small);font-weight:600;letter-spacing:0.08em;text-transform:uppercase;outline:none;appearance:none;border-radius:0;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L6 7L11 1' stroke='%23FFDB00' stroke-width='1.8' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;background-size:11px}
.state-select option{background:#fff;color:var(--text-dark);text-transform:none;font-weight:400;letter-spacing:0}
.store-list{max-height:600px;overflow-y:auto;flex:1;padding:0px 20px 12px}
.store-list-empty{font-family:var(--font-body);font-size:var(--typ-body);color:#555;padding:16px 0;margin:0;line-height:1.6}
.store-list::-webkit-scrollbar{width:4px}
.store-list::-webkit-scrollbar-thumb{background:rgba(255,219,0,0.6)}
.store-item{width:100%;display:block;text-align:left;background:transparent;border:none;border-bottom:1px solid rgba(0,0,0,0.85);border-radius:0;cursor:pointer;padding:16px 0;margin:0;color:inherit;font:inherit;transition:opacity 0.2s}
.store-item.store-item--hidden{display:none}
.store-item:last-child{border-bottom:1px solid rgba(0,0,0,0.85)}
.store-item:hover{opacity:0.8}
.store-item.active{opacity:1}
.store-item-header{display:flex;align-items:flex-start;gap:12px;padding:0}
.store-name-wrap{flex:1;min-width:0}
.store-name{font-family:var(--font-display);font-size:var(--typ-body);font-weight:800;text-transform:uppercase;line-height:1.15;margin-bottom:2px;color:var(--text-dark)}
.store-state-label{font-family:var(--font-display);font-size:var(--typ-body);font-weight:700;text-transform:uppercase;letter-spacing:0.04em;color:var(--text-dark)}
.store-chevron{width:16px;height:16px;color:var(--text-dark);flex-shrink:0;margin-top:2px}
.store-details{display:none;padding:10px 0 0}
.store-item.active .store-details{display:block}
.store-detail-row{font-family:var(--font-body);font-size:var(--typ-small);font-weight:400;color:#333;margin-bottom:2px;line-height:1.55}
.locator-map{background:var(--form-bg);border-radius:0;position:relative;overflow:hidden;min-height:460px}
.locator-google-map{position:absolute;inset:0;width:100%;height:100%}
.map-placeholder{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;background:var(--form-bg);z-index:1;pointer-events:none}
.locator-map.is-ready .map-placeholder{display:none}
.map-placeholder-text{font-family:var(--font-display);font-size:var(--typ-small);font-weight:700;letter-spacing:0.22em;text-transform:uppercase;color:rgba(0,0,0,0.35)}
.map-placeholder-hint{font-family:var(--font-body);font-size:var(--typ-small);font-weight:400;color:rgba(0,0,0,0.45);margin:0;max-width:280px;text-align:center;line-height:1.5;letter-spacing:0;text-transform:none}
.store-map-info{font-family:var(--font-body);color:var(--text-dark);max-width:280px;padding:0;margin:0;box-sizing:border-box}
.store-map-info-name{font-family:var(--font-display);font-size:var(--typ-body);font-weight:800;text-transform:uppercase;color:var(--text-dark);margin:0 0 4px;line-height:1.2;padding-right:28px}
.store-map-info-lob{font-family:var(--font-display);font-size:var(--typ-small);font-weight:600;letter-spacing:0.04em;text-transform:uppercase;color:var(--text-dark-muted);margin:0 0 6px;line-height:1.3;padding-right:28px}
.store-map-info-address{font-size:var(--typ-small);font-weight:400;color:#333;margin:0;line-height:1.5;padding-right:8px}
/* InfoWindow: keep close (X) fully visible; light top tighten only */
.locator-map .gm-style-iw-c{padding:12px 40px 12px 14px!important;overflow:visible!important}
.locator-map .gm-style-iw-d{overflow:visible!important;max-height:none!important}
.locator-map .gm-style-iw-ch{padding:0!important;height:0!important}
.locator-map .gm-style-iw-chr{position:absolute;top:6px;right:6px;width:30px!important;height:30px!important;display:flex!important;align-items:center;justify-content:center}

/* CONTACT + FORM */
.contact-section{padding:64px 60px 80px;display:grid;grid-template-columns:1fr 1.35fr;gap:48px;align-items:start}

.info-section{margin-bottom:36px}
.info-section:last-child{margin-bottom:0}
.info-label{font-family:var(--font-display);font-size:var(--typ-small);font-weight:700;letter-spacing:0.35em;text-transform:uppercase;color:var(--yellow);display:flex;align-items:center;gap:10px;margin-bottom:20px}
.info-label::after{content:'';flex:1;height:1px;background:rgb(255, 255, 255)}
.info-item{display:flex;gap:14px;align-items:flex-start;margin-bottom:18px}
.info-item:last-child{margin-bottom:0}
.info-icon{width:40px;height:40px;border:1px solid #fff;display:flex;align-items:center;justify-content:center;flex-shrink:0;background:transparent}
.info-icon img{display:block;max-width:18px;max-height:18px;filter:brightness(0) invert(1)}
.info-text-label{font-family:var(--font-display);font-size:var(--typ-small);font-weight:700;letter-spacing:0.22em;text-transform:uppercase;color:var(--text-muted);margin-bottom:4px}
.info-text-val{font-size:var(--typ-body);font-weight:300;color:var(--white);line-height:1.6}
.info-text-val a{color:var(--white);text-decoration:none}
.info-text-val a:hover{color:var(--yellow)}
.hours-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.hours-box{background:#1F1F1F;border:1px solid rgba(255,255,255,0.06);border-radius:8px;padding:16px 16px}
.hours-day{font-family:var(--font-display);font-size:var(--typ-small);font-weight:700;letter-spacing:0.18em;text-transform:uppercase;color:var(--yellow);margin-bottom:6px}
.hours-time{font-family:var(--font-display);font-size:var(--typ-title);font-weight:700;color:var(--white)}


/* Form */
.contact-form-wrap{background:var(--form-bg);color:var(--text-dark);padding:36px 32px;border-radius:0}
.contact-forms-wrap .umbraco-forms-form{margin:0}
.contact-forms-wrap .umbraco-forms-page{display:grid;grid-template-columns:1fr 1fr;column-gap:12px;align-items:start}
.contact-forms-wrap .umbraco-forms-fieldset{display:contents;margin:0;padding:0;border:0}
.contact-forms-wrap .umbraco-forms-hidden{display:none!important}
.contact-forms-wrap .field-validation-error,
.contact-forms-wrap .validation-summary-errors{color:#c00;font-family:var(--font-body);font-size:var(--typ-small);margin-top:6px}
.contact-forms-wrap .validation-summary-errors{grid-column:1/-1;margin-bottom:14px;padding:0;list-style:none}
.contact-forms-wrap .pdpa-note,
.contact-forms-wrap .umbraco-forms-navigation,
.contact-forms-wrap .umbraco-forms-hidden,
.contact-forms-wrap .submit-btn{grid-column:1/-1}
.form-title{font-family:var(--font-display);font-size:var(--typ-feature);font-weight:900;text-transform:uppercase;color:var(--text-dark);margin-bottom:22px}
.form-field{grid-column:1/-1;margin-bottom:14px;min-width:0}
.form-field--half{grid-column:span 1}
.form-label{font-family:var(--font-display);font-size:var(--typ-small);font-weight:700;letter-spacing:0.18em;text-transform:uppercase;color:var(--text-dark-sub);display:block;margin-bottom:6px}
.form-label .req{color:#d00}
.form-input,.form-select,.form-textarea{width:100%;padding:13px 14px;background:#fff;border:1px solid rgba(0,0,0,0.12);border-radius:6px;color:var(--text-dark);font-family:var(--font-body);font-size:var(--typ-body);outline:none;appearance:none;transition:border-color 0.2s}
.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--yellow)}
.form-input.is-invalid,.form-select.is-invalid,.form-textarea.is-invalid{border-color:rgba(200,0,0,0.55)}
.form-input::placeholder,.form-textarea::placeholder{color:rgba(0,0,0,0.35)}
.form-select{background-image:url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L6 7L11 1' stroke='%23111111' stroke-width='1.5' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;background-size:11px;background-color:#fff;cursor:pointer}
.form-select option{background:#fff;color:var(--text-dark)}
.form-textarea{resize:vertical;min-height:120px;line-height:1.6}
.pdpa-note{font-size:var(--typ-small);font-weight:400;color:var(--text-dark-muted);line-height:1.7;margin-top:8px}
.pdpa-note a{color:var(--text-dark);font-weight:600;text-decoration:underline}
.submit-btn{width:100%;padding:16px;background:var(--yellow);color:var(--black);font-family:var(--font-display);font-size:var(--typ-small);font-weight:800;letter-spacing:0.18em;text-transform:uppercase;border:none;cursor:pointer;margin-top:18px;transition:transform 0.15s,filter 0.15s;clip-path:polygon(0 0,calc(100% - 10px) 0,100% 10px,100% 100%,10px 100%,0 calc(100% - 10px));}
.submit-btn:hover{transform:translateY(-1px);filter:brightness(1.03)}

@media(max-width:1024px){
  .page-hero{padding:100px 32px 80px}
  .locator-section{padding:48px 32px 0}
  .locator-layout{grid-template-columns:280px 1fr}
  .contact-section{padding:48px 32px 60px;grid-template-columns:1fr;gap:40px}
}
@media(max-width:768px){
  .page-hero{padding:90px 20px 60px}
  .locator-section{padding:40px 20px 0}
  .locator-layout{grid-template-columns:1fr}
  .locator-map{min-height:280px}
  .contact-section{padding:40px 20px 48px}
  .contact-form-wrap{padding:28px 20px}
  .contact-forms-wrap .umbraco-forms-page{grid-template-columns:1fr}
  .form-field--half{grid-column:1/-1}
  .hours-grid{grid-template-columns:1fr 1fr}
}
