/* === GOTHAM SELF-HOSTED WEBFONTS === */

@font-face {
  font-family: "Gotham";
  src: url("/wp-content/themes/twentytwentyfive-child/fonts/Gotham-Light.woff2") format("woff2");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Gotham";
  src: url("/wp-content/themes/twentytwentyfive-child/fonts/Gotham-Book.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Gotham";
  src: url("/wp-content/themes/twentytwentyfive-child/fonts/Gotham-Medium.woff2") format("woff2");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Gotham";
  src: url("/wp-content/themes/twentytwentyfive-child/fonts/Gotham-Bold.woff2") format("woff2");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Gotham";
  src: url("/wp-content/themes/twentytwentyfive-child/fonts/Gotham-Black.woff2") format("woff2");
  font-weight: 900;
  font-style: normal;
  font-display: swap;
}


:root {
  --wp--preset--font-family--albert-sans: "Gotham", system-ui, sans-serif;
}

body {
  font-family: "Gotham", system-ui, sans-serif;
}

/* ============================
   GLOBAL HEADING WEIGHT ADJUSTMENTS
   ============================ */

/* H1 stays bold for page titles */
h1 {
  font-weight: 700; /* Gotham Bold */
}

/* H2s are lighter — more elegant, better for long sentences */
h2 {
  font-weight: 400; /* Gotham Medium (or 400 if you want even lighter) */
  line-height: 1.4;
  color: #292929;
}

/* Keep sub-headings distinct but not shouty */
h3, h4 {
  font-weight: 500; /* Medium */
}

h5, h6 {
  font-weight: 400; /* Book */
}


/* 3. Inline emphasis – keep weights consistent */
strong, b {
  font-weight: 700; /* Use Bold instead of fake bolding */
}

em, i {
  font-style: italic; /* will use your BookItalic etc if defined */
}

/* 4. Make Gutenberg “Albert Sans” preset actually use Gotham */
:root {
  --wp--preset--font-family--albert-sans: "Gotham", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --wp--preset--font-family--system-font: "Gotham", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

/* ============================
   HERO HEADING (Gotham Black)
   ============================ */

.hero-heading,
.is-style-text-display,
.is-style-text-display--2 {
  font-family: "Gotham", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  font-weight: 900; /* Gotham Black */
  line-height: 1.25; /* Tighter for big titles */
  letter-spacing: 0.02em; /* Slight spacing to breathe uppercase text */
  text-transform: uppercase;
  font-style: normal;
}


/* =========================
   HEADER (Overlay + Regular)
   ========================= */
:root{
  --logo-max-desktop: 280px;   /* client ask; we’ll cap responsively */
  --header-pad-y: clamp(10px, 0.8vw, 16px);
  --header-gap: clamp(10px, 2vw, 32px);
}

/* Treat both headers the same for base look */
.site-header-overlay,
.site-header-regular{
  top: 0; left: 0; right: 0;
  z-index: 20000;
  background: rgba(255,255,255,.96);
  box-shadow: 0 10px 30px rgba(0,0,0,.08);
  transition: background .25s ease, box-shadow .25s ease, transform .25s ease;
  isolation: isolate;
}

/* --- Overlay variant floats over the hero, then sticks on scroll --- */
.site-header-overlay{
  position: absolute;
  background: transparent;
  box-shadow: none;
}
.site-header-overlay .wp-block-site-title a,
.site-header-overlay .wp-block-navigation a,
.site-header-overlay .wp-block-navigation__responsive-container-open,
.site-header-overlay .wp-block-navigation__responsive-container-close{
  color: #fff;
}
.site-header-overlay.is-stuck{
  position: fixed;
  background: rgba(255,255,255,.96);
  box-shadow: 0 10px 30px rgba(0,0,0,.08);
}
.site-header-overlay.is-stuck .wp-block-site-title a,
.site-header-overlay.is-stuck .wp-block-navigation a,
.site-header-overlay.is-stuck .wp-block-navigation__responsive-container-open,
.site-header-overlay.is-stuck .wp-block-navigation__responsive-container-close{
  color: #292929;
}


/* --- Regular variant: absolute, then fixed when scrolled --- */
.site-header-regular {
  position: absolute;
}

.site-header-regular.is-stuck {
  position: fixed;
}

/* Spacer so content doesn't jump when header becomes fixed */
.site-header-spacer {
  height: var(--header-height, 100px);
}

@media (min-width: 782px) {
  .site-header-spacer {
    display: block;
  }
}


/* Internal layout (add “site-header-inner” class to the alignwide row) */
.site-header-overlay .alignwide,
.site-header-regular .alignwide{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--header-gap);
  padding-block: var(--header-pad-y);
}

/* LOGO — big but proportional */
.site-header-overlay .wp-block-site-logo img,
.site-header-regular .wp-block-site-logo img{
  height: auto; width: auto;
  max-width: min(var(--logo-max-desktop), 22vw);
}

/* NAV — allow shrink so it doesn’t push the call button */
.site-header-overlay .wp-block-navigation,
.site-header-regular .wp-block-navigation{
  flex: 1 1 auto; min-width: 0;
}
.site-header-overlay .wp-block-navigation .wp-block-navigation__container,
.site-header-regular  .wp-block-navigation .wp-block-navigation__container{
  justify-content: center;
}

/* ACTIONS (wrap call button in a group e.g. <div class="header-actions">) */
.header-actions{
  flex: 0 0 auto;
  display: flex; align-items: center;
  gap: clamp(8px, 1.5vw, 16px);
  white-space: nowrap; /* prevents wrapping */
}

/* Tablet */
@media (max-width: 1024px){
  .site-header-overlay .wp-block-site-logo img,
  .site-header-regular .wp-block-site-logo img{
    max-width: clamp(160px, 26vw, 220px);
  }
}

/* Mobile */
@media (max-width: 782px){
  .site-header-overlay .alignwide,
  .site-header-regular .alignwide{ gap: 12px; }

  .site-header-overlay .wp-block-site-logo img,
  .site-header-regular .wp-block-site-logo img{
    max-width: clamp(140px, 38vw, 200px);
  }

  /* Let nav shrink; keep actions tidy */
  .site-header-overlay .wp-block-navigation,
  .site-header-regular .wp-block-navigation{ flex: 0 1 auto; }
}

/* Burger/close hitbox polish */
.wp-block-navigation__responsive-container-open,
.wp-block-navigation__responsive-container-close{ line-height: 1; }

/* ========== NAV OVERLAY (unchanged behavior, just tidy) ========== */
.wp-block-navigation__responsive-container-close{ color:#292929 !important; }

@media (max-width: 767px){
  .wp-block-navigation__responsive-container.is-menu-open{
    position: fixed !important;
    z-index: 9999 !important;
    width: 100vw; height: 100vh; overflow-y: auto;
    background-color: var(--wp--preset--color--base, #fff);
    display: flex; justify-content: flex-start; align-items: center;
    padding-top: 3rem; box-sizing: border-box;
  }
  .wp-block-navigation .wp-block-navigation-item__content{
    color: inherit; font-size: 1.5rem;
  }
}

/* ========== CALL BUTTON (kept; minor tidy) ========== */
.call-button-style .wp-block-button__link{
  background:#f79431; color:#fff;
  white-space: nowrap; line-height:1.1;
  padding: clamp(0.5rem, 0.4rem + 0.4vw, 0.65rem)
          clamp(1rem, 0.75rem + 1vw, 2rem);
  border-radius: 999px;
}
.call-button-style .wp-block-button__link:hover{ background:#e9831f; }
.call-button-style .phone-ic{ width:18px; height:18px; flex:0 0 auto; fill:currentColor; }

@media (max-width: 640px){
  .call-button-style .wp-block-button__link{
    width:46px; height:46px; padding:0; border-radius:50%;
    justify-content:center; font-size:0; animation:pulse-ring 2.2s ease-in-out infinite;
  }
  .call-button-style .phone-ic{ width:22px; height:22px; }
  .call-button-style .call-text{ display:none; }
}
@media (prefers-reduced-motion: reduce){
  .call-button-style .wp-block-button__link{ animation:none !important; }
}
@keyframes pulse-ring{
  0%{ box-shadow:0 0 0 0 rgba(247,148,49,.45); }
  70%{ box-shadow:0 0 0 10px rgba(247,148,49,0); }
  100%{ box-shadow:0 0 0 0 rgba(247,148,49,0); }
}

/* ========== BUTTON BASE (deduped) ========== */
.wp-block-button__link{
  display:inline-flex; align-items:center; justify-content:center;
  border:0;
  font-weight:600; letter-spacing:.3px; line-height:1.2; text-decoration:none;
  transition: transform .2s, box-shadow .2s, background-color .2s, color .2s;
  box-shadow: 0 4px 6px -1px rgba(0,0,0,.1), 0 2px 4px -2px rgba(0,0,0,.1);
  font-size: clamp(0.875rem, 0.5rem + 0.5vw, 1.05rem) !important;
  /* default padding lives in components (e.g., call button above) */
}
.wp-block-button__link:hover{ transform: translateY(-1px); box-shadow:0 8px 15px -3px rgba(0,0,0,.2), 0 4px 6px -4px rgba(0,0,0,.2); }
.wp-block-button__link:active{ transform: scale(.98); opacity:.9; }

/* Radius once only */
.wp-block-button__link, button, input[type="button"], input[type="submit"]{
  border-radius: clamp(.4rem, .25rem + .5vw, .8rem) !important;
}

/* Outline / Fill */
.is-style-outline .wp-block-button__link{
  background:transparent !important; border:2px solid currentColor !important; color:currentColor !important;
}
.is-style-fill .wp-block-button__link,
.wp-block-button .wp-block-button__link.has-background{ border:2px solid transparent !important; }

/* ========== ACCESSIBILITY ========== */
:where(a, button, [role="button"], .wp-block-navigation a):focus{ outline:none; box-shadow:none; }
:where(a, button, [role="button"], .wp-block-navigation a):focus-visible{
  outline:2px solid currentColor; outline-offset:2px; border-radius:6px; box-shadow:none;
}

/* ===== HERO (kept as-is, just grouped) ===== */
.hero-slider{ margin-top:0 !important; padding-top:0 !important; }
.hero-slider .slick-dots li button:before{ opacity:.6; }
.hero-slider .slick-dots li.slick-active button:before{ opacity:1; }

.hero-heading{
  font-size: clamp(1.75rem, 4vw + 1rem, 4.5rem);
  line-height:1.2; font-weight:600; text-wrap:balance;
  margin-top:0; margin-bottom:.5em;
}
.hero-slider .wp-block-cover{ margin-top:0 !important; padding-top:0 !important; }


/* About section styling */
.nkdnc-about-text .about-label {
  display: inline-block;
  padding: 0.25rem 0.75rem;
  font-size: 0.8rem;
  font-weight: 500;
  border: 1px solid #ccc;
  border-radius: 999px;
  margin-bottom: 0.75rem;
  color: #292929;
  background: #f9f9f9;
}

/* Bullet point list */
.nkdnc-bullets {
  margin-top: 1.25rem;
  padding-left: 1.25rem;
  font-size: 1rem;
  line-height: 1.6;
  color: #292929;
}

.nkdnc-bullets li {
  margin-bottom: 0.5rem;
}

/* Responsive side image that scales with viewport height */
/* Base: Desktop & Tablet (side by side) */
.responsive-side-img {
  height: clamp(400px, 70vh, 640px);  /* keeps image responsive to viewport */
  width: 100%;
  max-width: 100%;
  object-fit: cover;
  display: block;
  border-top-left-radius: 15rem;
  border-top-right-radius: 15rem;
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}

/* Mobile: stack layout, image is smaller with fixed aspect */
@media (max-width: 767px) {
  .responsive-side-img {
    height: auto;
    aspect-ratio: 3 / 4;
    border-radius: 2rem;
  }
}

/* ========== SUBHEADING STYLE (With Soft Shadow) ========== */
.subheading {
  color: #f79431;
  font-weight: 500;
  font-size: clamp(1rem, 0.85rem + 0.8vw, 1.6rem);
  line-height: 1.3;
  letter-spacing: 0.3px;
  position: relative;
  display: inline-block;
  padding-bottom: 0.35em;
}

.subheading::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 40%; /* proportional underline */
  height: 2px;
  background-color: currentColor;
  border-radius: 2px;
  opacity: 0.85;
  transition: width 0.3s ease;
}

/* optional hover animation */
.subheading:hover::after {
  width: 100%;
}

/* ===== Services (minimal, responsive, neutral hover) ===== */
/* Card */

/* Grid: tighter and smaller cards */
.services-grid{
  display:grid; gap:1rem; padding:0 1rem; margin:0 auto; max-width:1100px;
  grid-template-columns:repeat(auto-fit, minmax(16rem, 1fr)); /* was 19–20rem */
}

/* Compact card */
.service-card{
  background:#fff; border:1px solid rgba(0,0,0,.08);
  border-radius:.6rem; padding:.75rem 1rem;
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease, background-color .2s ease;
}
.service-card:hover{ transform:translateY(-2px); box-shadow:0 8px 18px rgba(0,0,0,.12); border-color:rgba(0,0,0,.14); background:#fafafa; }

/* Smaller icon */
.icon-wrap{
  display:grid; place-items:center;
  width:clamp(44px,5vw,64px); height:clamp(44px,5vw,64px);
  border-radius:999px; background:rgba(0,0,0,.05); margin:0 0 .6rem 0;
}
.icon-wrap img{ width:60%; height:60%; object-fit:contain; display:block; }

/* Compact typography */
.card-body{ padding:0; }
.service-card h3{
  margin:.1rem 0 .25rem; font-weight:600;
  font-size:clamp(.95rem, .85rem + .2vw, 1.1rem);
  line-height:1.25; color:#292929;
}
.service-card p{
  margin:0; color:#666;
  font-size:.92rem; line-height:1.45;
}

/* Section header spacing (lighter) */
.section-head{ margin-bottom:clamp(.75rem,1.5vw,1.25rem); }


.services-inline{
  display:flex; flex-wrap:wrap; gap:.5rem .6rem;
  justify-content:center; margin: .75rem auto 0; padding:0 1rem;
  max-width:1100px;
}
.svc-pill{
  display:inline-flex; align-items:center; gap:.4rem;
  padding:.4rem .75rem; border:1px solid rgba(0,0,0,.12);
  border-radius:999px; background:#fff; color:#292929; text-decoration:none;
  font-size:.92rem; line-height:1; transition:background .2s, border-color .2s, transform .2s;
}
.svc-pill:hover{ background:#f6f6f6; border-color:rgba(0,0,0,.2); transform:translateY(-1px); }

.services-section { background:#faf8f4; }
.service-card { background:#fff; border:1px solid rgba(0,0,0,.08); }
.service-card h3 { color:#292929; }
.service-card p { color:#666; }
.section-head .subheading { color:#636363; } /* or keep your orange */

/* ========== HEADER NAV LINKS (Classic Style) ========== */

/* Base text style */
.site-header-regular .wp-block-navigation .wp-block-navigation-item__content,
.site-header-overlay .wp-block-navigation .wp-block-navigation-item__content {
  font-size: clamp(1.05rem, 0.8rem + 0.2vw, 1.2rem);
/*  text-transform: uppercase; */
  letter-spacing: 0.05em;
  line-height: 1.3;
  color: #292929;
  text-decoration: none;
  transition: color 0.25s ease;
}

/* Regular header hover */
.site-header-regular .wp-block-navigation .wp-block-navigation-item__content:hover,
.site-header-regular .wp-block-navigation .wp-block-navigation-item__content:focus-visible {
  color: #f79431;
}

/* Overlay header (white over hero, dark when stuck) */
.site-header-overlay:not(.is-stuck) .wp-block-navigation .wp-block-navigation-item__content {
  color: #ffffff;
}

.site-header-overlay.is-stuck .wp-block-navigation .wp-block-navigation-item__content {
  color: #292929;
}

/* Overlay hover (both states → orange) */
.site-header-overlay .wp-block-navigation .wp-block-navigation-item__content:hover,
.site-header-overlay .wp-block-navigation .wp-block-navigation-item__content:focus-visible {
  color: #f79431;
}

/* Current page highlight */
.wp-block-navigation .current-menu-item > .wp-block-navigation-item__content {
  color: #f79431;
}

/* ========== FOOTER NAV: ORANGE ON HOVER ONLY ========== */

/* (Assumes footer navigation block has class “footer-nav”) */
.footer-nav .wp-block-navigation-item__content {
  color: inherit;               /* use the theme’s default text colour */
  text-decoration: none;        /* no underline */
  transition: color 0.25s ease; /* smooth hover change */
}

/* Hover → orange */
.footer-nav .wp-block-navigation-item__content:hover,
.footer-nav .wp-block-navigation-item__content:focus-visible {
  color: #f79431;               /* your brand orange */
}

@media (max-width: 767px) {
  /* keep your overlay menu layout */
  .wp-block-navigation__responsive-container.is-menu-open {
    position: fixed !important;
    z-index: 9999 !important;
    width: 100vw;
    height: 100vh;
    overflow-y: auto;
    background-color: var(--wp--preset--color--base, #fff);
    display: flex;
    justify-content: flex-start;
    align-items: center;
    padding-top: 3rem;
    box-sizing: border-box;
  }

  /* limit big font-size to HEADER nav overlay only */
  .site-header-overlay .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content,
  .site-header-regular .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content {
    font-size: 1.5rem;
  }
}

@media (max-width: 767px) {
  .footer-nav .wp-block-navigation-item__content {
    font-size: 1.05rem;
  }
} 

/* ========== FOOTER CONTACT LINKS ========== */

.footer-contact a {
  color: inherit;              /* use the same colour as the paragraph text */
  text-decoration: none;       /* no underline */
  transition: color 0.25s ease;
}

/* optional hover → orange */
.footer-contact a:hover,
.footer-contact a:focus-visible {
  color: #f79431;
}


/* ===============================
   CTA SECTION (Accent Background)
================================= */

.nkdnc-cta {
  background: linear-gradient(90deg, #f79431, #f5a347);
  color: #fff;
  text-align: left;
}

.nkdnc-cta h2 {
  font-weight: 700;
  margin-bottom: 0.4em;
  color: #fff;
}

.nkdnc-cta p {
  color: #fff;
  line-height: 1.6;
  max-width: 600px;
}

.nkdnc-cta strong {
  font-weight: 700;
  color: #fff;
}

.nkdnc-cta-btn .wp-block-button__link {
  background-color: #292929 !important;
  color: #fff !important;
  border-radius: 999px;
  padding: 0.75rem 2.25rem !important;
  font-weight: 600;
  letter-spacing: 0.3px;
  transition: all 0.25s ease;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
}

.nkdnc-cta-btn .wp-block-button__link:hover {
  background-color: #1a1a1a !important;
  transform: translateY(-2px);
  box-shadow: 0 8px 18px rgba(0, 0, 0, 0.25);
}

/* Responsive improvements */
@media (max-width: 767px) {
  .nkdnc-cta {
    text-align: center;
  }
  .nkdnc-cta p {
    margin: 0 auto 1rem;
  }
  .nkdnc-cta-btn {
    justify-content: center;
  }
}

/* ===============================
   NKDNC CTA SECTION
================================= */

.nkdnc-cta {
  color: #fff;
}

.nkdnc-cta h2 {
  margin-bottom: 0.4em;
  font-weight: 700;
  color: #fff;
}

.nkdnc-cta p {
  color: #fff;
  line-height: 1.6;
  max-width: 36rem;
}

.nkdnc-cta strong {
  font-weight: 700;
}

/* Right-side action column */
.nkdnc-cta-actions {
  align-items: flex-end;
  text-align: right;
}

/* Make the CTA button more “clickable” */
.nkdnc-cta-btn .wp-block-button__link {
  background-color: #111 !important;
  color: #fff !important;
  border-radius: 999px;
  padding: 0.9rem 2.8rem !important;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  font-size: 0.95rem;
  box-shadow: 0 8px 18px rgba(0, 0, 0, 0.25);
  transform: translateY(0);
  transition: transform 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease;
  animation: nkdnc-cta-pulse 2.6s ease-in-out infinite;
}

.nkdnc-cta-btn .wp-block-button__link:hover {
  background-color: #000 !important;
  transform: translateY(-2px) scale(1.02);
  box-shadow: 0 12px 26px rgba(0, 0, 0, 0.35);
}

/* Sub note under button */
.nkdnc-cta-note {
  margin-top: 0.6rem;
  opacity: 0.9;
}

/* Soft pulse to draw the eye */
@keyframes nkdnc-cta-pulse {
  0%   { box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.35); }
  60%  { box-shadow: 0 0 0 14px rgba(0, 0, 0, 0); }
  100% { box-shadow: 0 0 0 0 rgba(0, 0, 0, 0); }
}

/* Mobile adjustments */
@media (max-width: 767px) {
  .nkdnc-cta {
    text-align: left;
  }

  .nkdnc-cta-actions {
    align-items: flex-start;
    text-align: left;
    margin-top: 1.5rem;
  }

  .nkdnc-cta p {
    max-width: 100%;
  }
}


/* =============================
   NKDNC CONTACT – DENPLEX STYLE
   ============================= */

.nkdnc-contact-denplex {
  background-color: #faf8f4;
}

/* Grid layout */
.nkdnc-contact-denplex .nkdnc-contact-cols {
  max-width: 1150px;
  margin-inline: auto;
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.9fr);
  gap: clamp(2.5rem, 5vw, 4rem);
  align-items: stretch;
}

/* Left column typography */
.nkdnc-contact-left .nkdnc-contact-label {
  text-transform: uppercase;
  letter-spacing: 0.18em;
  font-size: 0.78rem;
  margin-bottom: 0.75rem;
  color: #666;
}

.nkdnc-contact-left h1.wp-block-heading {
  margin-bottom: 1rem;
  max-width: 20ch;
}

.nkdnc-contact-left > p {
  margin-bottom: 1.75rem;
  max-width: 40rem;
  color: #555;
}

.nkdnc-contact-left h3.wp-block-heading {
  margin-top: 1.5rem;
  margin-bottom: 0.75rem;
}

/* Form spacing (CF7 wrapper) */
.nkdnc-contact-left .wpcf7 {
  margin-top: 0.5rem;
}

/* Right column image + card */
.nkdnc-contact-image-wrap {
  position: relative;
  height: 100%;
  min-height: 420px;
}

.nkdnc-contact-image img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  border-radius: 0.9rem;
}

/* Floating card */
.nkdnc-contact-card {
  position: absolute;
  top: 12%;
  left: 8%;
  background: #ffffff;
  padding: 1.75rem 2rem;
  border-radius: 0.9rem;
  box-shadow: 0 16px 40px rgba(0,0,0,0.12);
  max-width: 260px;
}

.nkdnc-contact-card h3 {
  margin-top: 0;
  margin-bottom: 0.75rem;
}

.nkdnc-contact-card p {
  margin: 0 0 0.75rem;
  font-size: 0.95rem;
  line-height: 1.5;
}

.nkdnc-contact-card a {
  color: inherit;
  text-decoration: none;
  border-bottom: 1px solid rgba(0,0,0,0.1);
  padding-bottom: 1px;
}

.nkdnc-contact-card a:hover {
  color: #f79431;
  border-color: rgba(247,148,49,0.35);
}

/* Responsive behaviour */
@media (max-width: 960px) {
  .nkdnc-contact-denplex .nkdnc-contact-cols {
    grid-template-columns: 1fr;
  }

  .nkdnc-contact-right {
    order: -1; /* image/card above form on mobile */
  }

  .nkdnc-contact-image-wrap {
    min-height: 320px;
  }

  .nkdnc-contact-card {
    position: static;
    margin-top: 1rem;
    box-shadow: 0 10px 25px rgba(0,0,0,0.08);
  }
}

/* When Fancybox is open, push header behind it */
body.fancybox-active .site-header-overlay,
body.fancybox-active .site-header-regular {
  z-index: 1000;
}

/* space between phone icon and number text */
.call-button-style svg.phone-ic {
  margin-right: 0.4em; /* adjust 0.4em → 0.5em or 8px if you want more */
  vertical-align: middle;
}



