/* Shared interface refinement: quieter navigation, compact mobile layouts and softer controls. */

.nav-socials svg,
.header-utility__socials svg,
.footer-socials svg {
  width: 17px;
  height: 17px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.nav-socials .social-icon-fill,
.header-utility__socials .social-icon-fill,
.footer-socials .social-icon-fill { fill: currentColor; stroke: none; }

.header-utility { display: none; }

@media (min-width: 981px) {
  body .header.site-header,
  body:not([data-page="home"]) .header.site-header,
  body.inspection-page .header.site-header {
    position: relative !important;
    z-index: 1200 !important;
    display: grid !important;
    width: auto !important;
    height: 112px !important;
    min-height: 112px !important;
    grid-template-columns: clamp(146px, 11vw, 176px) minmax(0, 1fr) clamp(176px, 14vw, 214px) !important;
    grid-template-rows: 28px 84px !important;
    grid-template-areas:
      "utility utility utility"
      "brand nav action" !important;
    align-items: center !important;
    gap: 0 clamp(18px, 2vw, 34px) !important;
    margin: 0 !important;
    margin-bottom: -84px !important;
    padding: 0 clamp(24px, 4vw, 72px) !important;
    border: 0 !important;
    border-bottom: 1px solid rgba(212, 175, 55, .24) !important;
    background: linear-gradient(to bottom, #050505 0 28px, transparent 28px) !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
  }

  /* The home page deliberately lets its navigation overlap the opening
     composition. Inner-page heroes must begin below the complete header so
     their headings never compete with the navigation. */
  body:not([data-page="home"]) .header.site-header {
    margin-bottom: clamp(16px, 1.7vw, 26px) !important;
  }

  body .header.site-header .header-utility {
    grid-area: utility;
    display: flex !important;
    align-self: stretch;
    align-items: center;
    justify-content: flex-end;
    gap: 20px;
    border-bottom: 1px solid rgba(212, 175, 55, .15);
    color: rgba(247, 241, 229, .46);
    font: 600 7px/1 "Montserrat", sans-serif;
    letter-spacing: .18em;
    text-transform: uppercase;
  }
  .header-utility > span { margin-right: auto; }
  .header-utility > div { display: flex; align-items: center; gap: 15px; }
  .header-utility > div > b { padding-left: 15px; border-left: 1px solid rgba(212, 175, 55, .3); color: rgba(247, 241, 229, .68); font: inherit; }
  .header-utility__socials { display: inline-flex; align-items: center; gap: 12px; }
  .header-utility__socials a { display: grid; min-height: 0 !important; color: rgba(247, 241, 229, .66); place-items: center; }
  .header-utility__socials a:hover { color: var(--gold, #d4af37); }
  .header-utility__socials svg { width: 12px; height: 12px; }

  body .header.site-header .brand { grid-area: brand; }
  body .header.site-header .brand img { width: clamp(148px, 11vw, 176px) !important; filter: drop-shadow(0 2px 9px rgba(0, 0, 0, .85)); }
  body .header.site-header .header-button {
    grid-area: action;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 46px !important;
    padding: 0 18px !important;
    border-radius: 6px !important;
    font-family: "Oswald", "Arial Narrow", sans-serif !important;
    font-weight: 500 !important;
    font-size: 10px !important;
    letter-spacing: .14em !important;
  }

  body .header.site-header .site-nav,
  body .header.site-header .site-nav > a,
  body .header.site-header .site-nav > .nav-item {
    height: 84px !important;
    min-height: 84px !important;
  }
  body .header.site-header .site-nav {
    position: relative !important;
    grid-area: nav;
    display: flex !important;
    width: auto !important;
    max-width: none !important;
    align-items: center !important;
    justify-content: center !important;
    justify-self: stretch !important;
    gap: clamp(17px, 1.8vw, 32px) !important;
    overflow: visible !important;
    padding: 0 !important;
    background: transparent !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    pointer-events: auto !important;
  }
  body .header.site-header .site-nav > a,
  body .header.site-header .nav-item__toggle {
    display: inline-flex !important;
    min-height: 84px !important;
    align-items: center !important;
    padding: 0 !important;
    border: 0 !important;
    color: rgba(247, 241, 229, .78) !important;
    background: transparent !important;
    font: 500 10.5px/1 "Oswald", "Arial Narrow", sans-serif !important;
    letter-spacing: .18em !important;
    text-transform: uppercase !important;
    text-shadow: 0 1px 12px rgba(0, 0, 0, .95) !important;
    cursor: pointer;
  }
  body .header.site-header .site-nav > a:hover,
  body .header.site-header .site-nav > a.is-active,
  body .header.site-header .nav-item--dropdown.is-active > .nav-item__toggle,
  body .header.site-header .nav-item__toggle:hover { color: var(--gold, #d4af37) !important; }
  body .header.site-header .site-nav > a::before,
  body .header.site-header .site-nav > a::after,
  body .header.site-header .nav-item__toggle::before,
  body .header.site-header .nav-item__toggle::after { display: none !important; }

  body .header.site-header .nav-item--dropdown { position: relative; display: flex !important; align-items: center; flex: 0 0 auto !important; }
  body .header.site-header .nav-item__toggle { gap: 8px !important; white-space: nowrap; }
  body .header.site-header .nav-item__caret {
    display: block !important;
    width: 6px;
    height: 6px;
    border-right: 1px solid var(--gold, #d4af37);
    border-bottom: 1px solid var(--gold, #d4af37);
    transform: translateY(-2px) rotate(45deg);
    transition: transform .2s ease;
  }
  body .header.site-header .nav-item--dropdown.is-open .nav-item__caret { transform: translateY(2px) rotate(225deg); }
  body .header.site-header .nav-dropdown {
    position: absolute !important;
    z-index: 2600 !important;
    top: calc(100% - 9px) !important;
    left: 50% !important;
    display: grid !important;
    min-width: 210px !important;
    gap: 3px !important;
    padding: 8px !important;
    border: 1px solid rgba(212, 175, 55, .32) !important;
    border-radius: 8px !important;
    opacity: 0;
    visibility: hidden;
    background: #070706 !important;
    box-shadow: 0 20px 46px rgba(0, 0, 0, .58) !important;
    transform: translate(-50%, 7px) !important;
    transition: opacity .18s ease, visibility .18s ease, transform .18s ease !important;
    pointer-events: none;
  }
  body .header.site-header .nav-item--dropdown.is-open .nav-dropdown {
    opacity: 1;
    visibility: visible;
    transform: translate(-50%, 0) !important;
    pointer-events: auto;
  }
  body .header.site-header .nav-dropdown a {
    display: grid !important;
    min-height: 42px !important;
    grid-template-columns: 24px 1fr;
    align-items: center !important;
    padding: 0 11px !important;
    border-radius: 5px !important;
    color: rgba(247, 241, 229, .8) !important;
    font: 500 10px/1 "Oswald", "Arial Narrow", sans-serif !important;
    letter-spacing: .14em !important;
    text-transform: uppercase !important;
  }
  body .header.site-header .nav-dropdown a span { color: rgba(212, 175, 55, .66); font-size: 8px; }
  body .header.site-header .nav-dropdown a:hover { color: #f7f1e5 !important; background: rgba(212, 175, 55, .09) !important; }

  body .header.site-header .site-nav > .nav-socials,
  body .header.site-header .site-nav > .mobile-nav__label,
  body .header.site-header .site-nav > .mobile-nav__actions { display: none !important; }

  body .header.site-header .nav-search {
    position: relative !important;
    display: grid !important;
    width: 36px !important;
    height: 40px !important;
    flex: 0 0 auto !important;
    grid-template-columns: 36px 0 0 !important;
    align-items: center !important;
    overflow: visible !important;
    border: 0 !important;
    border-radius: 6px !important;
    background: transparent !important;
    transition: width .25s ease, background .25s ease !important;
  }
  body .header.site-header .nav-search.is-open {
    width: clamp(190px, 17vw, 260px) !important;
    grid-template-columns: 36px minmax(0, 1fr) 30px !important;
    background: rgba(255, 255, 255, .04) !important;
    box-shadow: inset 0 -1px rgba(212, 175, 55, .55);
  }
  body .header.site-header .nav-search__toggle,
  body .header.site-header .nav-search__submit {
    display: grid !important;
    width: 36px !important;
    height: 40px !important;
    min-height: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    color: var(--gold, #d4af37) !important;
    background: transparent !important;
    place-items: center;
    cursor: pointer;
  }
  body .header.site-header .nav-search__submit { width: 30px !important; opacity: 0; pointer-events: none; }
  body .header.site-header .nav-search input { width: 0 !important; height: 40px !important; padding: 0 !important; opacity: 0; pointer-events: none; }
  body .header.site-header .nav-search.is-open input { width: 100% !important; padding: 0 7px !important; opacity: 1; pointer-events: auto; }
  body .header.site-header .nav-search.is-open .nav-search__submit { opacity: 1; pointer-events: auto; }
  .nav-search__icon { margin: 0 !important; }

  /* Catalogue headers must remain in document flow. The shared transparent
     header previously pulled itself 84px over the hero, allowing hero copy to
     occupy the same space as the logo and navigation. */
  body.catalogue-page .header.site-header {
    margin-bottom: 0 !important;
  }
}

@media (min-width: 981px) and (max-width: 1220px) {
  body .header.site-header,
  body:not([data-page="home"]) .header.site-header { grid-template-columns: 136px minmax(0, 1fr) 164px !important; gap: 0 14px !important; padding-inline: 20px !important; }
  body .header.site-header .site-nav { gap: 14px !important; }
  body .header.site-header .brand img { width: 136px !important; }
  body .header.site-header .site-nav > a,
  body .header.site-header .nav-item__toggle { font-size: 9px !important; letter-spacing: .13em !important; }
}

@media (max-width: 980px) {
  body .header.site-header,
  body .catalogue-header.site-header,
  body:not([data-page="home"]) .header.site-header,
  body.inspection-page .header.site-header {
    position: sticky !important;
    z-index: 2300 !important;
    top: 0 !important;
    display: grid !important;
    width: 100% !important;
    height: 70px !important;
    min-height: 70px !important;
    grid-template-columns: 1fr auto !important;
    align-items: center !important;
    margin: 0 !important;
    padding: 0 18px !important;
    border: 0 !important;
    border-bottom: 1px solid rgba(212, 175, 55, .2) !important;
    opacity: 1 !important;
    background: #050505 !important;
    box-shadow: none !important;
    isolation: isolate;
  }
  body .header.site-header .header-utility { display: none !important; }
  body .header.site-header .brand img,
  body .catalogue-header.site-header .brand img { width: 120px !important; max-width: 44vw !important; }
  body .header.site-header .header-button { display: none !important; }
  body .header.site-header .mobile-menu,
  body .catalogue-header.site-header .mobile-menu {
    position: relative !important;
    z-index: 2350 !important;
    display: grid !important;
    width: 40px !important;
    height: 40px !important;
    min-height: 40px !important;
    border: 1px solid rgba(212, 175, 55, .42) !important;
    border-radius: 7px !important;
    color: var(--gold, #d4af37) !important;
    background: #080807 !important;
    place-items: center;
    grid-column: 2 !important;
    grid-row: 1 !important;
    justify-self: end !important;
    margin: 0 !important;
    padding: 0 !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
  }
  body .header.site-header .mobile-menu span,
  body .catalogue-header.site-header .mobile-menu span {
    position: absolute !important;
    display: block !important;
    width: 18px !important;
    height: 1px !important;
    background: currentColor !important;
  }
  body .header.site-header .site-nav,
  body .catalogue-header.site-header .site-nav,
  body.site-menu-open .header.site-header .site-nav,
  body.site-menu-open .catalogue-header.site-header .site-nav {
    position: fixed !important;
    z-index: 2400 !important;
    inset: 0 0 0 auto !important;
    display: flex !important;
    width: min(84vw, 370px) !important;
    height: 100svh !important;
    max-width: none !important;
    max-height: none !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 0 !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    margin: 0 !important;
    padding: 24px 22px 22px !important;
    border: 0 !important;
    border-left: 1px solid rgba(212, 175, 55, .36) !important;
    opacity: 1 !important;
    visibility: visible !important;
    background: #050505 !important;
    box-shadow: -25px 0 60px rgba(0, 0, 0, .72) !important;
    transform: translateX(103%) !important;
    pointer-events: none !important;
    counter-reset: mobile-menu-item;
    transition: transform .3s cubic-bezier(.22, .7, .24, 1) !important;
  }
  body.site-menu-open .header.site-header .site-nav,
  body.site-menu-open .catalogue-header.site-header .site-nav { transform: translateX(0) !important; pointer-events: auto !important; }
  body.site-menu-open .header.site-header .mobile-menu,
  body.site-menu-open .catalogue-header.site-header .mobile-menu { position: fixed !important; z-index: 2500 !important; top: 15px !important; right: 15px !important; }

  body .header.site-header .site-nav .mobile-nav__label,
  body .catalogue-header.site-header .site-nav .mobile-nav__label {
    order: 1 !important;
    display: flex !important;
    min-height: 48px !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
    padding: 4px 50px 13px 0 !important;
    border-bottom: 1px solid rgba(212, 175, 55, .22) !important;
  }
  .mobile-nav__label span { color: var(--gold, #d4af37) !important; font: 700 9px/1 "Montserrat", sans-serif !important; letter-spacing: .2em !important; text-transform: uppercase !important; }
  .mobile-nav__label small { color: rgba(247, 241, 229, .4) !important; font: 600 7px/1 "Montserrat", sans-serif !important; letter-spacing: .12em !important; text-transform: uppercase !important; }

  body .header.site-header .site-nav > a,
  body .catalogue-header.site-header .site-nav > a,
  body .header.site-header .site-nav > .nav-item,
  body .catalogue-header.site-header .site-nav > .nav-item { order: 3 !important; counter-increment: mobile-menu-item; }
  body .header.site-header .site-nav > a,
  body .catalogue-header.site-header .site-nav > a,
  body .header.site-header .nav-item__toggle,
  body .catalogue-header.site-header .nav-item__toggle {
    display: flex !important;
    width: 100% !important;
    height: auto !important;
    min-height: 48px !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 0 !important;
    border: 0 !important;
    border-bottom: 1px solid rgba(212, 175, 55, .17) !important;
    color: rgba(247, 241, 229, .9) !important;
    background: transparent !important;
    font: 500 clamp(17px, 5vw, 20px)/1 "Oswald", "Arial Narrow", sans-serif !important;
    letter-spacing: .12em !important;
    text-transform: uppercase !important;
  }
  body .header.site-header .site-nav > a::before,
  body .catalogue-header.site-header .site-nav > a::before,
  body .header.site-header .nav-item__toggle::before { display: none !important; }
  body .header.site-header .site-nav > a::after,
  body .catalogue-header.site-header .site-nav > a::after,
  body .header.site-header .nav-item__toggle::after {
    display: block !important;
    width: auto !important;
    height: auto !important;
    content: counter(mobile-menu-item, decimal-leading-zero) !important;
    color: rgba(212, 175, 55, .78) !important;
    background: none !important;
    font: 700 7px/1 "Montserrat", sans-serif !important;
    letter-spacing: .08em !important;
    transform: none !important;
  }
  body .header.site-header .nav-item__toggle .nav-item__caret { display: none !important; }
  body .header.site-header .nav-item--dropdown,
  body .catalogue-header.site-header .nav-item--dropdown {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    min-height: 48px !important;
    flex: 0 0 auto !important;
    align-self: stretch !important;
    overflow: visible !important;
  }
  body .header.site-header .nav-dropdown,
  body.site-menu-open .header.site-header .nav-dropdown {
    position: static !important;
    display: none !important;
    width: 100% !important;
    min-width: 0 !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 7px !important;
    padding: 8px 0 12px !important;
    border: 0 !important;
    opacity: 1 !important;
    visibility: visible !important;
    background: transparent !important;
    box-shadow: none !important;
    transform: none !important;
    pointer-events: auto !important;
  }
  body .header.site-header .nav-item--dropdown.is-open .nav-dropdown,
  body.site-menu-open .header.site-header .nav-item--dropdown.is-open .nav-dropdown,
  body .catalogue-header.site-header .nav-item--dropdown.is-open .nav-dropdown,
  body.site-menu-open .catalogue-header.site-header .nav-item--dropdown.is-open .nav-dropdown {
    display: grid !important;
    position: relative !important;
    flex: 0 0 auto !important;
  }
  body .header.site-header .nav-dropdown a {
    display: grid !important;
    min-height: 42px !important;
    grid-template-columns: 20px 1fr;
    column-gap: 6px;
    align-items: center !important;
    padding: 0 9px !important;
    border: 1px solid rgba(212, 175, 55, .22) !important;
    border-radius: 6px !important;
    color: rgba(247, 241, 229, .76) !important;
    background: rgba(212, 175, 55, .035) !important;
    font: 500 10px/1.25 "Oswald", "Arial Narrow", sans-serif !important;
    letter-spacing: .11em !important;
    text-transform: uppercase !important;
  }
  body .header.site-header .nav-dropdown a span { color: var(--gold, #d4af37); font-size: 7px; }
  body .header.site-header .nav-item--bags .nav-dropdown a:first-child { grid-column: 1 / -1; }

  body .header.site-header .nav-search,
  body .catalogue-header.site-header .nav-search,
  body.site-menu-open .header.site-header .nav-search,
  body.site-menu-open .catalogue-header.site-header .nav-search {
    position: relative !important;
    order: 2 !important;
    display: grid !important;
    width: 100% !important;
    height: 42px !important;
    grid-template-columns: 28px minmax(0, 1fr) 28px !important;
    align-items: center !important;
    margin: 12px 0 6px !important;
    padding: 0 6px !important;
    border: 1px solid rgba(212, 175, 55, .3) !important;
    border-radius: 6px !important;
    background: #090908 !important;
  }
  body .header.site-header .nav-search__toggle { display: grid !important; width: 28px !important; height: 40px !important; padding: 0 !important; border: 0 !important; background: transparent !important; place-items: center; pointer-events: none; }
  body .header.site-header .nav-search input { display: block !important; width: 100% !important; height: 40px !important; padding: 0 7px !important; opacity: 1 !important; pointer-events: auto !important; }
  body .header.site-header .nav-search__submit { display: grid !important; width: 28px !important; height: 40px !important; padding: 0 !important; border: 0 !important; color: var(--gold, #d4af37) !important; background: transparent !important; place-items: center; }

  body .header.site-header .site-nav .nav-socials,
  body.site-menu-open .header.site-header .site-nav .nav-socials {
    order: 4 !important;
    display: flex !important;
    gap: 10px !important;
    margin: auto 0 0 !important;
    padding: 16px 0 13px !important;
    border: 0 !important;
    border-bottom: 1px solid rgba(212, 175, 55, .18) !important;
  }
  body .header.site-header .site-nav .nav-socials a {
    display: grid !important;
    width: 28px !important;
    height: 30px !important;
    min-height: 30px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    color: var(--gold, #d4af37) !important;
    place-items: center;
  }
  body .header.site-header .site-nav .nav-socials svg { width: 17px; height: 17px; }
  body .header.site-header .site-nav .mobile-nav__actions { order: 5 !important; display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 12px !important; padding-top: 14px !important; }
  .mobile-nav__actions a { display: flex !important; align-items: center !important; justify-content: space-between !important; color: rgba(247, 241, 229, .68) !important; font: 600 7px/1.3 "Montserrat", sans-serif !important; letter-spacing: .08em !important; text-transform: uppercase !important; }
}

/* Google review cards, kept inside the site's original black-and-gold language. */
body .google-reviews {
  display: block !important;
  padding: clamp(64px, 7vw, 100px) clamp(18px, 3vw, 42px) !important;
  border-top: 1px solid rgba(212, 175, 55, .25) !important;
  border-bottom: 1px solid rgba(212, 175, 55, .25) !important;
  color: #f7f1e5 !important;
  background: #050505 !important;
}
body .google-reviews::before { display: none !important; }
.google-reviews__intro { display: grid; justify-items: center; text-align: center; }
body .google-reviews__eyebrow { margin: 0 0 12px !important; color: #d4af37 !important; font-size: 9px !important; }
body .google-reviews__eyebrow::before { display: none !important; }
body .google-reviews h2 {
  max-width: none !important;
  margin: 0 !important;
  color: #f7f1e5 !important;
  font: 600 clamp(27px, 2.4vw, 38px)/1 "Montserrat", sans-serif !important;
  letter-spacing: -.04em !important;
  text-transform: uppercase;
}
body .google-reviews__score { display: grid !important; justify-items: center; gap: 6px !important; margin: 10px 0 0 !important; }
.google-reviews__stars { color: #f7b800 !important; font: 700 clamp(27px, 2.7vw, 42px)/.8 Arial, sans-serif !important; letter-spacing: .02em !important; }
body .google-reviews__score small { color: rgba(247, 241, 229, .72) !important; font: 500 14px/1.2 "Montserrat", sans-serif !important; letter-spacing: 0 !important; }
.google-wordmark { display: flex; margin: 9px 0 0 !important; font: 500 34px/1 Arial, sans-serif !important; letter-spacing: -3px !important; }
.google-wordmark span:nth-child(1), .google-wordmark span:nth-child(4) { color: #4285f4; }
.google-wordmark span:nth-child(2), .google-wordmark span:nth-child(6) { color: #ea4335; }
.google-wordmark span:nth-child(3) { color: #fbbc05; }
.google-wordmark span:nth-child(5) { color: #34a853; }
body .google-reviews__intro > a {
  margin-top: 14px !important;
  padding: 7px 0 !important;
  border: 0 !important;
  color: rgba(247, 241, 229, .55) !important;
  font-size: 8px !important;
}
body .google-reviews__content { margin-top: 32px; }
body .google-reviews__grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: clamp(12px, 1.4vw, 20px) !important;
  border: 0 !important;
}
/* The pre-existing Trustindex shortcode supplies the verified review cards.
   Let its widget span the custom review section instead of being constrained
   to one card column. */
body .google-reviews__grid > .ti-widget,
body .google-reviews__grid > [class*="trustindex"] { grid-column: 1 / -1; width: 100%; }
body .google-review-card {
  display: flex !important;
  min-height: 260px !important;
  flex-direction: column !important;
  gap: 14px !important;
  padding: clamp(20px, 1.7vw, 27px) !important;
  border: 1px solid rgba(212, 175, 55, .22) !important;
  border-radius: 14px !important;
  color: #f7f1e5 !important;
  background: linear-gradient(155deg, rgba(212, 175, 55, .075), rgba(255, 255, 255, .015) 48%, rgba(0, 0, 0, .35)), #0b0b0a !important;
}
body .google-review-card > a,
body .google-review-card > div { order: 1; display: grid !important; grid-template-columns: 50px minmax(0, 1fr) 24px !important; gap: 14px !important; }
body .google-review-card__avatar { width: 50px !important; height: 50px !important; border: 1px solid rgba(212, 175, 55, .45) !important; color: #050505 !important; background: #d4af37 !important; font-size: 17px !important; }
body .google-review-card__author strong { display: -webkit-box; overflow: hidden; color: #f7f1e5 !important; font: 600 14px/1.25 "Montserrat", sans-serif !important; white-space: normal !important; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
body .google-review-card__author small { color: rgba(247, 241, 229, .48) !important; font: 500 12px/1.2 "Montserrat", sans-serif !important; }
.google-review-card__google {
  display: grid;
  width: 22px;
  height: 22px;
  place-items: center;
}
.google-review-card__google img { display: block; width: 20px; height: 20px; object-fit: contain; }
body .google-review-card__stars { order: 2; color: #f7b800 !important; font: 700 18px/1 Arial, sans-serif !important; letter-spacing: .02em !important; }
body .google-review-card blockquote { order: 3; display: -webkit-box !important; align-self: stretch !important; margin: 0 !important; color: rgba(247, 241, 229, .84) !important; font: 500 15px/1.55 "Montserrat", sans-serif !important; -webkit-line-clamp: 5 !important; }
.google-review-card__more { order: 4; margin-top: auto; color: rgba(212, 175, 55, .8); font: 500 12px/1 "Montserrat", sans-serif; }
body .google-reviews__fallback {
  display: grid !important;
  min-height: 150px !important;
  grid-column: 1 / -1 !important;
  grid-template-columns: 48px minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 20px !important;
  padding: 26px !important;
  border-radius: 14px !important;
  border: 1px solid rgba(212, 175, 55, .22) !important;
  color: #f7f1e5 !important;
  background: #0b0b0a !important;
}
body .google-reviews__fallback strong { display: block; color: #f7f1e5; font: 600 17px/1.3 "Montserrat", sans-serif; }
body .google-reviews__fallback p { margin: 7px 0 0 !important; color: rgba(247, 241, 229, .6) !important; font: 500 13px/1.5 "Montserrat", sans-serif !important; }
body .google-reviews__fallback a { margin: 0 !important; border: 1px solid #d4af37 !important; border-radius: 6px !important; color: #f7f1e5 !important; background: transparent !important; }

/* Softer interaction points without rounding page frames. */
.primary-button,
.header-button,
.inspection-page-button,
.inspection-standard__footer a,
.inspection-authentication__footer a,
.showroom-cta,
.detail-enquiry,
.filter-trigger,
.load-catalogue-more,
.enquiry-form button,
.mobile-nav__actions a,
.catalogue-toolbar button { border-radius: 6px !important; }

@media (max-width: 760px) {
  body .google-reviews { padding: 52px 16px !important; }
  body .google-reviews__content { margin-top: 26px; overflow: hidden; }
  body .google-reviews__grid { display: flex !important; gap: 12px !important; overflow-x: auto !important; scroll-snap-type: x mandatory; padding-bottom: 8px; }
  body .google-review-card { min-width: min(82vw, 330px) !important; min-height: 235px !important; scroll-snap-align: start; }
  body .google-reviews__fallback { min-width: 100% !important; grid-template-columns: 38px 1fr !important; }
  body .google-reviews__fallback > a { grid-column: 1 / -1; justify-content: center; }

  .site-footer {
    grid-template-columns: 1fr !important;
    gap: 18px !important;
    padding: 28px 18px 20px !important;
  }
  .site-footer .footer-brand { display: block; }
  .site-footer .footer-brand img { width: 96px !important; }
  .site-footer .footer-columns {
    grid-column: 1 !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 12px !important;
  }
  .site-footer .footer-columns > div,
  .site-footer .footer-contact { gap: 7px !important; }
  .site-footer .footer-columns strong,
  .site-footer .footer-contact strong { margin-bottom: 2px !important; font-size: 8px !important; letter-spacing: .1em !important; }
  .site-footer .footer-columns a,
  .site-footer .footer-contact a,
  .site-footer .footer-contact span { font-size: 9px !important; line-height: 1.3 !important; }
  .site-footer .footer-contact { grid-column: 1 !important; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .site-footer .footer-contact strong,
  .site-footer .footer-contact span { grid-column: 1 / -1; }
  .site-footer .footer-socials { grid-column: 1 !important; display: flex !important; gap: 8px !important; }
  .site-footer .footer-socials a { display: grid !important; width: 34px !important; min-height: 34px !important; padding: 0 !important; border: 1px solid rgba(212, 175, 55, .28); border-radius: 50% !important; color: var(--gold, #d4af37); place-items: center; }
  .site-footer .footer-socials a span { display: none; }
  .site-footer .footer-socials svg { width: 15px; height: 15px; }
  .site-footer > small { grid-column: 1 !important; margin-top: 0 !important; padding-top: 14px !important; font-size: 8px !important; line-height: 1.45 !important; }
}

@media (max-width: 620px) {
  .inspection-standard__steps {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    grid-template-rows: repeat(2, auto) !important;
  }
  .inspection-standard__steps article,
  .inspection-standard__steps article:nth-child(2),
  .inspection-standard__steps article:nth-child(3) {
    min-height: 158px !important;
    grid-template-columns: 24px minmax(0, 1fr) !important;
    gap: 7px !important;
    padding: 17px 12px !important;
    border-right: 1px solid rgba(212, 175, 55, .16) !important;
    border-bottom: 1px solid rgba(212, 175, 55, .16) !important;
  }
  .inspection-standard__steps article:nth-child(even) { border-right: 0 !important; }
  .inspection-standard__steps article:nth-child(n+3) { border-bottom: 0 !important; }
  .inspection-standard__steps article > span { font-size: 9px !important; }
  .inspection-standard__steps h3 { margin-bottom: 6px !important; font-size: clamp(17px, 5vw, 21px) !important; line-height: 1 !important; }
  .inspection-standard__steps p { font-size: 11.5px !important; line-height: 1.35 !important; }
  .inspection-standard__steps small { display: none !important; }

  .inspection-authentication__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  .inspection-authentication__grid article {
    min-height: 168px !important;
    grid-template-columns: 20px minmax(0, 1fr) !important;
    gap: 7px !important;
    padding: 17px 11px !important;
    border-right: 1px solid rgba(212, 175, 55, .16) !important;
    border-bottom: 1px solid rgba(212, 175, 55, .16) !important;
  }
  .inspection-authentication__grid article:nth-child(even) { border-right: 0 !important; }
  .inspection-authentication__grid article:nth-child(n+3) { border-bottom: 0 !important; }
  .inspection-authentication__grid h3 { margin-bottom: 7px !important; font-size: 18px !important; line-height: 1 !important; }
  .inspection-authentication__grid p { font-size: 11.5px !important; line-height: 1.35 !important; }

  .inspection-overview__summary { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .inspection-overview__summary p { min-height: 118px !important; padding: 15px 12px !important; font-size: 11px !important; line-height: 1.35 !important; }

  .inspection-assurance__list {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 0 !important;
    padding: 0 14px 46px !important;
  }
  .inspection-assurance__list article {
    min-height: 132px !important;
    grid-template-columns: 42px minmax(0, 1fr) !important;
    gap: 8px !important;
    padding: 15px 9px !important;
    border-right: 1px solid rgba(214, 175, 85, .16) !important;
  }
  .inspection-assurance__list article:nth-child(even) { border-right: 0 !important; }
  .inspection-assurance__icon { width: 38px !important; height: 38px !important; }
  .inspection-assurance__list strong { font-size: 8px !important; line-height: 1.35 !important; letter-spacing: .08em !important; }
  .inspection-assurance__list p { margin-top: 6px !important; font-size: 11px !important; line-height: 1.3 !important; }
}

@media (max-width: 390px) {
  body .header.site-header .site-nav,
  body .catalogue-header.site-header .site-nav { width: 88vw !important; padding-inline: 18px !important; }
  .site-footer .footer-columns { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .site-footer .footer-columns > div:last-child { grid-column: 1 / -1; grid-template-columns: repeat(3, 1fr); }
  .site-footer .footer-columns > div:last-child strong { grid-column: 1 / -1; }
}

/* Pull the proof panel into the intentionally empty lower portion of the
   mobile campaign. The hero controls remain in place and unobstructed. */
@media (max-width: 760px) {
  body[data-page="home"] .concept--trial { min-height: 760px; }
  body[data-page="home"] .brand-showcase {
    margin-top: -96px;
    padding-top: 12px;
  }
}
