/* ==========================================================================
   Contact Page — Wahid Marketing
   ========================================================================== */
body{ overflow-x:hidden; }
.wm-contact-page{
  overflow-x:hidden;
  max-width:100%;
  --wm-navy-900:#0e2137; --wm-navy-800:#153350; --wm-navy-700:#1d4468;
  --wm-blue-500:#5fa8d3; --wm-blue-100:#e8f3fa; --wm-bg:#f4f8fb;
  --wm-ink:#16283a; --wm-muted:#5d7086; --wm-line:#dbe6ee;
  --wm-green:#25b16a; --wm-green-100:#e6f7ee;
  font-family:'Inter', -apple-system, sans-serif;
  color:var(--wm-ink);
}
.wm-contact-page *{ box-sizing:border-box; }
.wm-cp-inner{ max-width:1180px; margin:0 auto; }

/* ---------------- Buttons (used across quick-contact, form, CTA) ---------------- */
.wm-contact-page .wm-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  font-family:inherit;
  font-size:14px;
  font-weight:600;
  line-height:1.2;
  padding:13px 24px;
  border-radius:10px;
  text-decoration:none;
  white-space:nowrap;
  cursor:pointer;
  transition:background .2s ease, border-color .2s ease, color .2s ease, transform .2s ease, box-shadow .2s ease;
}
.wm-contact-page .wm-btn svg{ width:14px; height:14px; flex-shrink:0; }
.wm-contact-page .wm-btn-primary{
  background:var(--wm-navy-900);
  color:#fff;
  border:1px solid var(--wm-navy-900);
  box-shadow:0 10px 22px -12px rgba(14,33,55,.5);
}
.wm-contact-page .wm-btn-primary:hover{
  background:var(--wm-navy-700);
  border-color:var(--wm-navy-700);
  transform:translateY(-2px);
  box-shadow:0 14px 26px -12px rgba(14,33,55,.55);
}
.wm-contact-page .wm-btn-primary:active{ transform:translateY(0); }
.wm-contact-page .wm-btn-ghost{
  background:transparent;
  color:var(--wm-navy-900);
  border:1px solid var(--wm-line);
}
.wm-contact-page .wm-btn-ghost:hover{
  border-color:var(--wm-navy-700);
  background:var(--wm-blue-100);
  transform:translateY(-2px);
}
.wm-contact-page .wm-btn-ghost:active{ transform:translateY(0); }

.wm-cp-head{ text-align:center; width:100%; margin:0 auto 40px; }
.wm-cp-eyebrow{
  display:inline-flex; align-items:center; gap:8px;
  font-size:12.5px; font-weight:600; letter-spacing:.08em;
  text-transform:uppercase; color:var(--wm-navy-700);
  margin-bottom:12px;
}
.wm-cp-head h1, .wm-cp-head h2{
  font-family:'Space Grotesk',sans-serif;
  font-size:clamp(26px,3.4vw,36px); font-weight:600; line-height:1.2;
  margin:0 0 10px; color:var(--wm-navy-900);
}
.wm-cp-head p{
  margin:0; font-size:15px; line-height:1.65; color:var(--wm-muted);
  width:100%; text-align:center !important;
}

/* ---------------- Hero / quick contact ---------------- */
.wm-cp-hero{ background:#fff; padding:90px 20px; }

.wm-cp-hero .wm-cp-heading-bar{
  display:block; width:64px; height:3px; margin:2px auto 16px;
  background:linear-gradient(90deg,var(--wm-navy-700),var(--wm-blue-500));
  border-radius:2px;
}

.wm-cp-quickgrid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:18px;
  margin-bottom:18px;
}
.wm-cp-quickcard{
  position:relative;
  display:flex;
  flex-direction:column;
  gap:16px;
  background:#fff;
  border:1px solid var(--wm-line);
  border-radius:16px;
  padding:24px 22px 22px;
  text-decoration:none;
  color:inherit;
  overflow:hidden;
  box-shadow:0 12px 28px -22px rgba(14,33,55,.25);
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.wm-cp-quickcard::before{
  content:'';
  position:absolute; top:0; left:0; right:0; height:4px;
  background:var(--wm-navy-700);
}
.wm-cp-quickgrid > .wm-cp-quickcard:nth-child(1)::before{ background:var(--wm-navy-700); }
.wm-cp-quickgrid > .wm-cp-quickcard:nth-child(2)::before{ background:var(--wm-green); }
.wm-cp-quickgrid > .wm-cp-quickcard:nth-child(3)::before{ background:var(--wm-blue-500); }
.wm-cp-quickgrid > .wm-cp-quickcard:nth-child(4)::before{ background:var(--wm-navy-900); }
.wm-cp-quickcard:hover{
  border-color:var(--wm-navy-700);
  box-shadow:0 20px 36px -20px rgba(14,33,55,.3);
  transform:translateY(-4px);
}
.wm-cp-quickcard .top-row{
  display:flex; align-items:center; justify-content:space-between;
}
.wm-cp-quickcard .ic{
  width:48px; height:48px; flex-shrink:0;
  border-radius:13px;
  display:flex; align-items:center; justify-content:center;
  background:var(--wm-blue-100); color:var(--wm-navy-700);
}
.wm-cp-quickcard.whatsapp .ic{ background:var(--wm-green-100); color:var(--wm-green); }
.wm-cp-quickcard .ic svg{ width:21px; height:21px; }
.wm-cp-quickcard .arrow{
  width:32px; height:32px; flex-shrink:0;
  border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  background:var(--wm-bg); color:var(--wm-muted);
  transition:background .2s ease, color .2s ease, transform .2s ease;
}
.wm-cp-quickcard .arrow svg{ width:14px; height:14px; }
.wm-cp-quickcard:hover .arrow{
  background:var(--wm-navy-900); color:#fff;
  transform:translateX(3px);
}
.wm-cp-quickcard .lbl{
  display:block; font-size:11.5px; font-weight:700;
  text-transform:uppercase; letter-spacing:.06em;
  color:var(--wm-muted); margin-bottom:4px;
}
.wm-cp-quickcard .val{
  display:block; font-size:17px; font-weight:700; color:var(--wm-navy-900);
  line-height:1.3; word-break:break-word;
}

/* ---------------- Hero: left image / right vertical contact buttons ---------------- */
.wm-cp-hero-grid{
  display:grid;
  grid-template-columns:0.85fr 1.15fr;
  gap:44px;
  align-items:stretch;
}
.wm-cp-hero-media{
  position:relative;
  border-radius:20px;
  overflow:hidden;
  min-height:480px;
  box-shadow:0 30px 60px -30px rgba(14,33,55,.35);
}
.wm-cp-hero-media img{
  display:block; width:100%; height:100%; object-fit:cover;
}
.wm-cp-hero-media-badge{
  position:absolute; left:18px; right:18px; bottom:18px;
  display:flex; align-items:center; gap:10px;
  background:rgba(14,33,55,.85);
  backdrop-filter:blur(6px);
  color:#fff;
  font-size:13px; font-weight:600;
  line-height:1.35;
  padding:12px 16px;
  border-radius:12px;
}
.wm-cp-hero-media-badge .dot{
  width:8px; height:8px; border-radius:50%; flex-shrink:0;
  background:var(--wm-green);
  box-shadow:0 0 0 4px rgba(37,177,106,.25);
}

.wm-cp-hero-contacts{
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:16px;
}
.wm-cp-contactrow{
  display:flex;
  align-items:center;
  gap:18px;
  background:#fff;
  border:1px solid var(--wm-line);
  border-left:4px solid var(--wm-navy-700);
  border-radius:14px;
  padding:18px 20px;
  text-decoration:none;
  color:inherit;
  box-shadow:0 12px 28px -22px rgba(14,33,55,.25);
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.wm-cp-contactrow:nth-child(4){ border-left-color:var(--wm-navy-900); }
.wm-cp-contactrow:hover{
  transform:translateX(5px);
  box-shadow:0 20px 36px -20px rgba(14,33,55,.3);
}
.wm-cp-contactrow:active{ transform:translateX(2px) scale(.99); }

.wm-cp-contactrow .ic{
  width:52px; height:52px; flex-shrink:0;
  border-radius:14px;
  display:flex; align-items:center; justify-content:center;
  background:var(--wm-blue-100); color:var(--wm-navy-700);
}
.wm-cp-contactrow .ic svg{ width:22px; height:22px; }

.wm-cp-contactrow .text-block{ flex:1; min-width:0; }
.wm-cp-contactrow .lbl{
  display:block; font-size:11.5px; font-weight:700;
  text-transform:uppercase; letter-spacing:.06em;
  color:var(--wm-muted); margin-bottom:4px;
}
.wm-cp-contactrow .val{
  display:block; font-size:17px; font-weight:700; color:var(--wm-navy-900);
  line-height:1.3; word-break:break-word;
}
.wm-cp-contactrow .val-sub{
  display:block; font-size:12px; font-weight:500; color:var(--wm-muted); margin-top:3px;
}

.wm-cp-contactrow .arrow{
  width:34px; height:34px; flex-shrink:0;
  border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  background:var(--wm-bg); color:var(--wm-muted);
  transition:background .2s ease, color .2s ease, transform .2s ease;
}
.wm-cp-contactrow .arrow svg{ width:14px; height:14px; }
.wm-cp-contactrow:hover .arrow{
  background:var(--wm-navy-900); color:#fff;
  transform:translateX(3px);
}

@media (max-width:900px){
  .wm-cp-hero-grid{ grid-template-columns:1fr; gap:28px; }
  .wm-cp-hero-media{ min-height:260px; order:-1; }
}
@media (max-width:560px){
  .wm-cp-contactrow{ padding:15px 16px; gap:14px; }
  .wm-cp-contactrow .ic{ width:44px; height:44px; }
  .wm-cp-contactrow .val{ font-size:15px; }
}

.wm-cp-infobar{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  background:var(--wm-navy-900);
  color:#fff;
  border-radius:16px;
  padding:22px 26px;
}
.wm-cp-infobar-hours{
  display:flex;
  align-items:center;
  gap:12px;
  font-size:13.5px;
  color:#c9d9e6;
}
.wm-cp-infobar-hours .ic{
  width:34px; height:34px; flex-shrink:0;
  border-radius:9px;
  background:rgba(255,255,255,.1);
  display:flex; align-items:center; justify-content:center;
  color:#fff;
}
.wm-cp-infobar-hours .ic svg{ width:16px; height:16px; }
.wm-cp-infobar-hours strong{ display:block; color:#fff; font-size:14px; margin-bottom:2px; }
.wm-cp-infobar .wm-btn{ flex-shrink:0; }

@media (max-width:900px){
  .wm-cp-quickgrid{ grid-template-columns:repeat(2,1fr); }
}
@media (max-width:560px){
  .wm-cp-hero{ padding:56px 16px; }
  .wm-cp-quickgrid{ grid-template-columns:1fr; }
  .wm-cp-infobar{ flex-direction:column; align-items:flex-start; }
}

/* ---------------- Help / product categories ---------------- */
.wm-cp-help{ background:var(--wm-bg); padding:90px 20px; }

.wm-cp-help-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:24px;
}
.wm-cp-help-card{
  background:#fff;
  border:1px solid var(--wm-line);
  border-radius:16px;
  padding:28px 28px 24px;
}
.wm-cp-help-card .wm-cp-help-title{
  display:flex; align-items:center; gap:10px;
  margin-bottom:16px;
}
.wm-cp-help-card .wm-cp-help-title .ic{
  width:36px; height:36px; flex-shrink:0;
  border-radius:10px;
  background:var(--wm-blue-100); color:var(--wm-navy-700);
  display:flex; align-items:center; justify-content:center;
}
.wm-cp-help-card .wm-cp-help-title .ic svg{ width:18px; height:18px; }
.wm-cp-help-card .wm-cp-help-title h3{
  font-family:'Space Grotesk',sans-serif;
  font-size:17px; font-weight:600; margin:0; color:var(--wm-navy-900);
}
.wm-cp-chip-list{
  list-style:none; margin:0; padding:0;
  display:flex; flex-wrap:wrap; gap:9px;
}
.wm-cp-chip-list li{
  font-size:13px; font-weight:500; color:var(--wm-navy-800);
  background:var(--wm-bg);
  border:1px solid var(--wm-line);
  border-radius:20px;
  padding:7px 14px;
}
.wm-cp-help-note{
  text-align:center; max-width:640px; margin:26px auto 0;
  font-size:14px; color:var(--wm-muted); line-height:1.6;
}

@media (max-width:820px){
  .wm-cp-help-grid{ grid-template-columns:1fr; }
}

/* ---------------- Showroom ---------------- */
.wm-cp-showroom{ background:#fff; padding:90px 20px; }
.wm-cp-showroom-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:52px;
  align-items:center;
}
.wm-cp-showroom-media{
  border-radius:20px;
  overflow:hidden;
  box-shadow:0 30px 60px -30px rgba(14,33,55,.35);
}
.wm-cp-showroom-media img{
  display:block; width:100%; height:420px; object-fit:cover;
}
.wm-cp-showroom-body .wm-cp-eyebrow{ display:inline-flex; }
.wm-cp-showroom-body h2{
  font-family:'Space Grotesk',sans-serif;
  font-size:clamp(23px,2.6vw,30px); font-weight:600; line-height:1.28;
  margin:0 0 14px; color:var(--wm-navy-900);
}
.wm-cp-showroom-body p{
  font-size:14.5px; line-height:1.75; color:var(--wm-muted);
  margin:0 0 18px;
}
.wm-cp-audience{
  list-style:none; margin:0 0 20px; padding:0;
  display:flex; flex-wrap:wrap; gap:9px;
}
.wm-cp-audience li{
  font-size:13px; font-weight:600; color:var(--wm-navy-700);
  background:var(--wm-blue-100);
  border-radius:20px;
  padding:7px 14px;
}
.wm-cp-showroom-note{
  display:flex; align-items:flex-start; gap:10px;
  font-size:13.5px; color:var(--wm-navy-800);
  background:var(--wm-bg);
  border:1px solid var(--wm-line);
  border-radius:12px;
  padding:14px 16px;
}
.wm-cp-showroom-note svg{ width:18px; height:18px; flex-shrink:0; margin-top:1px; color:var(--wm-navy-700); }

@media (max-width:900px){
  .wm-cp-showroom-grid{ grid-template-columns:1fr; gap:28px; }
  .wm-cp-showroom-media img{ height:280px; }
}

/* ---------------- Enquiry Form ---------------- */
.wm-cp-form-section{ background:var(--wm-bg); padding:90px 20px; }

/* Full-width centered heading, sits above the form/side-panel grid */
.wm-cp-form-head{
  text-align:center;
  width:100%;
  margin:0 0 30px;
}
.wm-cp-form-head .wm-cp-eyebrow{ display:inline-flex; width:100%; justify-content:center; }
.wm-cp-form-head h2{
  font-family:'Space Grotesk',sans-serif;
  font-size:clamp(21px,2.4vw,26px); font-weight:600;
  margin:0 0 8px; color:var(--wm-navy-900);
}
.wm-cp-form-head p{ font-size:13.5px; line-height:1.6; color:var(--wm-muted); margin:0; width:100%; text-align:center !important; }

.wm-cp-form-grid{
  display:grid;
  grid-template-columns:1.3fr 1fr;
  gap:0;
  background:#fff;
  border-radius:20px;
  overflow:hidden;
  box-shadow:0 30px 60px -35px rgba(14,33,55,.3);
}
.wm-cp-form-body{ padding:32px 36px; }

.wm-cp-form{ display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.wm-cp-form .full{ grid-column:1 / -1; }
.wm-cp-field{ display:flex; flex-direction:column; gap:4px; }
.wm-cp-field label{ font-size:12px; font-weight:600; color:var(--wm-navy-800); }
.wm-cp-field input,
.wm-cp-field select,
.wm-cp-field textarea{
  width:100%;
  font-family:inherit;
  font-size:13.5px;
  color:var(--wm-ink);
  background:var(--wm-bg);
  border:1px solid var(--wm-line);
  border-radius:9px;
  padding:9px 12px;
  outline:none;
  transition:border-color .2s ease, background .2s ease;
}
.wm-cp-field input:focus,
.wm-cp-field select:focus,
.wm-cp-field textarea:focus{
  border-color:var(--wm-navy-700);
  background:#fff;
}
.wm-cp-field textarea{ resize:vertical; min-height:64px; }
.wm-cp-form .wm-btn{ margin-top:2px; justify-content:center; width:100%; border:none; cursor:pointer; padding-top:10px; padding-bottom:10px; }

.wm-cp-form-side{
  background:#fff;
  color:var(--wm-ink);
  padding:0;
  display:flex;
}
.wm-cp-form-side-map{
  flex:1;
  line-height:0;
  border-radius:0;
  overflow:hidden;
}
.wm-cp-form-side-map iframe{
  width:100%; height:100%; min-height:320px; border:0; display:block;
}

@media (max-width:900px){
  .wm-cp-form-grid{ grid-template-columns:1fr; }
  .wm-cp-form-body{ padding:28px 22px; }
  .wm-cp-form-side{ padding:0; }
}
@media (max-width:560px){
  .wm-cp-form{ grid-template-columns:1fr; }
}

/* ---------------- Why contact us ---------------- */
.wm-cp-why{ background:var(--wm-bg); padding:48px 20px; }
.wm-cp-why .wm-cp-head{ margin-bottom:14px; }
.wm-cp-why-intro{
  width:100%; margin:0 auto 28px; text-align:center !important;
  font-size:14.5px; line-height:1.75; color:var(--wm-muted);
}
.wm-cp-why-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:14px;
}
.wm-cp-why-card{
  display:grid;
  grid-template-columns:auto 1fr;
  grid-template-areas:
    "icon heading"
    "body body";
  column-gap:12px;
  row-gap:6px;
  align-items:center;
  background:#fff;
  border:1px solid var(--wm-line);
  border-radius:16px;
  padding:20px 18px;
  transition:box-shadow .2s ease, border-color .2s ease, transform .2s ease;
}
.wm-cp-why-card:hover{
  border-color:var(--wm-navy-700);
  box-shadow:0 16px 32px -20px rgba(14,33,55,.28);
  transform:translateY(-3px);
}
.wm-cp-why-card .ic{
  grid-area:icon;
  width:38px; height:38px; margin-bottom:0;
  border-radius:11px;
  background:var(--wm-blue-100); color:var(--wm-navy-700);
  display:flex; align-items:center; justify-content:center;
}
.wm-cp-why-card .ic svg{ width:19px; height:19px; }
.wm-cp-why-card h3{
  grid-area:heading;
  font-family:'Space Grotesk',sans-serif;
  font-size:15.5px; font-weight:600; margin:0; color:var(--wm-navy-900);
}
.wm-cp-why-card p{ grid-area:body; font-size:13.5px; line-height:1.65; color:var(--wm-muted); margin:0; }

@media (max-width:980px){
  .wm-cp-why-grid{ grid-template-columns:repeat(2,1fr); }
}
@media (max-width:560px){
  .wm-cp-why-grid{ grid-template-columns:1fr; }
}

/* ---------------- FAQ (grid variant, no side image) ---------------- */
.wm-cp-faq{ background:var(--wm-bg); padding:90px 20px; }
.wm-cp-faq-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px 20px;
}
.wm-cp-faq-grid .wm-faq-item:last-child{ margin-bottom:0; }

@media (max-width:820px){
  .wm-cp-faq-grid{ grid-template-columns:1fr; }
}

/* ---------------- Final CTA banner ---------------- */
.wm-cp-cta{
  background:var(--wm-navy-900);
  background-image:radial-gradient(circle at 15% 20%, rgba(95,168,211,.18), transparent 45%),
                    radial-gradient(circle at 85% 80%, rgba(95,168,211,.14), transparent 45%);
  padding:90px 20px;
  text-align:center;
  color:#fff;
}
.wm-cp-cta h2{
  font-family:'Space Grotesk',sans-serif;
  font-size:clamp(24px,3vw,32px); font-weight:600; margin:0 0 12px;
  color:#fff !important;
}
.wm-cp-cta p{
  font-size:14.5px; line-height:1.7; color:#c9d9e6;
  max-width:100%; width:100%; margin:0 auto 28px;
  text-align:center !important;
}
.wm-cp-cta-actions{
  display:flex; flex-wrap:wrap; justify-content:center; gap:12px;
}
.wm-cp-cta .wm-btn-primary{ background:var(--wm-blue-500); color:var(--wm-navy-900); }
.wm-cp-cta .wm-btn-primary:hover{ background:#7fbadd; }
.wm-cp-cta .wm-btn-ghost{ border-color:rgba(255,255,255,.3); color:#fff; }
.wm-cp-cta .wm-btn-ghost:hover{ border-color:#fff; color:var(--wm-navy-900); }

/* ---------------- Map ---------------- */
.wm-cp-map{ background:#fff; padding:90px 20px; }
.wm-cp-map-frame{
  max-width:1180px; margin:0 auto;
  border-radius:20px;
  overflow:hidden;
  box-shadow:0 30px 60px -35px rgba(14,33,55,.3);
  line-height:0;
}
.wm-cp-map-frame iframe{ width:100%; height:420px; border:0; display:block; filter:grayscale(.15) contrast(1.05); }

@media (max-width:560px){
  .wm-cp-map-frame iframe{ height:300px; }
}

/* Wider content container (was 1180px) */
.wm-cp-inner{ max-width:1320px; margin:0 auto; }

/* Business tagline under the eyebrow */
.wm-cp-tagline{
  font-size:13.5px !important;
  font-weight:700 !important;
  color:var(--wm-navy-700) !important;
  letter-spacing:.01em;
  margin:0 0 14px !important;
}

/* Secondary line inside quick-contact cards (e.g. landline under mobile) */
.wm-cp-quickcard .val-sub{
  display:block; font-size:12px; font-weight:500; color:var(--wm-muted);
  margin-top:3px;
}

/* Address caption above the map */
.wm-cp-map-address{
  max-width:1320px; margin:0 auto 16px;
  display:flex; align-items:center; gap:8px;
  font-size:13.5px; font-weight:600; color:var(--wm-navy-800);
}
.wm-cp-map-address svg{ flex-shrink:0; color:var(--wm-navy-700); }

/* Map frame — max-width updated to match the new 1320px container */
.wm-cp-map-frame{
  max-width:1320px; margin:0 auto;
  border-radius:20px;
  overflow:hidden;
  box-shadow:0 30px 60px -35px rgba(14,33,55,.3);
  line-height:0;
}

.wm-cp-head{ text-align:center; width:100%; margin:0 auto 40px; }

.wm-cp-quickcard:active{
  transform:translateY(-1px) scale(.98);
  box-shadow:0 10px 20px -14px rgba(14,33,55,.3);
}
/* ==========================================================================
   Contact Page — Wahid Marketing
   ========================================================================== */
body{ overflow-x:hidden; }
.wm-contact-page{
  overflow-x:hidden;
  max-width:100%;
  --wm-navy-900:#0e2137; --wm-navy-800:#153350; --wm-navy-700:#1d4468;
  --wm-blue-500:#5fa8d3; --wm-blue-100:#e8f3fa; --wm-bg:#f4f8fb;
  --wm-ink:#16283a; --wm-muted:#5d7086; --wm-line:#dbe6ee;
  --wm-green:#25b16a; --wm-green-100:#e6f7ee;
  font-family:'Inter', -apple-system, sans-serif;
  color:var(--wm-ink);
}
.wm-contact-page *{ box-sizing:border-box; }
.wm-cp-inner{ max-width:1180px; margin:0 auto; }

/* ---------------- Buttons (used across quick-contact, form, CTA) ---------------- */
.wm-contact-page .wm-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  font-family:inherit;
  font-size:14px;
  font-weight:600;
  line-height:1.2;
  padding:13px 24px;
  border-radius:10px;
  text-decoration:none;
  white-space:nowrap;
  cursor:pointer;
  transition:background .2s ease, border-color .2s ease, color .2s ease, transform .2s ease, box-shadow .2s ease;
}
.wm-contact-page .wm-btn svg{ width:14px; height:14px; flex-shrink:0; }
.wm-contact-page .wm-btn-primary{
  background:var(--wm-navy-900);
  color:#fff;
  border:1px solid var(--wm-navy-900);
  box-shadow:0 10px 22px -12px rgba(14,33,55,.5);
}
.wm-contact-page .wm-btn-primary:hover{
  background:var(--wm-navy-700);
  border-color:var(--wm-navy-700);
  transform:translateY(-2px);
  box-shadow:0 14px 26px -12px rgba(14,33,55,.55);
}
.wm-contact-page .wm-btn-primary:active{ transform:translateY(0); }
.wm-contact-page .wm-btn-ghost{
  background:transparent;
  color:var(--wm-navy-900);
  border:1px solid var(--wm-line);
}
.wm-contact-page .wm-btn-ghost:hover{
  border-color:var(--wm-navy-700);
  background:var(--wm-blue-100);
  transform:translateY(-2px);
}
.wm-contact-page .wm-btn-ghost:active{ transform:translateY(0); }

.wm-cp-head{ text-align:center; width:100%; margin:0 auto 40px; }
.wm-cp-eyebrow{
  display:inline-flex; align-items:center; gap:8px;
  font-size:12.5px; font-weight:600; letter-spacing:.08em;
  text-transform:uppercase; color:var(--wm-navy-700);
  margin-bottom:12px;
}
.wm-cp-head h1, .wm-cp-head h2{
  font-family:'Space Grotesk',sans-serif;
  font-size:clamp(26px,3.4vw,36px); font-weight:600; line-height:1.2;
  margin:0 0 10px; color:var(--wm-navy-900);
}
.wm-cp-head p{
  margin:0; font-size:15px; line-height:1.65; color:var(--wm-muted);
  width:100%; text-align:center !important;
}

/* ---------------- Hero / quick contact ---------------- */
.wm-cp-hero{ background:#fff; padding:50px 50px; }

.wm-cp-hero .wm-cp-heading-bar{
  display:block; width:64px; height:3px; margin:2px auto 16px;
  background:linear-gradient(90deg,var(--wm-navy-700),var(--wm-blue-500));
  border-radius:2px;
}

.wm-cp-quickgrid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:18px;
  margin-bottom:18px;
}
.wm-cp-quickcard{
  position:relative;
  display:flex;
  flex-direction:column;
  gap:16px;
  background:#fff;
  border:1px solid var(--wm-line);
  border-radius:16px;
  padding:24px 22px 22px;
  text-decoration:none;
  color:inherit;
  overflow:hidden;
  box-shadow:0 12px 28px -22px rgba(14,33,55,.25);
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.wm-cp-quickcard::before{
  content:'';
  position:absolute; top:0; left:0; right:0; height:4px;
  background:var(--wm-navy-700);
}
.wm-cp-quickgrid > .wm-cp-quickcard:nth-child(1)::before{ background:var(--wm-navy-700); }
.wm-cp-quickgrid > .wm-cp-quickcard:nth-child(2)::before{ background:var(--wm-green); }
.wm-cp-quickgrid > .wm-cp-quickcard:nth-child(3)::before{ background:var(--wm-blue-500); }
.wm-cp-quickgrid > .wm-cp-quickcard:nth-child(4)::before{ background:var(--wm-navy-900); }
.wm-cp-quickcard:hover{
  border-color:var(--wm-navy-700);
  box-shadow:0 20px 36px -20px rgba(14,33,55,.3);
  transform:translateY(-4px);
}
.wm-cp-quickcard .top-row{
  display:flex; align-items:center; justify-content:space-between;
}
.wm-cp-quickcard .ic{
  width:48px; height:48px; flex-shrink:0;
  border-radius:13px;
  display:flex; align-items:center; justify-content:center;
  background:var(--wm-blue-100); color:var(--wm-navy-700);
}
.wm-cp-quickcard.whatsapp .ic{ background:var(--wm-green-100); color:var(--wm-green); }
.wm-cp-quickcard .ic svg{ width:21px; height:21px; }
.wm-cp-quickcard .arrow{
  width:32px; height:32px; flex-shrink:0;
  border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  background:var(--wm-bg); color:var(--wm-muted);
  transition:background .2s ease, color .2s ease, transform .2s ease;
}
.wm-cp-quickcard .arrow svg{ width:14px; height:14px; }
.wm-cp-quickcard:hover .arrow{
  background:var(--wm-navy-900); color:#fff;
  transform:translateX(3px);
}
.wm-cp-quickcard .lbl{
  display:block; font-size:11.5px; font-weight:700;
  text-transform:uppercase; letter-spacing:.06em;
  color:var(--wm-muted); margin-bottom:4px;
}
.wm-cp-quickcard .val{
  display:block; font-size:17px; font-weight:700; color:var(--wm-navy-900);
  line-height:1.3; word-break:break-word;
}

/* ---------------- Hero: left image / right vertical contact buttons ---------------- */
.wm-cp-hero-grid{
  display:grid;
  grid-template-columns:0.85fr 1.15fr;
  gap:44px;
  align-items:stretch;
}
.wm-cp-hero-media{
  position:relative;
  border-radius:20px;
  overflow:hidden;
  min-height:480px;
  box-shadow:0 30px 60px -30px rgba(14,33,55,.35);
}
.wm-cp-hero-media img{
  display:block; width:100%; height:100%; object-fit:cover;
}
.wm-cp-hero-media-badge{
  position:absolute; left:18px; right:18px; bottom:18px;
  display:flex; align-items:center; gap:10px;
  background:rgba(14,33,55,.85);
  backdrop-filter:blur(6px);
  color:#fff;
  font-size:13px; font-weight:600;
  line-height:1.35;
  padding:12px 16px;
  border-radius:12px;
}
.wm-cp-hero-media-badge .dot{
  width:8px; height:8px; border-radius:50%; flex-shrink:0;
  background:var(--wm-green);
  box-shadow:0 0 0 4px rgba(37,177,106,.25);
}

.wm-cp-hero-contacts{
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:16px;
}
.wm-cp-contactrow{
  display:flex;
  align-items:center;
  gap:18px;
  background:#fff;
  border:1px solid var(--wm-line);
  border-left:4px solid var(--wm-navy-700);
  border-radius:14px;
  padding:18px 20px;
  text-decoration:none;
  color:inherit;
  box-shadow:0 12px 28px -22px rgba(14,33,55,.25);
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.wm-cp-contactrow:nth-child(4){ border-left-color:var(--wm-navy-900); }
.wm-cp-contactrow:hover{
  transform:translateX(5px);
  box-shadow:0 20px 36px -20px rgba(14,33,55,.3);
}
.wm-cp-contactrow:active{ transform:translateX(2px) scale(.99); }

.wm-cp-contactrow .ic{
  width:52px; height:52px; flex-shrink:0;
  border-radius:14px;
  display:flex; align-items:center; justify-content:center;
  background:var(--wm-blue-100); color:var(--wm-navy-700);
}
.wm-cp-contactrow .ic svg{ width:22px; height:22px; }

.wm-cp-contactrow .text-block{ flex:1; min-width:0; }
.wm-cp-contactrow .lbl{
  display:block; font-size:11.5px; font-weight:700;
  text-transform:uppercase; letter-spacing:.06em;
  color:var(--wm-muted); margin-bottom:4px;
}
.wm-cp-contactrow .val{
  display:block; font-size:17px; font-weight:700; color:var(--wm-navy-900);
  line-height:1.3; word-break:break-word;
}
.wm-cp-contactrow .val-sub{
  display:block; font-size:12px; font-weight:500; color:var(--wm-muted); margin-top:3px;
}

.wm-cp-contactrow .arrow{
  width:34px; height:34px; flex-shrink:0;
  border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  background:var(--wm-bg); color:var(--wm-muted);
  transition:background .2s ease, color .2s ease, transform .2s ease;
}
.wm-cp-contactrow .arrow svg{ width:14px; height:14px; }
.wm-cp-contactrow:hover .arrow{
  background:var(--wm-navy-900); color:#fff;
  transform:translateX(3px);
}

@media (max-width:900px){
  .wm-cp-hero-grid{ grid-template-columns:1fr; gap:28px; }
  .wm-cp-hero-media{ min-height:260px; order:-1; }
}
@media (max-width:560px){
  .wm-cp-contactrow{ padding:15px 16px; gap:14px; }
  .wm-cp-contactrow .ic{ width:44px; height:44px; }
  .wm-cp-contactrow .val{ font-size:15px; }
}

.wm-cp-infobar{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  background:var(--wm-navy-900);
  color:#fff;
  border-radius:16px;
  padding:22px 26px;
}
.wm-cp-infobar-hours{
  display:flex;
  align-items:center;
  gap:12px;
  font-size:13.5px;
  color:#c9d9e6;
}
.wm-cp-infobar-hours .ic{
  width:34px; height:34px; flex-shrink:0;
  border-radius:9px;
  background:rgba(255,255,255,.1);
  display:flex; align-items:center; justify-content:center;
  color:#fff;
}
.wm-cp-infobar-hours .ic svg{ width:16px; height:16px; }
.wm-cp-infobar-hours strong{ display:block; color:#fff; font-size:14px; margin-bottom:2px; }
.wm-cp-infobar .wm-btn{ flex-shrink:0; }

@media (max-width:900px){
  .wm-cp-quickgrid{ grid-template-columns:repeat(2,1fr); }
}
@media (max-width:560px){
  .wm-cp-hero{ padding:56px 16px; }
  .wm-cp-quickgrid{ grid-template-columns:1fr; }
  .wm-cp-infobar{ flex-direction:column; align-items:flex-start; }
}

/* ---------------- Help / product categories ---------------- */
.wm-cp-help{ background:var(--wm-bg); padding:90px 20px; }

.wm-cp-help-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:24px;
}
.wm-cp-help-card{
  background:#fff;
  border:1px solid var(--wm-line);
  border-radius:16px;
  padding:28px 28px 24px;
}
.wm-cp-help-card .wm-cp-help-title{
  display:flex; align-items:center; gap:10px;
  margin-bottom:16px;
}
.wm-cp-help-card .wm-cp-help-title .ic{
  width:36px; height:36px; flex-shrink:0;
  border-radius:10px;
  background:var(--wm-blue-100); color:var(--wm-navy-700);
  display:flex; align-items:center; justify-content:center;
}
.wm-cp-help-card .wm-cp-help-title .ic svg{ width:18px; height:18px; }
.wm-cp-help-card .wm-cp-help-title h3{
  font-family:'Space Grotesk',sans-serif;
  font-size:17px; font-weight:600; margin:0; color:var(--wm-navy-900);
}
.wm-cp-chip-list{
  list-style:none; margin:0; padding:0;
  display:flex; flex-wrap:wrap; gap:9px;
}
.wm-cp-chip-list li{
  font-size:13px; font-weight:500; color:var(--wm-navy-800);
  background:var(--wm-bg);
  border:1px solid var(--wm-line);
  border-radius:20px;
  padding:7px 14px;
}
.wm-cp-help-note{
  text-align:center; max-width:640px; margin:26px auto 0;
  font-size:14px; color:var(--wm-muted); line-height:1.6;
}

@media (max-width:820px){
  .wm-cp-help-grid{ grid-template-columns:1fr; }
}

/* ---------------- Showroom ---------------- */
.wm-cp-showroom{ background:#fff; padding:50px 50px; }
.wm-cp-showroom-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:52px;
  align-items:center;
}
.wm-cp-showroom-media{
  border-radius:20px;
  overflow:hidden;
  box-shadow:0 30px 60px -30px rgba(14,33,55,.35);
}
.wm-cp-showroom-media img{
  display:block; width:100%; height:420px; object-fit:cover;
}
.wm-cp-showroom-body .wm-cp-eyebrow{ display:inline-flex; }
.wm-cp-showroom-body h2{
  font-family:'Space Grotesk',sans-serif;
  font-size:clamp(23px,2.6vw,30px); font-weight:600; line-height:1.28;
  margin:0 0 14px; color:var(--wm-navy-900);
}
.wm-cp-showroom-body p{
  font-size:14.5px; line-height:1.75; color:var(--wm-muted);
  margin:0 0 18px;
}
.wm-cp-audience{
  list-style:none; margin:0 0 20px; padding:0;
  display:flex; flex-wrap:wrap; gap:9px;
}
.wm-cp-audience li{
  font-size:13px; font-weight:600; color:var(--wm-navy-700);
  background:var(--wm-blue-100);
  border-radius:20px;
  padding:7px 14px;
}
.wm-cp-showroom-note{
  display:flex; align-items:flex-start; gap:10px;
  font-size:13.5px; color:var(--wm-navy-800);
  background:var(--wm-bg);
  border:1px solid var(--wm-line);
  border-radius:12px;
  padding:14px 16px;
}
.wm-cp-showroom-note svg{ width:18px; height:18px; flex-shrink:0; margin-top:1px; color:var(--wm-navy-700); }

@media (max-width:900px){
  .wm-cp-showroom-grid{ grid-template-columns:1fr; gap:28px; }
  .wm-cp-showroom-media img{ height:280px; }
}

/* ---------------- Enquiry Form ---------------- */
.wm-cp-form-section{ background:var(--wm-bg); padding:50px 50px; }

/* Full-width centered heading, sits above the form/side-panel grid */
.wm-cp-form-head{
  text-align:center;
  width:100%;
  margin:0 0 30px;
}
.wm-cp-form-head .wm-cp-eyebrow{ display:inline-flex; width:100%; justify-content:center; }
.wm-cp-form-head h2{
  font-family:'Space Grotesk',sans-serif;
  font-size:clamp(21px,2.4vw,26px); font-weight:600;
  margin:0 0 8px; color:var(--wm-navy-900);
}
.wm-cp-form-head p{ font-size:13.5px; line-height:1.6; color:var(--wm-muted); margin:0; width:100%; text-align:center !important; }

.wm-cp-form-grid{
  display:grid;
  grid-template-columns:1.3fr 1fr;
  gap:0;
  background:#fff;
  border-radius:20px;
  overflow:hidden;
  box-shadow:0 30px 60px -35px rgba(14,33,55,.3);
}
.wm-cp-form-body{ padding:32px 36px; }

.wm-cp-form{ display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.wm-cp-form .full{ grid-column:1 / -1; }
.wm-cp-field{ display:flex; flex-direction:column; gap:4px; }
.wm-cp-field label{ font-size:12px; font-weight:600; color:var(--wm-navy-800); }
.wm-cp-field input,
.wm-cp-field select,
.wm-cp-field textarea{
  width:100%;
  font-family:inherit;
  font-size:13.5px;
  color:var(--wm-ink);
  background:var(--wm-bg);
  border:1px solid var(--wm-line);
  border-radius:9px;
  padding:9px 12px;
  outline:none;
  transition:border-color .2s ease, background .2s ease;
}
.wm-cp-field input:focus,
.wm-cp-field select:focus,
.wm-cp-field textarea:focus{
  border-color:var(--wm-navy-700);
  background:#fff;
}
.wm-cp-field textarea{ resize:vertical; min-height:64px; }
.wm-cp-form .wm-btn{ margin-top:2px; justify-content:center; width:100%; border:none; cursor:pointer; padding-top:10px; padding-bottom:10px; }

.wm-cp-form-side{
  background:#fff;
  color:var(--wm-ink);
  padding:0;
  display:flex;
}
.wm-cp-form-side-map{
  flex:1;
  line-height:0;
  border-radius:0;
  overflow:hidden;
}
.wm-cp-form-side-map iframe{
  width:100%; height:100%; min-height:320px; border:0; display:block;
}

@media (max-width:900px){
  .wm-cp-form-grid{ grid-template-columns:1fr; }
  .wm-cp-form-body{ padding:28px 22px; }
  .wm-cp-form-side{ padding:0; }
}
@media (max-width:560px){
  .wm-cp-form{ grid-template-columns:1fr; }
}

/* ---------------- Why contact us ---------------- */
.wm-cp-why{ background:var(--wm-bg); padding:48px 20px; }
.wm-cp-why .wm-cp-head{ margin-bottom:14px; }
.wm-cp-why-intro{
  width:100%; margin:0 auto 28px; text-align:center !important;
  font-size:14.5px; line-height:1.75; color:var(--wm-muted);
}
.wm-cp-why-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:14px;
}
.wm-cp-why-card{
  display:grid;
  grid-template-columns:auto 1fr;
  grid-template-areas:
    "icon heading"
    "body body";
  column-gap:12px;
  row-gap:6px;
  align-items:center;
  background:#fff;
  border:1px solid var(--wm-line);
  border-radius:16px;
  padding:20px 18px;
  transition:box-shadow .2s ease, border-color .2s ease, transform .2s ease;
}
.wm-cp-why-card:hover{
  border-color:var(--wm-navy-700);
  box-shadow:0 16px 32px -20px rgba(14,33,55,.28);
  transform:translateY(-3px);
}
.wm-cp-why-card .ic{
  grid-area:icon;
  width:38px; height:38px; margin-bottom:0;
  border-radius:11px;
  background:var(--wm-blue-100); color:var(--wm-navy-700);
  display:flex; align-items:center; justify-content:center;
}
.wm-cp-why-card .ic svg{ width:19px; height:19px; }
.wm-cp-why-card h3{
  grid-area:heading;
  font-family:'Space Grotesk',sans-serif;
  font-size:15.5px; font-weight:600; margin:0; color:var(--wm-navy-900);
}
.wm-cp-why-card p{ grid-area:body; font-size:13.5px; line-height:1.65; color:var(--wm-muted); margin:0; }

@media (max-width:980px){
  .wm-cp-why-grid{ grid-template-columns:repeat(2,1fr); }
}
@media (max-width:560px){
  .wm-cp-why-grid{ grid-template-columns:1fr; }
}

/* ---------------- FAQ (grid variant, no side image) ---------------- */
.wm-cp-faq{ background:var(--wm-bg); padding:90px 20px; }
.wm-cp-faq-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px 20px;
}
.wm-cp-faq-grid .wm-faq-item:last-child{ margin-bottom:0; }

@media (max-width:820px){
  .wm-cp-faq-grid{ grid-template-columns:1fr; }
}

/* ---------------- Final CTA banner ---------------- */
.wm-cp-cta{
  background:var(--wm-navy-900);
  background-image:radial-gradient(circle at 15% 20%, rgba(95,168,211,.18), transparent 45%),
                    radial-gradient(circle at 85% 80%, rgba(95,168,211,.14), transparent 45%);
  padding:90px 20px;
  text-align:center;
  color:#fff;
}
.wm-cp-cta h2{
  font-family:'Space Grotesk',sans-serif;
  font-size:clamp(24px,3vw,32px); font-weight:600; margin:0 0 12px;
  color:#fff !important;
}
.wm-cp-cta p{
  font-size:14.5px; line-height:1.7; color:#c9d9e6;
  max-width:100%; width:100%; margin:0 auto 28px;
  text-align:center !important;
}
.wm-cp-cta-actions{
  display:flex; flex-wrap:wrap; justify-content:center; gap:12px;
}
.wm-cp-cta .wm-btn-primary{ background:var(--wm-blue-500); color:var(--wm-navy-900); }
.wm-cp-cta .wm-btn-primary:hover{ background:#7fbadd; }
.wm-cp-cta .wm-btn-ghost{ border-color:rgba(255,255,255,.3); color:#fff; }
.wm-cp-cta .wm-btn-ghost:hover{ border-color:#fff; color:var(--wm-navy-900); }

/* ---------------- Map ---------------- */
.wm-cp-map{ background:#fff; padding:90px 20px; }
.wm-cp-map-frame{
  max-width:1180px; margin:0 auto;
  border-radius:20px;
  overflow:hidden;
  box-shadow:0 30px 60px -35px rgba(14,33,55,.3);
  line-height:0;
}
.wm-cp-map-frame iframe{ width:100%; height:420px; border:0; display:block; filter:grayscale(.15) contrast(1.05); }

@media (max-width:560px){
  .wm-cp-map-frame iframe{ height:300px; }
}

/* Wider content container (was 1180px) */
.wm-cp-inner{ max-width:1320px; margin:0 auto; }

/* Business tagline under the eyebrow */
.wm-cp-tagline{
  font-size:13.5px !important;
  font-weight:700 !important;
  color:var(--wm-navy-700) !important;
  letter-spacing:.01em;
  margin:0 0 14px !important;
}

/* Secondary line inside quick-contact cards (e.g. landline under mobile) */
.wm-cp-quickcard .val-sub{
  display:block; font-size:12px; font-weight:500; color:var(--wm-muted);
  margin-top:3px;
}

/* Address caption above the map */
.wm-cp-map-address{
  max-width:1320px; margin:0 auto 16px;
  display:flex; align-items:center; gap:8px;
  font-size:13.5px; font-weight:600; color:var(--wm-navy-800);
}
.wm-cp-map-address svg{ flex-shrink:0; color:var(--wm-navy-700); }

/* Map frame — max-width updated to match the new 1320px container */
.wm-cp-map-frame{
  max-width:1320px; margin:0 auto;
  border-radius:20px;
  overflow:hidden;
  box-shadow:0 30px 60px -35px rgba(14,33,55,.3);
  line-height:0;
}

.wm-cp-head{ text-align:center; width:100%; margin:0 auto 40px; }

.wm-cp-quickcard:active{
  transform:translateY(-1px) scale(.98);
  box-shadow:0 10px 20px -14px rgba(14,33,55,.3);
}

/* ---------------- Text alignment: justify body copy, never headings ---------------- */
.wm-contact-page p,
.wm-contact-page li{
  text-align:justify;
  text-justify:inter-word;
}
.wm-contact-page h1,
.wm-contact-page h2,
.wm-contact-page h3,
.wm-contact-page h4,
.wm-contact-page h5,
.wm-contact-page h6{
  text-align:inherit;
}
/* ---------------- Text alignment: justify body copy, never headings ---------------- */
.wm-contact-page p,
.wm-contact-page li{
  text-align:justify;
  text-justify:inter-word;
}
.wm-contact-page h1,
.wm-contact-page h2,
.wm-contact-page h3,
.wm-contact-page h4,
.wm-contact-page h5,
.wm-contact-page h6{
  text-align:inherit;
}

/* ---------------- Mobile: widen enquiry form + description ---------------- */
@media (max-width:560px){
  .wm-cp-form-section{ padding:40px 14px; }
  .wm-cp-form-body{ padding:20px 16px; }
}