﻿/* ═══════════════════════════════════════════════════════════════
   HighQ Homes — Unified Premium Design System
   Navy #021D45 · Orange #E88B09 · Inter + Playfair Display
   ═══════════════════════════════════════════════════════════════ */

:root {
  --hq-navy: #021d45;
  --hq-navy-deep: #010f24;
  --hq-navy-soft: #0a2d5c;
  --hq-orange: #e88b09;
  --hq-orange-dark: #c97408;
  --hq-orange-light: #f5b14a;
  --hq-white: #ffffff;
  --hq-bg: #ffffff;
  --hq-bg-soft: #f7f9fc;
  --hq-bg-muted: #eef2f7;
  --hq-text: #1a2d45;
  --hq-muted: #5c6d80;
  --hq-border: rgba(2, 29, 69, 0.08);
  --hq-shadow: 0 16px 48px rgba(2, 29, 69, 0.08);
  --hq-shadow-sm: 0 4px 20px rgba(2, 29, 69, 0.06);
  --hq-radius: 16px;
  --hq-radius-lg: 24px;
  --hq-header-h: 68px;
  --hq-header-h-scrolled: 60px;
  --hq-topbar-h: 32px;
  --hq-chrome-h: var(--hq-header-h);
  --hq-section-y: clamp(4.5rem, 8vw, 6.5rem);
  --hq-display: clamp(2.25rem, 5vw, 3.75rem);
  --hq-h2: clamp(1.875rem, 3.5vw, 2.875rem);
  --hq-h3: clamp(1.125rem, 2vw, 1.375rem);
  --hq-body: clamp(1rem, 1.2vw, 1.0625rem);
  --hq-font-display: "Playfair Display", Georgia, serif;
  --hq-font-body: Inter, system-ui, sans-serif;
  --hq-ease: cubic-bezier(0.16, 1, 0.3, 1);
}

*, *::before, *::after { box-sizing: border-box; }
html {
  scroll-behavior: smooth;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

.container-site {
  width: 100%;
  max-width: 1280px;
  margin: 0 auto;
  padding-left: max(1.5rem, env(safe-area-inset-left, 0px));
  padding-right: max(1.5rem, env(safe-area-inset-right, 0px));
}

body {
  padding-top: var(--hq-chrome-h);
  background: var(--hq-bg);
  color: var(--hq-text);
  font-family: var(--hq-font-body);
  line-height: 1.6;
  min-width: 0;
  max-width: 100%;
  overflow-x: hidden;
  -webkit-font-smoothing: antialiased;
  -webkit-tap-highlight-color: rgba(232, 139, 9, 0.12);
}

img, video, canvas, svg { max-width: 100%; }
iframe { max-width: 100%; }

body:has(.hq-topbar) { --hq-chrome-h: calc(var(--hq-topbar-h) + var(--hq-header-h)); }
body[data-page="home"] { padding-top: 0; }

.skip-link {
  position: absolute;
  top: -100%;
  left: 1rem;
  z-index: 10000;
  padding: .75rem 1.25rem;
  border-radius: 10px;
  background: var(--hq-navy);
  color: var(--hq-white);
  font-weight: 600;
  text-decoration: none;
  transition: top .2s ease;
}

.skip-link:focus { top: 1rem; }

.flash-success,
.flash-error {
  max-width: 1280px;
  margin: 1rem auto;
  padding: .875rem 1.25rem;
  border-radius: 12px;
  display: flex;
  align-items: center;
  gap: .75rem;
  font-size: .9375rem;
  font-weight: 500;
}

.flash-success {
  background: #ecfdf3;
  border: 1px solid #bbf7d0;
  color: #166534;
}

.flash-error {
  background: #fef2f2;
  border: 1px solid #fecaca;
  color: #991b1b;
}

.anim-ready { opacity: 0; transition: opacity .6s ease, transform .6s ease; }
.anim-ready.anim-up { transform: translateY(32px); }
.anim-ready.anim-left { transform: translateX(-32px); }
.anim-ready.anim-right { transform: translateX(32px); }
.anim-in { opacity: 1 !important; transform: none !important; }

.hq-mt-lg { margin-top: 1.75rem; }
.hq-mt-xl { margin-top: 2rem; }
.hq-u-full { max-width: none !important; }

/* ─── Typography ─── */
.hq-eyebrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.625rem;
  margin: 0 0 1rem;
  color: var(--hq-orange);
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.hq-eyebrow--light { color: var(--hq-orange-light); }

.hq-title {
  margin: 0;
  color: var(--hq-navy);
  font-family: var(--hq-font-display);
  font-size: var(--hq-h2);
  font-weight: 700;
  letter-spacing: -0.03em;
  line-height: 1.08;
}

.hq-title--light { color: var(--hq-white); }

.hq-lead {
  margin: 0;
  max-width: 56ch;
  color: var(--hq-muted);
  font-size: var(--hq-body);
  line-height: 1.72;
}

.hq-lead--light { color: rgba(255,255,255,.78); }

.hq-head {
  text-align: center;
  margin-bottom: clamp(2.5rem, 5vw, 3.5rem);
}

.hq-head .hq-lead { margin: 1rem auto 0; }

.hq-head__cta { margin-top: 1.25rem; }

.hq-head--light .hq-title { color: var(--hq-white); }
.hq-head--light .hq-lead { color: rgba(255,255,255,.72); }

/* ─── Buttons ─── */
.hq-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  min-height: 48px;
  padding: 0 1.375rem;
  border: 1px solid transparent;
  border-radius: 999px;
  font-family: var(--hq-font-body);
  font-size: 0.875rem;
  font-weight: 600;
  text-decoration: none;
  cursor: pointer;
  transition: transform .25s var(--hq-ease), box-shadow .25s var(--hq-ease), background .25s ease;
}

.hq-btn:hover { transform: translateY(-2px); }

.hq-btn--orange {
  color: var(--hq-navy);
  background: linear-gradient(135deg, var(--hq-orange), var(--hq-orange-dark));
  box-shadow: 0 8px 24px rgba(232,139,9,.28);
}

.hq-btn--navy {
  color: var(--hq-white);
  background: var(--hq-navy);
  box-shadow: 0 8px 24px rgba(2,29,69,.2);
}

.hq-btn--outline {
  color: var(--hq-navy);
  background: transparent;
  border-color: rgba(2,29,69,.18);
}

.hq-btn--outline:hover {
  border-color: rgba(232,139,9,.45);
  background: rgba(232,139,9,.06);
  color: var(--hq-navy);
}

.hq-btn--ghost {
  color: var(--hq-white);
  background: rgba(255,255,255,.1);
  border-color: rgba(255,255,255,.22);
}

.hq-btn--lg { min-height: 52px; padding: 0 1.625rem; font-size: .9375rem; }

.hq-actions {
  display: flex;
  flex-wrap: wrap;
  gap: .75rem;
  justify-content: center;
}

/* ─── Header ─── */
.hq-header-wrapper {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 1200;
  max-width: 100%;
  background: var(--hq-white);
  border-bottom: 1px solid transparent;
  transition: box-shadow .35s var(--hq-ease), border-color .35s ease, background .35s ease;
}

/* Homepage Floating Hero Header */
body[data-page="home"] .hq-header-wrapper:not(.is-scrolled) {
  background: linear-gradient(180deg, rgba(1, 15, 36, 0.82) 0%, rgba(1, 15, 36, 0.35) 60%, transparent 100%);
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  box-shadow: none;
}

body[data-page="home"] .hq-header-wrapper:not(.is-scrolled) .hq-topbar {
  background: transparent;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

body[data-page="home"] .hq-header-wrapper:not(.is-scrolled) .hq-nav__link {
  color: rgba(255, 255, 255, 0.92);
}

body[data-page="home"] .hq-header-wrapper:not(.is-scrolled) .hq-nav__link:hover,
body[data-page="home"] .hq-header-wrapper:not(.is-scrolled) .hq-nav__link:focus-visible {
  color: var(--hq-orange-light);
}

body[data-page="home"] .hq-header-wrapper:not(.is-scrolled) .hq-nav__link.is-active,
body[data-page="home"] .hq-header-wrapper:not(.is-scrolled) .hq-nav__link.active {
  color: var(--hq-white);
}

body[data-page="home"] .hq-header-wrapper:not(.is-scrolled) .hq-brand__word--primary {
  color: var(--hq-white);
}

body[data-page="home"] .hq-header-wrapper:not(.is-scrolled) .hq-menu-btn {
  background: rgba(255, 255, 255, 0.12);
  color: var(--hq-white);
  border-color: rgba(255, 255, 255, 0.25);
}

.hq-header-wrapper .container-site {
  max-width: 1440px;
  padding-left: max(clamp(1.25rem, 3.2vw, 2.25rem), env(safe-area-inset-left, 0px));
  padding-right: max(clamp(1.25rem, 3.2vw, 2.25rem), env(safe-area-inset-right, 0px));
}

.hq-header-wrapper.is-scrolled {
  background: rgba(255, 255, 255, 0.98);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  border-bottom-color: var(--hq-border);
  box-shadow: 0 10px 32px rgba(2, 29, 69, 0.08);
}

.hq-header {
  position: relative;
  z-index: 2;
  width: 100%;
  background: transparent;
}

.hq-header__inner {
  display: grid;
  grid-template-columns: minmax(max-content, 1fr) auto minmax(max-content, 1fr);
  align-items: center;
  column-gap: clamp(0.75rem, 2vw, 1.75rem);
  height: var(--hq-header-h);
  min-height: var(--hq-header-h);
  transition: height .35s var(--hq-ease), min-height .35s var(--hq-ease);
}

.hq-header.scrolled .hq-header__inner,
.hq-header-wrapper.is-scrolled .hq-header__inner {
  height: var(--hq-header-h-scrolled);
  min-height: var(--hq-header-h-scrolled);
}

.hq-header__inner > .hq-brand--header {
  grid-column: 1;
  justify-self: start;
  min-width: 0;
}

.hq-nav {
  grid-column: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(0.15rem, 0.8vw, 0.45rem);
  min-width: 0;
}

.hq-nav__link {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 2.125rem;
  padding: 0.25rem 0.75rem;
  color: var(--hq-navy);
  font-size: 0.875rem;
  font-weight: 600;
  letter-spacing: 0.01em;
  line-height: 1;
  white-space: nowrap;
  text-decoration: none;
  background: none;
  border-radius: 0;
  transition: color .22s ease;
}

.hq-nav__link span {
  position: relative;
  display: inline-block;
  padding-bottom: 0.2rem;
}

.hq-nav__link span::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 2px;
  border-radius: 2px;
  background: var(--hq-orange);
  transform: scaleX(0);
  transform-origin: center;
  transition: transform .28s var(--hq-ease);
}

.hq-nav__link:hover,
.hq-nav__link:focus-visible {
  color: var(--hq-orange);
  background: none;
}

.hq-nav__link:hover span::after,
.hq-nav__link:focus-visible span::after {
  transform: scaleX(0.42);
}

.hq-nav__link.is-active,
.hq-nav__link.active {
  color: var(--hq-navy);
  background: none;
}

.hq-nav__link.is-active span::after,
.hq-nav__link.active span::after {
  transform: scaleX(1);
}

.hq-nav__link:focus-visible,
.hq-header__cta:focus-visible,
.hq-brand:focus-visible,
.hq-menu-btn:focus-visible,
.hq-mobile__close:focus-visible,
.hq-mobile__link:focus-visible {
  outline: 2px solid var(--hq-orange);
  outline-offset: 3px;
}

@media (min-width: 1280px) {
  .hq-header-wrapper .container-site {
    max-width: 1400px;
  }

  .hq-nav {
    gap: 0.45rem;
  }

  .hq-nav__link {
    padding: 0.28rem 0.85rem;
    font-size: 0.875rem;
  }
}

@media (min-width: 1024px) and (max-width: 1279px) {
  .hq-nav {
    gap: 0.1rem;
    justify-content: center;
  }

  .hq-nav__link {
    padding: 0.22rem 0.55rem;
    font-size: 0.8125rem;
  }
}

/* ─── Top Announcement / Contact Bar ─── */
.hq-topbar {
  background: var(--hq-navy-deep);
  color: rgba(255,255,255,.75);
  font-size: .8125rem;
  line-height: 1;
  border-bottom: 1px solid rgba(255,255,255,.06);
}

.hq-topbar__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  height: var(--hq-topbar-h);
  min-width: 0;
  overflow: hidden;
}

.hq-topbar__start,
.hq-topbar__end {
  display: flex;
  align-items: center;
  gap: 1.25rem;
  flex-wrap: nowrap;
}

.hq-topbar__item {
  display: flex;
  align-items: center;
  gap: .35rem;
  white-space: nowrap;
}

.hq-topbar__item i {
  font-size: .75rem;
  color: var(--hq-orange);
}

.hq-topbar__link {
  display: flex;
  align-items: center;
  gap: .35rem;
  color: rgba(255,255,255,.75);
  text-decoration: none;
  white-space: nowrap;
  transition: color .2s ease;
}

.hq-topbar__link:hover { color: var(--hq-white); }

.hq-topbar__link i {
  font-size: .75rem;
  color: var(--hq-orange);
}

.hq-topbar__link--highlight {
  padding: .2rem .65rem;
  border-radius: 20px;
  background: rgba(232,139,9,.18);
  color: var(--hq-orange-light);
  font-weight: 600;
  border: 1px solid rgba(232,139,9,.3);
}

.hq-topbar__link--highlight:hover {
  background: rgba(232,139,9,.28);
  color: var(--hq-white);
}

.hq-topbar__link--highlight i { color: inherit; }

body[data-page="home"]:has(.hq-topbar) { padding-top: 0; }

.hq-header__actions {
  display: flex;
  align-items: center;
  gap: 0.85rem;
  grid-column: 3;
  justify-self: end;
  flex-shrink: 0;
  position: relative;
  z-index: 5;
}

.hq-header__cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.45rem;
  flex-shrink: 0;
  min-height: 38px;
  padding: 0 1rem 0 0.9rem;
  border-radius: 999px;
  background: var(--hq-orange);
  color: var(--hq-navy);
  font-size: 0.8125rem;
  font-weight: 700;
  letter-spacing: 0.01em;
  line-height: 1;
  text-decoration: none;
  white-space: nowrap;
  box-shadow: 0 6px 16px rgba(232, 139, 9, 0.16);
  transition: transform .25s var(--hq-ease), box-shadow .25s ease, background .25s ease;
}

.hq-header__cta:hover {
  background: var(--hq-orange-dark);
  color: var(--hq-navy);
  transform: translateY(-1px);
  box-shadow: 0 10px 22px rgba(232, 139, 9, 0.22);
}

.hq-header__cta i:first-child {
  font-size: 0.9375rem;
  line-height: 1;
}

.hq-header-wrapper.is-scrolled .hq-header__cta,
.hq-header.scrolled .hq-header__cta {
  min-height: 34px;
  padding: 0 0.9rem 0 0.8rem;
}

.hq-header__cta-text {
  min-width: 0;
}

.hq-header__cta-arrow {
  font-size: 0.75rem;
  transition: transform .25s var(--hq-ease);
}

.hq-header__cta:hover .hq-header__cta-arrow {
  transform: translateX(3px);
}

.hq-menu-btn {
  display: none;
  position: relative;
  z-index: 4;
  flex-direction: column;
  justify-content: center;
  gap: 5px;
  width: 40px;
  height: 40px;
  padding: 0;
  border: 1px solid rgba(2, 29, 69, 0.12);
  border-radius: 12px;
  background: var(--hq-white);
  color: var(--hq-navy);
  cursor: pointer;
  flex-shrink: 0;
  -webkit-tap-highlight-color: transparent;
  transition: border-color .2s ease, background .2s ease;
}

.hq-menu-btn:hover,
.hq-menu-btn:focus-visible {
  border-color: rgba(232, 139, 9, 0.45);
  background: rgba(232, 139, 9, 0.08);
}

.hq-menu-btn.is-active {
  border-color: var(--hq-orange);
  background: rgba(232, 139, 9, 0.12);
}

.hq-menu-btn span {
  display: block;
  width: 16px;
  height: 1.5px;
  margin: 0 auto;
  background: var(--hq-navy);
  transition: transform .25s ease, opacity .25s ease;
}

.hq-menu-btn.is-active span:nth-child(1) { transform: translateY(6.5px) rotate(45deg); }
.hq-menu-btn.is-active span:nth-child(2) { opacity: 0; }
.hq-menu-btn.is-active span:nth-child(3) { transform: translateY(-6.5px) rotate(-45deg); }

/* Brand logo */
.hq-brand {
  display: inline-flex;
  align-items: center;
  gap: 0.625rem;
  text-decoration: none;
  color: inherit;
  flex-shrink: 0;
  min-width: 0;
  max-width: min(100%, 220px);
  line-height: 1;
}

.hq-brand__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 48px;
  height: 42px;
  line-height: 0;
}

.hq-brand__icon-img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}

.hq-brand__icon-img--light {
  filter: brightness(0) invert(1);
}

.hq-brand__icon-img--footer {
  filter: none;
  object-fit: contain;
  object-position: center;
}

.hq-brand--footer .hq-brand__icon {
  width: 54px;
  height: 46px;
  flex-shrink: 0;
}

.hq-brand--footer .hq-brand__icon-img--footer {
  width: 100%;
  height: 100%;
}

.hq-brand__text {
  display: flex;
  align-items: center;
  min-width: 0;
  flex: 1 1 auto;
}

.hq-brand__name {
  display: inline-flex;
  align-items: center;
  gap: 0.2em;
  flex-wrap: nowrap;
  font-family: var(--hq-font-body);
  font-size: 1.1875rem;
  font-weight: 800;
  letter-spacing: -0.045em;
  line-height: 1;
  white-space: nowrap;
  color: var(--hq-navy);
}

.hq-brand__word--primary {
  color: var(--hq-navy);
  font-weight: 800;
}

.hq-brand__word--accent {
  color: var(--hq-orange);
  font-weight: 700;
  letter-spacing: -0.03em;
}

.hq-brand--header {
  max-width: none;
  width: auto;
  gap: 0.55rem;
  flex-shrink: 0;
  transition: opacity .2s ease;
}

.hq-brand--header:hover {
  opacity: 0.88;
}

.hq-brand--header .hq-brand__icon {
  width: 40px;
  height: 36px;
  margin-right: 0;
  background: transparent;
  overflow: visible;
  transition: width .35s var(--hq-ease), height .35s var(--hq-ease);
}

.hq-brand--header .hq-brand__icon-img {
  object-position: center;
  width: 100%;
  height: 100%;
}

.hq-brand--header .hq-brand__icon-img--header {
  mix-blend-mode: normal;
  opacity: 1;
}

.hq-brand--header .hq-brand__text {
  margin-left: 0;
}

.hq-brand--header .hq-brand__name {
  font-size: 1.0625rem;
  min-height: 36px;
  gap: 0.18em;
  transition: font-size .35s var(--hq-ease), min-height .35s var(--hq-ease);
}

.hq-header.scrolled .hq-brand--header .hq-brand__icon,
.hq-header-wrapper.is-scrolled .hq-brand--header .hq-brand__icon {
  width: 36px;
  height: 32px;
}

.hq-header.scrolled .hq-brand--header .hq-brand__name,
.hq-header-wrapper.is-scrolled .hq-brand--header .hq-brand__name {
  font-size: 1rem;
  min-height: 32px;
}

.hq-brand__icon-img--header { filter: none; }

.hq-brand--mobile {
  max-width: none;
  gap: 0.35rem;
}

.hq-brand--mobile .hq-brand__icon {
  width: 44px;
  height: 38px;
}

.hq-brand--mobile .hq-brand__icon-img--header {
  mix-blend-mode: normal;
}

.hq-brand--mobile .hq-brand__name {
  min-height: 38px;
}

.hq-brand--mobile .hq-brand__name { color: var(--hq-white); }
.hq-brand--mobile .hq-brand__word--primary { color: var(--hq-white); }
.hq-brand--mobile .hq-brand__word--accent { color: var(--hq-orange-light); }

.hq-brand--footer {
  max-width: none;
  gap: 0.75rem;
}

.hq-brand--footer .hq-brand__name {
  font-size: 1.25rem;
  color: var(--hq-white);
  min-height: 46px;
}

.hq-brand--footer .hq-brand__word--primary { color: var(--hq-white); }
.hq-brand--footer .hq-brand__word--accent { color: var(--hq-white); }

.hq-brand--icon {
  max-width: none;
}

.hq-brand--icon .hq-brand__icon {
  width: 44px;
  height: 38px;
}

@media (max-width: 1023px) {
  .hq-header__inner {
    grid-template-columns: minmax(0, 1fr) auto;
  }

  .hq-brand--header {
    grid-column: 1;
    max-width: calc(100% - 0.5rem);
    min-width: 0;
  }

  .hq-brand--header .hq-brand__text,
  .hq-brand--header .hq-brand__name {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
  }

  .hq-nav {
    display: none;
  }

  .hq-header__actions {
    grid-column: 2;
    gap: 0.55rem;
  }

  .hq-menu-btn {
    display: flex;
  }

  .hq-header__cta {
    min-height: 36px;
    padding: 0 0.85rem;
    font-size: 0.75rem;
  }
}

@media (min-width: 700px) and (max-width: 1023px) {
  :root {
    --hq-header-h: 64px;
    --hq-header-h-scrolled: 56px;
  }

  .hq-header__inner {
    column-gap: 1.25rem;
  }

  .hq-header__actions {
    gap: 0.65rem;
  }

  .hq-header__cta {
    min-height: 38px;
    padding: 0 1rem;
    font-size: 0.8125rem;
  }

  .hq-menu-btn {
    width: 40px;
    height: 40px;
  }

  .hq-menu-btn span {
    width: 16px;
  }

  .hq-brand--header {
    max-width: none;
  }
}

@media (min-width: 1024px) {
  .hq-mobile { display: none !important; }
  .hq-menu-btn { display: none !important; }
}

@media (max-width: 699px) {
  :root {
    --hq-header-h: 56px;
    --hq-header-h-scrolled: 52px;
  }

  .container-site {
    padding-left: 1rem;
    padding-right: 1rem;
  }

  .hq-header-wrapper .container-site {
    padding-left: max(1rem, env(safe-area-inset-left, 0px));
    padding-right: max(1rem, env(safe-area-inset-right, 0px));
  }

  .hq-brand--header {
    gap: 0.4rem;
  }

  .hq-brand--header .hq-brand__icon {
    width: 38px;
    height: 34px;
  }

  .hq-brand--header .hq-brand__name {
    font-size: 1rem;
    min-height: 34px;
  }
}

@media (max-width: 359px) {
  .hq-topbar__end .hq-topbar__link:not(.hq-topbar__link--highlight) {
    display: none;
  }
}

@media (max-width: 639px) {
  .hq-header__cta-text,
  .hq-header__cta-arrow {
    display: none;
  }

  .hq-header__cta {
    width: 36px;
    min-width: 36px;
    min-height: 36px;
    padding: 0;
    box-shadow: none;
  }
}

/* Mobile menu */
.hq-mobile {
  position: fixed;
  inset: 0;
  z-index: 2400;
  visibility: hidden;
  opacity: 0;
  pointer-events: none;
  transition: opacity .28s ease, visibility .28s ease;
}

.hq-mobile.is-open { visibility: visible; opacity: 1; pointer-events: auto; }

.hq-mobile__backdrop {
  position: absolute;
  inset: 0;
  border: 0;
  width: 100%;
  background: rgba(1,15,36,.58);
}

.hq-mobile__panel {
  position: absolute;
  top: 0; right: 0; bottom: 0;
  width: min(92vw, 400px);
  max-width: 100%;
  display: flex;
  flex-direction: column;
  padding: max(1rem, env(safe-area-inset-top, 0px)) max(1.15rem, env(safe-area-inset-right, 0px)) max(1.15rem, env(safe-area-inset-bottom, 0px)) 1.15rem;
  background: var(--hq-navy);
  box-shadow: -18px 0 40px rgba(1, 15, 36, 0.35);
  transform: translateX(100%);
  transition: transform .32s var(--hq-ease);
  overflow: hidden;
}

.hq-mobile.is-open .hq-mobile__panel { transform: translateX(0); }

.hq-mobile__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  flex-shrink: 0;
  padding-bottom: 1.1rem;
  border-bottom: 1px solid rgba(255,255,255,.1);
}

.hq-mobile__head .hq-brand--mobile {
  min-width: 0;
  flex: 1 1 auto;
}

.hq-mobile__close {
  width: 44px; height: 44px;
  display: flex; align-items: center; justify-content: center;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 12px;
  color: var(--hq-white);
  background: rgba(255,255,255,.08);
  cursor: pointer;
  flex-shrink: 0;
  transition: background .2s ease, border-color .2s ease;
}

.hq-mobile__close:hover,
.hq-mobile__close:focus-visible {
  background: rgba(255,255,255,.14);
  border-color: rgba(232,139,9,.45);
}

.hq-mobile__kicker {
  margin: 1.15rem 0 0.4rem;
  padding: 0 0.25rem;
  color: var(--hq-orange-light);
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.hq-mobile__links {
  display: grid;
  gap: .2rem;
  padding: 0.35rem 0 1rem;
  flex: 1 1 auto;
  min-height: 0;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  overscroll-behavior: contain;
}

.hq-mobile__links a,
.hq-mobile__link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 52px;
  padding: .85rem 1rem;
  border-radius: 12px;
  color: var(--hq-white);
  font-size: 1.0625rem;
  font-weight: 600;
  text-decoration: none;
  transition: background .2s ease, color .2s ease;
}

.hq-mobile__links a:hover,
.hq-mobile__links a:focus-visible,
.hq-mobile__link:hover,
.hq-mobile__link:focus-visible { background: rgba(255,255,255,.08); }

.hq-mobile__links a.is-active,
.hq-mobile__links a.active,
.hq-mobile__link.is-active,
.hq-mobile__link.active {
  background: rgba(232, 139, 9, 0.14);
  color: var(--hq-orange-light);
  box-shadow: inset 3px 0 0 var(--hq-orange);
}

.hq-mobile__footer {
  margin-top: auto;
  display: grid;
  gap: .75rem;
  flex-shrink: 0;
  border-top: 1px solid rgba(255,255,255,.1);
  padding-top: 1rem;
}

html.hq-menu-open,
body.hq-menu-open {
  overflow: hidden;
}

body.hq-menu-open {
  position: fixed;
  left: 0;
  right: 0;
  width: 100%;
}

@media (prefers-reduced-motion: reduce) {
  .hq-mobile,
  .hq-mobile__panel,
  .hq-menu-btn span,
  .hq-header-wrapper,
  .hq-header__inner,
  .hq-nav__link span::after,
  .hq-header__cta,
  .hq-header__cta-arrow,
  .hq-brand--header .hq-brand__icon,
  .hq-brand--header .hq-brand__name {
    transition: none !important;
  }

  .hq-header__cta:hover,
  .hq-header__cta:hover .hq-header__cta-arrow {
    transform: none;
  }
}

/* ─── Footer ─── */
.hq-footer {
  background: var(--hq-navy-deep);
  color: rgba(255,255,255,.72);
  padding-top: clamp(3rem, 6vw, 4.5rem);
}

.hq-footer__cta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 1.5rem;
  padding: clamp(1.75rem, 4vw, 2.5rem);
  margin-bottom: clamp(2.5rem, 5vw, 3.5rem);
  border-radius: var(--hq-radius-lg);
  background: rgba(255,255,255,.05);
  border: 1px solid rgba(255,255,255,.08);
}

.hq-footer__cta h2 {
  margin: .5rem 0 0;
  color: var(--hq-white);
  font-family: var(--hq-font-display);
  font-size: clamp(1.5rem, 3vw, 2rem);
  font-weight: 700;
}

.hq-footer__grid {
  display: grid;
  grid-template-columns: 1.6fr 1fr 1.3fr;
  gap: 2rem;
  padding-bottom: 2.5rem;
}

.hq-footer__brand p { margin: 1rem 0; font-size: .9375rem; line-height: 1.7; max-width: 36ch; }

.hq-footer h3 {
  margin: 0 0 1rem;
  color: var(--hq-white);
  font-family: var(--hq-font-display);
  font-size: 1.0625rem;
}

.hq-footer__links { display: grid; gap: .5rem; }

.hq-footer__links a {
  color: rgba(255,255,255,.65);
  font-size: .875rem;
  text-decoration: none;
  transition: color .2s ease;
}

.hq-footer__links a:hover { color: var(--hq-orange-light); }

.hq-footer__contact { display: grid; gap: .625rem; }

.hq-footer__contact a,
.hq-footer__contact span {
  display: flex;
  align-items: flex-start;
  gap: .625rem;
  color: rgba(255,255,255,.65);
  font-size: .875rem;
  text-decoration: none;
}

.hq-footer__contact i { color: var(--hq-orange); margin-top: .15rem; }

.hq-socials { display: flex; gap: .5rem; margin-top: 1rem; }

.hq-socials a {
  width: 40px; height: 40px;
  display: flex; align-items: center; justify-content: center;
  border-radius: 10px;
  color: var(--hq-white);
  background: rgba(255,255,255,.08);
  text-decoration: none;
  transition: background .2s ease;
}

.hq-socials a:hover { background: var(--hq-orange); }

.hq-footer__bottom {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: .75rem;
  padding: 1.25rem 0;
  border-top: 1px solid rgba(255,255,255,.08);
  font-size: .8125rem;
}

/* ─── Sections & Cards ─── */
.hq-section { padding: var(--hq-section-y) 0; }
.hq-section--soft { background: var(--hq-bg-soft); }
.hq-section--navy { background: var(--hq-navy); color: var(--hq-white); }

.hq-card {
  border-radius: var(--hq-radius-lg);
  background: var(--hq-white);
  border: 1px solid var(--hq-border);
  box-shadow: var(--hq-shadow-sm);
  overflow: hidden;
  transition: transform .28s var(--hq-ease), box-shadow .28s var(--hq-ease);
}

.hq-card:hover {
  transform: translateY(-4px);
  box-shadow: var(--hq-shadow);
}

/* ─── Page hero (inner pages) ─── */
.hq-page-hero {
  position: relative;
  padding: calc(var(--hq-header-h) + 3rem) 0 3.5rem;
  text-align: center;
  color: var(--hq-white);
  background: var(--hq-navy-deep);
  overflow: hidden;
}

.hq-page-hero__bg { position: absolute; inset: 0; }
.hq-page-hero__bg img { width: 100%; height: 100%; object-fit: cover; object-position: center 40%; }

.hq-page-hero__overlay {
  position: absolute; inset: 0;
  background: linear-gradient(135deg, rgba(1,15,36,.92) 0%, rgba(2,29,69,.78) 50%, rgba(2,29,69,.65) 100%);
}

.hq-page-hero__content { position: relative; z-index: 1; }

.hq-page-hero .hq-title { max-width: 22ch; margin-left: auto; margin-right: auto; }

.hq-page-hero__desc { margin: 1rem auto 0; max-width: 56ch; }

.hq-breadcrumb {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: .35rem;
  margin-top: 1.25rem;
  font-size: .8125rem;
}

.hq-breadcrumb a { color: rgba(255,255,255,.65); text-decoration: none; }
.hq-breadcrumb a:hover { color: var(--hq-orange-light); }
.hq-breadcrumb .current { color: var(--hq-white); font-weight: 600; }
.hq-breadcrumb .sep { color: rgba(255,255,255,.35); font-size: .65rem; }

/* ═══ HOMEPAGE HERO — Cinematic architectural intro ═══ */
.hq-hero--cinematic {
  --hero-space-1: 0.5rem;   /* 8px */
  --hero-space-2: 1rem;     /* 16px */
  --hero-space-3: 1.5rem;   /* 24px */
  --hero-space-4: 2rem;     /* 32px */
  --hero-space-5: 2.5rem;   /* 40px */
  --hero-btn-h: 3.5rem;     /* 56px */
  --hero-badge-h: 2.5rem;   /* 40px */
  --hero-ctrl-h: 3rem;      /* 48px */
  --hero-icon: 1.5rem;      /* 24px */
  position: relative;
  isolation: isolate;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: 100%;
  min-height: 720px;
  height: 720px;
  overflow: hidden;
  overflow-x: clip;
  color: var(--hq-white);
  background: var(--hq-navy-deep);
}

@media (min-width: 992px) {
  .hq-hero--cinematic {
    width: 100%;
    min-height: 720px;
    height: 720px;
    max-height: 720px;
  }
}

@media (max-width: 991px) {
  .hq-hero--cinematic {
    height: auto;
    min-height: 640px;
  }
}

@media (max-width: 768px) {
  .hq-hero--cinematic {
    height: auto;
    min-height: clamp(380px, 70svh, 600px);
  }
}

@media (max-width: 640px) {
  .hq-hero--cinematic {
    height: auto;
    min-height: clamp(350px, 68svh, 560px);
  }
}

.hq-hero--cinematic .hq-hero__stage {
  position: absolute;
  inset: 0;
  z-index: 0;
  overflow: hidden;
  pointer-events: none;
}

.hq-hero--cinematic .hq-hero__panes--media {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}

.hq-hero--cinematic .hq-hero__shot,
.hq-hero--cinematic .hq-hero__panes--media .hq-hero__pane {
  position: absolute;
  inset: 0;
  margin: 0;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: none;
  transition: opacity .85s var(--hq-ease), visibility .85s;
}

.hq-hero--cinematic .hq-hero__panes--media .hq-hero__pane.is-active {
  opacity: 1;
  visibility: visible;
  transform: none;
  z-index: 1;
}

.hq-hero--cinematic .hq-hero__shot picture,
.hq-hero--cinematic .hq-hero__shot video,
.hq-hero--cinematic .hq-hero__video,
.hq-hero--cinematic .hq-hero__media-fill,
.hq-hero--cinematic .hq-hero__media-fit {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

/* Cinematic blur fill background: fills frame seamlessly with zero black bars */
.hq-hero--cinematic .hq-hero__media-fill {
  position: absolute;
  inset: -12%;
  width: 124%;
  height: 124%;
  display: block !important;
  z-index: 0;
  pointer-events: none;
  overflow: hidden;
}

.hq-hero--cinematic .hq-hero__media-fill img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: var(--hero-focus, 50% 46%);
  filter: blur(32px) saturate(1.15) brightness(0.68);
  transform: scale(1.08);
  transform-origin: center center;
}

/* Foreground fitted media: shows full architectural photo/video without cropping */
.hq-hero--cinematic .hq-hero__media-fit,
.hq-hero--cinematic .hq-hero__media-fit img,
.hq-hero--cinematic .hq-hero__shot picture,
.hq-hero--cinematic .hq-hero__shot picture img,
.hq-hero--cinematic .hq-hero__shot img,
.hq-hero--cinematic video.hq-hero__video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center center;
  display: block;
  z-index: 1;
  background: transparent;
}

.hq-hero--cinematic .hq-hero__shot[data-hero-aspect="portrait"] .hq-hero__media-fit,
.hq-hero--cinematic .hq-hero__shot[data-hero-aspect="portrait"] .hq-hero__media-fit img {
  object-fit: cover;
  object-position: var(--hero-focus, 50% 50%);
}

.hq-hero--cinematic video.hq-hero__video {
  object-fit: contain;
  object-position: center center;
}

.hq-hero--cinematic .hq-hero__shot-dim {
  position: absolute;
  inset: 0;
  z-index: 1;
  background: #011024;
  pointer-events: none;
}

.hq-hero--cinematic .hq-hero__caption { z-index: 2; }

.hq-hero[data-transition="kenburns"] .hq-hero__shot.is-active .hq-hero__media-fill img {
  animation: hq-hero-kenburns-fill 18s ease-out forwards;
}

.hq-hero[data-transition="kenburns"] .hq-hero__shot.is-active .hq-hero__media-fit img {
  animation: none;
}

.hq-hero[data-transition="kenburns"] .hq-hero__shot--video.is-active video,
.hq-hero[data-transition="kenburns"] .hq-hero__shot.is-active video.hq-hero__video {
  animation: none !important;
}

.hq-hero[data-transition="slide"] .hq-hero__panes--media .hq-hero__pane {
  transform: translateX(4%);
}

.hq-hero[data-transition="slide"] .hq-hero__panes--media .hq-hero__pane.is-active {
  transform: translateX(0);
}

.hq-hero__pane--align-left { text-align: left; }
.hq-hero__pane--align-right { text-align: right; }
.hq-hero--cinematic .hq-hero__pane--align-left { align-items: flex-start; }
.hq-hero--cinematic .hq-hero__pane--align-right { align-items: flex-end; }
.hq-hero__pane--align-left .hq-hero__eyebrow,
.hq-hero__pane--align-left .hq-hero__actions { justify-content: flex-start; }
.hq-hero__pane--align-right .hq-hero__eyebrow,
.hq-hero__pane--align-right .hq-hero__actions { justify-content: flex-end; }
.hq-hero__pane--align-left .hq-hero__desc { margin-inline: 0; }
.hq-hero__pane--align-right .hq-hero__desc { margin-inline: auto 0; }
.hq-hero__pane--align-left .hq-hero__chrome,
.hq-hero__pane--align-right .hq-hero__chrome { align-items: inherit; }
.hq-hero__pane--align-right .hq-hero__chrome { margin-left: auto; }

@keyframes hq-hero-kenburns {
  from { transform: scale(1.01); }
  to { transform: scale(1.045); }
}

@keyframes hq-hero-kenburns-fill {
  from { transform: scale(1.08); }
  to { transform: scale(1.18); }
}

.hq-hero--cinematic .hq-hero__wash {
  position: absolute;
  inset: 0;
  z-index: 2;
  background:
    linear-gradient(180deg, rgba(1, 15, 36, 0.52) 0%, rgba(1, 15, 36, 0.16) 28%, rgba(1, 15, 36, 0.12) 52%, rgba(1, 15, 36, 0.62) 100%),
    radial-gradient(90% 70% at 50% 42%, rgba(1, 15, 36, 0.04) 0%, rgba(1, 15, 36, 0.42) 100%);
}

.hq-hero--cinematic .hq-hero__scrim {
  position: absolute;
  inset: auto 0 0;
  height: 55%;
  z-index: 2;
  background: linear-gradient(180deg, transparent 0%, rgba(1, 10, 24, 0.88) 100%);
}

.hq-hero--cinematic .hq-hero__caption {
  position: absolute;
  z-index: 3;
  right: max(1.25rem, env(safe-area-inset-right, 0px));
  bottom: 6.75rem;
  display: inline-flex;
  align-items: center;
  gap: .65rem;
  max-width: min(28rem, calc(100% - 2rem));
  padding: .7rem 1rem;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.12);
  border: 1px solid rgba(255, 255, 255, 0.18);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  color: var(--hq-white);
  font-size: .8125rem;
  font-weight: 600;
  pointer-events: none;
}

.hq-hero--cinematic .hq-hero__caption-tag {
  flex-shrink: 0;
  padding: .2rem .55rem;
  border-radius: 999px;
  background: var(--hq-orange);
  color: var(--hq-navy);
  font-size: .625rem;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.hq-hero--cinematic .hq-hero__caption-title {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.hq-hero--cinematic .hq-hero__wrap {
  position: relative;
  z-index: 3;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-width: 1440px;
  margin: 0 auto;
  min-width: 0;
  padding-left: max(1.5rem, env(safe-area-inset-left));
  padding-right: max(1.5rem, env(safe-area-inset-right));
  padding-top: calc(var(--hq-chrome-h, 72px) + 0.75rem);
  padding-bottom: 1.25rem;
  flex: 1 1 auto;
  overflow-x: clip;
  box-sizing: border-box;
}

.hq-hero--cinematic .hq-hero__copy {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--hero-space-3);
  width: 100%;
  max-width: min(48rem, 100%);
  min-width: 0;
  margin: 0 auto;
  text-align: center;
}

.hq-hero--cinematic .hq-hero__panes--copy {
  position: relative;
  width: 100%;
  min-width: 0;
  max-width: 100%;
  transition: min-height .45s ease;
}

.hq-hero--cinematic .hq-hero__panes--copy .hq-hero__pane {
  position: absolute;
  inset: 0 auto auto 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--hero-space-2);
  width: 100%;
  max-width: 100%;
  min-width: 0;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateY(18px);
  transition: opacity .55s ease, transform .55s ease, visibility .55s;
}

.hq-hero--cinematic .hq-hero__panes--copy .hq-hero__pane.is-active {
  position: relative;
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: none;
  z-index: 1;
}

.hq-hero--cinematic .hq-hero__eyebrow {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: var(--hero-space-1) var(--hero-space-2);
  margin: 0;
}

.hq-hero--cinematic .hq-hero__eyebrow-pill {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: .55rem;
  max-width: 100%;
  min-width: 0;
  padding: .42rem .9rem;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.1);
  border: 1px solid rgba(232, 139, 9, 0.38);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}

.hq-hero--cinematic .hq-hero__pulse-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--hq-orange);
  box-shadow: 0 0 0 0 rgba(232, 139, 9, 0.7);
  animation: hq-hero-pulse 2.2s ease-out infinite;
  flex-shrink: 0;
}

@keyframes hq-hero-pulse {
  0% { box-shadow: 0 0 0 0 rgba(232, 139, 9, 0.55); }
  70% { box-shadow: 0 0 0 8px rgba(232, 139, 9, 0); }
  100% { box-shadow: 0 0 0 0 rgba(232, 139, 9, 0); }
}

.hq-hero--cinematic .hq-hero__eyebrow-label {
  min-width: 0;
  color: rgba(255, 255, 255, 0.92);
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
  line-height: 1.3;
  overflow-wrap: break-word;
}

.hq-hero--cinematic .hq-hero__eyebrow-tag {
  display: inline-flex;
  align-items: center;
  gap: .35rem;
  min-width: 0;
  max-width: 100%;
  color: rgba(255, 255, 255, 0.72);
  font-size: .8rem;
  font-weight: 600;
}

.hq-hero--cinematic .hq-hero__eyebrow-tag i { color: var(--hq-orange-light); flex-shrink: 0; }
.hq-hero--cinematic .hq-hero__eyebrow-tag {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.hq-hero--cinematic .hq-hero__title {
  margin: 0;
  font-family: var(--hq-font-display);
  font-size: clamp(2.05rem, 2.1vw + 2.4vh, 3.55rem);
  font-weight: 700;
  letter-spacing: -0.03em;
  line-height: 1.08;
  text-wrap: balance;
  overflow-wrap: break-word;
  word-break: normal;
  hyphens: manual;
}

.hq-hero--cinematic .hq-hero__title-main {
  display: block;
  color: var(--hq-white);
}

.hq-hero--cinematic .hq-hero__title-accent {
  display: block;
  margin-top: 0;
  color: var(--hq-orange-light);
}

.hq-hero--cinematic .hq-hero__desc {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  line-clamp: 3;
  overflow: hidden;
  margin: 0 auto;
  max-width: min(38rem, 100%);
  color: rgba(255, 255, 255, 0.82);
  font-size: clamp(0.95rem, 1.05vw, 1.0625rem);
  line-height: 1.6;
  text-wrap: pretty;
  overflow-wrap: break-word;
}

.hq-hero--cinematic .hq-hero__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: center;
  gap: var(--hero-space-2);
  width: 100%;
  margin: var(--hero-space-2) 0 0;
}

.hq-hero--cinematic .hq-hero__actions .hq-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--hero-space-1);
  height: var(--hero-btn-h);
  min-height: var(--hero-btn-h);
  padding: 0 var(--hero-space-3);
  box-sizing: border-box;
  font-size: 0.9375rem;
  line-height: 1;
  transition: transform .2s ease, box-shadow .2s ease, background .2s ease, border-color .2s ease;
}

.hq-hero--cinematic .hq-hero__btn-primary {
  position: relative;
  overflow: hidden;
  color: var(--hq-navy) !important;
  font-weight: 700;
  box-shadow: 0 10px 28px rgba(232, 139, 9, 0.44), 0 2px 8px rgba(0,0,0,.2);
}

.hq-hero--cinematic .hq-hero__btn-primary .hq-btn__arrow,
.hq-hero--cinematic .hq-hero__btn-secondary .hq-btn__arrow {
  transition: transform .2s ease;
}

.hq-hero--cinematic .hq-hero__btn-primary:hover .hq-btn__arrow { transform: translateX(4px); }

.hq-hero--cinematic .hq-hero__btn-primary:focus-visible,
.hq-hero--cinematic .hq-hero__btn-secondary:focus-visible,
.hq-hero--cinematic .hq-hero__nav-btn:focus-visible,
.hq-hero--cinematic .hq-hero__dot:focus-visible {
  outline: 2px solid var(--hq-orange-light);
  outline-offset: 3px;
}

.hq-hero--cinematic .hq-hero__btn-secondary {
  color: var(--hq-white) !important;
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.28);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}

.hq-hero--cinematic .hq-hero__btn-secondary:hover {
  background: rgba(255, 255, 255, 0.16);
  border-color: rgba(255, 255, 255, 0.5);
  color: var(--hq-white) !important;
}

.hq-hero--cinematic .hq-hero__btn-secondary:hover .hq-btn__arrow { transform: translate(2px, -2px); }

.hq-hero--cinematic .hq-hero__chrome {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--hero-space-4);
  width: 100%;
  margin: 0;
}

.hq-hero--cinematic .hq-hero__trust {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: center;
  gap: 0.75rem;
  width: auto;
  max-width: 100%;
}

.hq-hero--cinematic .hq-hero__trust-item {
  display: inline-flex;
  align-items: center;
  gap: var(--hero-space-1);
  height: var(--hero-badge-h);
  min-height: var(--hero-badge-h);
  max-width: 13.5rem;
  margin: 0;
  padding: var(--hero-space-1) var(--hero-space-2) var(--hero-space-1) var(--hero-space-1);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.14);
  color: rgba(255, 255, 255, 0.94);
  font-size: 0.8125rem;
  font-weight: 600;
  letter-spacing: -0.01em;
  line-height: 1;
  box-sizing: border-box;
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
}

.hq-hero--cinematic .hq-hero__trust-text {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.hq-hero--cinematic .hq-hero__trust-icon {
  display: grid;
  place-items: center;
  width: var(--hero-icon);
  height: var(--hero-icon);
  border-radius: 50%;
  background: rgba(232, 139, 9, 0.16);
  color: var(--hq-orange-light);
  flex-shrink: 0;
}

.hq-hero--cinematic .hq-hero__trust-icon i {
  font-size: 0.8125rem;
  color: inherit;
}

.hq-hero--cinematic .hq-hero__trust-item:hover {
  background: rgba(255, 255, 255, 0.12);
  border-color: rgba(232, 139, 9, 0.35);
}

.hq-hero--cinematic .hq-hero__controls {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: nowrap;
  gap: var(--hero-space-2);
  width: fit-content;
  max-width: 100%;
  height: var(--hero-ctrl-h);
  min-height: var(--hero-ctrl-h);
  margin: 0;
  padding: 0.25rem 0.25rem 0.25rem var(--hero-space-2);
  border-radius: 999px;
  background: rgba(1, 15, 36, 0.5);
  border: 1px solid rgba(255, 255, 255, 0.14);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  box-sizing: border-box;
}

.hq-hero--cinematic .hq-hero__counter {
  display: inline-flex;
  align-items: baseline;
  gap: .15rem;
  min-width: 0;
  padding: 0;
  font-family: var(--hq-font-display);
  font-weight: 700;
  letter-spacing: 0.02em;
}

.hq-hero--cinematic .hq-hero__counter-current {
  color: var(--hq-orange-light);
  font-size: 0.95rem;
}

.hq-hero--cinematic .hq-hero__counter-sep,
.hq-hero--cinematic .hq-hero__counter-total {
  color: rgba(255, 255, 255, 0.5);
  font-size: 0.75rem;
}

.hq-hero--cinematic .hq-hero__dots {
  display: flex;
  align-items: center;
  gap: var(--hero-space-1);
}

.hq-hero--cinematic .hq-hero__dot {
  position: relative;
  width: 1.25rem;
  height: 0.25rem;
  padding: 0;
  border: 0;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.22);
  cursor: pointer;
  overflow: hidden;
}

.hq-hero--cinematic .hq-hero__dot.is-active {
  width: 2rem;
  background: rgba(232, 139, 9, 0.28);
}

.hq-hero--cinematic .hq-hero__dot-fill {
  position: absolute;
  inset: 0 auto 0 0;
  width: 0;
  border-radius: inherit;
  background: var(--hq-orange);
}

.hq-hero--cinematic .hq-hero__dot.is-active .hq-hero__dot-fill {
  animation: hq-hero-dot-progress var(--hero-interval, 6s) linear forwards;
}

@keyframes hq-hero-dot-progress {
  from { width: 0; }
  to { width: 100%; }
}

@media (max-width: 700px) {
  .hq-hero--cinematic .hq-hero__dots {
    flex-wrap: nowrap;
    max-width: min(100%, 14rem);
  }

  .hq-hero--cinematic .hq-hero__dot {
    width: 0.7rem;
    flex: 0 0 auto;
  }

  .hq-hero--cinematic .hq-hero__dot.is-active {
    width: 1.25rem;
  }
}

.hq-hero--cinematic .hq-hero__nav { display: flex; gap: var(--hero-space-1); }

.hq-hero--cinematic .hq-hero__nav-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  padding: 0;
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.08);
  color: var(--hq-white);
  cursor: pointer;
  transition: background .2s ease, border-color .2s ease, transform .2s ease;
}

.hq-hero--cinematic .hq-hero__nav-btn:hover {
  background: rgba(232, 139, 9, 0.2);
  border-color: var(--hq-orange);
}

.hq-hero--cinematic .hq-hero__nav-btn:active { transform: scale(0.96); }

.hq-hero--cinematic .hq-hero__band {
  position: relative;
  z-index: 3;
  margin: 0;
  width: 100%;
  border-top: 1px solid rgba(255, 255, 255, 0.12);
  background: rgba(1, 12, 28, 0.68);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  flex-shrink: 0;
}

.hq-hero--cinematic .hq-hero__band .container-site {
  max-width: 1440px;
}

.hq-hero--cinematic .hq-hero__band-inner {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: .65rem 1.5rem;
  padding: 0.75rem 0;
}

.hq-hero--cinematic .hq-hero__band-item {
  display: flex;
  align-items: center;
  gap: .85rem;
  min-width: 0;
}

.hq-hero--cinematic .hq-hero__band-icon {
  width: 2.35rem;
  height: 2.35rem;
  display: grid;
  place-items: center;
  flex-shrink: 0;
  border-radius: 10px;
  background: rgba(232, 139, 9, 0.14);
  color: var(--hq-orange-light);
  font-size: 1.05rem;
}

.hq-hero--cinematic .hq-hero__band-content strong {
  display: block;
  font-family: var(--hq-font-display);
  font-size: clamp(1.35rem, 2vw, 1.85rem);
  font-weight: 700;
  line-height: 1.05;
  color: var(--hq-white);
}

.hq-hero--cinematic .hq-hero__band-content span {
  display: block;
  margin-top: .2rem;
  color: rgba(255, 255, 255, 0.62);
  font-size: .7rem;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
  overflow-wrap: anywhere;
}

@media (max-width: 1180px) {
  .hq-hero--cinematic .hq-hero__media-fill img {
    object-position: var(--hero-focus-mobile, 50% 40%);
  }
  .hq-hero--cinematic .hq-hero__wash {
    background:
      linear-gradient(180deg, rgba(1, 15, 36, 0.48) 0%, rgba(1, 15, 36, 0.22) 32%, rgba(1, 15, 36, 0.2) 52%, rgba(1, 15, 36, 0.78) 100%);
  }
  .hq-hero--cinematic .hq-hero__caption { display: none; }
}

@media (max-width: 1024px) {
  .hq-hero--cinematic {
    --hero-space-4: 1.5rem;
    --hero-space-5: 2rem;
    --hero-btn-h: 3.25rem;
  }
}

@media (max-width: 900px) {
  .hq-hero--cinematic .hq-hero__wash {
    background:
      linear-gradient(180deg, rgba(1, 15, 36, 0.28) 0%, rgba(1, 15, 36, 0.46) 42%, rgba(1, 15, 36, 0.9) 100%);
  }
  .hq-hero--cinematic .hq-hero__wrap {
    padding-top: calc(var(--hq-chrome-h, 72px) + 1rem);
    padding-bottom: 1rem;
    align-items: center;
  }
  .hq-hero--cinematic .hq-hero__copy { max-width: 100%; }
  .hq-hero--cinematic .hq-hero__title { font-size: clamp(1.95rem, 6.5vw, 2.7rem); }
  .hq-hero--cinematic .hq-hero__band-inner {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    padding: 0.85rem 0 1rem;
  }
}

@media (max-width: 767px) {
  .hq-hero--cinematic .hq-hero__media-fill img {
    object-position: var(--hero-focus-mobile, 50% 40%);
  }

  /* Portrait slides fill frame; landscape slides & videos fit with blur-fill backdrop */
  .hq-hero--cinematic .hq-hero__shot[data-hero-aspect="portrait"] .hq-hero__media-fit,
  .hq-hero--cinematic .hq-hero__shot[data-hero-aspect="portrait"] .hq-hero__media-fit img {
    object-fit: cover;
    object-position: var(--hero-focus-mobile, 50% 40%);
  }

  .hq-hero--cinematic .hq-hero__shot[data-hero-aspect="landscape"] .hq-hero__media-fit,
  .hq-hero--cinematic .hq-hero__shot[data-hero-aspect="landscape"] .hq-hero__media-fit img,
  .hq-hero--cinematic .hq-hero__shot--video .hq-hero__media-fit,
  .hq-hero--cinematic .hq-hero__shot--video video {
    object-fit: contain;
    object-position: center center;
  }
}

@media (prefers-reduced-motion: reduce) {
  .hq-hero[data-transition="kenburns"] .hq-hero__shot.is-active .hq-hero__media-fill img {
    animation: none;
  }
}

/* ── Mobile Phone UI/UX: Pure Cinematic Visual Showcase ── */
@media (max-width: 768px) {
  /* Hide all slide text content, headings, descriptions, eyebrows, CTA buttons, and stats cards on phones */
  .hq-hero--cinematic .hq-hero__panes--copy,
  .hq-hero--cinematic .hq-hero__eyebrow,
  .hq-hero--cinematic .hq-hero__title,
  .hq-hero--cinematic .hq-hero__desc,
  .hq-hero--cinematic .hq-hero__actions,
  .hq-hero--cinematic .hq-hero__trust,
  .hq-hero--cinematic .hq-hero__band {
    display: none !important;
  }

  /* Clear overlays for vibrant, crystal-clear architectural photography on mobile */
  .hq-hero--cinematic .hq-hero__wash {
    background: linear-gradient(
      180deg,
      rgba(1, 15, 36, 0.58) 0%,
      rgba(1, 15, 36, 0.1) 20%,
      rgba(1, 15, 36, 0.03) 50%,
      rgba(1, 15, 36, 0.45) 85%,
      rgba(1, 10, 24, 0.82) 100%
    ) !important;
  }

  .hq-hero--cinematic .hq-hero__scrim {
    height: 28% !important;
    background: linear-gradient(180deg, transparent 0%, rgba(1, 10, 24, 0.78) 100%) !important;
  }

  /* Container alignment: let swipe touches pass through, pin controls gracefully to the bottom */
  .hq-hero--cinematic .hq-hero__wrap {
    padding-top: calc(var(--hq-header-h, 64px) + 0.5rem);
    padding-bottom: max(1.25rem, env(safe-area-inset-bottom, 16px));
    padding-left: max(1rem, env(safe-area-inset-left, 16px));
    padding-right: max(1rem, env(safe-area-inset-right, 16px));
    justify-content: center;
    align-items: flex-end;
    pointer-events: none; /* Allows natural full-screen swipe gesture on photo/video */
  }

  .hq-hero--cinematic .hq-hero__copy {
    width: 100%;
    max-width: 100%;
    margin: 0 auto;
    gap: 0;
    align-items: center;
    justify-content: flex-end;
  }

  /* Carousel indicator pill floating cleanly at the bottom above stats band */
  .hq-hero--cinematic .hq-hero__chrome {
    width: auto;
    margin: 0 auto;
    pointer-events: auto; /* Clickable controls */
  }

  .hq-hero--cinematic .hq-hero__controls {
    height: 2.5rem;
    min-height: 2.5rem;
    padding: 0.2rem 0.35rem 0.2rem 0.75rem;
    gap: 0.65rem;
    border-radius: 999px;
    background: rgba(1, 15, 36, 0.68);
    border: 1px solid rgba(255, 255, 255, 0.18);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.38);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
  }

  .hq-hero--cinematic .hq-hero__counter {
    font-size: 0.82rem;
  }

  .hq-hero--cinematic .hq-hero__counter-current {
    font-size: 0.85rem;
  }

  .hq-hero--cinematic .hq-hero__dot {
    width: 1.05rem;
    height: 0.22rem;
  }

  .hq-hero--cinematic .hq-hero__dot.is-active {
    width: 1.65rem;
  }

  .hq-hero--cinematic .hq-hero__nav-btn {
    width: 2.15rem;
    height: 2.15rem;
    font-size: 0.85rem;
  }

  /* Mobile stats band styling — perfectly fitted glass cards */
  .hq-hero--cinematic .hq-hero__band {
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    background: rgba(1, 10, 24, 0.85);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    padding: 0.35rem 0;
  }

  .hq-hero--cinematic .hq-hero__band .container-site {
    padding-left: max(0.65rem, env(safe-area-inset-left, 10px));
    padding-right: max(0.65rem, env(safe-area-inset-right, 10px));
  }

  .hq-hero--cinematic .hq-hero__band-inner {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.45rem;
    padding: 0.35rem 0;
    align-items: stretch;
  }

  /* When there are 4 items, adapt to 2x2 grid */
  .hq-hero--cinematic .hq-hero__band-inner:has(.hq-hero__band-item:nth-child(4)) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .hq-hero--cinematic .hq-hero__band-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 0.38rem 0.35rem;
    border-radius: 11px;
    background: linear-gradient(165deg, rgba(3, 24, 58, 0.82) 0%, rgba(1, 12, 28, 0.92) 100%);
    border: 1px solid rgba(232, 139, 9, 0.22);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.32), inset 0 1px 0 rgba(255, 255, 255, 0.12), 0 0 10px rgba(232, 139, 9, 0.06);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
    gap: 0.08rem;
    min-width: 0;
    position: relative;
    overflow: hidden;
    transition: transform 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
  }

  .hq-hero--cinematic .hq-hero__band-item::before {
    content: '';
    position: absolute;
    top: 0;
    left: 20%;
    right: 20%;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(232, 139, 9, 0.65), transparent);
    pointer-events: none;
  }

  .hq-hero--cinematic .hq-hero__band-item:active {
    transform: scale(0.96);
    border-color: rgba(232, 139, 9, 0.6);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.45);
  }

  .hq-hero--cinematic .hq-hero__band-icon {
    width: 1.45rem;
    height: 1.45rem;
    font-size: 0.72rem;
    border-radius: 6px;
    background: linear-gradient(135deg, rgba(232, 139, 9, 0.24) 0%, rgba(232, 139, 9, 0.1) 100%);
    border: 1px solid rgba(232, 139, 9, 0.25);
    color: var(--hq-orange-light);
    display: grid;
    place-items: center;
    margin-bottom: 0.04rem;
    flex-shrink: 0;
    box-shadow: 0 1px 5px rgba(232, 139, 9, 0.14);
  }

  .hq-hero--cinematic .hq-hero__band-content {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    min-width: 0;
    width: 100%;
  }

  .hq-hero--cinematic .hq-hero__band-content strong {
    display: block;
    font-size: clamp(1.05rem, 3.6vw, 1.22rem);
    font-weight: 800;
    line-height: 1.05;
    color: var(--hq-white);
    letter-spacing: -0.02em;
  }

  .hq-hero--cinematic .hq-hero__band-content span {
    display: block;
    font-size: clamp(0.56rem, 1.9vw, 0.64rem);
    font-weight: 600;
    letter-spacing: 0.01em;
    color: rgba(255, 255, 255, 0.75);
    line-height: 1.15;
    margin-top: 0.08rem;
    text-transform: capitalize;
    overflow-wrap: break-word;
    word-break: normal;
    text-align: center;
  }
}

@media (max-width: 480px) {
  .hq-hero--cinematic .hq-hero__band-inner {
    gap: 0.3rem;
    padding: 0.15rem 0;
  }

  .hq-hero--cinematic .hq-hero__band-item {
    padding: 0.32rem 0.22rem;
    border-radius: 9px;
    gap: 0.06rem;
  }

  .hq-hero--cinematic .hq-hero__band-icon {
    width: 1.35rem;
    height: 1.35rem;
    font-size: 0.68rem;
    border-radius: 5px;
    margin-bottom: 0.02rem;
  }

  .hq-hero--cinematic .hq-hero__band-content strong {
    font-size: 1.05rem;
    line-height: 1;
  }

  .hq-hero--cinematic .hq-hero__band-content span {
    font-size: 0.58rem;
    line-height: 1.12;
    margin-top: 0.06rem;
  }
}

@media (max-width: 380px) {
  .hq-hero--cinematic .hq-hero__controls {
    height: 2.35rem;
    min-height: 2.35rem;
    padding: 0.15rem 0.25rem 0.15rem 0.65rem;
    gap: 0.5rem;
  }
  .hq-hero--cinematic .hq-hero__nav-btn {
    width: 1.95rem;
    height: 1.95rem;
    font-size: 0.8rem;
  }
  .hq-hero--cinematic .hq-hero__band-inner {
    gap: 0.22rem;
  }
  .hq-hero--cinematic .hq-hero__band-item {
    padding: 0.28rem 0.18rem;
    border-radius: 8px;
    gap: 0.04rem;
  }
  .hq-hero--cinematic .hq-hero__band-icon {
    width: 1.25rem;
    height: 1.25rem;
    font-size: 0.62rem;
    border-radius: 4px;
    margin-bottom: 0.02rem;
  }
  .hq-hero--cinematic .hq-hero__band-content strong {
    font-size: 0.96rem;
  }
  .hq-hero--cinematic .hq-hero__band-content span {
    font-size: 0.52rem;
    letter-spacing: 0;
    margin-top: 0.04rem;
  }
}

@media (min-width: 1440px) {
  .hq-hero--cinematic .hq-hero__copy { max-width: 50rem; }
}

@media (min-width: 1680px) {
  .hq-hero--cinematic .hq-hero__shot img { object-position: center 30%; }
}

@media (max-height: 820px) {
  .hq-hero--cinematic {
    --hero-space-5: 2rem;
    --hero-btn-h: 3.25rem;
  }
  .hq-hero--cinematic .hq-hero__title { font-size: clamp(1.85rem, 3.6vw, 2.85rem); }
  .hq-hero--cinematic .hq-hero__desc {
    -webkit-line-clamp: 2;
    line-clamp: 2;
  }
}

@media (max-height: 500px) and (orientation: landscape) {
  .hq-hero--cinematic { min-height: 0; }
  .hq-hero--cinematic .hq-hero__wrap { padding-top: calc(var(--hq-chrome-h) + .5rem); padding-bottom: .5rem; }
  .hq-hero--cinematic .hq-hero__title { font-size: clamp(1.5rem, 4.5vw, 2rem); }
  .hq-hero--cinematic .hq-hero__desc { display: none; }
  .hq-hero--cinematic .hq-hero__trust { display: none; }
  .hq-hero--cinematic .hq-hero__band { display: none; }
}

@media (prefers-reduced-motion: reduce) {
  .hq-hero--cinematic .hq-hero__shot,
  .hq-hero--cinematic .hq-hero__panes--media .hq-hero__pane,
  .hq-hero--cinematic .hq-hero__panes--copy .hq-hero__pane {
    transition: opacity .2s ease;
    transform: none;
  }
  .hq-hero--cinematic .hq-hero__pulse-dot,
  .hq-hero--cinematic .hq-hero__dot-fill { animation: none !important; }
  .hq-hero--cinematic .hq-hero__shot img { transform: none !important; will-change: auto; animation: none !important; }
}

/* Legacy hero (fallback) */

.hq-hero:not(.hq-hero--showcase):not(.hq-hero--premium):not(.hq-hero--cinematic) {
  position: relative;
  min-height: calc(100vh - var(--hq-header-h));
  display: flex;
  align-items: center;
  overflow: hidden;
  background: var(--hq-navy-deep);
  color: var(--hq-white);
}

.hq-hero__bg { position: absolute; inset: 0; }
.hq-hero__bg img { width: 100%; height: 100%; object-fit: cover; }
.hq-hero:not(.hq-hero--cinematic) .hq-hero__overlay { position: absolute; inset: 0; background: rgba(1,15,36,.85); }
.hq-hero__inner { position: relative; z-index: 2; width: 100%; padding: 3rem 0; }
.hq-hero:not(.hq-hero--showcase):not(.hq-hero--cinematic) .hq-hero__grid { display: grid; grid-template-columns: 1.1fr .9fr; gap: 2rem; align-items: center; }
.hq-hero:not(.hq-hero--showcase):not(.hq-hero--cinematic) .hq-hero__title { margin: 0 0 1.25rem; font-family: var(--hq-font-display); font-size: var(--hq-display); font-weight: 700; }
.hq-hero:not(.hq-hero--showcase):not(.hq-hero--cinematic) .hq-hero__lead { max-width: 48ch; margin: 0 0 2rem; color: rgba(255,255,255,.78); }
.hq-hero:not(.hq-hero--showcase):not(.hq-hero--premium):not(.hq-hero--cinematic) .hq-hero__actions { margin-bottom: 1.75rem; }
.hq-hero:not(.hq-hero--showcase):not(.hq-hero--cinematic) .hq-hero__trust { display: flex; flex-wrap: wrap; gap: 1rem 1.5rem; margin: 0; padding: 0; list-style: none; }
.hq-hero__trust li { display: flex; align-items: center; gap: .4rem; color: rgba(255,255,255,.6); font-size: .8125rem; }
.hq-hero__trust i { color: var(--hq-orange-light); }
.hq-hero__card { border-radius: var(--hq-radius-lg); overflow: hidden; box-shadow: var(--hq-shadow); }
.hq-hero__card img { width: 100%; aspect-ratio: 4/5; object-fit: cover; display: block; }

/* About block */
.hq-about__grid {
  display: grid;
  grid-template-columns: .95fr 1.05fr;
  gap: clamp(2rem, 5vw, 4rem);
  align-items: center;
}

.hq-about__frame { position: relative; border-radius: var(--hq-radius-lg); overflow: hidden; box-shadow: var(--hq-shadow); }
.hq-about__frame img { width: 100%; aspect-ratio: 4/5; object-fit: cover; display: block; }

.hq-about__badge {
  position: absolute; left: 1rem; right: 1rem; bottom: 1rem;
  display: flex; align-items: center; gap: .875rem;
  padding: 1rem; border-radius: var(--hq-radius);
  background: rgba(255,255,255,.96); box-shadow: var(--hq-shadow-sm);
}

.hq-about__badge i {
  width: 44px; height: 44px;
  display: flex; align-items: center; justify-content: center;
  border-radius: 12px; color: var(--hq-white); background: var(--hq-orange);
}

.hq-value-grid { display: grid; gap: 1rem; margin-top: 1.5rem; }

.hq-value {
  display: grid; grid-template-columns: 48px 1fr; gap: 1rem;
  padding: 1.25rem; border-radius: var(--hq-radius);
  background: var(--hq-bg-soft); border: 1px solid var(--hq-border);
}

.hq-value__icon {
  width: 48px; height: 48px;
  display: flex; align-items: center; justify-content: center;
  border-radius: 14px; color: var(--hq-white); background: var(--hq-navy);
}

.hq-value h3 { margin: 0 0 .35rem; font-family: var(--hq-font-display); font-size: 1.0625rem; color: var(--hq-navy); }
.hq-value p { margin: 0; color: var(--hq-muted); font-size: .9375rem; line-height: 1.65; }

/* Capabilities bento */
.hq-bento {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  gap: 1.25rem;
}

.hq-bento__card {
  position: relative;
  grid-column: span 5;
  min-height: 260px;
  border-radius: var(--hq-radius-lg);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  color: var(--hq-white);
  text-decoration: none;
  box-shadow: var(--hq-shadow-sm);
  transition: transform .35s var(--hq-ease), box-shadow .35s var(--hq-ease);
}

.hq-bento__card--feature {
  grid-column: span 7;
  grid-row: span 2;
  min-height: 540px;
}

.hq-bento__card--wide { grid-column: span 12; min-height: 220px; }

.hq-bento__card:hover {
  transform: translateY(-6px);
  box-shadow: 0 24px 56px rgba(2,29,69,.18);
}

.hq-bento__card img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 72%;
  transition: transform .6s var(--hq-ease);
}

.hq-bento-gallery {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1.25rem;
  margin-top: 1.25rem;
}

.hq-bento-gallery__item {
  display: block;
  min-width: 0;
  overflow: hidden;
  border-radius: var(--hq-radius);
  box-shadow: var(--hq-shadow-sm);
}

.hq-bento-gallery__item img {
  display: block;
  width: 100%;
  height: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  object-position: center 70%;
  transition: transform .45s var(--hq-ease);
}

.hq-bento-gallery__item:hover img {
  transform: scale(1.05);
}

.hq-bento__card:hover img { transform: scale(1.06); }

.hq-bento__shade {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(1,15,36,.15) 0%, rgba(1,15,36,.82) 100%);
  transition: opacity .35s ease;
}

.hq-bento__card:hover .hq-bento__shade { opacity: .92; }

.hq-bento__body {
  position: relative;
  z-index: 1;
  padding: 1.5rem;
}

.hq-bento__icon {
  width: 44px;
  height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-bottom: .875rem;
  border-radius: 12px;
  background: rgba(232,139,9,.92);
  color: var(--hq-white);
  font-size: 1.125rem;
  box-shadow: 0 8px 20px rgba(232,139,9,.35);
}

.hq-bento__body h3 {
  margin: 0 0 .5rem;
  font-family: var(--hq-font-display);
  font-size: clamp(1.25rem, 2vw, 1.625rem);
  line-height: 1.15;
}

.hq-bento__body p {
  margin: 0 0 .875rem;
  max-width: 36ch;
  color: rgba(255,255,255,.82);
  font-size: .9375rem;
  line-height: 1.65;
}

.hq-bento__link {
  display: inline-flex;
  align-items: center;
  gap: .35rem;
  font-size: .8125rem;
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
  color: var(--hq-orange-light);
}

/* Connect / assurance */
.hq-connect { background: linear-gradient(180deg, var(--hq-white) 0%, var(--hq-bg-soft) 100%); }

.hq-connect__shell {
  display: grid;
  grid-template-columns: 1.05fr .95fr;
  gap: clamp(2rem, 5vw, 4rem);
  align-items: start;
}

.hq-connect__copy .hq-title { max-width: 18ch; text-align: left; margin-left: 0; }
.hq-connect__copy .hq-lead { max-width: 48ch; text-align: left; margin-left: 0; }

.hq-connect__promises {
  display: grid;
  gap: 1rem;
  margin: 1.75rem 0 2rem;
  padding: 0;
  list-style: none;
}

.hq-connect__promises li {
  display: grid;
  grid-template-columns: 44px 1fr;
  gap: .875rem;
  align-items: start;
}

.hq-connect__promise-icon {
  width: 44px;
  height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 12px;
  background: var(--hq-navy);
  color: var(--hq-orange-light);
  font-size: 1.0625rem;
}

.hq-connect__promises strong {
  display: block;
  margin-bottom: .2rem;
  color: var(--hq-navy);
  font-size: .9375rem;
}

.hq-connect__promises span {
  display: block;
  color: var(--hq-muted);
  font-size: .875rem;
  line-height: 1.6;
}

.hq-connect__cards {
  display: grid;
  gap: .875rem;
}

.hq-connect__card {
  display: grid;
  grid-template-columns: 48px 1fr auto;
  gap: 1rem;
  align-items: center;
  padding: 1.125rem 1.25rem;
  border-radius: var(--hq-radius);
  background: var(--hq-white);
  border: 1px solid var(--hq-border);
  box-shadow: var(--hq-shadow-sm);
  color: inherit;
  text-decoration: none;
  transition: transform .3s var(--hq-ease), box-shadow .3s var(--hq-ease), border-color .3s ease;
}

.hq-connect__card:hover {
  transform: translateY(-3px);
  border-color: rgba(232,139,9,.28);
  box-shadow: var(--hq-shadow);
}

.hq-connect__card--accent {
  background: linear-gradient(135deg, var(--hq-navy) 0%, var(--hq-navy-soft) 100%);
  border-color: transparent;
  color: var(--hq-white);
}

.hq-connect__card--accent .hq-connect__card-icon {
  background: rgba(232,139,9,.18);
  color: var(--hq-orange-light);
}

.hq-connect__card--accent span { color: rgba(255,255,255,.7); }

.hq-connect__card--static { cursor: default; }

.hq-connect__card-icon {
  width: 48px;
  height: 48px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 14px;
  background: rgba(232,139,9,.1);
  color: var(--hq-orange);
  font-size: 1.125rem;
}

.hq-connect__card strong {
  display: block;
  font-size: .9375rem;
  font-weight: 700;
  color: inherit;
  line-height: 1.2;
}

.hq-connect__card span {
  display: block;
  margin-top: .15rem;
  font-size: .8125rem;
  color: var(--hq-muted);
  line-height: 1.45;
}

.hq-connect__card-arrow {
  color: var(--hq-orange);
  font-size: 1rem;
  transition: transform .25s var(--hq-ease);
}

.hq-connect__card:hover .hq-connect__card-arrow { transform: translate(2px, -2px); }

.hq-connect__card--accent .hq-connect__card-arrow { color: var(--hq-orange-light); }

/* Services grid */
.hq-services__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.25rem; }

.hq-service__link { display: flex; flex-direction: column; height: 100%; color: inherit; text-decoration: none; }

.hq-service__img { aspect-ratio: 16/10; overflow: hidden; }
.hq-service__img img { width: 100%; height: 100%; object-fit: cover; transition: transform .45s var(--hq-ease); }
.hq-card:hover .hq-service__img img { transform: scale(1.04); }

.hq-service__body { padding: 1.375rem; flex: 1; display: flex; flex-direction: column; gap: .5rem; }
.hq-service__body h3 { margin: 0; font-family: var(--hq-font-display); font-size: var(--hq-h3); color: var(--hq-navy); }
.hq-service__body p { margin: 0; flex: 1; color: var(--hq-muted); font-size: .9375rem; line-height: 1.65; }
.hq-service__more { color: var(--hq-orange); font-size: .8125rem; font-weight: 600; }

/* Projects */
.hq-projects--featured .hq-projects__grid {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  gap: 1.25rem;
}

.hq-projects--featured .hq-project:nth-child(1) { grid-column: span 7; }
.hq-projects--featured .hq-project:nth-child(2) { grid-column: span 5; }
.hq-projects--featured .hq-project:nth-child(3),
.hq-projects--featured .hq-project:nth-child(4),
.hq-projects--featured .hq-project:nth-child(5) { grid-column: span 4; }

.hq-projects--latest .hq-projects__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.25rem; }

.hq-project__link { display: block; color: inherit; text-decoration: none; }
.hq-project__img { position: relative; aspect-ratio: 16/11; overflow: hidden; margin: 0; }
.hq-project__img img { width: 100%; height: 100%; object-fit: cover; transition: transform .45s var(--hq-ease); }
.hq-card:hover .hq-project__img img { transform: scale(1.04); }

.hq-project__badges {
  position: absolute; top: .875rem; left: .875rem; right: .875rem;
  display: flex; justify-content: space-between; gap: .5rem;
}

.hq-tag {
  padding: .3rem .65rem; border-radius: 999px;
  font-size: .625rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase;
}

.hq-tag--cat { background: rgba(255,255,255,.94); color: var(--hq-navy); }
.hq-tag--done { background: rgba(16,120,72,.92); color: #fff; }
.hq-tag--active { background: rgba(232,139,9,.92); color: #fff; }
.hq-tag--planned { background: rgba(2,29,69,.82); color: #fff; }

.hq-project__body { padding: 1.25rem 1.375rem; }
.hq-project__body h3 { margin: 0 0 .5rem; font-family: var(--hq-font-display); font-size: 1.1875rem; color: var(--hq-navy); }
.hq-project__body p { margin: 0; color: var(--hq-muted); font-size: .9375rem; line-height: 1.6; }

/* ─── Projects portfolio page ─── */
.hq-portfolio {
  padding: clamp(3rem, 6vw, 5rem) 0 clamp(4rem, 7vw, 6rem);
  background: linear-gradient(180deg, var(--hq-bg-soft) 0%, var(--hq-white) 12rem);
}

.hq-portfolio__intro {
  display: grid;
  grid-template-columns: 1.15fr .85fr;
  gap: clamp(2rem, 4vw, 3.5rem);
  align-items: end;
  margin-bottom: clamp(2.5rem, 5vw, 3.5rem);
}

.hq-portfolio__intro-copy .hq-title { max-width: 16ch; }
.hq-portfolio__intro-copy .hq-lead { margin-top: 1rem; }

.hq-portfolio__stats {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1rem;
}

.hq-portfolio__stat {
  padding: 1.375rem 1.25rem;
  border-radius: var(--hq-radius);
  background: var(--hq-white);
  border: 1px solid var(--hq-border);
  box-shadow: var(--hq-shadow-sm);
  text-align: center;
}

.hq-portfolio__stat strong {
  display: block;
  font-family: var(--hq-font-display);
  font-size: clamp(1.75rem, 3vw, 2.25rem);
  font-weight: 700;
  color: var(--hq-navy);
  line-height: 1;
}

.hq-portfolio__stat span {
  display: block;
  margin-top: .45rem;
  color: var(--hq-muted);
  font-size: .75rem;
  font-weight: 600;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.hq-portfolio__toolbar {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  gap: 1.25rem 2rem;
  padding: 1.5rem 1.75rem;
  margin-bottom: 2.5rem;
  border-radius: var(--hq-radius-lg);
  background: var(--hq-white);
  border: 1px solid var(--hq-border);
  box-shadow: var(--hq-shadow-sm);
}

.hq-portfolio__filter-group { flex: 1; min-width: min(100%, 280px); }

.hq-portfolio__filter-label {
  display: block;
  margin-bottom: .625rem;
  color: var(--hq-muted);
  font-size: .6875rem;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.hq-portfolio__filters {
  display: flex;
  flex-wrap: wrap;
  gap: .5rem;
}

.hq-portfolio__filter {
  padding: .5625rem 1rem;
  border-radius: 999px;
  border: 1px solid var(--hq-border);
  background: var(--hq-bg-soft);
  color: var(--hq-muted);
  font-size: .8125rem;
  font-weight: 600;
  text-decoration: none;
  transition: all .22s var(--hq-ease);
  white-space: nowrap;
}

.hq-portfolio__filter:hover {
  color: var(--hq-navy);
  border-color: rgba(232,139,9,.28);
  background: rgba(232,139,9,.06);
}

.hq-portfolio__filter.is-active {
  color: var(--hq-white);
  background: var(--hq-navy);
  border-color: var(--hq-navy);
  box-shadow: 0 4px 14px rgba(2,29,69,.18);
}

.hq-portfolio__clear {
  display: inline-flex;
  align-items: center;
  gap: .4rem;
  padding: .5625rem 1rem;
  border-radius: 999px;
  color: var(--hq-orange);
  background: rgba(232,139,9,.08);
  font-size: .8125rem;
  font-weight: 600;
  text-decoration: none;
  transition: background .2s ease;
}

.hq-portfolio__clear:hover { background: rgba(232,139,9,.14); }

.hq-portfolio__grid {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  gap: 1.5rem;
}

.hq-portfolio__card {
  grid-column: span 4;
  border-radius: var(--hq-radius-lg);
  background: var(--hq-white);
  border: 1px solid var(--hq-border);
  box-shadow: var(--hq-shadow-sm);
  overflow: hidden;
  transition: transform .3s var(--hq-ease), box-shadow .3s var(--hq-ease);
}

.hq-portfolio__card--featured { grid-column: span 8; }
.hq-portfolio__card--solo { grid-column: span 12; }
.hq-portfolio__card--compact { grid-column: span 4; }
.hq-portfolio__card--standard { grid-column: span 4; }

.hq-portfolio__card:hover {
  transform: translateY(-6px);
  box-shadow: var(--hq-shadow);
}

.hq-portfolio__link {
  display: flex;
  flex-direction: column;
  height: 100%;
  color: inherit;
  text-decoration: none;
}

.hq-portfolio__media {
  position: relative;
  margin: 0;
  overflow: hidden;
  aspect-ratio: 16/10;
}

.hq-portfolio__card--featured .hq-portfolio__media { aspect-ratio: 16/9; }
.hq-portfolio__card--compact .hq-portfolio__media { aspect-ratio: 4/5; }

.hq-portfolio__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .55s var(--hq-ease);
}

.hq-portfolio__card:hover .hq-portfolio__media img { transform: scale(1.05); }

.hq-portfolio__overlay {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 1rem;
  background: linear-gradient(180deg, rgba(1,15,36,.15) 0%, rgba(1,15,36,.05) 35%, rgba(1,15,36,.72) 100%);
  pointer-events: none;
}

.hq-portfolio__tags {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: .5rem;
}

.hq-portfolio__featured {
  align-self: flex-start;
  display: inline-flex;
  align-items: center;
  gap: .35rem;
  padding: .35rem .7rem;
  border-radius: 999px;
  background: rgba(232,139,9,.92);
  color: var(--hq-white);
  font-size: .625rem;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.hq-portfolio__view {
  align-self: flex-end;
  display: inline-flex;
  align-items: center;
  gap: .4rem;
  padding: .5rem .875rem;
  border-radius: 999px;
  background: rgba(255,255,255,.14);
  backdrop-filter: blur(8px);
  color: var(--hq-white);
  font-size: .8125rem;
  font-weight: 600;
  opacity: 0;
  transform: translateY(8px);
  transition: opacity .28s var(--hq-ease), transform .28s var(--hq-ease), background .2s ease;
}

.hq-portfolio__card:hover .hq-portfolio__view {
  opacity: 1;
  transform: translateY(0);
}

.hq-portfolio__body {
  display: flex;
  flex-direction: column;
  flex: 1;
  gap: .625rem;
  padding: 1.375rem 1.5rem 1.5rem;
}

.hq-portfolio__body h3 {
  margin: 0;
  font-family: var(--hq-font-display);
  font-size: clamp(1.125rem, 2vw, 1.375rem);
  color: var(--hq-navy);
  line-height: 1.2;
}

.hq-portfolio__body p {
  margin: 0;
  flex: 1;
  color: var(--hq-muted);
  font-size: .9375rem;
  line-height: 1.65;
}

.hq-portfolio__meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .75rem;
  padding-top: .875rem;
  margin-top: auto;
  border-top: 1px solid var(--hq-border);
  font-size: .8125rem;
}

.hq-portfolio__meta > span:first-child {
  display: inline-flex;
  align-items: center;
  gap: .35rem;
  color: var(--hq-muted);
  font-weight: 500;
}

.hq-portfolio__meta > span:first-child i { color: var(--hq-orange); }

.hq-portfolio__cta {
  display: inline-flex;
  align-items: center;
  gap: .35rem;
  color: var(--hq-orange);
  font-weight: 700;
  transition: gap .2s ease;
}

.hq-portfolio__card:hover .hq-portfolio__cta { gap: .55rem; }

.hq-portfolio__empty {
  padding: clamp(3rem, 8vw, 5rem) 2rem;
  border-radius: var(--hq-radius-lg);
  background: var(--hq-white);
  border: 1px dashed rgba(2,29,69,.12);
  text-align: center;
}

.hq-portfolio__empty-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 72px;
  height: 72px;
  margin-bottom: 1.25rem;
  border-radius: 20px;
  background: rgba(232,139,9,.1);
  color: var(--hq-orange);
  font-size: 1.75rem;
}

.hq-portfolio__empty h3 {
  margin: 0 0 .5rem;
  font-family: var(--hq-font-display);
  font-size: 1.5rem;
  color: var(--hq-navy);
}

.hq-portfolio__empty p {
  margin: 0 0 1.5rem;
  color: var(--hq-muted);
}

.hq-portfolio-cta {
  padding: clamp(4rem, 8vw, 5.5rem) 0;
  background: var(--hq-navy);
  color: var(--hq-white);
}

.hq-portfolio-cta__inner {
  display: grid;
  grid-template-columns: 1.2fr auto;
  gap: 2rem;
  align-items: center;
}

.hq-portfolio-cta__inner .hq-lead { margin-top: .75rem; }

.hq-portfolio-cta__actions {
  display: flex;
  flex-direction: column;
  gap: .75rem;
  min-width: 220px;
}

/* ─── Project detail page ─── */
.hq-project-detail {
  padding: clamp(3rem, 6vw, 5rem) 0;
  background: linear-gradient(180deg, var(--hq-bg-soft) 0%, var(--hq-white) 16rem);
}

.hq-project-detail__layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 340px;
  gap: clamp(2rem, 4vw, 3rem);
  align-items: start;
}

.hq-project-detail__hero {
  margin: 0 0 1.75rem;
  border-radius: var(--hq-radius-lg);
  overflow: hidden;
  box-shadow: var(--hq-shadow);
  border: 1px solid var(--hq-border);
}

.hq-project-detail__hero img {
  width: 100%;
  max-height: 520px;
  object-fit: cover;
  display: block;
}

.hq-project-detail__tags {
  display: flex;
  flex-wrap: wrap;
  gap: .5rem;
  margin-bottom: 2rem;
}

.hq-project-detail__content { max-width: none; margin: 0; }

.hq-project-detail__gallery { margin-top: 3rem; }

.hq-project-detail__gallery-head { margin-bottom: 1.5rem; }
.hq-project-detail__gallery-head .hq-title { font-size: clamp(1.375rem, 2.5vw, 1.75rem); margin-top: .5rem; }

.hq-project-detail__gallery-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1rem;
}

.hq-project-detail__card {
  padding: 1.75rem;
  border-radius: var(--hq-radius-lg);
  background: var(--hq-white);
  border: 1px solid var(--hq-border);
  box-shadow: var(--hq-shadow-sm);
  position: sticky;
  top: calc(var(--hq-header-h) + 1.25rem);
}

.hq-project-detail__aside-title {
  font-size: 1.375rem;
  margin: .5rem 0 1.25rem;
}

.hq-project-detail__meta {
  margin: 0 0 1.5rem;
  padding: 0;
  list-style: none;
  display: grid;
  gap: .875rem;
}

.hq-project-detail__meta li {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 1rem;
  padding-bottom: .875rem;
  border-bottom: 1px solid var(--hq-border);
}

.hq-project-detail__meta li:last-child { padding-bottom: 0; border-bottom: none; }

.hq-project-detail__meta span {
  color: var(--hq-muted);
  font-size: .8125rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .06em;
}

.hq-project-detail__meta strong {
  color: var(--hq-navy);
  font-size: .9375rem;
  font-weight: 700;
  text-align: right;
}

.hq-project-detail__actions {
  display: grid;
  gap: .625rem;
}

.hq-project-detail__related {
  margin-top: 1.25rem;
  padding: 1.5rem;
  border-radius: var(--hq-radius-lg);
  background: var(--hq-white);
  border: 1px solid var(--hq-border);
  box-shadow: var(--hq-shadow-sm);
}

.hq-project-detail__related-title {
  margin: .35rem 0 1rem;
  font-family: var(--hq-font-display);
  font-size: 1.125rem;
  color: var(--hq-navy);
}

.hq-project-detail__related-list { display: grid; gap: .75rem; }

.hq-project-detail__related-item {
  display: grid;
  grid-template-columns: 56px 1fr auto;
  gap: .75rem;
  align-items: center;
  padding: .625rem;
  border-radius: 12px;
  text-decoration: none;
  color: inherit;
  transition: background .2s ease;
}

.hq-project-detail__related-item:hover { background: var(--hq-bg-soft); }

.hq-project-detail__related-item img {
  width: 56px;
  height: 56px;
  border-radius: 10px;
  object-fit: cover;
}

.hq-project-detail__related-item strong {
  display: block;
  font-size: .875rem;
  color: var(--hq-navy);
  line-height: 1.3;
}

.hq-project-detail__related-item em {
  display: block;
  margin-top: .2rem;
  font-style: normal;
  font-size: .75rem;
  color: var(--hq-muted);
}

.hq-project-detail__related-item i {
  color: var(--hq-orange);
  font-size: .875rem;
}

/* ─── About page ─── */
.hq-about-page__story {
  padding: clamp(3.5rem, 7vw, 5.5rem) 0;
  background: var(--hq-white);
}

.hq-about-page__story-grid {
  display: grid;
  grid-template-columns: .95fr 1.05fr;
  gap: clamp(2rem, 5vw, 4rem);
  align-items: center;
}

.hq-about-page__frame {
  position: relative;
  border-radius: var(--hq-radius-lg);
  overflow: hidden;
  box-shadow: var(--hq-shadow);
  border: 1px solid var(--hq-border);
}

.hq-about-page__frame img {
  width: 100%;
  aspect-ratio: 4/5;
  object-fit: cover;
  display: block;
}

.hq-about-page__badge {
  position: absolute;
  left: 1rem;
  right: 1rem;
  bottom: 1rem;
  display: flex;
  align-items: center;
  gap: .875rem;
  padding: 1rem 1.125rem;
  border-radius: var(--hq-radius);
  background: rgba(255,255,255,.96);
  box-shadow: var(--hq-shadow-sm);
}

.hq-about-page__badge i {
  width: 44px;
  height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 12px;
  color: var(--hq-white);
  background: var(--hq-orange);
  font-size: 1.125rem;
  flex-shrink: 0;
}

.hq-about-page__badge strong {
  display: block;
  font-family: var(--hq-font-display);
  color: var(--hq-navy);
  font-size: 1rem;
}

.hq-about-page__badge span {
  display: block;
  margin-top: .15rem;
  color: var(--hq-muted);
  font-size: .8125rem;
}

.hq-about-page__copy .hq-title {
  margin: .75rem 0 1.25rem;
  max-width: 22ch;
}

.hq-about-page__text {
  color: var(--hq-muted);
  font-size: 1.0625rem;
  line-height: 1.78;
}

.hq-about-page__trust {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: .75rem 1.25rem;
  margin: 1.75rem 0 0;
  padding: 0;
  list-style: none;
}

.hq-about-page__trust li {
  display: flex;
  align-items: center;
  gap: .5rem;
  font-size: .875rem;
  font-weight: 600;
  color: var(--hq-navy);
}

.hq-about-page__trust i { color: var(--hq-orange); font-size: 1rem; }

.hq-about-page__actions {
  display: flex;
  flex-wrap: wrap;
  gap: .75rem;
  margin-top: 2rem;
}

.hq-about-page__stats {
  padding: clamp(4rem, 7vw, 5.5rem) 0;
  background: var(--hq-navy);
  color: var(--hq-white);
}

.hq-about-page__stats-grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 1.25rem;
}

.hq-about-page__stat {
  padding: 1.75rem 1rem;
  text-align: center;
  border-radius: var(--hq-radius-lg);
  background: rgba(255,255,255,.05);
  border: 1px solid rgba(255,255,255,.08);
}

.hq-about-page__stat-icon {
  width: 48px;
  height: 48px;
  margin: 0 auto .75rem;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 14px;
  color: var(--hq-orange-light);
  background: rgba(232,139,9,.12);
  font-size: 1.125rem;
}

.hq-about-page__stat strong {
  display: block;
  font-family: var(--hq-font-display);
  font-size: clamp(1.625rem, 3vw, 2.25rem);
  font-weight: 700;
  color: var(--hq-white);
}

.hq-about-page__stat > span:last-child {
  display: block;
  margin-top: .375rem;
  color: rgba(255,255,255,.55);
  font-size: .8125rem;
}

.hq-about-page__mv {
  padding: clamp(3.5rem, 7vw, 5rem) 0;
  background: var(--hq-bg-soft);
}

.hq-about-page__mv-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.5rem;
}

.hq-about-page__mv-card {
  padding: clamp(2rem, 4vw, 2.75rem);
  border-radius: var(--hq-radius-lg);
  background: var(--hq-white);
  border: 1px solid var(--hq-border);
  box-shadow: var(--hq-shadow-sm);
}

.hq-about-page__mv-icon {
  width: 56px;
  height: 56px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 1.25rem;
  border-radius: 16px;
  color: var(--hq-white);
  background: var(--hq-navy);
  font-size: 1.375rem;
}

.hq-about-page__mv-card .hq-title {
  font-size: clamp(1.25rem, 2.5vw, 1.625rem);
  margin: .5rem 0 1rem;
}

.hq-about-page__mv-card p {
  margin: 0;
  color: var(--hq-muted);
  line-height: 1.75;
  font-size: .96875rem;
}

.hq-about-page__values {
  padding: var(--hq-section-y) 0;
  background: var(--hq-white);
}

.hq-about-page__values-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.25rem;
}

.hq-about-page__value {
  padding: 1.75rem 1.5rem;
  border-radius: var(--hq-radius-lg);
  background: var(--hq-bg-soft);
  border: 1px solid var(--hq-border);
  transition: transform .28s var(--hq-ease), box-shadow .28s var(--hq-ease);
}

.hq-about-page__value:hover {
  transform: translateY(-4px);
  box-shadow: var(--hq-shadow-sm);
}

.hq-about-page__value-icon {
  width: 52px;
  height: 52px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 1rem;
  border-radius: 14px;
  color: var(--hq-white);
  background: var(--hq-navy);
  font-size: 1.25rem;
}

.hq-about-page__value h3 {
  margin: 0 0 .5rem;
  font-family: var(--hq-font-display);
  font-size: 1.125rem;
  color: var(--hq-navy);
}

.hq-about-page__value p {
  margin: 0;
  color: var(--hq-muted);
  font-size: .9375rem;
  line-height: 1.65;
}

.hq-about-page__process {
  padding: var(--hq-section-y) 0;
  background: var(--hq-bg-soft);
}

.hq-about-page__process-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1.25rem;
}

.hq-about-page__step {
  padding: 1.75rem 1.5rem;
  border-radius: var(--hq-radius-lg);
  background: var(--hq-white);
  border: 1px solid var(--hq-border);
  box-shadow: var(--hq-shadow-sm);
  text-align: center;
}

.hq-about-page__step-num {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  margin-bottom: 1rem;
  border-radius: 50%;
  color: var(--hq-white);
  background: var(--hq-orange);
  font-size: .8125rem;
  font-weight: 800;
}

.hq-about-page__step h3 {
  margin: 0 0 .5rem;
  font-family: var(--hq-font-display);
  font-size: 1.0625rem;
  color: var(--hq-navy);
}

.hq-about-page__step p {
  margin: 0;
  color: var(--hq-muted);
  font-size: .875rem;
  line-height: 1.6;
}

.hq-about-page__services {
  padding: var(--hq-section-y) 0;
  background: var(--hq-white);
}

.hq-about-page__services-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.25rem;
}

/* ─── Leadership (About) ─── */
.hq-leadership {
  position: relative;
  padding: clamp(4.5rem, 8vw, 6.5rem) 0;
  background: var(--hq-navy);
  color: var(--hq-white);
  overflow: hidden;
}

.hq-leadership::before {
  content: '';
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse 80% 50% at 50% -20%, rgba(232,139,9,.12) 0%, transparent 55%),
    radial-gradient(circle at 100% 100%, rgba(255,255,255,.04) 0%, transparent 40%);
  pointer-events: none;
}

.hq-leadership .container-site { position: relative; z-index: 1; }

.hq-leadership__intro {
  display: grid;
  grid-template-columns: 1.15fr .85fr;
  gap: clamp(2rem, 4vw, 3.5rem);
  align-items: end;
  margin-bottom: clamp(2.5rem, 5vw, 3.75rem);
  padding-bottom: clamp(2rem, 4vw, 2.75rem);
  border-bottom: 1px solid rgba(255,255,255,.1);
}

.hq-leadership__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  margin: 0 0 1.25rem;
  color: var(--hq-orange-light);
  font-size: .6875rem;
  font-weight: 700;
  letter-spacing: .16em;
  text-transform: uppercase;
}

.hq-leadership__eyebrow i { font-size: .875rem; }

.hq-leadership__title {
  margin: 0 0 1.25rem;
  font-family: var(--hq-font-display);
  font-size: clamp(2rem, 4.5vw, 3.125rem);
  font-weight: 700;
  color: var(--hq-white);
  letter-spacing: -.035em;
  line-height: 1.08;
}

.hq-leadership__title span {
  color: var(--hq-orange-light);
}

.hq-leadership__desc {
  margin: 0;
  max-width: 48ch;
  color: rgba(255,255,255,.72);
  font-size: 1.0625rem;
  line-height: 1.72;
}

.hq-leadership__intro-meta {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  align-items: flex-end;
}

.hq-leadership__count {
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 1.125rem 1.375rem;
  border-radius: var(--hq-radius-lg);
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.1);
  backdrop-filter: blur(8px);
}

.hq-leadership__count strong {
  font-family: var(--hq-font-display);
  font-size: 2.75rem;
  font-weight: 700;
  line-height: 1;
  color: var(--hq-orange-light);
}

.hq-leadership__count span {
  font-size: .6875rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  line-height: 1.45;
  color: rgba(255,255,255,.65);
}

.hq-leadership__traits {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: .5rem;
  text-align: right;
}

.hq-leadership__traits li {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: .5rem;
  color: rgba(255,255,255,.78);
  font-size: .8125rem;
  font-weight: 600;
}

.hq-leadership__traits i {
  color: var(--hq-orange-light);
  font-size: .875rem;
}

.hq-leadership__grid {
  display: grid;
  gap: clamp(1.25rem, 2.5vw, 1.75rem);
}

.hq-leadership__grid--three { grid-template-columns: repeat(3, 1fr); }

.hq-leadership__grid--two {
  grid-template-columns: repeat(2, 1fr);
  max-width: 920px;
  margin-left: auto;
  margin-right: auto;
}

.hq-leadership__grid--one {
  grid-template-columns: minmax(280px, 380px);
  justify-content: center;
}

.hq-leader-card {
  display: flex;
  flex-direction: column;
  height: 100%;
  border-radius: var(--hq-radius-lg);
  background: var(--hq-white);
  overflow: hidden;
  box-shadow: 0 24px 64px rgba(0,0,0,.25);
  transition: transform .35s var(--hq-ease), box-shadow .35s var(--hq-ease);
}

.hq-leader-card:hover {
  transform: translateY(-8px);
  box-shadow: 0 32px 80px rgba(0,0,0,.32);
}

.hq-leader-card__photo {
  position: relative;
  aspect-ratio: 4/5;
  overflow: hidden;
  background: var(--hq-navy-deep);
}

.hq-leader-card__photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 15%;
  display: block;
  transition: transform .55s var(--hq-ease);
}

.hq-leader-card:hover .hq-leader-card__photo img { transform: scale(1.06); }

.hq-leader-card__overlay {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 1.125rem;
  background: linear-gradient(180deg, rgba(1,15,36,.25) 0%, transparent 35%, rgba(1,15,36,.88) 100%);
  pointer-events: none;
}

.hq-leader-card__num {
  align-self: flex-start;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 2.375rem;
  height: 2.375rem;
  padding: 0 .6rem;
  border-radius: 10px;
  background: var(--hq-orange);
  color: var(--hq-white);
  font-size: .75rem;
  font-weight: 800;
  letter-spacing: .08em;
}

.hq-leader-card__identity h3 {
  margin: 0 0 .35rem;
  font-family: var(--hq-font-display);
  font-size: clamp(1.1875rem, 2vw, 1.4375rem);
  font-weight: 700;
  color: var(--hq-white);
  line-height: 1.15;
  letter-spacing: -.02em;
}

.hq-leader-card__identity p {
  margin: 0;
  color: var(--hq-orange-light);
  font-size: .6875rem;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
  line-height: 1.4;
}

.hq-leader-card__content {
  display: flex;
  flex-direction: column;
  flex: 1;
  padding: 1.375rem 1.5rem 1.625rem;
}

.hq-leader-card__bio {
  margin: 0;
  flex: 1;
  color: var(--hq-muted);
  font-size: .9375rem;
  line-height: 1.68;
}

.hq-leader-card__links {
  display: flex;
  flex-wrap: wrap;
  gap: .5rem;
  margin-top: 1.25rem;
  padding-top: 1.125rem;
  border-top: 1px solid var(--hq-border);
}

.hq-leader-card__links a {
  width: 38px;
  height: 38px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  color: var(--hq-navy);
  background: var(--hq-bg-soft);
  border: 1px solid var(--hq-border);
  font-size: .875rem;
  text-decoration: none;
  transition: all .22s var(--hq-ease);
}

.hq-leader-card__links a:hover {
  color: var(--hq-white);
  background: var(--hq-orange);
  border-color: var(--hq-orange);
}

.hq-leader-card__connect {
  display: block;
  margin-top: 1.125rem;
  padding-top: 1rem;
  border-top: 1px solid var(--hq-border);
  color: var(--hq-orange);
  font-size: .75rem;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.hq-about-page__quotes {
  padding: var(--hq-section-y) 0;
  background: var(--hq-white);
}

.hq-about-page__info {
  padding: clamp(3.5rem, 7vw, 5rem) 0;
  background: linear-gradient(180deg, var(--hq-bg-soft) 0%, var(--hq-white) 100%);
}

.hq-about-page__info-grid {
  display: grid;
  grid-template-columns: 1.1fr .9fr;
  gap: clamp(2rem, 4vw, 3rem);
  align-items: start;
}

.hq-about-page__info-copy .hq-title { margin: .75rem 0 1rem; max-width: 20ch; }
.hq-about-page__info-copy .hq-lead { margin-bottom: 1.5rem; }

.hq-about-page__contact-list {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: .875rem;
}

.hq-about-page__contact-list li {
  display: flex;
  align-items: flex-start;
  gap: .75rem;
  font-size: .9375rem;
  font-weight: 500;
  color: var(--hq-navy);
}

.hq-about-page__contact-list i {
  color: var(--hq-orange);
  margin-top: .15rem;
}

.hq-about-page__contact-list a {
  color: inherit;
  text-decoration: none;
}

.hq-about-page__contact-list a:hover { color: var(--hq-orange); }

.hq-about-page__info-card {
  padding: 2rem;
  border-radius: var(--hq-radius-lg);
  background: var(--hq-white);
  border: 1px solid var(--hq-border);
  box-shadow: var(--hq-shadow);
}

.hq-about-page__info-card h3 {
  margin: 0 0 1.25rem;
  font-family: var(--hq-font-display);
  font-size: 1.375rem;
  color: var(--hq-navy);
}

.hq-about-page__info-card ul {
  margin: 0 0 1.5rem;
  padding: 0;
  list-style: none;
  display: grid;
  gap: .75rem;
}

.hq-about-page__info-card li {
  display: flex;
  align-items: flex-start;
  gap: .625rem;
  color: var(--hq-muted);
  font-size: .9375rem;
  line-height: 1.5;
}

.hq-about-page__info-card li i {
  color: var(--hq-orange);
  margin-top: .15rem;
  flex-shrink: 0;
}

/* Why choose us */
.hq-why__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.25rem; }

.hq-why {
  padding: 1.5rem; text-align: center;
}

.hq-why__icon {
  width: 56px; height: 56px; margin: 0 auto 1rem;
  display: flex; align-items: center; justify-content: center;
  border-radius: 16px; color: var(--hq-white); background: var(--hq-navy); font-size: 1.25rem;
}

.hq-why h3 { margin: 0 0 .5rem; font-family: var(--hq-font-display); font-size: 1.125rem; color: var(--hq-navy); }
.hq-why p { margin: 0; color: var(--hq-muted); font-size: .9375rem; line-height: 1.65; }

/* Process timeline */
.hq-process__grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1.25rem; }

.hq-step { padding: 1.5rem; text-align: center; position: relative; }

.hq-step__num {
  display: inline-flex; align-items: center; justify-content: center;
  width: 40px; height: 40px; margin-bottom: 1rem;
  border-radius: 50%; color: var(--hq-white); background: var(--hq-orange);
  font-size: .8125rem; font-weight: 800;
}

.hq-step h3 { margin: 0 0 .5rem; font-family: var(--hq-font-display); font-size: 1.0625rem; color: var(--hq-navy); }
.hq-step p { margin: 0; color: var(--hq-muted); font-size: .875rem; line-height: 1.6; }

/* Stats */
.hq-stats__grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 1.25rem; }

.hq-stat {
  padding: 2rem 1rem; text-align: center;
  border-radius: var(--hq-radius-lg);
  background: rgba(255,255,255,.05);
  border: 1px solid rgba(255,255,255,.08);
}

.hq-stat__icon {
  width: 48px; height: 48px; margin: 0 auto .75rem;
  display: flex; align-items: center; justify-content: center;
  border-radius: 14px; color: var(--hq-orange-light); background: rgba(232,139,9,.12);
}

.hq-stat strong {
  display: block; color: var(--hq-white);
  font-family: var(--hq-font-display); font-size: clamp(1.75rem, 3vw, 2.375rem); font-weight: 700;
}

.hq-stat span { display: block; margin-top: .375rem; color: rgba(255,255,255,.55); font-size: .8125rem; }

/* Team */
.hq-team__grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1.25rem; }

.hq-team img { width: 100%; aspect-ratio: 3/4; object-fit: cover; display: block; }
.hq-team__info { padding: 1rem 1.125rem; }
.hq-team__info strong { display: block; font-family: var(--hq-font-display); color: var(--hq-navy); }
.hq-team__info span { display: block; margin-top: .25rem; color: var(--hq-orange); font-size: .8125rem; font-weight: 600; text-transform: uppercase; }

/* Testimonials */
.hq-quotes__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.25rem; }

.hq-quote { padding: 1.75rem; display: flex; flex-direction: column; gap: 1rem; min-height: 100%; }
.hq-quote blockquote { margin: 0; flex: 1; font-size: .96875rem; line-height: 1.72; color: var(--hq-text); font-style: normal; }
.hq-quote__author { display: flex; align-items: center; gap: .875rem; padding-top: .75rem; border-top: 1px solid var(--hq-border); }
.hq-quote__avatar {
  width: 48px; height: 48px; border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  background: linear-gradient(135deg, var(--hq-orange-light), var(--hq-orange));
  color: var(--hq-navy); font-weight: 800;
}

.hq-quote__author img { width: 48px; height: 48px; border-radius: 50%; object-fit: cover; }
.hq-quote__author cite { display: block; font-style: normal; font-weight: 700; color: var(--hq-navy); }
.hq-quote__author span { display: block; font-size: .8125rem; color: var(--hq-muted); }

/* Partners */
.hq-partners__grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 1rem; }

.hq-partner {
  padding: 1.5rem 1rem; text-align: center;
  display: flex; flex-direction: column; align-items: center; gap: .75rem;
}

.hq-partner i {
  width: 52px; height: 52px;
  display: flex; align-items: center; justify-content: center;
  border-radius: 14px; color: var(--hq-navy); background: rgba(232,139,9,.12); font-size: 1.25rem;
}

.hq-partner span { font-size: .8125rem; font-weight: 700; color: var(--hq-navy); line-height: 1.35; }

/* Insights / pages */
.hq-insights__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.25rem; }

.hq-insight__link { display: block; color: inherit; text-decoration: none; }
.hq-insight__img { aspect-ratio: 16/10; overflow: hidden; background: var(--hq-bg-muted); }
.hq-insight__img img { width: 100%; height: 100%; object-fit: cover; }
.hq-insight__body { padding: 1.375rem; }
.hq-insight__body h3 { margin: 0 0 .5rem; font-family: var(--hq-font-display); font-size: 1.125rem; color: var(--hq-navy); }
.hq-insight__body p { margin: 0; color: var(--hq-muted); font-size: .9375rem; line-height: 1.6; }

/* Contact block */
.hq-contact__shell {
  display: grid; grid-template-columns: 1.1fr .9fr; gap: 2rem;
  padding: clamp(2rem, 4vw, 3rem);
  border-radius: var(--hq-radius-lg);
  background: var(--hq-white); border: 1px solid var(--hq-border); box-shadow: var(--hq-shadow);
}

.hq-contact__list { display: grid; gap: .75rem; margin: 0; padding: 0; list-style: none; }
.hq-contact__list li { display: flex; align-items: flex-start; gap: .75rem; font-size: .9375rem; font-weight: 500; }
.hq-contact__list i { color: var(--hq-orange); margin-top: .15rem; }
.hq-contact__list a { color: inherit; text-decoration: none; }
.hq-contact__list a:hover { color: var(--hq-orange); }

.hq-contact__actions { display: flex; flex-direction: column; gap: .75rem; }

/* Final CTA */
.hq-final {
  position: relative; padding: clamp(5rem, 9vw, 7rem) 0;
  background-size: cover; background-position: center; text-align: center;
}

.hq-final__overlay {
  position: absolute; inset: 0;
  background: linear-gradient(135deg, rgba(1,15,36,.93), rgba(2,29,69,.82));
}

.hq-final__inner { position: relative; z-index: 1; max-width: 680px; margin: 0 auto; }

/* Inner page layouts */
.hq-page-section { padding: var(--hq-section-y) 0; }

.hq-grid-2 { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1.25rem; }
.hq-grid-3 { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.25rem; }
.hq-grid-4 { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1.25rem; }

.hq-list-row {
  display: grid; grid-template-columns: auto auto 1fr auto; gap: 1.25rem; align-items: center;
  padding: 1.25rem 1.5rem; text-decoration: none; color: inherit;
}

.hq-list-row:hover { border-color: rgba(232,139,9,.25); }

.hq-form { display: grid; gap: 1rem; }
.hq-form label { display: grid; gap: .375rem; font-size: .875rem; font-weight: 600; color: var(--hq-navy); }
.hq-form input, .hq-form textarea, .hq-form select {
  width: 100%; padding: .875rem 1rem;
  border: 1px solid var(--hq-border); border-radius: 12px;
  font-family: inherit; font-size: 1rem;
  transition: border-color .2s ease, box-shadow .2s ease;
}

.hq-form input:focus, .hq-form textarea:focus, .hq-form select:focus {
  outline: none; border-color: rgba(232,139,9,.45); box-shadow: 0 0 0 3px rgba(232,139,9,.12);
}

.hq-form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }

.hq-cms-content { max-width: 760px; margin: 0 auto; color: var(--hq-muted); line-height: 1.8; }
.hq-cms-content h2, .hq-cms-content h3 { color: var(--hq-navy); font-family: var(--hq-font-display); margin-top: 2rem; }

.hq-stat-mini {
  padding: 1.25rem;
  text-align: center;
}

.hq-stat-mini strong {
  display: block;
  font-family: var(--hq-font-display);
  font-size: 1.75rem;
  color: var(--hq-navy);
}

.hq-stat-mini span {
  display: block;
  margin-top: .25rem;
  color: var(--hq-muted);
  font-size: .8125rem;
}

.hq-mv-card {
  display: block;
  padding: 2rem;
}

.hq-mv-card .hq-title { font-size: 1.5rem; margin: .75rem 0; }
.hq-mv-card p { margin: 0; color: var(--hq-muted); line-height: 1.72; }

.hq-services-show {
  display: grid;
  grid-template-columns: 280px 1fr;
  gap: 2rem;
  align-items: start;
}

.hq-sidebar {
  padding: 1rem;
  position: sticky;
  top: calc(var(--hq-header-h) + 1rem);
}

.hq-sidebar__label {
  display: block;
  padding: .75rem;
  color: var(--hq-navy);
  font-size: .875rem;
  font-weight: 700;
}

.hq-sidebar__link {
  display: flex;
  align-items: center;
  gap: .5rem;
  padding: .75rem;
  border-radius: 10px;
  text-decoration: none;
  font-size: .875rem;
  font-weight: 600;
  color: var(--hq-muted);
  transition: background .2s ease, color .2s ease;
}

.hq-sidebar__link:hover { color: var(--hq-navy); background: var(--hq-bg-soft); }
.hq-sidebar__link.is-active { color: var(--hq-orange); background: rgba(232,139,9,.08); }

.hq-featured-img {
  width: 100%;
  border-radius: var(--hq-radius-lg);
  aspect-ratio: 16/9;
  object-fit: cover;
  margin-bottom: 2rem;
  display: block;
}

.hq-featured-img--short { max-height: 480px; aspect-ratio: auto; }

.hq-tag-row {
  display: flex;
  flex-wrap: wrap;
  gap: .5rem;
  margin-bottom: 1.5rem;
}

.hq-btn--block { width: 100%; justify-content: center; }

.hq-gallery-trigger {
  padding: 0;
  border: none;
  cursor: pointer;
  overflow: hidden;
  text-align: left;
}

.hq-gallery-trigger img {
  width: 100%;
  aspect-ratio: 4/3;
  object-fit: cover;
  display: block;
  transition: transform .35s var(--hq-ease);
}

.hq-gallery-trigger:hover img { transform: scale(1.04); }

.hq-split-layout {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 2.5rem;
  align-items: start;
}

.hq-product-img {
  width: 100%;
  border-radius: var(--hq-radius-lg);
  object-fit: contain;
  background: var(--hq-bg-soft);
}

.hq-pagination {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: .5rem;
  margin-top: 2.5rem;
}

.hq-pagination__link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 2.5rem;
  height: 2.5rem;
  padding: 0 .75rem;
  border-radius: 10px;
  border: 1px solid var(--hq-border);
  background: var(--hq-white);
  color: var(--hq-muted);
  font-size: .875rem;
  font-weight: 600;
  text-decoration: none;
  transition: all .2s ease;
}

.hq-pagination__link:hover {
  border-color: rgba(232,139,9,.35);
  color: var(--hq-navy);
  background: rgba(232,139,9,.06);
}

.hq-pagination__link.is-active {
  background: var(--hq-navy);
  border-color: var(--hq-navy);
  color: var(--hq-white);
}

/* Lightbox */
.lightbox-modal {
  display: none;
  position: fixed;
  inset: 0;
  background: rgba(1,15,36,.96);
  z-index: 9999;
  align-items: center;
  justify-content: center;
}

.lightbox-modal.active { display: flex; }

.lightbox-modal .lightbox-img {
  max-width: 90vw;
  max-height: 90vh;
  object-fit: contain;
  border-radius: 8px;
}

.lightbox-close {
  position: absolute;
  top: 1.5rem;
  right: 1.5rem;
  color: #fff;
  font-size: 2rem;
  cursor: pointer;
  background: none;
  border: none;
  line-height: 1;
}

.lightbox-prev, .lightbox-next {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  color: #fff;
  font-size: 1.25rem;
  cursor: pointer;
  background: rgba(255,255,255,.1);
  border: none;
  border-radius: 50%;
  width: 3rem;
  height: 3rem;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background .2s ease;
}

.lightbox-prev { left: 1.5rem; }
.lightbox-next { right: 1.5rem; }
.lightbox-prev:hover, .lightbox-next:hover { background: rgba(232,139,9,.35); }

/* WhatsApp float */
.whatsapp-float {
  position: fixed;
  bottom: 2rem;
  right: 2rem;
  width: 3.75rem;
  height: 3.75rem;
  background: #25d366;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-size: 1.65rem;
  box-shadow: 0 8px 28px rgba(37,211,102,.35);
  z-index: 999;
  text-decoration: none;
  transition: transform .3s var(--hq-ease), box-shadow .3s var(--hq-ease);
}

.whatsapp-float:hover {
  transform: scale(1.08) translateY(-2px);
  box-shadow: 0 12px 35px rgba(37,211,102,.45);
}

@keyframes pulseGlow {
  0% { transform: scale(0.95); opacity: 0.8; }
  50% { opacity: 0.4; }
  100% { transform: scale(1.15); opacity: 0; }
}

.whatsapp-float::before {
  content: '';
  position: absolute;
  inset: -4px;
  border-radius: 50%;
  border: 2px solid #25d366;
  opacity: 0;
  animation: pulseGlow 2s infinite;
}

/* Filter pills */
.hq-filters { display: flex; flex-wrap: wrap; justify-content: center; gap: .5rem; margin-bottom: 2rem; }

.hq-filter {
  padding: .5rem 1rem; border-radius: 999px;
  border: 1px solid var(--hq-border); background: var(--hq-white);
  color: var(--hq-muted); font-size: .8125rem; font-weight: 600;
  cursor: pointer; transition: all .2s ease;
}

.hq-filter.active, .hq-filter:hover {
  color: var(--hq-navy); border-color: rgba(232,139,9,.35); background: rgba(232,139,9,.08);
}

/* 404 */
.hq-404 {
  min-height: 70vh;
  display: flex; flex-direction: column; align-items: center; justify-content: center;
  text-align: center; padding: 2rem;
}

.hq-404 h1 { font-size: clamp(4rem, 12vw, 8rem); color: var(--hq-orange); line-height: 1; margin: 0; }
.hq-404 p { max-width: 40ch; margin: 1rem 0 2rem; color: var(--hq-muted); }

/* ═══ HOMEPAGE PREMIUM SECTIONS ═══ */

/* Trust marquee */
.hq-trustbar {
  overflow: hidden;
  padding: 1rem 0;
  background: var(--hq-navy);
  border-bottom: 1px solid rgba(255,255,255,.06);
}

.hq-trustbar__track {
  display: flex;
  gap: 2.5rem;
  width: max-content;
  animation: hq-trust-scroll 32s linear infinite;
}

.hq-trustbar__item {
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  color: rgba(255,255,255,.78);
  font-size: .8125rem;
  font-weight: 600;
  letter-spacing: .04em;
  text-transform: uppercase;
  white-space: nowrap;
}

.hq-trustbar__item i { color: var(--hq-orange-light); }

@keyframes hq-trust-scroll {
  0% { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}

/* About premium */
.hq-about-premium {
  --about-space-1: 0.5rem;
  --about-space-2: 1rem;
  --about-space-3: 1.5rem;
  --about-space-4: 2rem;
  overflow-x: clip;
}

.hq-about-premium__shell {
  display: grid;
  grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr);
  gap: clamp(2rem, 5vw, 4rem);
  align-items: center;
}

.hq-about-premium__media {
  position: relative;
  min-width: 0;
}

.hq-about-premium__frame {
  position: relative;
  margin: 0;
  border-radius: 1.5rem;
  overflow: hidden;
  background: var(--hq-navy-deep);
  box-shadow: 0 24px 56px rgba(2, 29, 69, 0.16);
}

.hq-about-premium__frame img {
  width: 100%;
  aspect-ratio: 5 / 6;
  object-fit: cover;
  object-position: center 58%;
  display: block;
}

.hq-about-premium__shade {
  position: absolute;
  inset: auto 0 0;
  height: 46%;
  background: linear-gradient(180deg, transparent 0%, rgba(1, 15, 36, 0.72) 100%);
  pointer-events: none;
}

.hq-about-premium__badge {
  position: absolute;
  z-index: 2;
  right: 1rem;
  bottom: 1rem;
  min-width: 7.5rem;
  padding: 0.875rem 1rem;
  border-radius: 1rem;
  background: linear-gradient(135deg, var(--hq-orange), var(--hq-orange-dark));
  color: var(--hq-white);
  box-shadow: 0 14px 32px rgba(232, 139, 9, 0.35);
  text-align: center;
}

.hq-about-premium__badge strong {
  display: block;
  font-family: var(--hq-font-display);
  font-size: 1.75rem;
  line-height: 1;
}

.hq-about-premium__badge span {
  display: block;
  margin-top: 0.35rem;
  font-size: 0.625rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  line-height: 1.35;
}

.hq-about-premium__chip {
  position: absolute;
  z-index: 2;
  left: 1rem;
  bottom: 1rem;
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  max-width: calc(100% - 9.5rem);
  margin: 0;
  padding: 0.5rem 0.875rem;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.94);
  border: 0;
  color: var(--hq-navy);
  font-size: 0.75rem;
  font-weight: 700;
  line-height: 1.2;
  box-shadow: 0 10px 24px rgba(2, 29, 69, 0.16);
}

.hq-about-premium__chip i { color: var(--hq-orange); flex-shrink: 0; }

.hq-about-premium__content {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  min-width: 0;
}

.hq-about-premium__eyebrow,
.hq-about-premium__title,
.hq-about-premium__lead { text-align: left; margin-left: 0; }

.hq-about-premium__eyebrow {
  margin: 0 0 var(--about-space-2);
}

.hq-about-premium__title {
  max-width: 11em;
  margin: 0 0 var(--about-space-2);
  text-wrap: balance;
}

.hq-about-premium__lead {
  max-width: 46ch;
  margin: 0 0 var(--about-space-4);
  line-height: 1.7;
}

.hq-about-premium__highlights {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--about-space-2);
  width: 100%;
  margin: 0 0 var(--about-space-4);
}

.hq-about-premium__highlight {
  display: grid;
  grid-template-columns: 2.5rem minmax(0, 1fr);
  gap: 0.75rem;
  align-items: start;
  min-height: 100%;
  margin: 0;
  padding: 1rem;
  border-radius: 1rem;
  background: var(--hq-white);
  border: 1px solid var(--hq-border);
  box-shadow: var(--hq-shadow-sm);
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.hq-about-premium__highlight:hover {
  transform: translateY(-2px);
  border-color: rgba(232, 139, 9, 0.28);
  box-shadow: 0 12px 28px rgba(2, 29, 69, 0.08);
}

.hq-about-premium__highlight-icon {
  width: 2.5rem;
  height: 2.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 0.75rem;
  background: rgba(232, 139, 9, 0.12);
  color: var(--hq-orange-dark);
  font-size: 1rem;
}

.hq-about-premium__highlight-copy { min-width: 0; }

.hq-about-premium__highlight h3 {
  margin: 0 0 0.25rem;
  font-size: 0.9375rem;
  font-weight: 700;
  line-height: 1.3;
  color: var(--hq-navy);
}

.hq-about-premium__highlight p {
  margin: 0;
  font-size: 0.8125rem;
  color: var(--hq-muted);
  line-height: 1.55;
}

.hq-about-premium__mv {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--about-space-2);
  width: 100%;
  margin: 0 0 var(--about-space-4);
}

.hq-about-premium__mv-item {
  padding: 1rem 1.125rem;
  border-radius: 1rem;
  border-left: 3px solid var(--hq-orange);
  background: var(--hq-white);
  box-shadow: var(--hq-shadow-sm);
}

.hq-about-premium__mv-item strong {
  display: block;
  margin-bottom: 0.35rem;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--hq-orange-dark);
}

.hq-about-premium__mv-item p {
  margin: 0;
  font-size: 0.875rem;
  color: var(--hq-muted);
  line-height: 1.6;
}

.hq-about-premium__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  gap: var(--about-space-2);
}

.hq-about-premium__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 3rem;
  min-height: 3rem;
  padding: 0 1.35rem;
  box-sizing: border-box;
}

@media (max-width: 1180px) {
  .hq-about-premium__frame img {
    aspect-ratio: 4 / 3;
    object-position: center 52%;
  }
}

/* -- Tablet: stack vertically at 900px -- */
@media (max-width: 900px) {
  .hq-about-premium__shell {
    grid-template-columns: 1fr;
    gap: clamp(1.25rem, 3.5vw, 2rem);
  }
  .hq-about-premium__media {
    width: 100%;
    max-width: 560px;
    margin: 0 auto;
  }
  .hq-about-premium__frame img {
    aspect-ratio: 3 / 4;
    object-position: center 20%;
  }
  .hq-about-premium__content { align-items: flex-start; width: 100%; }
  .hq-about-premium__title { max-width: none; }
  .hq-about-premium__lead { max-width: none; }
}

/* -- Phone: professional mobile layout -- */
@media (max-width: 768px) {
  .hq-section.hq-about-premium {
    padding-top: 2.5rem !important;
    padding-bottom: 2.5rem !important;
  }
  .hq-about-premium { overflow-x: hidden; }
  .hq-about-premium__shell {
    grid-template-columns: 1fr;
    gap: 1.25rem;
  }
  .hq-about-premium__media { width: 100%; margin: 0; }
  .hq-about-premium__frame {
    border-radius: 0.875rem;
    box-shadow: 0 12px 32px rgba(2, 29, 69, 0.16);
    overflow: hidden;
  }
  .hq-about-premium__frame img {
    width: 100%;
    height: auto;
    aspect-ratio: 3 / 4;
    object-fit: cover;
    object-position: center 20%;
    display: block;
  }
  .hq-about-premium__badge {
    right: 0.6rem;
    bottom: 0.6rem;
    min-width: 5rem;
    padding: 0.5rem 0.6rem;
    border-radius: 0.625rem;
    box-shadow: 0 6px 16px rgba(232, 139, 9, 0.30);
  }
  .hq-about-premium__badge strong { font-size: 1.25rem; line-height: 1; }
  .hq-about-premium__badge span { font-size: 0.5rem; margin-top: 0.18rem; letter-spacing: 0.03em; line-height: 1.3; }
  .hq-about-premium__chip {
    left: 0.6rem;
    bottom: 0.6rem;
    max-width: calc(100% - 6.5rem);
    font-size: 0.625rem;
    padding: 0.3rem 0.55rem;
    gap: 0.3rem;
  }
  .hq-about-premium__content { align-items: flex-start; width: 100%; padding: 0; }
  .hq-about-premium__eyebrow { font-size: 0.6875rem; margin-bottom: 0.5rem; letter-spacing: 0.1em; }
  .hq-about-premium__title {
    max-width: none;
    font-size: clamp(1.375rem, 5.5vw, 1.875rem);
    line-height: 1.22;
    margin-bottom: 0.625rem;
    text-wrap: balance;
  }
  .hq-about-premium__lead {
    max-width: none;
    font-size: 0.875rem;
    line-height: 1.65;
    margin-bottom: 1rem;
    color: var(--hq-muted);
  }
  .hq-about-premium__highlights {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.5rem;
    margin-bottom: 1rem;
    width: 100%;
  }
  .hq-about-premium__highlight {
    display: flex;
    flex-direction: column;
    gap: 0.4rem;
    align-items: flex-start;
    padding: 0.7rem;
    border-radius: 0.75rem;
    min-height: unset;
    background: var(--hq-white);
    border: 1px solid var(--hq-border);
    box-shadow: 0 2px 8px rgba(2,29,69,0.06);
  }
  .hq-about-premium__highlight-icon { width: 1.875rem; height: 1.875rem; border-radius: 0.5rem; font-size: 0.8125rem; flex-shrink: 0; }
  .hq-about-premium__highlight h3 { font-size: 0.8125rem; line-height: 1.3; margin: 0 0 0.15rem; }
  .hq-about-premium__highlight p { font-size: 0.75rem; line-height: 1.45; margin: 0; color: var(--hq-muted); }
  .hq-about-premium__mv { grid-template-columns: 1fr; gap: 0.5rem; margin-bottom: 1rem; width: 100%; }
  .hq-about-premium__mv-item { padding: 0.7rem 0.875rem; border-radius: 0.75rem; border-left-width: 3px; }
  .hq-about-premium__mv-item strong { font-size: 0.65rem; margin-bottom: 0.2rem; letter-spacing: 0.08em; }
  .hq-about-premium__mv-item p { font-size: 0.8125rem; line-height: 1.5; }
  .hq-about-premium__actions { flex-direction: column; align-items: stretch; width: 100%; gap: 0.6rem; }
  .hq-about-premium__btn { width: 100%; height: 3rem; min-height: 3rem; padding: 0 1rem; border-radius: 10px; font-size: 0.9375rem; justify-content: center; text-align: center; }
}

/* -- Small phones <=480px -- */
@media (max-width: 480px) {
  .hq-section.hq-about-premium { padding-top: 2rem !important; padding-bottom: 2rem !important; }
  .hq-about-premium__frame img { aspect-ratio: 3 / 4; }
  .hq-about-premium__title { font-size: clamp(1.25rem, 5.2vw, 1.625rem); }
  .hq-about-premium__highlights { gap: 0.45rem; }
  .hq-about-premium__highlight { padding: 0.6rem; border-radius: 0.625rem; }
  .hq-about-premium__highlight-icon { width: 1.625rem; height: 1.625rem; font-size: 0.75rem; }
  .hq-about-premium__highlight h3 { font-size: 0.78rem; }
  .hq-about-premium__highlight p  { font-size: 0.71rem; }
}

/* -- Tiny phones <=380px -- */
@media (max-width: 380px) {
  .hq-section.hq-about-premium { padding-top: 1.75rem !important; padding-bottom: 1.75rem !important; }
  .hq-about-premium__shell { gap: 1rem; }
  .hq-about-premium__frame img { aspect-ratio: 3 / 4; }
  .hq-about-premium__highlights { grid-template-columns: 1fr; gap: 0.4rem; }
  .hq-about-premium__highlight { flex-direction: row; align-items: flex-start; gap: 0.5rem; padding: 0.6rem 0.65rem; }
  .hq-about-premium__title { font-size: 1.25rem; }
  .hq-about-premium__lead { font-size: 0.84375rem; }
}

/* Portfolio home */
.hq-portfolio-home__label {
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  margin-bottom: 1.25rem;
  padding: .45rem .95rem;
  border-radius: 999px;
  background: rgba(232,139,9,.1);
  color: var(--hq-orange-dark);
  font-size: .6875rem;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.hq-portfolio-home__label i { color: var(--hq-orange); }

.hq-portfolio-home__featured { margin-bottom: clamp(2.5rem, 5vw, 3.5rem); }

.hq-portfolio-home__scroll {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: minmax(280px, 320px);
  gap: 1.25rem;
  overflow-x: auto;
  padding-bottom: .75rem;
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
}

.hq-portfolio-home__scroll .hq-project { scroll-snap-align: start; }

.hq-portfolio-home__scroll::-webkit-scrollbar { height: 6px; }
.hq-portfolio-home__scroll::-webkit-scrollbar-thumb {
  background: rgba(2,29,69,.15);
  border-radius: 999px;
}

/* ═══ HOMEPAGE PORTFOLIO — Premium showcase ═══ */
.hq-hp-portfolio {
  position: relative;
  padding: var(--hq-section-y) 0;
  background: var(--hq-bg-soft);
}

/* Portfolio intro — simple split */
.hq-port-intro {
  margin-bottom: clamp(2.5rem, 5vw, 3.5rem);
}

.hq-port-intro__grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: clamp(2rem, 4vw, 3rem);
  align-items: center;
}

.hq-port-intro__kicker {
  margin: 0 0 1rem;
  color: var(--hq-orange);
  font-size: .6875rem;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.hq-port-intro__title {
  margin: 0 0 1rem;
  font-family: var(--hq-font-display);
  font-size: clamp(1.875rem, 3.8vw, 2.75rem);
  font-weight: 700;
  letter-spacing: -.035em;
  line-height: 1.08;
  color: var(--hq-navy);
}

.hq-port-intro__accent {
  display: block;
  color: var(--hq-orange-dark);
}

.hq-port-intro__desc {
  margin: 0 0 1.5rem;
  max-width: 44ch;
  color: var(--hq-muted);
  font-size: 1rem;
  line-height: 1.7;
}

.hq-port-intro__actions {
  display: flex;
  flex-wrap: wrap;
  gap: .75rem;
}

.hq-port-intro__photo {
  position: relative;
  display: block;
  border-radius: var(--hq-radius-lg);
  overflow: hidden;
  aspect-ratio: 4/3;
  box-shadow: var(--hq-shadow);
  text-decoration: none;
}

.hq-port-intro__photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .5s var(--hq-ease);
}

.hq-port-intro__photo:hover img { transform: scale(1.03); }

.hq-port-intro__photo-label {
  position: absolute;
  left: 1rem;
  bottom: 1rem;
  padding: .45rem .875rem;
  border-radius: 999px;
  background: rgba(255,255,255,.92);
  color: var(--hq-navy);
  font-size: .6875rem;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.hq-hp-portfolio__mosaic {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  gap: 1.25rem;
  margin-bottom: clamp(2.5rem, 5vw, 3.5rem);
}

.hq-hp-portfolio__hero-col { grid-column: span 7; }

.hq-hp-portfolio__side-col {
  grid-column: span 5;
  display: grid;
  gap: 1.25rem;
  align-content: stretch;
}

.hq-hp-portfolio__tiles {
  grid-column: span 12;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.25rem;
}

/* Portfolio cards */
.hq-hp-portfolio-card {
  height: 100%;
  border-radius: var(--hq-radius-lg);
  background: var(--hq-white);
  border: 1px solid rgba(2,29,69,.07);
  box-shadow: 0 4px 24px rgba(2,29,69,.06);
  overflow: hidden;
  transition: transform .35s var(--hq-ease), box-shadow .35s var(--hq-ease), border-color .35s ease;
}

.hq-hp-portfolio-card:hover {
  transform: translateY(-6px);
  border-color: rgba(232,139,9,.22);
  box-shadow: 0 24px 56px rgba(2,29,69,.12);
}

.hq-hp-portfolio-card__link {
  display: flex;
  flex-direction: column;
  height: 100%;
  color: inherit;
  text-decoration: none;
}

.hq-hp-portfolio-card__media {
  position: relative;
  margin: 0;
  overflow: hidden;
}

.hq-hp-portfolio-card--hero .hq-hp-portfolio-card__media { flex: 1; min-height: clamp(320px, 42vw, 440px); }
.hq-hp-portfolio-card--side .hq-hp-portfolio-card__media { aspect-ratio: 16/11; }
.hq-hp-portfolio-card--tile .hq-hp-portfolio-card__media { aspect-ratio: 16/10; }
.hq-hp-portfolio-card--strip .hq-hp-portfolio-card__media { aspect-ratio: 16/11; }

.hq-hp-portfolio-card__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .65s var(--hq-ease);
}

.hq-hp-portfolio-card:hover .hq-hp-portfolio-card__media img { transform: scale(1.06); }

.hq-hp-portfolio-card__shade {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(1,15,36,.05) 0%, rgba(1,15,36,.55) 100%);
  opacity: .85;
  transition: opacity .35s ease;
}

.hq-hp-portfolio-card:hover .hq-hp-portfolio-card__shade { opacity: .95; }

.hq-hp-portfolio-card__view {
  position: absolute;
  right: 1rem;
  bottom: 1rem;
  z-index: 2;
  width: 48px;
  height: 48px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: var(--hq-orange);
  color: var(--hq-white);
  font-size: 1.125rem;
  box-shadow: 0 8px 24px rgba(232,139,9,.4);
  opacity: 0;
  transform: translateY(8px) scale(.92);
  transition: opacity .3s var(--hq-ease), transform .3s var(--hq-ease);
}

.hq-hp-portfolio-card:hover .hq-hp-portfolio-card__view {
  opacity: 1;
  transform: translateY(0) scale(1);
}

.hq-hp-portfolio-card__tags {
  position: absolute;
  top: .875rem;
  left: .875rem;
  right: .875rem;
  display: flex;
  justify-content: space-between;
  gap: .5rem;
  z-index: 1;
}

.hq-hp-portfolio-card__index {
  position: absolute;
  top: .875rem;
  left: .875rem;
  z-index: 2;
  font-family: var(--hq-font-display);
  font-size: 2rem;
  font-weight: 700;
  color: rgba(255,255,255,.35);
  line-height: 1;
}

.hq-hp-portfolio-card--strip .hq-hp-portfolio-card__tags { top: auto; bottom: .875rem; left: .875rem; right: auto; }

.hq-hp-portfolio-card__body {
  padding: 1.25rem 1.375rem 1.375rem;
  display: flex;
  flex-direction: column;
  flex: 1;
}

.hq-hp-portfolio-card--hero .hq-hp-portfolio-card__body { padding: 1.375rem 1.5rem 1.5rem; }

.hq-hp-portfolio-card__meta {
  display: flex;
  flex-wrap: wrap;
  gap: .625rem 1rem;
  margin-bottom: .625rem;
}

.hq-hp-portfolio-card__meta span {
  display: inline-flex;
  align-items: center;
  gap: .35rem;
  color: var(--hq-muted);
  font-size: .6875rem;
  font-weight: 600;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.hq-hp-portfolio-card__meta i { color: var(--hq-orange); font-size: .75rem; }

.hq-hp-portfolio-card__body h3 {
  margin: 0 0 .5rem;
  font-family: var(--hq-font-display);
  font-size: clamp(1.0625rem, 1.8vw, 1.3125rem);
  font-weight: 700;
  color: var(--hq-navy);
  line-height: 1.2;
}

.hq-hp-portfolio-card--hero .hq-hp-portfolio-card__body h3 {
  font-size: clamp(1.25rem, 2.2vw, 1.625rem);
}

.hq-hp-portfolio-card__body p {
  margin: 0 0 .875rem;
  flex: 1;
  color: var(--hq-muted);
  font-size: .875rem;
  line-height: 1.65;
}

.hq-hp-portfolio-card__more {
  display: inline-flex;
  align-items: center;
  gap: .4rem;
  margin-top: auto;
  color: var(--hq-orange);
  font-size: .75rem;
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
  transition: gap .25s ease;
}

.hq-hp-portfolio-card:hover .hq-hp-portfolio-card__more { gap: .625rem; }

.hq-hp-portfolio-card--hero {
  display: flex;
  flex-direction: column;
  min-height: 100%;
}

.hq-hp-portfolio-card--hero .hq-hp-portfolio-card__link { flex: 1; }

.hq-hp-portfolio-card--strip {
  flex: 0 0 min(320px, 85vw);
  scroll-snap-align: start;
}

.hq-hp-portfolio-card--strip .hq-hp-portfolio-card__body { padding: 1.125rem 1.25rem 1.25rem; }

.hq-hp-portfolio-card--strip .hq-hp-portfolio-card__body h3 { font-size: 1.0625rem; }

.hq-hp-portfolio-card--strip .hq-hp-portfolio-card__body p {
  margin-bottom: .625rem;
  font-size: .8125rem;
}

/* Recent track */
.hq-hp-portfolio__recent { margin-bottom: clamp(2rem, 4vw, 3rem); }

.hq-hp-portfolio__recent-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 1.25rem;
  margin-bottom: 1.375rem;
}

.hq-hp-portfolio__recent-kicker {
  display: inline-flex;
  align-items: center;
  gap: .45rem;
  margin: 0 0 .5rem;
  color: var(--hq-orange-dark);
  font-size: .6875rem;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.hq-hp-portfolio__recent-kicker i { color: var(--hq-orange); }

.hq-hp-portfolio__recent-title {
  margin: 0;
  font-family: var(--hq-font-display);
  font-size: clamp(1.375rem, 2.5vw, 1.75rem);
  font-weight: 700;
  color: var(--hq-navy);
  letter-spacing: -.02em;
}

.hq-hp-portfolio__track {
  display: flex;
  gap: 1.125rem;
  overflow-x: auto;
  padding: .25rem .125rem 1rem;
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: thin;
  scrollbar-color: rgba(2,29,69,.18) transparent;
}

.hq-hp-portfolio__track::-webkit-scrollbar { height: 5px; }
.hq-hp-portfolio__track::-webkit-scrollbar-thumb {
  background: rgba(2,29,69,.14);
  border-radius: 999px;
}

.hq-hp-portfolio__track:focus-visible {
  outline: 2px solid var(--hq-orange);
  outline-offset: 4px;
  border-radius: 8px;
}

/* Bottom CTA band */
.hq-hp-portfolio__band {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 1.25rem 2rem;
  padding: clamp(1.375rem, 3vw, 1.75rem) clamp(1.5rem, 3vw, 2rem);
  border-radius: 20px;
  background: linear-gradient(135deg, var(--hq-navy) 0%, var(--hq-navy-soft) 100%);
  box-shadow: 0 20px 56px rgba(2,29,69,.2);
}

.hq-hp-portfolio__band-copy strong {
  display: block;
  color: var(--hq-white);
  font-family: var(--hq-font-display);
  font-size: clamp(1.125rem, 2vw, 1.375rem);
  font-weight: 700;
  line-height: 1.2;
}

.hq-hp-portfolio__band-copy span {
  display: block;
  margin-top: .35rem;
  color: rgba(255,255,255,.68);
  font-size: .875rem;
  max-width: 42ch;
}

.hq-hp-portfolio__band-actions {
  display: flex;
  flex-wrap: wrap;
  gap: .75rem;
}

.hq-hp-portfolio__band .hq-btn--outline {
  color: var(--hq-white);
  border-color: rgba(255,255,255,.28);
  background: rgba(255,255,255,.06);
}

.hq-hp-portfolio__band .hq-btn--outline:hover {
  border-color: rgba(232,139,9,.5);
  background: rgba(232,139,9,.12);
  color: var(--hq-white);
}

/* Why premium */
.hq-why--premium {
  position: relative;
  padding: 1.625rem 1.5rem 1.5rem;
  text-align: left;
  overflow: hidden;
}

.hq-why--premium::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: linear-gradient(90deg, var(--hq-orange), var(--hq-orange-light));
}

.hq-why__index {
  position: absolute;
  top: .75rem;
  right: 1rem;
  font-family: var(--hq-font-display);
  font-size: 2.5rem;
  font-weight: 700;
  color: rgba(2,29,69,.06);
  line-height: 1;
}

.hq-why--premium .hq-why__icon {
  margin: 0 0 1rem;
  width: 52px;
  height: 52px;
}

.hq-why-section .hq-why__shell {
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
  gap: clamp(2rem, 5vw, 4rem);
  align-items: center;
}

.hq-why__intro .hq-title,
.hq-why__intro .hq-lead,
.hq-why__intro .hq-eyebrow {
  text-align: left;
  margin-left: 0;
  margin-right: 0;
}

.hq-why__intro .hq-title { max-width: 14ch; }
.hq-why__intro .hq-lead { margin-bottom: 1.1rem; max-width: 38ch; }

.hq-why__photo {
  position: relative;
  margin: 0;
  border-radius: 1.5rem;
  overflow: hidden;
  background: var(--hq-navy-deep);
  box-shadow: 0 24px 56px rgba(2, 29, 69, 0.16);
}

.hq-why__photo img {
  width: 100%;
  aspect-ratio: 4 / 5;
  object-fit: cover;
  object-position: center 55%;
  display: block;
}

.hq-why__photo-shade {
  position: absolute;
  inset: auto 0 0;
  height: 42%;
  background: linear-gradient(180deg, transparent 0%, rgba(1, 15, 36, 0.78) 100%);
  pointer-events: none;
}

.hq-why__photo figcaption {
  position: absolute;
  z-index: 1;
  left: 1rem;
  bottom: 1rem;
  margin: 0;
  padding: 0.55rem 0.85rem;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.12);
  backdrop-filter: blur(8px);
  color: var(--hq-white);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.hq-why__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin: 0 0 1.35rem;
  padding: 0;
  list-style: none;
}

.hq-why__chips li {
  padding: 0.35rem 0.75rem;
  border-radius: 999px;
  border: 1px solid var(--hq-border);
  background: var(--hq-white);
  color: var(--hq-navy);
  font-size: 0.75rem;
  font-weight: 700;
}

.hq-why__list {
  margin: 0 0 1.5rem;
  padding: 0;
  list-style: none;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.85rem;
}

.hq-why-row {
  display: flex;
  flex-direction: column;
  gap: 0.7rem;
  min-height: 100%;
  padding: 1.15rem 1.15rem 1.2rem;
  border-radius: 1.1rem;
  background: var(--hq-white);
  border: 1px solid var(--hq-border);
  transition: border-color 0.25s ease, box-shadow 0.25s ease;
}

.hq-why-row:hover {
  border-color: rgba(232, 139, 9, 0.28);
  box-shadow: var(--hq-shadow-sm);
}

.hq-why-row__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.4rem;
  height: 2.4rem;
  border-radius: 12px;
  background: rgba(232, 139, 9, 0.1);
  color: var(--hq-orange);
  font-size: 1.1rem;
}

.hq-why-row__copy h3 {
  margin: 0 0 0.3rem;
  font-family: var(--hq-font-display);
  font-size: 1.05rem;
  line-height: 1.3;
  color: var(--hq-navy);
}

.hq-why-row__copy p {
  margin: 0;
  font-size: 0.875rem;
  line-height: 1.55;
  color: var(--hq-muted);
}

.hq-why__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
}

/* Process timeline */
.hq-process__timeline {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1.25rem;
  position: relative;
}

.hq-process__timeline::before {
  content: "";
  position: absolute;
  top: 20px;
  left: 12.5%;
  right: 12.5%;
  height: 2px;
  background: linear-gradient(90deg, var(--hq-orange), rgba(232,139,9,.25));
  z-index: 0;
}

.hq-step--timeline {
  position: relative;
  z-index: 1;
  padding: 0;
  text-align: center;
  background: transparent;
  border: 0;
  box-shadow: none;
}

.hq-step--timeline:hover { transform: none; box-shadow: none; }

.hq-step--timeline .hq-step__num {
  margin: 0 auto 1.25rem;
  box-shadow: 0 8px 24px rgba(232,139,9,.35);
}

.hq-step__body {
  padding: 1.375rem 1.25rem;
  border-radius: var(--hq-radius);
  background: var(--hq-white);
  border: 1px solid var(--hq-border);
  box-shadow: var(--hq-shadow-sm);
  transition: transform .28s var(--hq-ease), box-shadow .28s var(--hq-ease);
}

.hq-step--timeline:hover .hq-step__body {
  transform: translateY(-4px);
  box-shadow: var(--hq-shadow);
}

/* Excellence */
.hq-excellence__shell {
  display: grid;
  grid-template-columns: .95fr 1.05fr;
  gap: clamp(2rem, 5vw, 3.5rem);
  align-items: start;
}

.hq-excellence__intro .hq-title,
.hq-excellence__intro .hq-lead { text-align: left; margin-left: 0; }

.hq-excellence__intro .hq-title { max-width: 18ch; margin-bottom: 1rem; }

.hq-excellence__list {
  margin: 0 0 1.75rem;
  padding: 0;
  list-style: none;
  display: grid;
  gap: .625rem;
}

.hq-excellence__list li {
  display: flex;
  align-items: center;
  gap: .625rem;
  color: var(--hq-navy);
  font-size: .9375rem;
  font-weight: 600;
}

.hq-excellence__list i {
  color: var(--hq-orange);
  font-size: 1.125rem;
}

.hq-excellence__grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1rem;
}

.hq-excellence__card {
  padding: 1.375rem;
  border-radius: var(--hq-radius);
  background: var(--hq-white);
  border: 1px solid var(--hq-border);
  box-shadow: var(--hq-shadow-sm);
  transition: transform .28s var(--hq-ease), box-shadow .28s var(--hq-ease);
}

.hq-excellence__card:hover {
  transform: translateY(-4px);
  box-shadow: var(--hq-shadow);
}

.hq-excellence__icon {
  width: 48px;
  height: 48px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-bottom: .875rem;
  border-radius: 14px;
  background: var(--hq-navy);
  color: var(--hq-orange-light);
  font-size: 1.125rem;
}

.hq-excellence__card h3 {
  margin: 0 0 .5rem;
  font-family: var(--hq-font-display);
  font-size: 1.0625rem;
  color: var(--hq-navy);
}

.hq-excellence__card p {
  margin: 0;
  font-size: .875rem;
  color: var(--hq-muted);
  line-height: 1.65;
}

/* Testimonials — Premium homepage */
.hq-testimonials-premium {
  position: relative;
  overflow: hidden;
  padding: var(--hq-section-y) 0;
  background: linear-gradient(180deg, var(--hq-white) 0%, var(--hq-bg-soft) 100%);
}

.hq-testimonials-premium__bg {
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(ellipse 55% 45% at 100% 15%, rgba(232,139,9,.08) 0%, transparent 55%),
    radial-gradient(ellipse 45% 40% at 0% 85%, rgba(2,29,69,.06) 0%, transparent 50%);
}

.hq-testimonials-premium__shell {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, .82fr) minmax(0, 1.18fr);
  gap: clamp(2rem, 5vw, 4rem);
  align-items: start;
}

.hq-testimonials-premium__aside {
  position: sticky;
  top: calc(var(--hq-header-h) + 1.5rem);
}

.hq-testimonials-premium__kicker {
  margin: 0 0 1rem;
  color: var(--hq-orange);
  font-size: .6875rem;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.hq-testimonials-premium__title {
  margin: 0 0 1rem;
  max-width: 12ch;
  font-family: var(--hq-font-display);
  font-size: clamp(1.875rem, 3.6vw, 2.75rem);
  font-weight: 700;
  letter-spacing: -.035em;
  line-height: 1.08;
  color: var(--hq-navy);
}

.hq-testimonials-premium__lead {
  margin: 0 0 1.5rem;
  max-width: 42ch;
  color: var(--hq-muted);
  font-size: var(--hq-body);
  line-height: 1.75;
}

.hq-testimonials-premium__chips {
  display: flex;
  flex-wrap: wrap;
  gap: .5rem;
  margin: 0 0 1.75rem;
  padding: 0;
  list-style: none;
}

.hq-testimonials-premium__chips li {
  display: inline-flex;
  align-items: center;
  gap: .4rem;
  padding: .45rem .75rem;
  border-radius: 999px;
  background: var(--hq-white);
  border: 1px solid var(--hq-border);
  font-size: .75rem;
  font-weight: 600;
  color: var(--hq-navy);
}

.hq-testimonials-premium__chips i {
  color: var(--hq-orange);
  font-size: .8125rem;
}

.hq-testimonials-premium__score {
  padding: 1.25rem 1.375rem;
  border-radius: var(--hq-radius-lg);
  background: linear-gradient(135deg, var(--hq-navy) 0%, #0a2d5c 100%);
  color: #fff;
  box-shadow: 0 16px 40px rgba(2,29,69,.18);
}

.hq-testimonials-premium__score-main {
  display: flex;
  align-items: center;
  gap: .75rem;
  margin-bottom: .35rem;
}

.hq-testimonials-premium__score-main strong {
  font-family: var(--hq-font-display);
  font-size: 2.25rem;
  line-height: 1;
  letter-spacing: -.03em;
}

.hq-testimonials-premium__stars {
  display: inline-flex;
  gap: .15rem;
  font-size: .9375rem;
}

.hq-testimonials-premium__score p {
  margin: 0;
  font-size: .8125rem;
  color: rgba(255,255,255,.72);
}

.hq-testimonials-premium__stage {
  display: grid;
  gap: 1rem;
}

.hq-testimonials-premium__panel {
  position: relative;
  padding: clamp(1.5rem, 3vw, 2rem);
  border-radius: calc(var(--hq-radius-lg) + 4px);
  background: var(--hq-white);
  border: 1px solid var(--hq-border);
  box-shadow: var(--hq-shadow);
  overflow: hidden;
}

.hq-testimonials-premium__panel::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 4px;
  background: linear-gradient(90deg, var(--hq-orange), #fbbf24, var(--hq-orange));
}

.hq-testimonials-premium__carousel {
  position: relative;
  min-height: 280px;
}

.hq-testimonial-card {
  display: none;
  flex-direction: column;
  gap: 1.125rem;
  animation: hqTestimonialIn .45s ease;
}

.hq-testimonial-card.is-active {
  display: flex;
}

@keyframes hqTestimonialIn {
  from { opacity: 0; transform: translateY(12px); }
  to { opacity: 1; transform: translateY(0); }
}

.hq-testimonial-card__quote-mark {
  font-size: 2.75rem;
  line-height: 1;
  color: rgba(232,139,9,.18);
}

.hq-testimonial-card__rating {
  display: inline-flex;
  gap: .15rem;
  font-size: .9375rem;
}

.hq-testimonial-card__text {
  margin: 0;
  font-family: var(--hq-font-display);
  font-size: clamp(1.125rem, 2.2vw, 1.5rem);
  line-height: 1.65;
  letter-spacing: -.015em;
  color: var(--hq-navy);
  font-style: normal;
}

.hq-testimonial-card__author {
  display: flex;
  align-items: center;
  gap: .875rem;
  margin-top: .5rem;
  padding-top: 1.25rem;
  border-top: 1px solid var(--hq-border);
}

.hq-testimonial-card__author img,
.hq-testimonial-card__avatar {
  width: 56px;
  height: 56px;
  border-radius: 50%;
  flex-shrink: 0;
}

.hq-testimonial-card__avatar {
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, var(--hq-orange-light), var(--hq-orange));
  color: var(--hq-navy);
  font-weight: 800;
  font-size: 1.125rem;
}

.hq-testimonial-card__author cite {
  display: block;
  font-style: normal;
  font-weight: 700;
  color: var(--hq-navy);
  font-size: 1rem;
}

.hq-testimonial-card__author span {
  display: block;
  margin-top: .15rem;
  font-size: .8125rem;
  color: var(--hq-muted);
}

.hq-testimonial-card__verified {
  margin-left: auto;
  display: inline-flex;
  align-items: center;
  gap: .35rem;
  padding: .35rem .65rem;
  border-radius: 999px;
  background: rgba(34,197,94,.1);
  color: #15803d;
  font-size: .6875rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .04em;
  white-space: nowrap;
}

.hq-testimonials-premium__controls {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: .75rem;
  margin-top: 1.5rem;
  padding-top: 1.25rem;
  border-top: 1px solid var(--hq-border);
}

.hq-testimonials-premium__arrow {
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 50%;
  border: 1px solid var(--hq-border);
  background: var(--hq-white);
  color: var(--hq-navy);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: border-color .2s ease, background .2s ease, color .2s ease, transform .2s ease;
}

.hq-testimonials-premium__arrow:hover {
  border-color: rgba(232,139,9,.35);
  background: rgba(232,139,9,.08);
  color: var(--hq-orange);
}

.hq-testimonials-premium__dots {
  display: flex;
  align-items: center;
  gap: .45rem;
}

.hq-testimonials-premium__dot {
  width: .5rem;
  height: .5rem;
  padding: 0;
  border: none;
  border-radius: 999px;
  background: rgba(2,29,69,.15);
  cursor: pointer;
  transition: width .25s ease, background .25s ease;
}

.hq-testimonials-premium__dot.is-active {
  width: 1.5rem;
  background: var(--hq-orange);
}

.hq-testimonials-premium__thumbs {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: .75rem;
}

.hq-testimonial-thumb {
  display: flex;
  align-items: center;
  gap: .75rem;
  padding: .875rem 1rem;
  border-radius: var(--hq-radius);
  border: 1px solid var(--hq-border);
  background: var(--hq-white);
  text-align: left;
  cursor: pointer;
  transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.hq-testimonial-thumb:hover {
  border-color: rgba(232,139,9,.28);
  transform: translateY(-1px);
}

.hq-testimonial-thumb.is-active {
  border-color: rgba(232,139,9,.45);
  box-shadow: 0 8px 24px rgba(232,139,9,.12);
  background: linear-gradient(180deg, #fff 0%, rgba(232,139,9,.04) 100%);
}

.hq-testimonial-thumb img,
.hq-testimonial-thumb__avatar {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  flex-shrink: 0;
  object-fit: cover;
}

.hq-testimonial-thumb__avatar {
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, var(--hq-orange-light), var(--hq-orange));
  color: var(--hq-navy);
  font-weight: 800;
  font-size: .875rem;
}

.hq-testimonial-thumb__copy {
  min-width: 0;
}

.hq-testimonial-thumb__copy strong {
  display: block;
  font-size: .8125rem;
  color: var(--hq-navy);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.hq-testimonial-thumb__copy span {
  display: block;
  margin-top: .15rem;
  font-size: .6875rem;
  color: var(--hq-muted);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* FAQ — Premium */
.hq-faq-premium {
  position: relative;
  overflow: hidden;
  background: linear-gradient(180deg, var(--hq-bg-soft) 0%, var(--hq-white) 100%);
}

.hq-faq-premium__bg {
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(ellipse 60% 50% at 0% 20%, rgba(232,139,9,.07) 0%, transparent 55%),
    radial-gradient(ellipse 50% 40% at 100% 80%, rgba(2,29,69,.05) 0%, transparent 50%);
}

.hq-faq-premium__shell {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, .88fr) minmax(0, 1.12fr);
  gap: clamp(2rem, 5vw, 4rem);
  align-items: start;
}

.hq-faq-premium__aside {
  position: sticky;
  top: calc(var(--hq-header-h) + 1.5rem);
}

.hq-faq-premium__kicker {
  margin: 0 0 1rem;
  color: var(--hq-orange);
  font-size: .6875rem;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.hq-faq-premium__title {
  margin: 0 0 1rem;
  max-width: 14ch;
  font-family: var(--hq-font-display);
  font-size: clamp(1.875rem, 3.6vw, 2.75rem);
  font-weight: 700;
  letter-spacing: -.035em;
  line-height: 1.08;
  color: var(--hq-navy);
}

.hq-faq-premium__title em {
  display: block;
  font-style: normal;
  color: var(--hq-orange);
}

.hq-faq-premium__lead {
  margin: 0 0 1.5rem;
  max-width: 42ch;
  color: var(--hq-muted);
  font-size: var(--hq-body);
  line-height: 1.75;
}

.hq-faq-premium__chips {
  display: flex;
  flex-wrap: wrap;
  gap: .5rem;
  margin: 0 0 1.75rem;
  padding: 0;
  list-style: none;
}

.hq-faq-premium__chips li {
  display: inline-flex;
  align-items: center;
  gap: .4rem;
  padding: .45rem .85rem;
  border-radius: 999px;
  background: var(--hq-white);
  border: 1px solid var(--hq-border);
  box-shadow: var(--hq-shadow-sm);
  color: var(--hq-navy);
  font-size: .75rem;
  font-weight: 600;
}

.hq-faq-premium__chips i {
  color: var(--hq-orange);
  font-size: .875rem;
}

.hq-faq-premium__ask {
  position: relative;
  padding: 1.5rem;
  border-radius: var(--hq-radius-lg);
  background: linear-gradient(145deg, var(--hq-navy) 0%, var(--hq-navy-soft) 100%);
  box-shadow: 0 24px 56px rgba(2,29,69,.22);
  overflow: hidden;
}

.hq-faq-premium__ask-glow {
  position: absolute;
  top: -40%;
  right: -20%;
  width: 220px;
  height: 220px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(232,139,9,.28) 0%, transparent 70%);
  pointer-events: none;
}

.hq-faq-premium__ask-head {
  position: relative;
  display: flex;
  align-items: center;
  gap: 1rem;
  margin-bottom: 1.25rem;
}

.hq-faq-premium__ask-icon {
  width: 52px;
  height: 52px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  border-radius: 14px;
  background: rgba(232,139,9,.18);
  color: var(--hq-orange-light);
  font-size: 1.375rem;
}

.hq-faq-premium__ask-head strong {
  display: block;
  margin-bottom: .2rem;
  color: var(--hq-white);
  font-family: var(--hq-font-display);
  font-size: 1.25rem;
  font-weight: 700;
}

.hq-faq-premium__ask-head span {
  color: rgba(255,255,255,.65);
  font-size: .8125rem;
  line-height: 1.4;
}

.hq-faq-premium__ask-actions {
  position: relative;
  display: grid;
  gap: .625rem;
  margin-bottom: 1rem;
}

.hq-faq-premium__ask .hq-btn--ghost {
  border-color: rgba(255,255,255,.22);
  color: var(--hq-white);
  background: rgba(255,255,255,.06);
}

.hq-faq-premium__ask .hq-btn--ghost:hover {
  border-color: rgba(255,255,255,.35);
  background: rgba(255,255,255,.12);
  color: var(--hq-white);
}

.hq-faq-premium__ask-phone {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  color: rgba(255,255,255,.75);
  font-size: .875rem;
  font-weight: 600;
  text-decoration: none;
  transition: color .2s ease;
}

.hq-faq-premium__ask-phone:hover { color: var(--hq-orange-light); }
.hq-faq-premium__ask-phone i { color: var(--hq-orange-light); }

.hq-faq-premium__panel {
  padding: clamp(1.25rem, 2.5vw, 1.75rem);
  border-radius: var(--hq-radius-lg);
  background: var(--hq-white);
  border: 1px solid var(--hq-border);
  box-shadow: var(--hq-shadow);
}

.hq-faq-premium__panel-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 1rem;
  padding-bottom: 1rem;
  border-bottom: 1px solid var(--hq-border);
}

.hq-faq-premium__count {
  display: inline-flex;
  align-items: center;
  gap: .4rem;
  padding: .35rem .75rem;
  border-radius: 999px;
  background: rgba(232,139,9,.1);
  color: var(--hq-orange-dark);
  font-size: .6875rem;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.hq-faq-premium__hint {
  color: var(--hq-muted);
  font-size: .75rem;
}

.hq-faq__list {
  display: grid;
  gap: .625rem;
}

.hq-faq__item {
  border-radius: calc(var(--hq-radius) - 2px);
  background: var(--hq-bg-soft);
  border: 1px solid transparent;
  overflow: hidden;
  transition: border-color .25s ease, background .25s ease, box-shadow .25s ease;
}

.hq-faq__item.is-open {
  background: var(--hq-white);
  border-color: rgba(232,139,9,.22);
  box-shadow: inset 3px 0 0 var(--hq-orange), var(--hq-shadow-sm);
}

.hq-faq__toggle {
  width: 100%;
  display: grid;
  grid-template-columns: auto auto 1fr auto;
  align-items: center;
  gap: .875rem;
  padding: 1rem 1.125rem;
  border: 0;
  background: transparent;
  color: var(--hq-navy);
  font-family: var(--hq-font-body);
  font-size: .9375rem;
  font-weight: 700;
  text-align: left;
  cursor: pointer;
}

.hq-faq__num {
  font-family: var(--hq-font-display);
  font-size: .8125rem;
  font-weight: 700;
  color: rgba(2,29,69,.28);
  transition: color .25s ease;
}

.hq-faq__item.is-open .hq-faq__num { color: var(--hq-orange); }

.hq-faq__icon {
  width: 36px;
  height: 36px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  background: var(--hq-white);
  color: var(--hq-orange);
  font-size: 1rem;
  flex-shrink: 0;
  transition: background .25s ease, color .25s ease;
}

.hq-faq__item.is-open .hq-faq__icon {
  background: rgba(232,139,9,.12);
  color: var(--hq-orange-dark);
}

.hq-faq__label { line-height: 1.45; }

.hq-faq__chev {
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: var(--hq-white);
  color: var(--hq-orange);
  flex-shrink: 0;
  font-size: .875rem;
  transition: transform .3s var(--hq-ease), background .25s ease;
}

.hq-faq__item.is-open .hq-faq__chev {
  transform: rotate(45deg);
  background: rgba(232,139,9,.12);
}

.hq-faq__panel {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows .35s var(--hq-ease);
}

.hq-faq__item.is-open .hq-faq__panel { grid-template-rows: 1fr; }

.hq-faq__panel > p {
  overflow: hidden;
  margin: 0;
  padding: 0 1.125rem 0 calc(1.125rem + 2.5rem + .875rem + 36px + .875rem);
  color: var(--hq-muted);
  font-size: .9375rem;
  line-height: 1.75;
  transition: padding .35s var(--hq-ease);
}

.hq-faq__item.is-open .hq-faq__panel > p {
  padding: 0 1.125rem 1.125rem calc(1.125rem + 2.5rem + .875rem + 36px + .875rem);
}

.hq-faq-premium,
.hq-faq-premium #ask-our-team { scroll-margin-top: calc(var(--hq-header-h) + 1rem); }

/* Final CTA meta */
.hq-final__meta {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 1rem 1.75rem;
  margin-top: 2rem;
  padding-top: 1.75rem;
  border-top: 1px solid rgba(255,255,255,.12);
}

.hq-final__meta a,
.hq-final__meta span {
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  color: rgba(255,255,255,.75);
  font-size: .875rem;
  text-decoration: none;
  transition: color .2s ease;
}

.hq-final__meta a:hover { color: var(--hq-orange-light); }
.hq-final__meta i { color: var(--hq-orange-light); }

.hq-final__inner { text-align: center; }

/* ─── Responsive ─── */
@media (max-width: 1180px) {
  .hq-hero__grid { grid-template-columns: 1fr; }
  .hq-about__grid { grid-template-columns: 1fr; }
  .hq-bento__card,
  .hq-bento__card--feature,
  .hq-bento__card--wide { grid-column: span 12; grid-row: auto; min-height: 280px; }
  .hq-bento__card--feature { min-height: 360px; }
  .hq-bento-gallery { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .hq-connect__shell { grid-template-columns: 1fr; }
  .hq-port-intro__grid,
  .hq-hp-portfolio__mosaic { grid-template-columns: 1fr; }
  .hq-port-intro__photo { order: -1; }
  .hq-hp-portfolio__hero-col,
  .hq-hp-portfolio__side-col,
  .hq-hp-portfolio__tiles { grid-column: span 1; }
  .hq-hp-portfolio__tiles { grid-template-columns: 1fr 1fr; }
  .hq-hp-portfolio__recent-head { flex-direction: column; align-items: flex-start; }
  .hq-hp-portfolio__band { flex-direction: column; align-items: flex-start; }
  .hq-about-premium__shell,
  .hq-excellence__shell,
  .hq-faq-premium__shell,
  .hq-testimonials-premium__shell,
  .hq-why-section .hq-why__shell { grid-template-columns: 1fr; }
  .hq-why__photo img { aspect-ratio: 16 / 10; }
  .hq-faq-premium__aside,
  .hq-testimonials-premium__aside { position: static; }
  .hq-excellence__grid { grid-template-columns: 1fr; }
  .hq-process__timeline { grid-template-columns: repeat(2, 1fr); }
  .hq-process__timeline::before { display: none; }
  .hq-services__grid, .hq-quotes__grid, .hq-team__grid, .hq-insights__grid { grid-template-columns: repeat(2, 1fr); }
  .hq-why__grid, .hq-process__grid { grid-template-columns: repeat(2, 1fr); }
  .hq-stats__grid { grid-template-columns: repeat(3, 1fr); }
  .hq-partners__grid { grid-template-columns: repeat(3, 1fr); }
  .hq-footer__grid { grid-template-columns: 1fr 1fr; }
  .hq-projects--featured .hq-project:nth-child(n) { grid-column: span 6; }
  .hq-projects--latest .hq-projects__grid { grid-template-columns: repeat(2, 1fr); }
  .hq-contact__shell { grid-template-columns: 1fr; }
  .hq-portfolio__intro { grid-template-columns: 1fr; }
  .hq-portfolio__toolbar { flex-direction: column; align-items: stretch; }
  .hq-portfolio__card,
  .hq-portfolio__card--featured,
  .hq-portfolio__card--compact,
  .hq-portfolio__card--solo { grid-column: span 6; }
  .hq-portfolio-cta__inner { grid-template-columns: 1fr; }
  .hq-portfolio-cta__actions { flex-direction: row; flex-wrap: wrap; }
  .hq-project-detail__layout { grid-template-columns: 1fr; }
  .hq-project-detail__card { position: static; }
  .hq-project-detail__gallery-grid { grid-template-columns: repeat(2, 1fr); }
  .hq-about-page__story-grid,
  .hq-about-page__info-grid { grid-template-columns: 1fr; }
  .hq-about-page__mv-grid,
  .hq-about-page__values-grid,
  .hq-about-page__services-grid { grid-template-columns: repeat(2, 1fr); }
  .hq-about-page__process-grid { grid-template-columns: repeat(2, 1fr); }
  .hq-about-page__stats-grid { grid-template-columns: repeat(3, 1fr); }
  .hq-leadership__intro { grid-template-columns: 1fr; }
  .hq-leadership__intro-meta { align-items: flex-start; }
  .hq-leadership__traits { text-align: left; }
  .hq-leadership__traits li { justify-content: flex-start; }
  .hq-leadership__grid--three { grid-template-columns: repeat(2, 1fr); }
  .hq-testimonial-card__verified { display: none; }
}

@media (max-width: 768px) {
  .hq-testimonials-premium__thumbs { grid-template-columns: 1fr; }
  .hq-services__grid, .hq-quotes__grid, .hq-team__grid, .hq-insights__grid,
  .hq-why__grid, .hq-process__grid, .hq-partners__grid,
  .hq-projects--latest .hq-projects__grid,
  .hq-projects--featured .hq-project:nth-child(n),
  .hq-grid-2, .hq-grid-3, .hq-grid-4, .hq-form-grid { grid-template-columns: 1fr; }
  .hq-why__list { grid-template-columns: 1fr; }
  .hq-why__actions .hq-btn { flex: 1 1 12rem; justify-content: center; }
  .hq-portfolio__card,
  .hq-portfolio__card--featured,
  .hq-portfolio__card--compact,
  .hq-portfolio__card--solo { grid-column: span 12; }
  .hq-portfolio__card--compact .hq-portfolio__media { aspect-ratio: 16/10; }
  .hq-portfolio-cta__actions { flex-direction: column; }
  .hq-project-detail__gallery-grid { grid-template-columns: 1fr; }
  .hq-about-page__trust { grid-template-columns: 1fr; }
  .hq-about-page__actions { flex-direction: column; }
  .hq-about-page__actions .hq-btn { width: 100%; }
  .hq-about-page__mv-grid,
  .hq-about-page__values-grid,
  .hq-about-page__process-grid,
  .hq-about-page__services-grid,
  .hq-about-page__stats-grid { grid-template-columns: 1fr; }
  .hq-leadership__grid--three,
  .hq-leadership__grid--two,
  .hq-leadership__grid--one { grid-template-columns: 1fr; max-width: 400px; margin-left: auto; margin-right: auto; }
  .hq-stats__grid { grid-template-columns: repeat(2, 1fr); }
  .hq-faq-premium__panel-head { flex-direction: column; align-items: flex-start; gap: .35rem; }
  .hq-faq-premium__hint { display: none; }
  .hq-faq__toggle { grid-template-columns: auto 1fr auto; gap: .75rem; }
  .hq-faq__num { display: none; }
  .hq-faq__panel > p,
  .hq-faq__item.is-open .hq-faq__panel > p {
    padding-left: calc(1.125rem + 36px + .75rem);
  }
  .hq-footer__grid { grid-template-columns: 1fr; }
  .hq-footer__cta { flex-direction: column; text-align: center; }
  .hq-list-row { grid-template-columns: 1fr; text-align: center; }
  .hq-services-show { grid-template-columns: 1fr; }
  .hq-sidebar { position: static; }
  .hq-split-layout { grid-template-columns: 1fr; }
  .whatsapp-float { bottom: 1.25rem; right: 1.25rem; }
}

@media (prefers-reduced-motion: reduce) {
  .hq-trustbar__track { animation: none; }
  .hq-card, .hq-service__img img, .hq-project__img img,
  .hq-portfolio__card, .hq-portfolio__media img,
  .hq-lead-card, .hq-leader-card__photo img { transition: none; }
  .hq-portfolio__view { opacity: 1; transform: none; }
}

/* =====================================================
   About page — Premium Q&A / FAQ Section
   ===================================================== */
.hq-about-faq {
  background: var(--hq-bg-soft, #f8fafc);
  padding: clamp(4.5rem, 8vw, 6.5rem) 0;
  border-top: 1px solid rgba(2, 29, 69, 0.05);
  border-bottom: 1px solid rgba(2, 29, 69, 0.05);
  position: relative;
}

.hq-about-faq__shell {
  display: grid;
  grid-template-columns: minmax(320px, 420px) minmax(0, 1fr);
  gap: clamp(2.5rem, 5vw, 5rem);
  align-items: start;
}

/* ──── Left Column: Sticky Aside ──── */
.hq-about-faq__aside {
  position: sticky;
  top: calc(var(--hq-header-h, 72px) + 2rem);
}

.hq-about-faq__badge {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  background: rgba(230, 126, 34, 0.12);
  color: #c2610b;
  padding: 0.35rem 0.85rem;
  border-radius: 999px;
  font-size: 0.78rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  margin-bottom: 1.15rem;
  border: 1px solid rgba(230, 126, 34, 0.22);
}

.hq-about-faq__badge i {
  color: var(--hq-orange);
  font-size: 0.88rem;
}

.hq-about-faq__title {
  font-family: var(--hq-font-display, serif);
  font-size: clamp(2rem, 3.2vw, 2.75rem);
  font-weight: 800;
  line-height: 1.16;
  color: var(--hq-navy);
  margin: 0 0 1.15rem;
  letter-spacing: -0.02em;
}

.hq-about-faq__highlight {
  color: var(--hq-orange);
  position: relative;
  font-style: normal;
}

.hq-about-faq__lead {
  font-size: 1.02rem;
  line-height: 1.72;
  color: #475569;
  margin: 0 0 1.75rem;
}

.hq-about-faq__trust-points {
  list-style: none;
  padding: 0;
  margin: 0 0 2rem;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

.hq-about-faq__trust-points li {
  display: flex;
  align-items: center;
  gap: 0.65rem;
  font-size: 0.92rem;
  color: #334155;
  font-weight: 500;
}

.hq-about-faq__trust-points li i {
  color: #16a34a;
  font-size: 1.05rem;
  flex-shrink: 0;
}

/* Consultation Box */
.hq-about-faq__card {
  background: linear-gradient(145deg, #0b1a30 0%, #112240 100%);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 16px;
  padding: 1.75rem;
  box-shadow: 0 14px 34px rgba(11, 26, 48, 0.12);
  position: relative;
  overflow: hidden;
}

.hq-about-faq__card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: linear-gradient(90deg, var(--hq-orange), #f59e0b);
}

.hq-about-faq__card-header {
  display: flex;
  align-items: center;
  gap: 1rem;
  margin-bottom: 1.25rem;
}

.hq-about-faq__card-icon {
  width: 44px;
  height: 44px;
  border-radius: 12px;
  background: rgba(230, 126, 34, 0.16);
  color: var(--hq-orange);
  font-size: 1.35rem;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.hq-about-faq__card-title {
  font-size: 1.02rem;
  font-weight: 700;
  color: #ffffff;
  margin: 0 0 0.2rem;
}

.hq-about-faq__card-sub {
  font-size: 0.84rem;
  color: #94a3b8;
  margin: 0;
  line-height: 1.4;
}

.hq-about-faq__card-actions {
  display: flex;
  flex-direction: column;
  gap: 0.65rem;
}

.hq-about-faq__wa-btn {
  width: 100%;
  justify-content: center;
  font-weight: 700;
  letter-spacing: 0.02em;
  padding: 0.75rem 1.25rem;
  box-shadow: 0 4px 14px rgba(230, 126, 34, 0.35);
}

.hq-about-faq__wa-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 18px rgba(230, 126, 34, 0.45);
}

.hq-about-faq__call-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  color: #cbd5e1;
  font-size: 0.88rem;
  font-weight: 600;
  text-decoration: none;
  padding: 0.55rem;
  border-radius: 8px;
  transition: color 0.2s ease, background 0.2s ease;
}

.hq-about-faq__call-btn:hover {
  color: #ffffff;
  background: rgba(255, 255, 255, 0.08);
}

/* ──── Right Column: Accordion Items ──── */
.hq-about-faq__main {
  min-width: 0;
}

.hq-about-faq__meta-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 1.15rem;
  padding: 0 0.25rem;
}

.hq-about-faq__count {
  font-size: 0.84rem;
  font-weight: 600;
  color: #64748b;
  display: flex;
  align-items: center;
  gap: 0.4rem;
}

.hq-about-faq__hint {
  font-size: 0.8rem;
  color: #94a3b8;
  font-weight: 500;
}

.hq-about-faq__list {
  display: flex;
  flex-direction: column;
  gap: 0.875rem;
}

.hq-about-faq__list .hq-faq__item {
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 14px;
  box-shadow: 0 2px 6px rgba(11, 26, 48, 0.02);
  margin: 0;
  overflow: hidden;
  transition: border-color 0.25s ease, box-shadow 0.25s ease, transform 0.25s ease;
}

.hq-about-faq__list .hq-faq__item:hover {
  border-color: #cbd5e1;
  box-shadow: 0 8px 24px rgba(11, 26, 48, 0.06);
  transform: translateY(-1px);
}

.hq-about-faq__list .hq-faq__item.is-open {
  border-color: rgba(230, 126, 34, 0.35);
  border-left: 4px solid var(--hq-orange);
  box-shadow: 0 12px 30px rgba(11, 26, 48, 0.08);
  background: #ffffff;
  transform: translateY(-1px);
}

.hq-about-faq__list .hq-faq__toggle {
  display: grid;
  grid-template-columns: auto auto 1fr auto;
  align-items: center;
  gap: 1rem;
  padding: 1.25rem 1.35rem;
  width: 100%;
  border: none;
  background: transparent;
  cursor: pointer;
  text-align: left;
  transition: background-color 0.2s ease;
}

.hq-about-faq__list .hq-faq__toggle:focus-visible {
  outline: 2px solid var(--hq-orange);
  outline-offset: -2px;
}

.hq-about-faq__list .hq-faq__num {
  font-family: var(--hq-font-display, serif);
  font-size: 0.85rem;
  font-weight: 800;
  color: #94a3b8;
  letter-spacing: 0.05em;
  transition: color 0.25s ease;
}

.hq-about-faq__list .hq-faq__item.is-open .hq-faq__num {
  color: var(--hq-orange);
}

.hq-about-faq__list .hq-faq__icon {
  width: 38px;
  height: 38px;
  border-radius: 10px;
  background: #f8fafc;
  color: #64748b;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.05rem;
  flex-shrink: 0;
  border: 1px solid #edf2f7;
  transition: all 0.25s ease;
}

.hq-about-faq__list .hq-faq__item.is-open .hq-faq__icon {
  background: rgba(230, 126, 34, 0.12);
  color: var(--hq-orange);
  border-color: rgba(230, 126, 34, 0.2);
}

.hq-about-faq__list .hq-faq__label {
  font-size: 1.02rem;
  font-weight: 700;
  line-height: 1.42;
  color: var(--hq-navy);
  margin: 0;
  letter-spacing: -0.01em;
  transition: color 0.2s ease;
}

.hq-about-faq__list .hq-faq__item:hover .hq-faq__label {
  color: #021d45;
}

.hq-about-faq__list .hq-faq__item.is-open .hq-faq__label {
  color: var(--hq-navy);
}

.hq-about-faq__list .hq-faq__chev {
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: #f1f5f9;
  color: var(--hq-navy);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 0.9rem;
  flex-shrink: 0;
  transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1), background 0.25s ease, color 0.25s ease;
}

.hq-about-faq__list .hq-faq__item.is-open .hq-faq__chev {
  transform: rotate(45deg);
  background: var(--hq-orange);
  color: #ffffff;
}

.hq-about-faq__list .hq-faq__panel {
  display: grid;
  grid-template-rows: 0fr;
  overflow: hidden;
  transition: grid-template-rows 0.35s cubic-bezier(0.4, 0, 0.2, 1);
}

.hq-about-faq__list .hq-faq__item.is-open .hq-faq__panel {
  grid-template-rows: 1fr;
}

.hq-about-faq__list .hq-faq__panel > p {
  overflow: hidden;
  min-height: 0;
  margin: 0;
  padding: 0 1.35rem 0 calc(1.35rem + 1.25rem + 1rem + 38px + 1rem);
  font-size: 0.95rem;
  line-height: 1.78;
  color: #475569;
  visibility: hidden;
  opacity: 0;
  transition: padding 0.35s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.25s ease, visibility 0.25s ease;
}

.hq-about-faq__list .hq-faq__item.is-open .hq-faq__panel > p {
  padding: 0.25rem 1.35rem 1.35rem calc(1.35rem + 1.25rem + 1rem + 38px + 1rem);
  visibility: visible;
  opacity: 1;
}

/* ──── Responsive Layout ──── */
@media (max-width: 991px) {
  .hq-about-faq__shell {
    grid-template-columns: 1fr;
    gap: 3rem;
  }
  .hq-about-faq__aside {
    position: static;
  }
  .hq-about-faq__lead {
    margin-bottom: 1.25rem;
  }
}

@media (max-width: 640px) {
  .hq-about-faq {
    padding: 3.5rem 0;
  }
  .hq-about-faq__list .hq-faq__toggle {
    grid-template-columns: auto 1fr auto;
    gap: 0.75rem;
    padding: 1.1rem 1.15rem;
  }
  .hq-about-faq__list .hq-faq__num {
    display: none;
  }
  .hq-about-faq__list .hq-faq__panel > p {
    padding: 0 1.15rem 0 1.15rem;
  }
  .hq-about-faq__list .hq-faq__item.is-open .hq-faq__panel > p {
    padding: 0.25rem 1.15rem 1.25rem 1.15rem;
  }
  .hq-about-faq__card {
    padding: 1.35rem;
  }
}
/* =====================================================
   About page — Contact & Office Location Section
   ===================================================== */
.hq-about-contact {
  background: var(--hq-white, #ffffff);
  padding: clamp(4.5rem, 8vw, 6.5rem) 0;
  border-bottom: 1px solid rgba(2, 29, 69, 0.06);
}

.hq-about-contact__shell {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.85fr);
  gap: clamp(2.5rem, 5vw, 4.5rem);
  align-items: stretch;
}

.hq-about-contact__info {
  display: flex;
  flex-direction: column;
}

.hq-about-contact__badge {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  background: rgba(2, 29, 69, 0.05);
  color: var(--hq-navy);
  padding: 0.35rem 0.85rem;
  border-radius: 999px;
  font-size: 0.78rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  margin-bottom: 1.15rem;
  border: 1px solid rgba(2, 29, 69, 0.1);
  align-self: flex-start;
}

.hq-about-contact__badge i {
  color: var(--hq-orange);
  font-size: 0.88rem;
}

.hq-about-contact__title {
  font-family: var(--hq-font-display, serif);
  font-size: clamp(2rem, 3.2vw, 2.75rem);
  font-weight: 800;
  line-height: 1.16;
  color: var(--hq-navy);
  margin: 0 0 1.15rem;
  letter-spacing: -0.02em;
}

.hq-about-contact__highlight {
  color: var(--hq-orange);
  font-style: normal;
}

.hq-about-contact__lead {
  font-size: 1.02rem;
  line-height: 1.72;
  color: #475569;
  margin: 0 0 2rem;
}

.hq-about-contact__grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.15rem;
  margin-bottom: 2rem;
}

.hq-about-contact__card {
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 14px;
  padding: 1.25rem;
  display: flex;
  flex-direction: column;
  transition: border-color 0.25s ease, box-shadow 0.25s ease, transform 0.25s ease;
}

.hq-about-contact__card:hover {
  border-color: #cbd5e1;
  box-shadow: 0 6px 20px rgba(11, 26, 48, 0.05);
  transform: translateY(-2px);
}

.hq-about-contact__card-icon {
  width: 38px;
  height: 38px;
  border-radius: 10px;
  background: rgba(230, 126, 34, 0.12);
  color: var(--hq-orange);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.1rem;
  margin-bottom: 0.85rem;
  flex-shrink: 0;
}

.hq-about-contact__card-label {
  font-size: 0.76rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: #64748b;
  margin-bottom: 0.35rem;
  display: block;
}

.hq-about-contact__card-val {
  font-size: 0.95rem;
  font-weight: 700;
  color: var(--hq-navy);
  line-height: 1.45;
  margin: 0 0 0.35rem;
}

.hq-about-contact__card-val a {
  color: var(--hq-navy);
  text-decoration: none;
  transition: color 0.2s ease;
}

.hq-about-contact__card-val a:hover {
  color: var(--hq-orange);
}

.hq-about-contact__card-sub {
  font-size: 0.8rem;
  color: #94a3b8;
  display: block;
}

.hq-about-contact__card-link {
  font-size: 0.82rem;
  font-weight: 600;
  color: var(--hq-orange);
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  margin-top: auto;
  transition: color 0.2s ease, gap 0.2s ease;
}

.hq-about-contact__card-link:hover {
  color: var(--hq-orange-dark, #c2610b);
  gap: 0.5rem;
}

.hq-about-contact__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 1rem;
}

/* Map Frame */
.hq-about-contact__map-wrap {
  display: flex;
  flex-direction: column;
}

.hq-about-contact__map-frame {
  position: relative;
  width: 100%;
  height: 100%;
  min-height: 440px;
  border-radius: 18px;
  overflow: hidden;
  border: 1px solid #e2e8f0;
  box-shadow: 0 12px 34px rgba(11, 26, 48, 0.08);
  background: #f1f5f9;
}

.hq-about-contact__map-frame iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

.hq-about-contact__map-tag {
  position: absolute;
  bottom: 1.25rem;
  left: 1.25rem;
  background: rgba(11, 26, 48, 0.94);
  backdrop-filter: blur(8px);
  color: #ffffff;
  padding: 0.75rem 1.15rem;
  border-radius: 12px;
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.2);
  display: flex;
  align-items: center;
  gap: 0.75rem;
  z-index: 2;
  border: 1px solid rgba(255, 255, 255, 0.12);
  pointer-events: none;
}

.hq-about-contact__map-tag-dot {
  width: 10px;
  height: 10px;
  background: #22c55e;
  border-radius: 50%;
  box-shadow: 0 0 0 4px rgba(34, 197, 94, 0.25);
  flex-shrink: 0;
}

.hq-about-contact__map-tag strong {
  display: block;
  font-size: 0.88rem;
  font-weight: 700;
  color: #ffffff;
  line-height: 1.25;
}

.hq-about-contact__map-tag span {
  display: block;
  font-size: 0.75rem;
  color: #94a3b8;
  line-height: 1.25;
}

/* Responsive */
@media (max-width: 991px) {
  .hq-about-contact__shell {
    grid-template-columns: 1fr;
    gap: 3rem;
  }
  .hq-about-contact__map-frame {
    min-height: 380px;
  }
}

@media (max-width: 640px) {
  .hq-about-contact {
    padding: 3.5rem 0;
  }
  .hq-about-contact__grid {
    grid-template-columns: 1fr;
    gap: 0.875rem;
  }
  .hq-about-contact__actions {
    flex-direction: column;
    align-items: stretch;
  }
  .hq-about-contact__actions .hq-btn {
    width: 100%;
    justify-content: center;
  }
  .hq-about-contact__map-frame {
    min-height: 320px;
  }
}

/* ===================================================== */
.hq-prose { line-height: 1.8; color: var(--hq-text); }
.hq-prose p { margin: 0 0 1rem; }
.hq-empty { padding: 3rem; text-align: center; color: var(--hq-muted); background: var(--hq-bg-soft); border-radius: var(--hq-radius); }

/* ═══ SERVICES PAGE — Simple Premium ═══ */
.hq-svc-strip {
  padding: 1.75rem 0;
  background: var(--hq-white);
  border-bottom: 1px solid var(--hq-border);
}

.hq-svc-strip__list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.hq-svc-strip__list li {
  text-align: center;
  padding: .5rem;
}

.hq-svc-strip__list strong {
  display: block;
  font-family: var(--hq-font-display);
  font-size: clamp(1.5rem, 2.5vw, 2rem);
  color: var(--hq-navy);
  line-height: 1;
}

.hq-svc-strip__list span {
  display: block;
  margin-top: .35rem;
  color: var(--hq-muted);
  font-size: .8125rem;
}

.hq-svc-main__head {
  max-width: 560px;
  margin: 0 auto 2.5rem;
  text-align: center;
}

.hq-svc-main__head .hq-lead { margin-left: auto; margin-right: auto; }

.hq-svc-main__grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(min(100%, 280px), 1fr));
  gap: 1.25rem;
}

.hq-svc-card {
  border-radius: var(--hq-radius-lg);
  background: var(--hq-white);
  border: 1px solid var(--hq-border);
  transition: transform .3s var(--hq-ease), box-shadow .3s var(--hq-ease), border-color .3s var(--hq-ease);
}

.hq-svc-card:hover {
  transform: translateY(-4px);
  border-color: rgba(232,139,9,.3);
  box-shadow: 0 12px 32px rgba(2,29,69,.08);
}

.hq-svc-card__link {
  display: flex;
  flex-direction: column;
  gap: .75rem;
  height: 100%;
  padding: 1.75rem 1.5rem;
  color: inherit;
  text-decoration: none;
}

.hq-svc-card__icon {
  width: 48px;
  height: 48px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 12px;
  background: rgba(232,139,9,.1);
  color: var(--hq-orange);
  font-size: 1.25rem;
  transition: background .25s ease, color .25s ease;
}

.hq-svc-card:hover .hq-svc-card__icon {
  background: var(--hq-orange);
  color: var(--hq-white);
}

.hq-svc-card__link h3 {
  margin: 0;
  font-family: var(--hq-font-display);
  font-size: 1.125rem;
  color: var(--hq-navy);
  line-height: 1.3;
}

.hq-svc-card__link p {
  margin: 0;
  flex: 1;
  color: var(--hq-muted);
  font-size: .9375rem;
  line-height: 1.65;
}

.hq-svc-card__arrow {
  display: inline-flex;
  align-items: center;
  gap: .35rem;
  margin-top: .25rem;
  color: var(--hq-orange);
  font-size: .8125rem;
  font-weight: 700;
  transition: gap .2s ease;
}

.hq-svc-card:hover .hq-svc-card__arrow { gap: .55rem; }

.hq-svc-flow { padding: var(--hq-section-y) 0; }

.hq-svc-flow__head {
  max-width: 520px;
  margin: 0 auto 2.5rem;
  text-align: center;
}

.hq-svc-flow__head .hq-lead { margin-left: auto; margin-right: auto; }

.hq-svc-flow__steps {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1rem;
  margin: 0;
  padding: 0;
  list-style: none;
  counter-reset: svc-step;
}

.hq-svc-flow__steps li {
  display: flex;
  flex-direction: column;
  gap: .75rem;
  padding: 1.5rem 1.25rem;
  border-radius: var(--hq-radius);
  background: var(--hq-white);
  border: 1px solid var(--hq-border);
  transition: border-color .25s ease, box-shadow .25s ease;
}

.hq-svc-flow__steps li:hover {
  border-color: rgba(232,139,9,.25);
  box-shadow: var(--hq-shadow-sm);
}

.hq-svc-flow__num {
  display: inline-flex;
  width: 36px;
  height: 36px;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: var(--hq-navy);
  color: var(--hq-orange-light);
  font-family: var(--hq-font-display);
  font-size: .75rem;
  font-weight: 700;
}

.hq-svc-flow__steps h3 {
  margin: 0;
  font-size: 1rem;
  color: var(--hq-navy);
}

.hq-svc-flow__steps p {
  margin: 0;
  color: var(--hq-muted);
  font-size: .875rem;
  line-height: 1.55;
}

.hq-svc-faq__wrap {
  max-width: 720px;
  margin: 0 auto;
}

.hq-svc-faq__head {
  text-align: center;
  margin-bottom: 2rem;
}

.hq-svc-faq__head .hq-lead { margin-left: auto; margin-right: auto; }

.hq-svc-faq__list { display: grid; gap: .5rem; }

.hq-svc-faq__item {
  background: var(--hq-white);
  border: 1px solid var(--hq-border);
  border-radius: var(--hq-radius);
}

.hq-svc-faq__item.is-open {
  border-color: rgba(232,139,9,.28);
  box-shadow: inset 3px 0 0 var(--hq-orange);
}

.hq-svc-faq__item .hq-faq__toggle {
  grid-template-columns: 1fr auto;
  gap: 1rem;
}

.hq-svc-faq__item .hq-faq__panel > p {
  padding: 0 1.25rem 1.25rem;
}

.hq-svc-cta {
  padding: var(--hq-section-y) 0;
  background: var(--hq-bg-soft);
}

.hq-svc-cta__box {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 1.5rem;
  padding: clamp(2rem, 4vw, 2.75rem);
  border-radius: var(--hq-radius-lg);
  background: var(--hq-navy);
  box-shadow: var(--hq-shadow);
}

.hq-svc-cta__copy { max-width: 480px; }

.hq-svc-cta__copy .hq-title {
  margin: 0 0 .5rem;
  color: var(--hq-white);
  text-align: left;
  font-size: clamp(1.375rem, 2.5vw, 1.75rem);
}

.hq-svc-cta__copy .hq-lead {
  margin: 0;
  color: rgba(255,255,255,.72);
  text-align: left;
  font-size: .9375rem;
}

.hq-svc-cta__actions {
  display: flex;
  flex-wrap: wrap;
  gap: .75rem;
}

.hq-svc-cta__box .hq-btn--outline {
  border-color: rgba(255,255,255,.35);
  color: var(--hq-white);
}

.hq-svc-cta__box .hq-btn--outline:hover {
  border-color: var(--hq-orange);
  background: rgba(232,139,9,.12);
  color: var(--hq-white);
}

@media (max-width: 960px) {
  .hq-svc-strip__list { grid-template-columns: repeat(2, 1fr); }
  .hq-svc-flow__steps { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 640px) {
  .hq-svc-flow__steps { grid-template-columns: 1fr; }
  .hq-svc-cta__box { flex-direction: column; align-items: stretch; text-align: center; }
  .hq-svc-cta__copy .hq-title,
  .hq-svc-cta__copy .hq-lead { text-align: center; }
  .hq-svc-cta__actions { width: 100%; flex-direction: column; }
  .hq-svc-cta__actions .hq-btn { width: 100%; justify-content: center; }
}

/* ═══ ABOUT PAGE — Simple Premium ═══ */
.hq-abt-history {
  padding: var(--hq-section-y) 0;
  background: var(--hq-white);
}

.hq-abt-history__grid {
  display: grid;
  grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
  gap: clamp(2rem, 5vw, 3.5rem);
  align-items: center;
  margin-bottom: clamp(2.5rem, 5vw, 3.5rem);
}

.hq-abt-history__media {
  position: relative;
  border-radius: var(--hq-radius-lg);
  overflow: hidden;
  box-shadow: var(--hq-shadow);
}

.hq-abt-history__media img {
  width: 100%;
  aspect-ratio: 4/5;
  object-fit: cover;
  display: block;
}

.hq-abt-history__since {
  position: absolute;
  top: 1rem;
  left: 1rem;
  padding: .4rem .75rem;
  border-radius: 999px;
  background: var(--hq-navy);
  color: var(--hq-orange-light);
  font-size: .75rem;
  font-weight: 700;
  letter-spacing: .04em;
}

.hq-abt-history__copy .hq-title {
  text-align: left;
  margin-left: 0;
  max-width: 18ch;
  margin-bottom: 1rem;
}

.hq-abt-history__lead {
  text-align: left;
  margin-left: 0;
  max-width: 52ch;
  margin-bottom: 1.5rem;
}

.hq-abt-history__facts {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: .75rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.hq-abt-history__facts li {
  padding: 1rem;
  border-radius: var(--hq-radius);
  background: var(--hq-bg-soft);
  border: 1px solid var(--hq-border);
}

.hq-abt-history__facts span {
  display: block;
  margin-bottom: .25rem;
  color: var(--hq-muted);
  font-size: .75rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .05em;
}

.hq-abt-history__facts strong {
  display: block;
  color: var(--hq-navy);
  font-family: var(--hq-font-display);
  font-size: .9375rem;
  line-height: 1.35;
}

.hq-abt-history__timeline {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.hq-abt-history__timeline li {
  padding: 1.25rem;
  border-radius: var(--hq-radius);
  background: var(--hq-bg-soft);
  border: 1px solid var(--hq-border);
  border-top: 3px solid var(--hq-orange);
  transition: transform .25s var(--hq-ease), box-shadow .25s var(--hq-ease);
}

.hq-abt-history__timeline li:hover {
  transform: translateY(-3px);
  box-shadow: var(--hq-shadow-sm);
}

.hq-abt-history__year {
  display: block;
  margin-bottom: .5rem;
  font-family: var(--hq-font-display);
  font-size: 1.125rem;
  font-weight: 700;
  color: var(--hq-navy);
}

.hq-abt-history__timeline p {
  margin: 0;
  color: var(--hq-muted);
  font-size: .875rem;
  line-height: 1.6;
}

.hq-abt-mv {
  padding: var(--hq-section-y) 0;
  background: var(--hq-bg-soft);
}

.hq-abt-mv__grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.25rem;
}

.hq-abt-mv__card {
  padding: clamp(1.5rem, 3vw, 2rem);
  border-radius: var(--hq-radius-lg);
  background: var(--hq-white);
  border: 1px solid var(--hq-border);
  transition: border-color .25s ease, box-shadow .25s ease;
}

.hq-abt-mv__card:hover {
  border-color: rgba(232,139,9,.25);
  box-shadow: var(--hq-shadow-sm);
}

.hq-abt-mv__icon {
  width: 44px;
  height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 1rem;
  border-radius: 12px;
  background: rgba(232,139,9,.1);
  color: var(--hq-orange);
  font-size: 1.125rem;
}

.hq-abt-mv__card h3 {
  margin: 0 0 .625rem;
  font-family: var(--hq-font-display);
  font-size: 1.25rem;
  color: var(--hq-navy);
}

.hq-abt-mv__card p {
  margin: 0;
  color: var(--hq-muted);
  font-size: .9375rem;
  line-height: 1.7;
}

.hq-abt-head {
  max-width: 560px;
  margin: 0 auto 2.5rem;
  text-align: center;
}

.hq-abt-head .hq-lead { margin-left: auto; margin-right: auto; }

.hq-abt-values {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(min(100%, 240px), 1fr));
  gap: 1.25rem;
}

.hq-abt-value {
  padding: 1.5rem;
  border-radius: var(--hq-radius-lg);
  background: var(--hq-white);
  border: 1px solid var(--hq-border);
  transition: transform .3s var(--hq-ease), border-color .3s var(--hq-ease), box-shadow .3s var(--hq-ease);
}

.hq-abt-value:hover {
  transform: translateY(-4px);
  border-color: rgba(232,139,9,.28);
  box-shadow: var(--hq-shadow-sm);
}

.hq-abt-value__icon {
  width: 44px;
  height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: .875rem;
  border-radius: 12px;
  background: rgba(232,139,9,.1);
  color: var(--hq-orange);
  font-size: 1.125rem;
  transition: background .25s ease, color .25s ease;
}

.hq-abt-value:hover .hq-abt-value__icon {
  background: var(--hq-orange);
  color: var(--hq-white);
}

.hq-abt-value h3 {
  margin: 0 0 .5rem;
  font-family: var(--hq-font-display);
  font-size: 1.0625rem;
  color: var(--hq-navy);
}

.hq-abt-value p {
  margin: 0;
  color: var(--hq-muted);
  font-size: .9375rem;
  line-height: 1.65;
}

.hq-abt-team {
  padding: var(--hq-section-y) 0;
  background: var(--hq-white);
}

.hq-abt-team__grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(min(100%, 280px), 1fr));
  gap: 1.25rem;
}

.hq-abt-team .hq-leader-card {
  border-radius: var(--hq-radius-lg);
  overflow: hidden;
  border: 1px solid var(--hq-border);
  box-shadow: var(--hq-shadow-sm);
  transition: transform .3s var(--hq-ease), box-shadow .3s var(--hq-ease);
}

.hq-abt-team .hq-leader-card:hover {
  transform: translateY(-4px);
  box-shadow: var(--hq-shadow);
}

@media (max-width: 960px) {
  .hq-abt-history__grid { grid-template-columns: 1fr; }
  .hq-abt-history__facts { grid-template-columns: 1fr; }
  .hq-abt-history__timeline { grid-template-columns: repeat(2, 1fr); }
  .hq-abt-mv__grid { grid-template-columns: 1fr; }
}

@media (max-width: 640px) {
  .hq-abt-history__timeline { grid-template-columns: 1fr; }
}

/* ═══ ABOUT PAGE — Premium Pro (2025) ═══ */
.hq-about-pro-eyebrow {
  margin: 0 0 0.75rem;
  color: var(--hq-orange);
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.hq-about-pro-eyebrow--light { color: var(--hq-orange-light); }

.hq-about-pro-title {
  margin: 0 0 1rem;
  font-family: var(--hq-font-display);
  font-size: clamp(1.875rem, 3.5vw, 2.75rem);
  font-weight: 700;
  letter-spacing: -0.035em;
  line-height: 1.08;
  color: var(--hq-navy);
}

.hq-about-pro-lead {
  margin: 0;
  max-width: 52ch;
  color: var(--hq-muted);
  font-size: var(--hq-body);
  line-height: 1.75;
}

.hq-about-pro-section-head {
  max-width: 640px;
  margin: 0 auto 2.75rem;
  text-align: center;
}

.hq-about-pro-section-head__lead { margin-left: auto; margin-right: auto; }

.hq-about-pro-hero {
  position: relative;
  min-height: clamp(480px, 68vh, 600px);
  display: flex;
  align-items: flex-end;
  padding: calc(var(--hq-header-h) + 2rem) 0 0;
  color: #fff;
  overflow: hidden;
}

.hq-about-pro-hero__bg { position: absolute; inset: 0; }
.hq-about-pro-hero__bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 58%;
}

.hq-about-pro-hero--cinematic .hq-about-pro-hero__bg img {
  object-position: center 62%;
}

.hq-about-pro-hero__overlay {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(1, 15, 36, 0.28) 0%, rgba(2, 29, 69, 0.88) 100%),
    linear-gradient(90deg, rgba(2, 29, 69, 0.62) 0%, rgba(2, 29, 69, 0.18) 58%, transparent 100%);
}

.hq-about-pro-hero__mesh {
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse 50% 40% at 88% 12%, rgba(232, 139, 9, 0.22), transparent 55%),
    radial-gradient(circle at 8% 88%, rgba(255, 255, 255, 0.05), transparent 40%);
  pointer-events: none;
}

.hq-about-pro-hero__inner { position: relative; z-index: 1; width: 100%; padding-bottom: 2.5rem; }
.hq-about-pro-hero__content { max-width: 640px; padding-top: 1rem; }

.hq-about-pro-hero__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.hq-about-pro-hero__chips li {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  min-height: 32px;
  padding: 0.35rem 0.75rem;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.16);
  color: rgba(255, 255, 255, 0.92);
  font-size: 0.75rem;
  font-weight: 600;
}

.hq-about-pro-hero__chips i { color: var(--hq-orange-light); }

.hq-about-pro-hero__panel {
  padding: 1.25rem 1.35rem 1.15rem;
  border-radius: 20px;
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.14);
  backdrop-filter: blur(16px);
  box-shadow: 0 18px 48px rgba(1, 15, 36, 0.22);
}

.hq-about-pro-hero__panel > p {
  margin: 0 0 0.85rem;
  color: var(--hq-orange-light);
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.hq-about-pro-hero__panel dl {
  display: grid;
  gap: 0.85rem;
  margin: 0;
}

.hq-about-pro-hero__panel dl > div {
  padding-bottom: 0.85rem;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.hq-about-pro-hero__panel dl > div:last-child {
  padding-bottom: 0;
  border-bottom: 0;
}

.hq-about-pro-hero__panel dt {
  margin: 0 0 0.2rem;
  color: rgba(255, 255, 255, 0.55);
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.hq-about-pro-hero__panel dd {
  margin: 0;
  color: #fff;
  font-family: var(--hq-font-display);
  font-size: 1.05rem;
  line-height: 1.35;
}

.hq-about-pro-hero__panel-link {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  margin-top: 1rem;
  color: #fff;
  font-size: 0.8125rem;
  font-weight: 700;
  text-decoration: none;
}

.hq-about-pro-hero__panel-link:hover { color: var(--hq-orange-light); }

.hq-about-pro-hero__kicker {
  margin: 0 0 0.75rem;
  color: var(--hq-orange-light);
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.hq-about-pro-hero__title {
  margin: 0 0 1rem;
  font-family: var(--hq-font-display);
  font-size: clamp(2rem, 4.5vw, 3.25rem);
  font-weight: 700;
  letter-spacing: -0.04em;
  line-height: 1.05;
  color: #fff;
}

.hq-about-pro-hero__lead {
  margin: 0 0 1.25rem;
  max-width: 50ch;
  font-size: clamp(1rem, 2vw, 1.125rem);
  line-height: 1.75;
  color: rgba(255, 255, 255, 0.78);
}

.hq-about-pro-hero__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  gap: 0.75rem;
  margin-bottom: 1.25rem;
}

.hq-about-pro-hero__actions .hq-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 52px;
}

.hq-about-pro-hero__anchors {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.5rem;
  padding: 1rem 0;
  border-top: 1px solid rgba(255, 255, 255, 0.12);
  margin-top: 0.5rem;
}

.hq-about-pro-hero__anchors a {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  padding: 0.5rem 0.875rem;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.1);
  color: rgba(255, 255, 255, 0.82);
  font-size: 0.8125rem;
  font-weight: 600;
  text-decoration: none;
  transition: background 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}

.hq-about-pro-hero__anchors a:hover {
  background: rgba(232, 139, 9, 0.2);
  border-color: rgba(232, 139, 9, 0.35);
  color: #fff;
}

.hq-about-pro-story { padding: var(--hq-section-y) 0; background: var(--hq-bg-soft); }

.hq-about-pro-story__shell {
  display: grid;
  grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr);
  gap: clamp(2rem, 5vw, 4rem);
  align-items: center;
  margin-bottom: clamp(2.5rem, 5vw, 4rem);
}

.hq-about-pro-story__media { position: relative; }

.hq-about-pro-story__frame {
  border-radius: calc(var(--hq-radius-lg) + 4px);
  overflow: hidden;
  box-shadow: var(--hq-shadow-lg);
}

.hq-about-pro-story__frame img {
  width: 100%;
  aspect-ratio: 5/6;
  object-fit: cover;
  object-position: center 55%;
  display: block;
}

.hq-about-pro-story__badge {
  position: absolute;
  right: -0.75rem;
  bottom: 2rem;
  padding: 1rem 1.125rem;
  border-radius: 16px;
  background: linear-gradient(135deg, var(--hq-orange), var(--hq-orange-dark));
  color: #fff;
  text-align: center;
  box-shadow: 0 16px 40px rgba(232, 139, 9, 0.35);
}

.hq-about-pro-story__badge strong {
  display: block;
  font-family: var(--hq-font-display);
  font-size: 2rem;
  line-height: 1;
}

.hq-about-pro-story__badge span {
  display: block;
  margin-top: 0.25rem;
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.hq-about-pro-story__chip {
  position: absolute;
  top: 1rem;
  left: 1rem;
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  padding: 0.45rem 0.75rem;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.94);
  border: 1px solid var(--hq-border);
  font-size: 0.75rem;
  font-weight: 600;
  color: var(--hq-navy);
  box-shadow: var(--hq-shadow-sm);
}

.hq-about-pro-story__chip i { color: var(--hq-orange); }
.hq-about-pro-story__copy .hq-about-pro-title { text-align: left; max-width: 18ch; }
.hq-about-pro-story__copy .hq-about-pro-lead { margin-bottom: 1.5rem; }

.hq-about-pro-facts {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0.75rem;
  margin: 0 0 1.5rem;
  padding: 0;
  list-style: none;
}

.hq-about-pro-facts li {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 88px;
  padding: 1rem;
  border-radius: var(--hq-radius);
  background: var(--hq-white);
  border: 1px solid var(--hq-border);
  box-shadow: var(--hq-shadow-sm);
}

.hq-about-pro-facts span {
  display: block;
  margin-bottom: 0.25rem;
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--hq-muted);
}

.hq-about-pro-facts strong {
  display: block;
  font-family: var(--hq-font-display);
  font-size: 0.9375rem;
  color: var(--hq-navy);
  line-height: 1.35;
}

.hq-about-pro-story__actions { display: flex; flex-wrap: wrap; align-items: center; gap: 1rem; }

.hq-about-pro-link {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--hq-navy);
  text-decoration: none;
}

.hq-about-pro-link i { color: var(--hq-orange); }
.hq-about-pro-link:hover { color: var(--hq-orange); }

.hq-about-pro-timeline {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0.75rem;
  margin: 0;
  padding: 0.5rem 0 0;
  list-style: none;
  position: relative;
}

.hq-about-pro-timeline[data-count="2"] {
  grid-template-columns: repeat(2, minmax(0, 28rem));
  justify-content: center;
}

.hq-about-pro-timeline[data-count="3"] {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.hq-about-pro-timeline::before { display: none; }

.hq-about-pro-timeline li {
  position: relative;
  padding: 1.25rem 1.15rem;
  text-align: left;
  border-radius: var(--hq-radius);
  background: var(--hq-white);
  border: 1px solid var(--hq-border);
  box-shadow: var(--hq-shadow-sm);
}

.hq-about-pro-timeline__dot { display: none; }

.hq-about-pro-timeline__year {
  display: block;
  margin-bottom: 0.5rem;
  font-family: var(--hq-font-display);
  font-size: 1.125rem;
  font-weight: 700;
  color: var(--hq-orange);
}

.hq-about-pro-timeline p { margin: 0; font-size: 0.8125rem; line-height: 1.6; color: var(--hq-muted); }

.hq-about-pro-stats {
  padding: 0 0 var(--hq-section-y);
  background:
    radial-gradient(ellipse 50% 80% at 100% 0%, rgba(232, 139, 9, 0.12), transparent 50%),
    linear-gradient(135deg, var(--hq-navy) 0%, #0a2d5c 100%);
}

.hq-about-pro-stats__grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0.75rem;
  margin: 0;
  padding: clamp(1.75rem, 3vw, 2.25rem) 0 0;
  list-style: none;
}

.hq-about-pro-stats__grid li {
  padding: clamp(1.25rem, 2.5vw, 1.75rem) 1rem;
  text-align: center;
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.04);
}

.hq-about-pro-stats__grid li:last-child { border-right: none; }

.hq-about-pro-stats__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  margin-bottom: 0.75rem;
  border-radius: 10px;
  background: rgba(232, 139, 9, 0.15);
  color: var(--hq-orange-light);
  font-size: 1.125rem;
}

.hq-about-pro-stats__grid strong {
  display: block;
  font-family: var(--hq-font-display);
  font-size: clamp(1.75rem, 3vw, 2.25rem);
  font-weight: 700;
  color: #fff;
  line-height: 1.1;
}

.hq-about-pro-stats__grid > li > span:last-child {
  display: block;
  margin-top: 0.35rem;
  font-size: 0.8125rem;
  color: rgba(255, 255, 255, 0.62);
  font-weight: 500;
}

.hq-about-pro-mv { padding: var(--hq-section-y) 0; background: var(--hq-bg-soft); }
.hq-about-pro-mv__grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1.25rem; }

.hq-about-pro-mv__card {
  position: relative;
  padding: clamp(1.75rem, 3vw, 2.35rem);
  border-radius: calc(var(--hq-radius-lg) + 2px);
  background: var(--hq-white);
  border: 1px solid var(--hq-border);
  overflow: hidden;
  box-shadow: var(--hq-shadow-sm);
  transition: transform 0.25s var(--hq-ease), box-shadow 0.25s var(--hq-ease);
}

.hq-about-pro-mv__card--mission {
  background: linear-gradient(165deg, var(--hq-navy) 0%, #0a2d5c 100%);
  border-color: transparent;
  color: #fff;
}

.hq-about-pro-mv__card--mission .hq-about-pro-eyebrow { color: var(--hq-orange-light); }
.hq-about-pro-mv__card--mission .hq-about-pro-mv__icon {
  background: rgba(232, 139, 9, 0.16);
  color: var(--hq-orange-light);
}

.hq-about-pro-mv__card::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 4px;
  background: linear-gradient(90deg, var(--hq-orange), #fbbf24);
}

.hq-about-pro-mv__card:hover { transform: translateY(-4px); box-shadow: var(--hq-shadow-md); }

.hq-about-pro-mv__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 3rem;
  height: 3rem;
  margin-bottom: 1rem;
  border-radius: 14px;
  background: rgba(232, 139, 9, 0.1);
  color: var(--hq-orange);
  font-size: 1.25rem;
}

.hq-about-pro-mv__card h3 {
  margin: 0 0 0.75rem;
  font-family: var(--hq-font-display);
  font-size: 1.375rem;
  color: var(--hq-navy);
}

.hq-about-pro-mv__card > p:last-child {
  margin: 0;
  color: var(--hq-muted);
  font-size: 0.96875rem;
  line-height: 1.75;
}

.hq-about-pro-mv__card--mission h3 { color: #fff; }
.hq-about-pro-mv__card--mission > p:last-child { color: rgba(255, 255, 255, 0.78); }

.hq-about-pro-values { position: relative; padding: var(--hq-section-y) 0; background: var(--hq-white); overflow: hidden; }

.hq-about-pro-values__bg { display: none; }

.hq-about-pro-values__grid {
  position: relative;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1rem;
}

.hq-about-pro-value {
  position: relative;
  display: flex;
  flex-direction: column;
  height: 100%;
  padding: 1.5rem 1.25rem;
  border-radius: var(--hq-radius);
  background: var(--hq-bg-soft);
  border: 1px solid var(--hq-border);
  box-shadow: var(--hq-shadow-sm);
  transition: transform 0.25s var(--hq-ease), box-shadow 0.25s var(--hq-ease), border-color 0.25s ease;
}

.hq-about-pro-value__index {
  position: absolute;
  top: 1.15rem;
  right: 1.15rem;
  color: rgba(2, 29, 69, 0.12);
  font-family: var(--hq-font-display);
  font-size: 1.25rem;
  font-weight: 700;
  letter-spacing: -0.03em;
}

.hq-about-pro-value:hover {
  transform: translateY(-4px);
  border-color: rgba(232, 139, 9, 0.28);
  box-shadow: var(--hq-shadow);
}

.hq-about-pro-value__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.75rem;
  height: 2.75rem;
  margin-bottom: 1rem;
  border-radius: 12px;
  background: linear-gradient(135deg, rgba(232, 139, 9, 0.12), rgba(232, 139, 9, 0.04));
  color: var(--hq-orange);
  font-size: 1.125rem;
  transition: background 0.25s ease, color 0.25s ease;
}

.hq-about-pro-value:hover .hq-about-pro-value__icon { background: var(--hq-orange); color: #fff; }

.hq-about-pro-value h3 {
  margin: 0 0 0.5rem;
  font-family: var(--hq-font-display);
  font-size: 1.0625rem;
  color: var(--hq-navy);
}

.hq-about-pro-value p { margin: 0; font-size: 0.875rem; line-height: 1.65; color: var(--hq-muted); }

.hq-about-pro-process { padding: var(--hq-section-y) 0; background: var(--hq-bg-soft); }

.hq-about-pro-process__shell {
  display: grid;
  grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.05fr);
  gap: clamp(2rem, 4vw, 3rem);
  align-items: start;
}

.hq-about-pro-process__head .hq-about-pro-title { text-align: left; max-width: 16ch; }
.hq-about-pro-process__head .hq-about-pro-lead { margin-bottom: 0; }

.hq-about-pro-process__steps {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0.75rem;
  margin: 0;
  padding: 0;
  list-style: none;
  counter-reset: none;
}

.hq-about-pro-process__steps li {
  position: relative;
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 1rem;
  padding: 1.125rem;
  border-radius: var(--hq-radius);
  background: var(--hq-white);
  border: 1px solid var(--hq-border);
}

.hq-about-pro-process__steps li:not(:last-child)::after { display: none; }

.hq-about-pro-process__steps li:hover { transform: none; box-shadow: var(--hq-shadow-sm); }

.hq-about-pro-process__num {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.25rem;
  height: 2.25rem;
  margin-bottom: 0;
  border-radius: 50%;
  background: var(--hq-navy);
  color: var(--hq-orange-light);
  font-family: var(--hq-font-display);
  font-size: 0.75rem;
  font-weight: 700;
}

.hq-about-pro-process__steps h3 { margin: 0 0 0.25rem; font-size: 0.9375rem; font-weight: 700; color: var(--hq-navy); }
.hq-about-pro-process__steps p { margin: 0; font-size: 0.8125rem; line-height: 1.55; color: var(--hq-muted); }

.hq-about-pro-team { padding: var(--hq-section-y) 0; background: var(--hq-bg-soft); }

.hq-about-pro-team__grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(min(100%, 300px), 1fr));
  gap: 1.25rem;
}

.hq-about-pro-team__grid--pair {
  max-width: 860px;
  margin: 0 auto;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.hq-about-pro-team .hq-leader-card {
  border-radius: var(--hq-radius-lg);
  overflow: hidden;
  border: 1px solid var(--hq-border);
  background: var(--hq-white);
  box-shadow: var(--hq-shadow-sm);
  transition: transform 0.3s var(--hq-ease), box-shadow 0.3s var(--hq-ease);
}

.hq-about-pro-team .hq-leader-card:hover { transform: translateY(-6px); box-shadow: var(--hq-shadow-md); }

.hq-about-pro-quotes { padding: var(--hq-section-y) 0; background: var(--hq-white); }
.hq-about-pro-quotes__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.25rem; }

.hq-about-pro-quote {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 0.875rem;
  padding: 1.75rem;
  border-radius: var(--hq-radius-lg);
  background: var(--hq-bg-soft);
  border: 1px solid var(--hq-border);
  min-height: 100%;
  transition: transform 0.25s var(--hq-ease), box-shadow 0.25s var(--hq-ease);
}

.hq-about-pro-quote:hover { transform: translateY(-4px); box-shadow: var(--hq-shadow); }
.hq-about-pro-quote__mark { font-size: 2rem; line-height: 1; color: rgba(232, 139, 9, 0.2); }
.hq-about-pro-quote__stars { font-size: 0.875rem; }

.hq-about-pro-quote blockquote {
  margin: 0;
  flex: 1;
  font-family: var(--hq-font-display);
  font-size: 1.0625rem;
  line-height: 1.65;
  color: var(--hq-navy);
  font-style: normal;
}

.hq-about-pro-quote footer {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding-top: 0.75rem;
  border-top: 1px solid var(--hq-border);
}

.hq-about-pro-quote footer img,
.hq-about-pro-quote__avatar {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  flex-shrink: 0;
  object-fit: cover;
}

.hq-about-pro-quote__avatar {
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, var(--hq-orange-light), var(--hq-orange));
  color: var(--hq-navy);
  font-weight: 800;
}

.hq-about-pro-quote cite {
  display: block;
  font-style: normal;
  font-weight: 700;
  color: var(--hq-navy);
  font-size: 0.875rem;
}

.hq-about-pro-quote footer span { display: block; margin-top: 0.1rem; font-size: 0.75rem; color: var(--hq-muted); }

.hq-about-pro-cta { position: relative; padding: var(--hq-section-y) 0; overflow: hidden; }

.hq-about-pro-cta__bg {
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse 50% 80% at 0% 50%, rgba(232, 139, 9, 0.15), transparent 55%),
    linear-gradient(135deg, var(--hq-navy) 0%, #031a3d 50%, #0a2d5c 100%);
}

.hq-about-pro-cta__box {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
  padding: clamp(2rem, 4vw, 3rem);
  border-radius: calc(var(--hq-radius-lg) + 4px);
  border: 1px solid rgba(255, 255, 255, 0.1);
  background: rgba(255, 255, 255, 0.04);
  backdrop-filter: blur(8px);
}

.hq-about-pro-cta__copy { max-width: 520px; }

.hq-about-pro-cta__title {
  margin: 0 0 0.75rem;
  font-family: var(--hq-font-display);
  font-size: clamp(1.75rem, 3vw, 2.25rem);
  font-weight: 700;
  color: #fff;
  line-height: 1.12;
}

.hq-about-pro-cta__lead { margin: 0; font-size: 1rem; line-height: 1.7; color: rgba(255, 255, 255, 0.72); }
.hq-about-pro-cta__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  gap: 0.75rem;
}

.hq-about-pro-cta__actions .hq-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 52px;
}

@media (max-width: 1024px) {
  .hq-about-pro-story__shell { grid-template-columns: 1fr; }
  .hq-about-pro-story__frame img { aspect-ratio: 16/10; }
  .hq-about-pro-story__badge { right: 1rem; bottom: 1rem; }
  .hq-about-pro-timeline,
  .hq-about-pro-timeline[data-count="2"],
  .hq-about-pro-timeline[data-count="3"] { grid-template-columns: repeat(2, 1fr); }
  .hq-about-pro-stats { padding-bottom: clamp(3rem, 6vw, 4.5rem); }
  .hq-about-pro-stats__grid { grid-template-columns: repeat(2, 1fr); }
  .hq-about-pro-mv__grid { grid-template-columns: 1fr; }
  .hq-about-pro-values__grid { grid-template-columns: repeat(2, 1fr); }
  .hq-about-pro-process__shell { grid-template-columns: 1fr; }
  .hq-about-pro-quotes__grid { grid-template-columns: 1fr; }
  .hq-about-pro-cta__box { flex-direction: column; align-items: stretch; text-align: center; }
  .hq-about-pro-cta__actions { justify-content: center; }
}

@media (max-width: 640px) {
  .hq-about-pro-hero { min-height: auto; }
  .hq-about-pro-hero__actions { flex-direction: column; }
  .hq-about-pro-hero__actions .hq-btn { width: 100%; justify-content: center; }
  .hq-about-pro-facts { grid-template-columns: 1fr; }
  .hq-about-pro-timeline,
  .hq-about-pro-timeline[data-count="2"],
  .hq-about-pro-timeline[data-count="3"] { grid-template-columns: 1fr; }
  .hq-about-pro-stats__grid { grid-template-columns: repeat(2, 1fr); }
  .hq-about-pro-values__grid { grid-template-columns: 1fr; }
  .hq-about-pro-team__grid--pair { grid-template-columns: 1fr; }
  .hq-about-pro-story__actions { flex-direction: column; align-items: stretch; }
  .hq-about-pro-story__actions .hq-btn { width: 100%; justify-content: center; }
  .hq-about-pro-cta__actions { flex-direction: column; }
  .hq-about-pro-cta__actions .hq-btn { width: 100%; justify-content: center; }
}

/* ═══ PAINTS — Premium Pro ═══ */
.hq-paints-pro-eyebrow {
  margin: 0 0 0.75rem;
  color: var(--hq-orange);
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.hq-paints-pro-eyebrow--light { color: var(--hq-orange-light); }

.hq-paints-pro-title {
  margin: 0 0 1rem;
  font-family: var(--hq-font-display);
  font-size: clamp(1.875rem, 3.5vw, 2.75rem);
  font-weight: 700;
  letter-spacing: -0.035em;
  line-height: 1.08;
  color: var(--hq-navy);
}

.hq-paints-pro-lead {
  margin: 0;
  max-width: 52ch;
  color: var(--hq-muted);
  font-size: var(--hq-body);
  line-height: 1.75;
}

.hq-paints-pro-section-head {
  max-width: 640px;
  margin: 0 auto 2rem;
  text-align: center;
}

.hq-paints-pro-section-head__lead { margin-left: auto; margin-right: auto; }

.hq-paints-pro-hero {
  position: relative;
  min-height: clamp(460px, 65vh, 580px);
  display: flex;
  align-items: flex-end;
  padding: calc(var(--hq-header-h) + 2rem) 0 0;
  color: #fff;
  overflow: hidden;
}

.hq-paints-pro-hero--product { min-height: clamp(380px, 55vh, 480px); }

.hq-paints-pro-hero__bg { position: absolute; inset: 0; }
.hq-paints-pro-hero__bg img { width: 100%; height: 100%; object-fit: cover; object-position: center; }

.hq-paints-pro-hero__overlay {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(1, 15, 36, 0.4) 0%, rgba(2, 29, 69, 0.88) 100%),
    linear-gradient(135deg, rgba(2, 29, 69, 0.6) 0%, transparent 50%);
}

.hq-paints-pro-hero__inner { position: relative; z-index: 1; width: 100%; padding-bottom: 2rem; }
.hq-paints-pro-hero__content { max-width: 680px; padding-top: 1rem; }

.hq-paints-pro-hero__kicker {
  margin: 0 0 0.75rem;
  color: var(--hq-orange-light);
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.hq-paints-pro-hero__title {
  margin: 0 0 1rem;
  font-family: var(--hq-font-display);
  font-size: clamp(2rem, 4.5vw, 3.25rem);
  font-weight: 700;
  letter-spacing: -0.04em;
  line-height: 1.05;
  color: #fff;
}

.hq-paints-pro-hero__lead {
  margin: 0 0 1.5rem;
  max-width: 48ch;
  font-size: clamp(1rem, 2vw, 1.125rem);
  line-height: 1.75;
  color: rgba(255, 255, 255, 0.78);
}

.hq-paints-pro-hero__actions { display: flex; flex-wrap: wrap; gap: 0.75rem; }

.hq-paints-pro-product__brand {
  display: inline-block;
  margin-bottom: 0.75rem;
  padding: 0.35rem 0.75rem;
  border-radius: 999px;
  background: rgba(232, 139, 9, 0.2);
  border: 1px solid rgba(232, 139, 9, 0.35);
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--hq-orange-light);
}

.hq-paints-pro-product__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}

.hq-paints-pro-product__chips span {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  padding: 0.4rem 0.75rem;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.1);
  font-size: 0.8125rem;
  font-weight: 600;
  color: rgba(255, 255, 255, 0.88);
}

.hq-paints-pro-product__price-chip {
  background: rgba(232, 139, 9, 0.2) !important;
  border: 1px solid rgba(232, 139, 9, 0.3);
}

.hq-paints-pro-intro {
  padding: var(--hq-section-y) 0;
  background: var(--hq-white);
  border-bottom: 1px solid var(--hq-border);
}

.hq-paints-pro-intro__shell {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  justify-content: space-between;
  gap: 2rem;
}

.hq-paints-pro-intro__copy { max-width: 560px; }
.hq-paints-pro-intro__copy .hq-paints-pro-title { text-align: left; max-width: 18ch; }

.hq-paints-pro-intro__stats {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
}

.hq-paints-pro-stat {
  min-width: 6.5rem;
  padding: 1rem 1.25rem;
  border-radius: var(--hq-radius);
  background: var(--hq-bg-soft);
  border: 1px solid var(--hq-border);
  text-align: center;
}

.hq-paints-pro-stat strong {
  display: block;
  font-family: var(--hq-font-display);
  font-size: 1.75rem;
  color: var(--hq-navy);
  line-height: 1.1;
}

.hq-paints-pro-stat span {
  display: block;
  margin-top: 0.25rem;
  font-size: 0.75rem;
  font-weight: 600;
  color: var(--hq-muted);
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.hq-paints-pro-benefits {
  padding: 2rem 0;
  background: var(--hq-bg-soft);
}

.hq-paints-pro-benefits__grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1rem;
}

.hq-paints-pro-benefit {
  padding: 1.25rem;
  border-radius: var(--hq-radius);
  background: var(--hq-white);
  border: 1px solid var(--hq-border);
  transition: transform 0.25s var(--hq-ease), box-shadow 0.25s var(--hq-ease);
}

.hq-paints-pro-benefit:hover {
  transform: translateY(-3px);
  box-shadow: var(--hq-shadow-sm);
}

.hq-paints-pro-benefit__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  margin-bottom: 0.75rem;
  border-radius: 10px;
  background: rgba(232, 139, 9, 0.1);
  color: var(--hq-orange);
  font-size: 1.125rem;
}

.hq-paints-pro-benefit h3 {
  margin: 0 0 0.35rem;
  font-size: 0.9375rem;
  font-weight: 700;
  color: var(--hq-navy);
}

.hq-paints-pro-benefit p {
  margin: 0;
  font-size: 0.8125rem;
  line-height: 1.55;
  color: var(--hq-muted);
}

.hq-paints-pro-catalog {
  padding: var(--hq-section-y) 0;
  background: var(--hq-white);
}

.hq-paints-pro-toolbar {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  gap: 1.25rem;
  padding: 1.25rem;
  margin-bottom: 1rem;
  border-radius: var(--hq-radius-lg);
  background: var(--hq-bg-soft);
  border: 1px solid var(--hq-border);
}

.hq-paints-pro-toolbar__group { flex: 1; min-width: min(100%, 260px); }

.hq-paints-pro-toolbar__label {
  display: block;
  margin-bottom: 0.5rem;
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--hq-muted);
}

.hq-paints-pro-filters {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
}

.hq-paints-pro-filter {
  padding: 0.4rem 0.85rem;
  border-radius: 999px;
  border: 1px solid var(--hq-border);
  background: var(--hq-white);
  color: var(--hq-muted);
  font-size: 0.8125rem;
  font-weight: 600;
  text-decoration: none;
  transition: border-color 0.2s ease, color 0.2s ease, background 0.2s ease;
}

.hq-paints-pro-filter:hover {
  color: var(--hq-navy);
  border-color: rgba(2, 29, 69, 0.15);
}

.hq-paints-pro-filter.is-active {
  background: rgba(232, 139, 9, 0.1);
  border-color: rgba(232, 139, 9, 0.35);
  color: var(--hq-orange-dark);
}

.hq-paints-pro-clear {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  padding: 0.5rem 0.875rem;
  border-radius: 999px;
  background: rgba(232, 139, 9, 0.1);
  color: var(--hq-orange-dark);
  font-size: 0.8125rem;
  font-weight: 600;
  text-decoration: none;
}

.hq-paints-pro-count {
  margin: 0 0 1.25rem;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--hq-muted);
}

.hq-paints-pro-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.25rem;
}

.hq-paints-pro-card {
  display: flex;
  flex-direction: column;
  border-radius: var(--hq-radius-lg);
  background: var(--hq-white);
  border: 1px solid var(--hq-border);
  overflow: hidden;
  transition: transform 0.25s var(--hq-ease), box-shadow 0.25s var(--hq-ease);
}

.hq-paints-pro-card:hover {
  transform: translateY(-5px);
  box-shadow: var(--hq-shadow-md);
}

.hq-paints-pro-card__media {
  position: relative;
  display: block;
  overflow: hidden;
}

.hq-paints-pro-card__media img {
  width: 100%;
  aspect-ratio: 4/3;
  object-fit: cover;
  display: block;
  transition: transform 0.35s var(--hq-ease);
}

.hq-paints-pro-card:hover .hq-paints-pro-card__media img {
  transform: scale(1.04);
}

.hq-paints-pro-card__cat {
  position: absolute;
  top: 0.75rem;
  left: 0.75rem;
  padding: 0.3rem 0.65rem;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.94);
  font-size: 0.6875rem;
  font-weight: 700;
  color: var(--hq-navy);
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.hq-paints-pro-card__body {
  display: flex;
  flex-direction: column;
  flex: 1;
  padding: 1.25rem;
}

.hq-paints-pro-card__brand {
  display: inline-block;
  margin-bottom: 0.35rem;
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--hq-orange);
}

.hq-paints-pro-card__body h3 {
  margin: 0 0 0.5rem;
  font-family: var(--hq-font-display);
  font-size: 1.125rem;
  line-height: 1.3;
}

.hq-paints-pro-card__body h3 a {
  color: var(--hq-navy);
  text-decoration: none;
}

.hq-paints-pro-card__body h3 a:hover { color: var(--hq-orange); }

.hq-paints-pro-card__body > p {
  margin: 0 0 0.75rem;
  flex: 1;
  font-size: 0.875rem;
  line-height: 1.55;
  color: var(--hq-muted);
}

.hq-paints-pro-card__tags {
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem;
  margin: 0 0 1rem;
  padding: 0;
  list-style: none;
}

.hq-paints-pro-card__tags li {
  padding: 0.2rem 0.5rem;
  border-radius: 6px;
  background: var(--hq-bg-soft);
  font-size: 0.6875rem;
  font-weight: 600;
  color: var(--hq-muted);
}

.hq-paints-pro-card__foot {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  padding-top: 0.75rem;
  border-top: 1px solid var(--hq-border);
}

.hq-paints-pro-card__price {
  font-family: var(--hq-font-display);
  font-size: 1.0625rem;
  font-weight: 700;
  color: var(--hq-navy);
}

.hq-paints-pro-card__price small {
  font-family: var(--hq-font-body, inherit);
  font-size: 0.75rem;
  font-weight: 500;
  color: var(--hq-muted);
}

.hq-paints-pro-card__link {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  font-size: 0.8125rem;
  font-weight: 700;
  color: var(--hq-orange);
  text-decoration: none;
}

.hq-paints-pro-empty {
  text-align: center;
  padding: 3rem 1.5rem;
  border-radius: var(--hq-radius-lg);
  background: var(--hq-bg-soft);
  border: 1px dashed var(--hq-border);
}

.hq-paints-pro-empty__icon {
  display: inline-flex;
  width: 4rem;
  height: 4rem;
  align-items: center;
  justify-content: center;
  margin-bottom: 1rem;
  border-radius: 50%;
  background: rgba(232, 139, 9, 0.1);
  color: var(--hq-orange);
  font-size: 1.5rem;
}

.hq-paints-pro-empty h3 { margin: 0 0 0.5rem; color: var(--hq-navy); }
.hq-paints-pro-empty p { margin: 0 0 1.25rem; color: var(--hq-muted); }

.hq-paints-pro-guide {
  padding: var(--hq-section-y) 0;
  background: var(--hq-bg-soft);
}

.hq-paints-pro-guide__shell {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 0.9fr);
  gap: clamp(2rem, 4vw, 3rem);
  align-items: start;
}

.hq-paints-pro-guide__copy .hq-paints-pro-title { text-align: left; max-width: 16ch; }
.hq-paints-pro-guide__copy .hq-paints-pro-lead { margin-bottom: 1.25rem; }

.hq-paints-pro-guide__list {
  margin: 0;
  padding: 0;
  list-style: none;
}

.hq-paints-pro-guide__list li {
  display: flex;
  align-items: flex-start;
  gap: 0.65rem;
  padding: 0.5rem 0;
  font-size: 0.9375rem;
  line-height: 1.55;
  color: var(--hq-text);
}

.hq-paints-pro-guide__list i {
  flex-shrink: 0;
  margin-top: 0.15rem;
  color: var(--hq-orange);
}

.hq-paints-pro-guide__cards {
  display: grid;
  gap: 0.75rem;
}

.hq-paints-pro-guide__card {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 0.35rem 1rem;
  padding: 1.125rem;
  border-radius: var(--hq-radius);
  background: var(--hq-white);
  border: 1px solid var(--hq-border);
}

.hq-paints-pro-guide__card > i {
  grid-row: span 2;
  font-size: 1.35rem;
  color: var(--hq-orange);
}

.hq-paints-pro-guide__card strong {
  font-size: 0.9375rem;
  color: var(--hq-navy);
}

.hq-paints-pro-guide__card span {
  font-size: 0.8125rem;
  line-height: 1.5;
  color: var(--hq-muted);
}

.hq-paints-pro-cta {
  position: relative;
  padding: var(--hq-section-y) 0;
  overflow: hidden;
}

.hq-paints-pro-cta__bg {
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse 50% 80% at 100% 50%, rgba(232, 139, 9, 0.12), transparent 55%),
    linear-gradient(135deg, var(--hq-navy) 0%, #0a2d5c 100%);
}

.hq-paints-pro-cta__box {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
  padding: clamp(2rem, 4vw, 3rem);
  border-radius: calc(var(--hq-radius-lg) + 4px);
  border: 1px solid rgba(255, 255, 255, 0.1);
  background: rgba(255, 255, 255, 0.04);
}

.hq-paints-pro-cta__title {
  margin: 0 0 0.75rem;
  font-family: var(--hq-font-display);
  font-size: clamp(1.75rem, 3vw, 2.25rem);
  font-weight: 700;
  color: #fff;
  line-height: 1.12;
}

.hq-paints-pro-cta__lead {
  margin: 0;
  max-width: 42ch;
  font-size: 1rem;
  line-height: 1.7;
  color: rgba(255, 255, 255, 0.72);
}

.hq-paints-pro-cta__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
}

/* Product detail */
.hq-paints-pro-detail {
  padding: var(--hq-section-y) 0;
  background: var(--hq-white);
}

.hq-paints-pro-detail__layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 320px;
  gap: clamp(2rem, 4vw, 3rem);
  align-items: start;
}

.hq-paints-pro-detail__hero-img {
  width: 100%;
  border-radius: var(--hq-radius-lg);
  aspect-ratio: 16/10;
  object-fit: cover;
  display: block;
  box-shadow: var(--hq-shadow);
}

.hq-paints-pro-detail__thumbs {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin-top: 0.75rem;
}

.hq-paints-pro-detail__thumb {
  padding: 0;
  border: 2px solid transparent;
  border-radius: 10px;
  overflow: hidden;
  cursor: pointer;
  background: none;
  transition: border-color 0.2s ease;
}

.hq-paints-pro-detail__thumb.is-active,
.hq-paints-pro-detail__thumb:hover {
  border-color: var(--hq-orange);
}

.hq-paints-pro-detail__thumb img {
  width: 72px;
  height: 54px;
  object-fit: cover;
  display: block;
}

.hq-paints-pro-detail__heading {
  margin: 2rem 0 1rem;
  font-family: var(--hq-font-display);
  font-size: 1.375rem;
  color: var(--hq-navy);
}

.hq-paints-pro-detail__gallery + .hq-paints-pro-detail__content .hq-paints-pro-detail__heading {
  margin-top: 0;
}

.hq-paints-pro-detail__prose {
  color: var(--hq-muted);
  line-height: 1.8;
  font-size: 0.96875rem;
}

.hq-paints-pro-detail__prose p { margin: 0 0 1rem; }

.hq-paints-pro-features {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0.65rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.hq-paints-pro-features li {
  display: flex;
  align-items: flex-start;
  gap: 0.5rem;
  padding: 0.75rem;
  border-radius: var(--hq-radius);
  background: var(--hq-bg-soft);
  font-size: 0.875rem;
  color: var(--hq-text);
}

.hq-paints-pro-features i {
  flex-shrink: 0;
  color: #16a34a;
  margin-top: 0.1rem;
}

.hq-paints-pro-specs-table-wrap {
  border-radius: var(--hq-radius);
  border: 1px solid var(--hq-border);
  overflow: hidden;
}

.hq-paints-pro-specs-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.9375rem;
}

.hq-paints-pro-specs-table th,
.hq-paints-pro-specs-table td {
  padding: 0.875rem 1.125rem;
  text-align: left;
  border-bottom: 1px solid var(--hq-border);
}

.hq-paints-pro-specs-table tr:last-child th,
.hq-paints-pro-specs-table tr:last-child td {
  border-bottom: none;
}

.hq-paints-pro-specs-table th {
  width: 38%;
  font-weight: 600;
  color: var(--hq-navy);
  background: var(--hq-bg-soft);
}

.hq-paints-pro-specs-table td {
  color: var(--hq-muted);
}

.hq-paints-pro-tips {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0.75rem;
}

.hq-paints-pro-tip {
  display: flex;
  gap: 0.875rem;
  padding: 1rem;
  border-radius: var(--hq-radius);
  background: var(--hq-bg-soft);
  border: 1px solid var(--hq-border);
}

.hq-paints-pro-tip__icon {
  flex-shrink: 0;
  width: 2.25rem;
  height: 2.25rem;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 8px;
  background: rgba(232, 139, 9, 0.1);
  color: var(--hq-orange);
}

.hq-paints-pro-tip strong {
  display: block;
  margin-bottom: 0.2rem;
  font-size: 0.875rem;
  color: var(--hq-navy);
}

.hq-paints-pro-tip p {
  margin: 0;
  font-size: 0.8125rem;
  line-height: 1.5;
  color: var(--hq-muted);
}

.hq-paints-pro-detail__aside {
  position: sticky;
  top: calc(var(--hq-header-h) + 1.25rem);
  display: grid;
  gap: 1rem;
}

.hq-paints-pro-enquiry {
  padding: 1.5rem;
  border-radius: var(--hq-radius-lg);
  background: var(--hq-bg-soft);
  border: 1px solid var(--hq-border);
  box-shadow: var(--hq-shadow-sm);
}

.hq-paints-pro-enquiry h3 {
  margin: 0 0 0.5rem;
  font-family: var(--hq-font-display);
  font-size: 1.25rem;
  color: var(--hq-navy);
}

.hq-paints-pro-enquiry > p {
  margin: 0 0 1.25rem;
  font-size: 0.875rem;
  line-height: 1.55;
  color: var(--hq-muted);
}

.hq-paints-pro-enquiry__price {
  padding: 1rem;
  margin-bottom: 1rem;
  border-radius: var(--hq-radius);
  background: var(--hq-white);
  border: 1px solid var(--hq-border);
  text-align: center;
}

.hq-paints-pro-enquiry__price span {
  display: block;
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--hq-muted);
}

.hq-paints-pro-enquiry__price strong {
  display: block;
  margin: 0.25rem 0;
  font-family: var(--hq-font-display);
  font-size: 1.75rem;
  color: var(--hq-navy);
}

.hq-paints-pro-enquiry__price em {
  font-style: normal;
  font-size: 0.8125rem;
  color: var(--hq-muted);
}

.hq-paints-pro-enquiry__actions {
  display: grid;
  gap: 0.625rem;
}

.hq-paints-pro-enquiry__phone {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.4rem;
  margin-top: 0.75rem;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--hq-navy);
  text-decoration: none;
}

.hq-paints-pro-enquiry__phone i { color: var(--hq-orange); }

.hq-paints-pro-enquiry__quick {
  display: grid;
  gap: 0.65rem;
  margin: 1.25rem 0 0;
  padding-top: 1.25rem;
  border-top: 1px solid var(--hq-border);
}

.hq-paints-pro-enquiry__quick div {
  display: grid;
  gap: 0.15rem;
}

.hq-paints-pro-enquiry__quick dt {
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--hq-muted);
}

.hq-paints-pro-enquiry__quick dd {
  margin: 0;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--hq-navy);
}

.hq-paints-pro-aside-note {
  padding: 1.125rem;
  border-radius: var(--hq-radius);
  background: rgba(232, 139, 9, 0.06);
  border: 1px solid rgba(232, 139, 9, 0.15);
}

.hq-paints-pro-aside-note h4 {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  margin: 0 0 0.5rem;
  font-size: 0.875rem;
  color: var(--hq-navy);
}

.hq-paints-pro-aside-note h4 i { color: var(--hq-orange); }

.hq-paints-pro-aside-note p {
  margin: 0;
  font-size: 0.8125rem;
  line-height: 1.55;
  color: var(--hq-muted);
}

.hq-paints-pro-related {
  padding: var(--hq-section-y) 0;
  background: var(--hq-bg-soft);
}

.hq-paints-pro-related__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1rem;
}

.hq-paints-pro-related__card {
  display: grid;
  grid-template-columns: 80px 1fr auto;
  gap: 0.875rem;
  align-items: center;
  padding: 0.875rem;
  border-radius: var(--hq-radius);
  background: var(--hq-white);
  border: 1px solid var(--hq-border);
  text-decoration: none;
  color: inherit;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.hq-paints-pro-related__card:hover {
  transform: translateY(-2px);
  box-shadow: var(--hq-shadow-sm);
}

.hq-paints-pro-related__card img {
  width: 80px;
  height: 64px;
  border-radius: 8px;
  object-fit: cover;
}

.hq-paints-pro-related__card span {
  display: block;
  font-size: 0.6875rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--hq-orange);
}

.hq-paints-pro-related__card strong {
  display: block;
  font-size: 0.875rem;
  color: var(--hq-navy);
  line-height: 1.35;
}

.hq-paints-pro-related__card > i {
  color: var(--hq-muted);
  font-size: 1rem;
}

.hq-paints-pro-related__back {
  margin-top: 1.5rem;
  text-align: center;
}

@media (max-width: 1024px) {
  .hq-paints-pro-benefits__grid { grid-template-columns: repeat(2, 1fr); }
  .hq-paints-pro-grid { grid-template-columns: repeat(2, 1fr); }
  .hq-paints-pro-guide__shell { grid-template-columns: 1fr; }
  .hq-paints-pro-detail__layout { grid-template-columns: 1fr; }
  .hq-paints-pro-detail__aside { position: static; }
  .hq-paints-pro-related__grid { grid-template-columns: 1fr; }
  .hq-paints-pro-cta__box { flex-direction: column; text-align: center; }
  .hq-paints-pro-cta__actions { justify-content: center; }
}

@media (max-width: 640px) {
  .hq-paints-pro-hero__actions { flex-direction: column; }
  .hq-paints-pro-hero__actions .hq-btn { width: 100%; justify-content: center; }
  .hq-paints-pro-benefits__grid,
  .hq-paints-pro-grid { grid-template-columns: 1fr; }
  .hq-paints-pro-features,
  .hq-paints-pro-tips { grid-template-columns: 1fr; }
  .hq-paints-pro-toolbar { flex-direction: column; align-items: stretch; }
  .hq-paints-pro-cta__actions { flex-direction: column; width: 100%; }
  .hq-paints-pro-cta__actions .hq-btn { width: 100%; justify-content: center; }
}

/* ═══ SERVICES — Premium Pro ═══ */
.hq-services-pro-eyebrow {
  margin: 0 0 0.75rem;
  color: var(--hq-orange);
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.hq-services-pro-eyebrow--light { color: var(--hq-orange-light); }

.hq-services-pro-title {
  margin: 0 0 1rem;
  font-family: var(--hq-font-display);
  font-size: clamp(1.875rem, 3.5vw, 2.75rem);
  font-weight: 700;
  letter-spacing: -0.035em;
  line-height: 1.08;
  color: var(--hq-navy);
}

.hq-services-pro-lead {
  margin: 0;
  max-width: 52ch;
  color: var(--hq-muted);
  font-size: var(--hq-body);
  line-height: 1.75;
}

.hq-services-pro-section-head {
  max-width: 640px;
  margin: 0 auto 2rem;
  text-align: center;
}

.hq-services-pro-section-head__lead { margin-left: auto; margin-right: auto; }

.hq-services-pro-hero {
  position: relative;
  min-height: clamp(480px, 68vh, 600px);
  display: flex;
  align-items: flex-end;
  padding: calc(var(--hq-header-h) + 2rem) 0 0;
  color: #fff;
  overflow: hidden;
}

.hq-services-pro-hero--service { min-height: clamp(380px, 55vh, 480px); }

.hq-services-pro-hero__bg { position: absolute; inset: 0; }
.hq-services-pro-hero__bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 58%;
}

.hq-services-pro-hero--cinematic .hq-services-pro-hero__bg img {
  object-position: center 62%;
}

.hq-services-pro-hero__overlay {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(1, 15, 36, 0.28) 0%, rgba(2, 29, 69, 0.88) 100%),
    linear-gradient(90deg, rgba(2, 29, 69, 0.62) 0%, rgba(2, 29, 69, 0.18) 58%, transparent 100%);
}

.hq-services-pro-hero__inner { position: relative; z-index: 1; width: 100%; padding-bottom: 2.5rem; }
.hq-services-pro-hero__content { max-width: 640px; padding-top: 1rem; }

.hq-services-pro-hero__kicker {
  margin: 0 0 0.75rem;
  color: var(--hq-orange-light);
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.hq-services-pro-hero__title {
  margin: 0 0 1rem;
  font-family: var(--hq-font-display);
  font-size: clamp(2rem, 4.5vw, 3.25rem);
  font-weight: 700;
  letter-spacing: -0.04em;
  line-height: 1.05;
  color: #fff;
}

.hq-services-pro-hero__lead {
  margin: 0 0 1.25rem;
  max-width: 50ch;
  font-size: clamp(1rem, 2vw, 1.125rem);
  line-height: 1.75;
  color: rgba(255, 255, 255, 0.78);
}

.hq-services-pro-hero__chips,
.hq-services-pro-hero__badges {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.hq-services-pro-hero__chips li,
.hq-services-pro-hero__badges li {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  min-height: 32px;
  padding: 0.35rem 0.75rem;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.16);
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.01em;
  color: rgba(255, 255, 255, 0.92);
}

.hq-services-pro-hero__chips i,
.hq-services-pro-hero__badges i { color: var(--hq-orange-light); font-size: 0.8125rem; }

.hq-services-pro-hero__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  gap: 0.75rem;
  margin-bottom: 1.25rem;
}

.hq-services-pro-hero__actions .hq-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 52px;
}

.hq-services-pro-service__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 3rem;
  height: 3rem;
  margin-bottom: 0.875rem;
  border-radius: 12px;
  background: rgba(232, 139, 9, 0.2);
  border: 1px solid rgba(232, 139, 9, 0.35);
  color: var(--hq-orange-light);
  font-size: 1.35rem;
}

.hq-services-pro-intro {
  padding: var(--hq-section-y) 0;
  background: var(--hq-white);
  border-bottom: 1px solid var(--hq-border);
}

.hq-services-pro-intro__shell {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  justify-content: space-between;
  gap: 2rem;
}

.hq-services-pro-intro__copy { max-width: 560px; }
.hq-services-pro-intro__copy .hq-services-pro-title { text-align: left; max-width: 16ch; }

.hq-services-pro-intro__stats {
  display: grid;
  grid-template-columns: repeat(4, minmax(6rem, 1fr));
  gap: 0.75rem;
}

.hq-services-pro-stat {
  padding: 1.05rem 1.125rem 1rem;
  border-radius: var(--hq-radius);
  background: var(--hq-bg-soft);
  border: 1px solid var(--hq-border);
  text-align: left;
}

.hq-services-pro-stat strong {
  display: block;
  font-family: var(--hq-font-display);
  font-size: 1.625rem;
  color: var(--hq-navy);
  line-height: 1.1;
}

.hq-services-pro-stat span {
  display: block;
  margin-top: 0.25rem;
  font-size: 0.6875rem;
  font-weight: 600;
  color: var(--hq-muted);
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.hq-services-pro-pillars {
  padding: 2rem 0;
  background: var(--hq-bg-soft);
}

.hq-services-pro-pillars__grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1rem;
}

.hq-services-pro-pillar {
  padding: 1.25rem;
  border-radius: var(--hq-radius);
  background: var(--hq-white);
  border: 1px solid var(--hq-border);
  transition: transform 0.25s var(--hq-ease), box-shadow 0.25s var(--hq-ease);
}

.hq-services-pro-pillar:hover {
  transform: translateY(-3px);
  box-shadow: var(--hq-shadow-sm);
}

.hq-services-pro-pillar__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  margin-bottom: 0.75rem;
  border-radius: 10px;
  background: rgba(232, 139, 9, 0.1);
  color: var(--hq-orange);
  font-size: 1.125rem;
}

.hq-services-pro-pillar h3 {
  margin: 0 0 0.35rem;
  font-size: 0.9375rem;
  font-weight: 700;
  color: var(--hq-navy);
}

.hq-services-pro-pillar p {
  margin: 0;
  font-size: 0.8125rem;
  line-height: 1.55;
  color: var(--hq-muted);
}

.hq-services-pro-catalog {
  padding: var(--hq-section-y) 0;
  background: var(--hq-bg-soft);
}

.hq-services-pro-count {
  margin: 0 0 1.25rem;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--hq-muted);
}

.hq-services-pro-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.25rem;
}

.hq-services-pro-card {
  display: flex;
  flex-direction: column;
  border-radius: var(--hq-radius-lg);
  background: var(--hq-white);
  border: 1px solid var(--hq-border);
  overflow: hidden;
  transition: transform 0.25s var(--hq-ease), box-shadow 0.25s var(--hq-ease);
}

.hq-services-pro-card:hover {
  transform: translateY(-5px);
  box-shadow: var(--hq-shadow-md);
}

.hq-services-pro-card__media {
  position: relative;
  display: block;
  overflow: hidden;
}

.hq-services-pro-card__media img {
  width: 100%;
  aspect-ratio: 16/10;
  object-fit: cover;
  display: block;
  transition: transform 0.35s var(--hq-ease);
}

.hq-services-pro-card:hover .hq-services-pro-card__media img { transform: scale(1.04); }

.hq-services-pro-card__badge {
  position: absolute;
  top: 0.75rem;
  left: 0.75rem;
  padding: 0.3rem 0.65rem;
  border-radius: 999px;
  background: var(--hq-orange);
  font-size: 0.6875rem;
  font-weight: 700;
  color: #fff;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.hq-services-pro-card__icon {
  position: absolute;
  bottom: 0.75rem;
  right: 0.75rem;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.94);
  color: var(--hq-orange);
  font-size: 1.125rem;
  box-shadow: var(--hq-shadow-sm);
}

.hq-services-pro-card__body {
  display: flex;
  flex-direction: column;
  flex: 1;
  padding: 1.25rem;
}

.hq-services-pro-card__body h3 {
  margin: 0 0 0.5rem;
  font-family: var(--hq-font-display);
  font-size: 1.125rem;
  line-height: 1.3;
}

.hq-services-pro-card__body h3 a {
  color: var(--hq-navy);
  text-decoration: none;
}

.hq-services-pro-card__body h3 a:hover { color: var(--hq-orange); }

.hq-services-pro-card__body > p {
  margin: 0 0 1rem;
  flex: 1;
  font-size: 0.875rem;
  line-height: 1.55;
  color: var(--hq-muted);
}

.hq-services-pro-card__link {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  font-size: 0.8125rem;
  font-weight: 700;
  color: var(--hq-orange);
  text-decoration: none;
}

.hq-services-pro-empty {
  text-align: center;
  padding: 3rem 1.5rem;
  border-radius: var(--hq-radius-lg);
  background: var(--hq-bg-soft);
  border: 1px dashed var(--hq-border);
}

.hq-services-pro-empty__icon {
  display: inline-flex;
  width: 4rem;
  height: 4rem;
  align-items: center;
  justify-content: center;
  margin-bottom: 1rem;
  border-radius: 50%;
  background: rgba(232, 139, 9, 0.1);
  color: var(--hq-orange);
  font-size: 1.5rem;
}

.hq-services-pro-empty h3 { margin: 0 0 0.5rem; color: var(--hq-navy); }
.hq-services-pro-empty p { margin: 0 0 1.25rem; color: var(--hq-muted); }

.hq-services-pro-scope {
  padding: var(--hq-section-y) 0;
  background: var(--hq-bg-soft);
}

.hq-services-pro-scope__shell {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 0.85fr);
  gap: clamp(2rem, 4vw, 3rem);
  align-items: start;
}

.hq-services-pro-scope__copy .hq-services-pro-title { text-align: left; max-width: 18ch; }
.hq-services-pro-scope__copy .hq-services-pro-lead { margin-bottom: 1.25rem; }

.hq-services-pro-scope__list {
  margin: 0 0 1.5rem;
  padding: 0;
  list-style: none;
}

.hq-services-pro-scope__list li {
  display: flex;
  align-items: flex-start;
  gap: 0.65rem;
  padding: 0.45rem 0;
  font-size: 0.9375rem;
  line-height: 1.55;
  color: var(--hq-text);
}

.hq-services-pro-scope__list i {
  flex-shrink: 0;
  margin-top: 0.15rem;
  color: var(--hq-orange);
}

.hq-services-pro-scope__cards { display: grid; gap: 0.75rem; }

.hq-services-pro-scope__card {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 0.35rem 1rem;
  padding: 1.125rem;
  border-radius: var(--hq-radius);
  background: var(--hq-white);
  border: 1px solid var(--hq-border);
}

.hq-services-pro-scope__card > i {
  grid-row: span 2;
  font-size: 1.35rem;
  color: var(--hq-orange);
}

.hq-services-pro-scope__card strong {
  font-size: 0.9375rem;
  color: var(--hq-navy);
}

.hq-services-pro-scope__card span {
  font-size: 0.8125rem;
  line-height: 1.5;
  color: var(--hq-muted);
}

.hq-services-pro-process {
  padding: var(--hq-section-y) 0;
  background: var(--hq-bg-soft);
}

.hq-services-pro-process__shell {
  display: grid;
  grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.05fr);
  gap: clamp(2rem, 4vw, 3rem);
  align-items: start;
}

.hq-services-pro-process__head .hq-services-pro-title { text-align: left; max-width: 16ch; }
.hq-services-pro-process__head .hq-services-pro-lead { margin-bottom: 0; }

.hq-services-pro-process__steps {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0.75rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.hq-services-pro-process__steps li {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 1rem;
  padding: 1.125rem;
  border-radius: var(--hq-radius);
  background: var(--hq-white);
  border: 1px solid var(--hq-border);
  transition: border-color 0.25s ease, box-shadow 0.25s ease;
}

.hq-services-pro-process__steps li:hover {
  border-color: rgba(232, 139, 9, 0.28);
  box-shadow: var(--hq-shadow-sm);
}

.hq-services-pro-process__num {
  display: inline-flex;
  width: 2.25rem;
  height: 2.25rem;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: var(--hq-navy);
  color: var(--hq-orange-light);
  font-family: var(--hq-font-display);
  font-size: 0.75rem;
  font-weight: 700;
}

.hq-services-pro-process__steps h3 {
  margin: 0;
  font-size: 1rem;
  color: var(--hq-navy);
}

.hq-services-pro-process__steps p {
  margin: 0;
  font-size: 0.875rem;
  line-height: 1.55;
  color: var(--hq-muted);
}

.hq-services-pro-faq {
  padding: var(--hq-section-y) 0;
  background: var(--hq-bg-soft);
}

.hq-services-pro-faq__shell {
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
  gap: clamp(2rem, 4vw, 3rem);
  align-items: start;
}

.hq-services-pro-faq__head .hq-services-pro-title { text-align: left; max-width: 14ch; }

.hq-services-pro-faq__list { display: grid; gap: 0.5rem; }

.hq-services-pro-faq__item {
  background: var(--hq-white);
  border: 1px solid var(--hq-border);
  border-radius: var(--hq-radius);
}

.hq-services-pro-faq__item.is-open {
  border-color: rgba(232, 139, 9, 0.28);
  box-shadow: inset 3px 0 0 var(--hq-orange);
}

.hq-services-pro-faq__item .hq-faq__toggle {
  display: grid;
  grid-template-columns: auto 1fr auto;
  gap: 0.75rem;
  align-items: center;
}

.hq-services-pro-faq__icon {
  color: var(--hq-orange);
  font-size: 1rem;
}

.hq-services-pro-faq__item .hq-faq__panel > p {
  padding: 0 1.25rem 1.25rem;
}

.hq-services-pro-cta {
  position: relative;
  padding: var(--hq-section-y) 0;
  overflow: hidden;
}

.hq-services-pro-cta__bg {
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse 50% 80% at 100% 50%, rgba(232, 139, 9, 0.12), transparent 55%),
    linear-gradient(135deg, var(--hq-navy) 0%, #0a2d5c 100%);
}

.hq-services-pro-cta__box {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
  padding: clamp(2rem, 4vw, 3rem);
  border-radius: calc(var(--hq-radius-lg) + 4px);
  border: 1px solid rgba(255, 255, 255, 0.1);
  background: rgba(255, 255, 255, 0.04);
}

.hq-services-pro-cta__title {
  margin: 0 0 0.75rem;
  font-family: var(--hq-font-display);
  font-size: clamp(1.75rem, 3vw, 2.25rem);
  font-weight: 700;
  color: #fff;
  line-height: 1.12;
}

.hq-services-pro-cta__lead {
  margin: 0;
  max-width: 42ch;
  font-size: 1rem;
  line-height: 1.7;
  color: rgba(255, 255, 255, 0.72);
}

.hq-services-pro-cta__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  gap: 0.75rem;
}

.hq-services-pro-cta__actions .hq-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 52px;
}

.hq-services-pro-cta__phone {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  padding: 0.5rem 0.875rem;
  font-size: 0.875rem;
  font-weight: 600;
  color: rgba(255, 255, 255, 0.88);
  text-decoration: none;
}

.hq-services-pro-cta__phone i { color: var(--hq-orange-light); }

/* Service detail */
.hq-services-pro-detail {
  padding: var(--hq-section-y) 0;
  background: var(--hq-white);
}

.hq-services-pro-detail__layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 300px;
  gap: clamp(2rem, 4vw, 3rem);
  align-items: start;
}

.hq-services-pro-detail__hero-img {
  width: 100%;
  border-radius: var(--hq-radius-lg);
  aspect-ratio: 16/10;
  object-fit: cover;
  display: block;
  box-shadow: var(--hq-shadow);
}

.hq-services-pro-detail__heading {
  margin: 2rem 0 1rem;
  font-family: var(--hq-font-display);
  font-size: 1.375rem;
  color: var(--hq-navy);
}

.hq-services-pro-detail__gallery + .hq-services-pro-detail__content .hq-services-pro-detail__heading {
  margin-top: 0;
}

.hq-services-pro-detail__prose {
  color: var(--hq-muted);
  line-height: 1.8;
  font-size: 0.96875rem;
}

.hq-services-pro-deliverables {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0.65rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.hq-services-pro-deliverables li {
  display: flex;
  align-items: flex-start;
  gap: 0.5rem;
  padding: 0.75rem;
  border-radius: var(--hq-radius);
  background: var(--hq-bg-soft);
  font-size: 0.875rem;
  color: var(--hq-text);
}

.hq-services-pro-deliverables i {
  flex-shrink: 0;
  color: #16a34a;
  margin-top: 0.1rem;
}

.hq-services-pro-detail__steps {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0.75rem;
}

.hq-services-pro-detail__step {
  display: flex;
  gap: 0.875rem;
  padding: 1rem;
  border-radius: var(--hq-radius);
  background: var(--hq-bg-soft);
  border: 1px solid var(--hq-border);
}

.hq-services-pro-detail__step-icon {
  flex-shrink: 0;
  width: 2.25rem;
  height: 2.25rem;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 8px;
  background: rgba(232, 139, 9, 0.1);
  color: var(--hq-orange);
}

.hq-services-pro-detail__step strong {
  display: block;
  margin-bottom: 0.2rem;
  font-size: 0.875rem;
  color: var(--hq-navy);
}

.hq-services-pro-detail__step p {
  margin: 0;
  font-size: 0.8125rem;
  line-height: 1.5;
  color: var(--hq-muted);
}

.hq-services-pro-detail__ideal {
  margin-top: 0.5rem;
  padding: 1.25rem;
  border-radius: var(--hq-radius);
  background: rgba(232, 139, 9, 0.06);
  border: 1px solid rgba(232, 139, 9, 0.15);
}

.hq-services-pro-detail__ideal h3 {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  margin: 0 0 0.5rem;
  font-size: 0.9375rem;
  color: var(--hq-navy);
}

.hq-services-pro-detail__ideal h3 i { color: var(--hq-orange); }

.hq-services-pro-detail__ideal p {
  margin: 0;
  font-size: 0.875rem;
  line-height: 1.6;
  color: var(--hq-muted);
}

.hq-services-pro-detail__aside {
  position: sticky;
  top: calc(var(--hq-header-h) + 1.25rem);
  display: grid;
  gap: 1rem;
}

.hq-services-pro-nav {
  padding: 1rem;
  border-radius: var(--hq-radius-lg);
  background: var(--hq-bg-soft);
  border: 1px solid var(--hq-border);
}

.hq-services-pro-nav > strong {
  display: block;
  padding: 0.5rem 0.75rem 0.75rem;
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--hq-muted);
}

.hq-services-pro-nav__link {
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 0.5rem;
  padding: 0.65rem 0.75rem;
  border-radius: 10px;
  font-size: 0.8125rem;
  font-weight: 600;
  color: var(--hq-muted);
  text-decoration: none;
  transition: background 0.2s ease, color 0.2s ease;
}

.hq-services-pro-nav__link:hover {
  background: var(--hq-white);
  color: var(--hq-navy);
}

.hq-services-pro-nav__link.is-active {
  background: var(--hq-white);
  color: var(--hq-navy);
  box-shadow: inset 3px 0 0 var(--hq-orange);
}

.hq-services-pro-nav__link > i:first-child { color: var(--hq-orange); }

.hq-services-pro-enquiry {
  padding: 1.5rem;
  border-radius: var(--hq-radius-lg);
  background: var(--hq-bg-soft);
  border: 1px solid var(--hq-border);
  box-shadow: var(--hq-shadow-sm);
}

.hq-services-pro-enquiry h3 {
  margin: 0 0 0.5rem;
  font-family: var(--hq-font-display);
  font-size: 1.25rem;
  color: var(--hq-navy);
}

.hq-services-pro-enquiry > p {
  margin: 0 0 1.25rem;
  font-size: 0.875rem;
  line-height: 1.55;
  color: var(--hq-muted);
}

.hq-services-pro-enquiry__actions { display: grid; gap: 0.625rem; }

.hq-services-pro-enquiry__phone {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.4rem;
  margin-top: 0.25rem;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--hq-navy);
  text-decoration: none;
}

.hq-services-pro-enquiry__phone i { color: var(--hq-orange); }

.hq-services-pro-aside-note {
  padding: 1.125rem;
  border-radius: var(--hq-radius);
  background: rgba(232, 139, 9, 0.06);
  border: 1px solid rgba(232, 139, 9, 0.15);
}

.hq-services-pro-aside-note h4 {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  margin: 0 0 0.5rem;
  font-size: 0.875rem;
  color: var(--hq-navy);
}

.hq-services-pro-aside-note h4 i { color: var(--hq-orange); }

.hq-services-pro-aside-note p {
  margin: 0;
  font-size: 0.8125rem;
  line-height: 1.55;
  color: var(--hq-muted);
}

.hq-services-pro-related {
  padding: var(--hq-section-y) 0;
  background: var(--hq-bg-soft);
}

.hq-services-pro-related__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1rem;
}

.hq-services-pro-related__card {
  display: grid;
  grid-template-columns: 80px 1fr auto;
  gap: 0.875rem;
  align-items: center;
  padding: 0.875rem;
  border-radius: var(--hq-radius);
  background: var(--hq-white);
  border: 1px solid var(--hq-border);
  text-decoration: none;
  color: inherit;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.hq-services-pro-related__card:hover {
  transform: translateY(-2px);
  box-shadow: var(--hq-shadow-sm);
}

.hq-services-pro-related__card img {
  width: 80px;
  height: 64px;
  border-radius: 8px;
  object-fit: cover;
}

.hq-services-pro-related__card span {
  display: block;
  font-size: 0.6875rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--hq-orange);
}

.hq-services-pro-related__card strong {
  display: block;
  font-size: 0.875rem;
  color: var(--hq-navy);
  line-height: 1.35;
}

.hq-services-pro-related__card > i:last-child {
  color: var(--hq-muted);
  font-size: 1rem;
}

.hq-services-pro-related__back {
  margin-top: 1.5rem;
  text-align: center;
}

@media (max-width: 1024px) {
  .hq-services-pro-pillars__grid { grid-template-columns: repeat(2, 1fr); }
  .hq-services-pro-grid { grid-template-columns: repeat(2, 1fr); }
  .hq-services-pro-intro__stats { grid-template-columns: repeat(2, 1fr); }
  .hq-services-pro-scope__shell,
  .hq-services-pro-faq__shell,
  .hq-services-pro-process__shell { grid-template-columns: 1fr; }
  .hq-services-pro-process__steps { grid-template-columns: 1fr; }
  .hq-services-pro-detail__layout { grid-template-columns: 1fr; }
  .hq-services-pro-detail__aside { position: static; }
  .hq-services-pro-related__grid { grid-template-columns: 1fr; }
  .hq-services-pro-cta__box { flex-direction: column; text-align: center; }
  .hq-services-pro-cta__actions { justify-content: center; }
}

@media (max-width: 640px) {
  .hq-services-pro-hero__actions { flex-direction: column; }
  .hq-services-pro-hero__actions .hq-btn { width: 100%; justify-content: center; }
  .hq-services-pro-pillars__grid,
  .hq-services-pro-grid { grid-template-columns: 1fr; }
  .hq-services-pro-intro__stats { grid-template-columns: repeat(2, 1fr); }
  .hq-services-pro-process__steps,
  .hq-services-pro-deliverables,
  .hq-services-pro-detail__steps { grid-template-columns: 1fr; }
  .hq-services-pro-cta__actions { flex-direction: column; width: 100%; }
  .hq-services-pro-cta__actions .hq-btn { width: 100%; justify-content: center; }
  .hq-services-pro-hero__chips { gap: 0.4rem; }
}

/* ═══ PROJECTS — Premium Pro ═══ */
.hq-projects-pro-eyebrow {
  margin: 0 0 0.75rem;
  color: var(--hq-orange);
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.hq-projects-pro-eyebrow--light { color: var(--hq-orange-light); }

.hq-projects-pro-title {
  margin: 0 0 1rem;
  font-family: var(--hq-font-display);
  font-size: clamp(1.875rem, 3.5vw, 2.75rem);
  font-weight: 700;
  letter-spacing: -0.035em;
  line-height: 1.08;
  color: var(--hq-navy);
}

.hq-projects-pro-lead {
  margin: 0;
  max-width: 52ch;
  color: var(--hq-muted);
  font-size: var(--hq-body);
  line-height: 1.75;
}

.hq-projects-pro-section-head {
  max-width: 640px;
  margin: 0 auto 2rem;
  text-align: center;
}

.hq-projects-pro-section-head__lead { margin-left: auto; margin-right: auto; }

.hq-projects-pro-hero {
  position: relative;
  min-height: clamp(480px, 68vh, 600px);
  display: flex;
  align-items: flex-end;
  padding: calc(var(--hq-header-h) + 2rem) 0 0;
  color: #fff;
  overflow: hidden;
}

.hq-projects-pro-hero--project { min-height: clamp(400px, 58vh, 520px); }

.hq-projects-pro-hero__bg { position: absolute; inset: 0; }
.hq-projects-pro-hero__bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 58%;
}

.hq-projects-pro-hero--portfolio .hq-projects-pro-hero__bg img {
  object-position: center 62%;
}

.hq-projects-pro-hero__overlay {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(1, 15, 36, 0.28) 0%, rgba(2, 29, 69, 0.88) 100%),
    linear-gradient(90deg, rgba(2, 29, 69, 0.62) 0%, rgba(2, 29, 69, 0.18) 58%, transparent 100%);
}

.hq-projects-pro-hero__inner { position: relative; z-index: 1; width: 100%; padding-bottom: 2.5rem; }
.hq-projects-pro-hero__content { max-width: 640px; padding-top: 1rem; }

.hq-projects-pro-hero__kicker {
  margin: 0 0 0.75rem;
  color: var(--hq-orange-light);
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.hq-projects-pro-hero__title {
  margin: 0 0 1rem;
  font-family: var(--hq-font-display);
  font-size: clamp(2rem, 4.5vw, 3.25rem);
  font-weight: 700;
  letter-spacing: -0.04em;
  line-height: 1.05;
  color: #fff;
}

.hq-projects-pro-hero__lead {
  margin: 0 0 1.25rem;
  max-width: 50ch;
  font-size: clamp(1rem, 2vw, 1.125rem);
  line-height: 1.75;
  color: rgba(255, 255, 255, 0.78);
}

.hq-projects-pro-hero__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  gap: 0.75rem;
  margin-bottom: 1.25rem;
}

.hq-projects-pro-hero__actions .hq-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 52px;
}

.hq-projects-pro-hero__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.hq-projects-pro-hero__chips li {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  min-height: 32px;
  padding: 0.35rem 0.75rem;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.16);
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.01em;
  color: rgba(255, 255, 255, 0.92);
}

.hq-projects-pro-hero__chips i { color: var(--hq-orange-light); font-size: 0.8125rem; }

.hq-projects-pro-project__chips {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem;
  margin-bottom: 1rem;
}

.hq-projects-pro-project__loc {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  padding: 0.35rem 0.75rem;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.1);
  font-size: 0.8125rem;
  font-weight: 600;
  color: rgba(255, 255, 255, 0.88);
}

.hq-projects-pro-intro {
  padding: var(--hq-section-y) 0;
  background: var(--hq-bg-soft);
  border-bottom: 1px solid var(--hq-border);
}

.hq-projects-pro-intro__shell {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  justify-content: space-between;
  gap: 2rem;
}

.hq-projects-pro-intro__copy { max-width: 560px; }
.hq-projects-pro-intro__copy .hq-projects-pro-title { text-align: left; max-width: 18ch; }

.hq-projects-pro-intro__stats {
  display: grid;
  grid-template-columns: repeat(4, minmax(6.5rem, 1fr));
  gap: 0.75rem;
  flex: 1 1 420px;
}

.hq-projects-pro-stat {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 96px;
  padding: 1rem 1rem;
  border-radius: var(--hq-radius);
  background: var(--hq-white);
  border: 1px solid var(--hq-border);
  box-shadow: var(--hq-shadow-sm);
  text-align: center;
}

.hq-projects-pro-stat strong {
  display: block;
  font-family: var(--hq-font-display);
  font-size: 1.5rem;
  color: var(--hq-navy);
  line-height: 1.1;
}

.hq-projects-pro-stat span {
  display: block;
  margin-top: 0.25rem;
  font-size: 0.6875rem;
  font-weight: 600;
  color: var(--hq-muted);
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.hq-projects-pro-pillars {
  padding: 2rem 0;
  background: var(--hq-bg-soft);
}

.hq-projects-pro-pillars__grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1rem;
}

.hq-projects-pro-pillar {
  display: flex;
  flex-direction: column;
  height: 100%;
  padding: 1.5rem 1.25rem;
  border-radius: var(--hq-radius);
  background: var(--hq-white);
  border: 1px solid var(--hq-border);
  box-shadow: var(--hq-shadow-sm);
  transition: transform 0.25s var(--hq-ease), box-shadow 0.25s var(--hq-ease);
}

.hq-projects-pro-pillar:hover {
  transform: translateY(-3px);
  box-shadow: var(--hq-shadow-sm);
}

.hq-projects-pro-pillar__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  margin-bottom: 0.75rem;
  border-radius: 10px;
  background: rgba(232, 139, 9, 0.1);
  color: var(--hq-orange);
  font-size: 1.125rem;
}

.hq-projects-pro-pillar h3 {
  margin: 0 0 0.35rem;
  font-size: 0.9375rem;
  font-weight: 700;
  color: var(--hq-navy);
}

.hq-projects-pro-pillar p {
  margin: 0;
  font-size: 0.8125rem;
  line-height: 1.55;
  color: var(--hq-muted);
}

.hq-projects-pro-catalog {
  padding: var(--hq-section-y) 0;
  background: var(--hq-white);
}

.hq-upcoming {
  padding: 0 0 0.5rem;
  background: var(--hq-bg-soft);
}

.hq-upcoming .container-site {
  padding-top: 0.25rem;
  padding-bottom: var(--hq-section-y);
}

.hq-upcoming__card {
  display: grid;
  grid-template-columns: 1.12fr 0.88fr;
  min-height: 540px;
  overflow: hidden;
  border-radius: var(--hq-radius-lg);
  background: var(--hq-navy-deep);
  color: #fff;
  box-shadow: 0 28px 70px rgba(2, 29, 69, 0.22);
}

.hq-upcoming__media {
  position: relative;
  margin: 0;
  min-height: 360px;
}

.hq-upcoming__media img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 55% 50%;
}

.hq-upcoming__media-shade {
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(1, 15, 36, 0.05) 55%, rgba(1, 15, 36, 0.35) 100%);
  pointer-events: none;
}

.hq-upcoming__badges {
  position: absolute;
  z-index: 1;
  top: 1.25rem;
  left: 1.25rem;
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem;
}

.hq-upcoming__badge,
.hq-upcoming__viz {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  padding: 0.4rem 0.8rem;
  border-radius: 999px;
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.hq-upcoming__badge {
  background: var(--hq-orange);
  color: #fff;
}

.hq-upcoming__viz {
  background: rgba(1, 15, 36, 0.72);
  color: #fff;
  border: 1px solid rgba(255, 255, 255, 0.18);
}

.hq-upcoming__copy {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: clamp(1.75rem, 4vw, 3rem) clamp(1.5rem, 3.5vw, 2.75rem);
}

.hq-upcoming__kicker {
  margin: 0 0 0.65rem;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--hq-orange-light);
}

.hq-upcoming__title {
  margin: 0 0 0.85rem;
  font-family: "Playfair Display", serif;
  font-size: clamp(1.85rem, 3.2vw, 2.65rem);
  font-weight: 700;
  line-height: 1.15;
  color: #fff;
}

.hq-upcoming__lead {
  margin: 0 0 1.35rem;
  max-width: 38ch;
  font-size: 0.98rem;
  line-height: 1.65;
  color: rgba(255, 255, 255, 0.78);
}

.hq-upcoming__facts {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin: 0 0 1.6rem;
  padding: 0;
  list-style: none;
}

.hq-upcoming__facts li {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  padding: 0.4rem 0.75rem;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.1);
  font-size: 0.8125rem;
  font-weight: 600;
  color: rgba(255, 255, 255, 0.92);
}

.hq-upcoming__facts i { color: var(--hq-orange-light); }

.hq-upcoming__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.7rem;
}

.hq-upcoming__actions .hq-btn { min-height: 48px; }

.hq-upcoming-note {
  display: flex;
  gap: 0.85rem;
  margin: 0 0 1.5rem;
  padding: 1rem 1.15rem;
  border-radius: var(--hq-radius);
  background: rgba(232, 139, 9, 0.08);
  border: 1px solid rgba(232, 139, 9, 0.22);
}

.hq-upcoming-note > i {
  flex-shrink: 0;
  margin-top: 0.15rem;
  color: var(--hq-orange);
  font-size: 1.15rem;
}

.hq-upcoming-note strong {
  display: block;
  margin-bottom: 0.2rem;
  color: var(--hq-navy);
  font-size: 0.875rem;
}

.hq-upcoming-note p {
  margin: 0;
  font-size: 0.875rem;
  line-height: 1.55;
  color: var(--hq-muted);
}

.hq-projects-pro-card__viz {
  align-self: flex-start;
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  padding: 0.35rem 0.7rem;
  border-radius: 999px;
  background: rgba(1, 15, 36, 0.78);
  font-size: 0.6875rem;
  font-weight: 700;
  color: #fff;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.hq-tag--planned {
  background: var(--hq-orange);
  color: #fff;
}

.hq-projects-pro-status--planned {
  background: rgba(232, 139, 9, 0.12);
  color: var(--hq-orange-dark);
}

.hq-projects-pro-toolbar {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  gap: 1.25rem;
  padding: 1.25rem;
  margin-bottom: 1rem;
  border-radius: var(--hq-radius-lg);
  background: var(--hq-bg-soft);
  border: 1px solid var(--hq-border);
}

.hq-projects-pro-toolbar__group { flex: 1; min-width: min(100%, 260px); }

.hq-projects-pro-toolbar__label {
  display: block;
  margin-bottom: 0.5rem;
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--hq-muted);
}

.hq-projects-pro-filters {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
}

.hq-projects-pro-filter {
  padding: 0.4rem 0.85rem;
  border-radius: 999px;
  border: 1px solid var(--hq-border);
  background: var(--hq-white);
  color: var(--hq-muted);
  font-size: 0.8125rem;
  font-weight: 600;
  text-decoration: none;
  transition: border-color 0.2s ease, color 0.2s ease, background 0.2s ease;
}

.hq-projects-pro-filter:hover {
  color: var(--hq-navy);
  border-color: rgba(2, 29, 69, 0.15);
}

.hq-projects-pro-filter.is-active {
  background: rgba(232, 139, 9, 0.1);
  border-color: rgba(232, 139, 9, 0.35);
  color: var(--hq-orange-dark);
}

.hq-projects-pro-clear {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  padding: 0.5rem 0.875rem;
  border-radius: 999px;
  background: rgba(232, 139, 9, 0.1);
  color: var(--hq-orange-dark);
  font-size: 0.8125rem;
  font-weight: 600;
  text-decoration: none;
}

.hq-projects-pro-count {
  margin: 0 0 1.25rem;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--hq-muted);
}

.hq-projects-pro-grid {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  gap: 1.25rem;
}

.hq-projects-pro-card {
  border-radius: var(--hq-radius-lg);
  background: var(--hq-white);
  border: 1px solid var(--hq-border);
  overflow: hidden;
  transition: transform 0.25s var(--hq-ease), box-shadow 0.25s var(--hq-ease);
}

.hq-projects-pro-card--featured { grid-column: span 8; }
.hq-projects-pro-card--solo { grid-column: span 12; }
.hq-projects-pro-card--compact { grid-column: span 4; }
.hq-projects-pro-card--standard { grid-column: span 4; }

.hq-projects-pro-card:hover {
  transform: translateY(-5px);
  box-shadow: var(--hq-shadow-md);
}

.hq-projects-pro-card__link {
  display: flex;
  flex-direction: column;
  height: 100%;
  color: inherit;
  text-decoration: none;
}

.hq-projects-pro-card__media {
  position: relative;
  margin: 0;
  aspect-ratio: 16/10;
  overflow: hidden;
}

.hq-projects-pro-card--featured .hq-projects-pro-card__media,
.hq-projects-pro-card--solo .hq-projects-pro-card__media { aspect-ratio: 16/9; }

.hq-projects-pro-card--compact .hq-projects-pro-card__media { aspect-ratio: 4/5; }

.hq-projects-pro-card__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 62%;
  display: block;
  transition: transform 0.35s var(--hq-ease);
}

.hq-projects-pro-card:hover .hq-projects-pro-card__media img { transform: scale(1.05); }

.hq-projects-pro-card__overlay {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 1rem;
  background: linear-gradient(180deg, rgba(2, 29, 69, 0.15) 0%, rgba(2, 29, 69, 0.55) 100%);
  pointer-events: none;
}

.hq-projects-pro-card__tags {
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem;
}

.hq-projects-pro-card__featured {
  align-self: flex-start;
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  padding: 0.35rem 0.7rem;
  border-radius: 999px;
  background: var(--hq-orange);
  font-size: 0.6875rem;
  font-weight: 700;
  color: #fff;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.hq-projects-pro-card__view {
  align-self: flex-end;
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  padding: 0.45rem 0.85rem;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.94);
  font-size: 0.8125rem;
  font-weight: 700;
  color: var(--hq-navy);
  opacity: 0;
  transform: translateY(6px);
  transition: opacity 0.25s ease, transform 0.25s ease;
}

.hq-projects-pro-card:hover .hq-projects-pro-card__view {
  opacity: 1;
  transform: translateY(0);
}

.hq-projects-pro-card__body {
  display: flex;
  flex-direction: column;
  flex: 1;
  padding: 1.25rem;
}

.hq-projects-pro-card__body h3 {
  margin: 0 0 0.5rem;
  font-family: var(--hq-font-display);
  font-size: 1.125rem;
  line-height: 1.3;
  color: var(--hq-navy);
}

.hq-projects-pro-card--featured .hq-projects-pro-card__body h3,
.hq-projects-pro-card--solo .hq-projects-pro-card__body h3 {
  font-size: 1.3125rem;
}

.hq-projects-pro-card__body p {
  margin: 0 0 1rem;
  flex: 1;
  font-size: 0.875rem;
  line-height: 1.55;
  color: var(--hq-muted);
}

.hq-projects-pro-card__meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.75rem;
  padding-top: 0.75rem;
  border-top: 1px solid var(--hq-border);
  font-size: 0.8125rem;
  color: var(--hq-muted);
}

.hq-projects-pro-card__meta > span:first-child i,
.hq-projects-pro-card__meta > span:nth-child(2) i { color: var(--hq-orange); }

.hq-projects-pro-card__cta {
  margin-left: auto;
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  font-weight: 700;
  color: var(--hq-orange);
}

.hq-projects-pro-card:hover .hq-projects-pro-card__cta { gap: 0.45rem; }

.hq-projects-pro-empty {
  text-align: center;
  padding: 3rem 1.5rem;
  border-radius: var(--hq-radius-lg);
  background: var(--hq-bg-soft);
  border: 1px dashed var(--hq-border);
}

.hq-projects-pro-empty__icon {
  display: inline-flex;
  width: 4rem;
  height: 4rem;
  align-items: center;
  justify-content: center;
  margin-bottom: 1rem;
  border-radius: 50%;
  background: rgba(232, 139, 9, 0.1);
  color: var(--hq-orange);
  font-size: 1.5rem;
}

.hq-projects-pro-empty h3 { margin: 0 0 0.5rem; color: var(--hq-navy); }
.hq-projects-pro-empty p { margin: 0 0 1.25rem; color: var(--hq-muted); }

.hq-projects-pro-approach {
  padding: var(--hq-section-y) 0;
  background: var(--hq-bg-soft);
}

.hq-projects-pro-approach__shell {
  display: grid;
  grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.05fr);
  gap: clamp(2rem, 4vw, 3rem);
  align-items: start;
}

.hq-projects-pro-approach__head .hq-projects-pro-title { text-align: left; max-width: 16ch; }
.hq-projects-pro-approach__head .hq-projects-pro-lead { margin-bottom: 0; }

.hq-projects-pro-approach__steps { display: grid; gap: 0.75rem; }

.hq-projects-pro-approach__step {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 1rem;
  padding: 1.125rem;
  border-radius: var(--hq-radius);
  background: var(--hq-white);
  border: 1px solid var(--hq-border);
}

.hq-projects-pro-approach__num {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.25rem;
  height: 2.25rem;
  border-radius: 50%;
  background: var(--hq-navy);
  color: var(--hq-orange-light);
  font-family: var(--hq-font-display);
  font-size: 0.75rem;
  font-weight: 700;
}

.hq-projects-pro-approach__step strong {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  margin-bottom: 0.25rem;
  font-size: 0.9375rem;
  color: var(--hq-navy);
}

.hq-projects-pro-approach__step strong i { color: var(--hq-orange); }

.hq-projects-pro-approach__step p {
  margin: 0;
  font-size: 0.8125rem;
  line-height: 1.55;
  color: var(--hq-muted);
}

.hq-projects-pro-cta {
  position: relative;
  padding: var(--hq-section-y) 0;
  overflow: hidden;
}

.hq-projects-pro-cta__bg {
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse 50% 80% at 100% 50%, rgba(232, 139, 9, 0.12), transparent 55%),
    linear-gradient(135deg, var(--hq-navy) 0%, #0a2d5c 100%);
}

.hq-projects-pro-cta__box {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
  padding: clamp(2rem, 4vw, 3rem);
  border-radius: calc(var(--hq-radius-lg) + 4px);
  border: 1px solid rgba(255, 255, 255, 0.1);
  background: rgba(255, 255, 255, 0.04);
}

.hq-projects-pro-cta__title {
  margin: 0 0 0.75rem;
  font-family: var(--hq-font-display);
  font-size: clamp(1.75rem, 3vw, 2.25rem);
  font-weight: 700;
  color: #fff;
  line-height: 1.12;
}

.hq-projects-pro-cta__lead {
  margin: 0;
  max-width: 42ch;
  font-size: 1rem;
  line-height: 1.7;
  color: rgba(255, 255, 255, 0.72);
}

.hq-projects-pro-cta__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  gap: 0.75rem;
}

.hq-projects-pro-cta__actions .hq-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 52px;
}

.hq-projects-pro-cta__phone {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  font-size: 0.875rem;
  font-weight: 600;
  color: rgba(255, 255, 255, 0.88);
  text-decoration: none;
}

.hq-projects-pro-cta__phone i { color: var(--hq-orange-light); }

/* Project detail */
.hq-projects-pro-detail {
  padding: var(--hq-section-y) 0;
  background: var(--hq-white);
}

.hq-projects-pro-detail__layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 320px;
  gap: clamp(2rem, 4vw, 3rem);
  align-items: start;
}

.hq-projects-pro-detail__hero {
  margin: 0;
  border-radius: var(--hq-radius-lg);
  overflow: hidden;
  box-shadow: var(--hq-shadow);
}

.hq-projects-pro-detail__hero img {
  width: 100%;
  aspect-ratio: 16/10;
  object-fit: cover;
  object-position: center 62%;
  display: block;
}

.hq-projects-pro-detail__heading {
  margin: 2rem 0 1rem;
  font-family: var(--hq-font-display);
  font-size: 1.375rem;
  color: var(--hq-navy);
}

.hq-projects-pro-detail__hero + .hq-projects-pro-detail__content .hq-projects-pro-detail__heading {
  margin-top: 0;
}

.hq-projects-pro-detail__prose {
  color: var(--hq-muted);
  line-height: 1.8;
}

.hq-projects-pro-scope-list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0.65rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.hq-projects-pro-scope-list li {
  display: flex;
  align-items: flex-start;
  gap: 0.5rem;
  padding: 0.75rem;
  border-radius: var(--hq-radius);
  background: var(--hq-bg-soft);
  font-size: 0.875rem;
  color: var(--hq-text);
}

.hq-projects-pro-scope-list i {
  flex-shrink: 0;
  color: #16a34a;
  margin-top: 0.1rem;
}

.hq-projects-pro-detail__gallery-head { margin-bottom: 1rem; }
.hq-projects-pro-detail__gallery-head .hq-projects-pro-detail__heading { margin-top: 0.5rem; }

.hq-projects-pro-detail__gallery-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0.75rem;
}

.hq-projects-pro-gallery-item {
  position: relative;
  padding: 0;
  border: none;
  border-radius: var(--hq-radius);
  overflow: hidden;
  cursor: pointer;
  background: none;
}

.hq-projects-pro-gallery-item img {
  width: 100%;
  aspect-ratio: 4/3;
  object-fit: cover;
  display: block;
  transition: transform 0.3s ease;
}

.hq-projects-pro-gallery-item:hover img { transform: scale(1.04); }

.hq-projects-pro-gallery-item__zoom {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(2, 29, 69, 0.35);
  color: #fff;
  font-size: 1.5rem;
  opacity: 0;
  transition: opacity 0.25s ease;
}

.hq-projects-pro-gallery-item:hover .hq-projects-pro-gallery-item__zoom { opacity: 1; }

.hq-projects-pro-detail__aside {
  position: sticky;
  top: calc(var(--hq-header-h) + 1.25rem);
  display: grid;
  gap: 1rem;
}

.hq-projects-pro-meta-card {
  padding: 1.5rem;
  border-radius: var(--hq-radius-lg);
  background: var(--hq-bg-soft);
  border: 1px solid var(--hq-border);
  box-shadow: var(--hq-shadow-sm);
}

.hq-projects-pro-meta-card__title {
  margin: 0 0 1.25rem;
  font-family: var(--hq-font-display);
  font-size: 1.25rem;
  color: var(--hq-navy);
}

.hq-projects-pro-meta {
  display: grid;
  gap: 0;
  margin: 0 0 1.25rem;
}

.hq-projects-pro-meta div {
  display: grid;
  grid-template-columns: 1fr 1.2fr;
  gap: 0.75rem;
  padding: 0.75rem 0;
  border-bottom: 1px solid var(--hq-border);
}

.hq-projects-pro-meta div:last-child { border-bottom: none; }

.hq-projects-pro-meta dt {
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--hq-muted);
}

.hq-projects-pro-meta dd {
  margin: 0;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--hq-navy);
  text-align: right;
}

.hq-projects-pro-status {
  display: inline-block;
  padding: 0.2rem 0.55rem;
  border-radius: 999px;
  font-size: 0.75rem;
  font-weight: 700;
}

.hq-projects-pro-status--done { background: rgba(16, 120, 72, 0.12); color: #107848; }
.hq-projects-pro-status--active { background: rgba(232, 139, 9, 0.12); color: var(--hq-orange-dark); }
.hq-projects-pro-status--planned { background: rgba(2, 29, 69, 0.1); color: var(--hq-navy); }

.hq-projects-pro-meta-card__actions { display: grid; gap: 0.625rem; }

.hq-projects-pro-meta-card__back {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.35rem;
  padding: 0.5rem;
  font-size: 0.8125rem;
  font-weight: 600;
  color: var(--hq-muted);
  text-decoration: none;
}

.hq-projects-pro-meta-card__back:hover { color: var(--hq-navy); }

.hq-projects-pro-aside-note {
  padding: 1.125rem;
  border-radius: var(--hq-radius);
  background: rgba(232, 139, 9, 0.06);
  border: 1px solid rgba(232, 139, 9, 0.15);
}

.hq-projects-pro-aside-note h4 {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  margin: 0 0 0.5rem;
  font-size: 0.875rem;
  color: var(--hq-navy);
}

.hq-projects-pro-aside-note h4 i { color: var(--hq-orange); }

.hq-projects-pro-aside-note p {
  margin: 0;
  font-size: 0.8125rem;
  line-height: 1.55;
  color: var(--hq-muted);
}

.hq-projects-pro-related {
  padding: var(--hq-section-y) 0;
  background: var(--hq-bg-soft);
}

.hq-projects-pro-related__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1rem;
}

.hq-projects-pro-related__card {
  display: grid;
  grid-template-columns: 80px 1fr auto;
  gap: 0.875rem;
  align-items: center;
  padding: 0.875rem;
  border-radius: var(--hq-radius);
  background: var(--hq-white);
  border: 1px solid var(--hq-border);
  text-decoration: none;
  color: inherit;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.hq-projects-pro-related__card:hover {
  transform: translateY(-2px);
  box-shadow: var(--hq-shadow-sm);
}

.hq-projects-pro-related__card img {
  width: 80px;
  height: 64px;
  border-radius: 8px;
  object-fit: cover;
}

.hq-projects-pro-related__card span {
  display: block;
  font-size: 0.6875rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--hq-orange);
}

.hq-projects-pro-related__card strong {
  display: block;
  font-size: 0.875rem;
  color: var(--hq-navy);
  line-height: 1.35;
}

.hq-projects-pro-related__card > i:last-child {
  color: var(--hq-muted);
  font-size: 1rem;
}

@media (max-width: 1024px) {
  .hq-projects-pro-pillars__grid { grid-template-columns: repeat(2, 1fr); }
  .hq-projects-pro-intro__stats { grid-template-columns: repeat(2, 1fr); }
  .hq-projects-pro-approach__shell { grid-template-columns: 1fr; }
  .hq-upcoming__card { grid-template-columns: 1fr; min-height: 0; }
  .hq-upcoming__media { min-height: 380px; }
  .hq-upcoming__media-shade {
    background: linear-gradient(180deg, rgba(1, 15, 36, 0.08) 40%, rgba(1, 15, 36, 0.2) 100%);
  }
  .hq-projects-pro-card,
  .hq-projects-pro-card--featured,
  .hq-projects-pro-card--compact,
  .hq-projects-pro-card--standard,
  .hq-projects-pro-card--solo { grid-column: span 6; }
  .hq-projects-pro-detail__layout { grid-template-columns: 1fr; }
  .hq-projects-pro-detail__aside { position: static; }
  .hq-projects-pro-detail__gallery-grid { grid-template-columns: repeat(2, 1fr); }
  .hq-projects-pro-related__grid { grid-template-columns: 1fr; }
  .hq-projects-pro-cta__box { flex-direction: column; text-align: center; }
  .hq-projects-pro-cta__actions { justify-content: center; }
}

@media (max-width: 640px) {
  .hq-projects-pro-hero__actions { flex-direction: column; }
  .hq-projects-pro-hero__actions .hq-btn { width: 100%; justify-content: center; }
  .hq-projects-pro-pillars__grid,
  .hq-projects-pro-intro__stats { grid-template-columns: repeat(2, 1fr); }
  .hq-projects-pro-stat { min-height: 88px; }
  .hq-upcoming__media { min-height: 280px; }
  .hq-upcoming__copy { padding: 1.5rem 1.25rem 1.75rem; }
  .hq-upcoming__actions { flex-direction: column; }
  .hq-upcoming__actions .hq-btn { width: 100%; justify-content: center; }
  .hq-projects-pro-card,
  .hq-projects-pro-card--featured,
  .hq-projects-pro-card--compact,
  .hq-projects-pro-card--standard,
  .hq-projects-pro-card--solo { grid-column: span 12; }
  .hq-projects-pro-card--compact .hq-projects-pro-card__media { aspect-ratio: 16/10; }
  .hq-projects-pro-card__view { opacity: 1; transform: none; }
  .hq-projects-pro-scope-list,
  .hq-projects-pro-detail__gallery-grid { grid-template-columns: 1fr; }
  .hq-projects-pro-cta__actions { flex-direction: column; width: 100%; }
  .hq-projects-pro-cta__actions .hq-btn,
  .hq-projects-pro-cta__phone { width: 100%; justify-content: center; }
}

/* ═══ GALLERY — Premium Pro ═══ */
.hq-gallery-pro-eyebrow {
  margin: 0 0 0.75rem;
  color: var(--hq-orange);
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.hq-gallery-pro-eyebrow--light { color: var(--hq-orange-light); }

.hq-gallery-pro-title {
  margin: 0 0 1rem;
  font-family: var(--hq-font-display);
  font-size: clamp(1.875rem, 3.5vw, 2.75rem);
  font-weight: 700;
  letter-spacing: -0.035em;
  line-height: 1.08;
  color: var(--hq-navy);
}

.hq-gallery-pro-lead {
  margin: 0;
  max-width: 52ch;
  color: var(--hq-muted);
  font-size: var(--hq-body);
  line-height: 1.75;
}

.hq-gallery-pro-section-head {
  max-width: 640px;
  margin: 0 auto 2rem;
  text-align: center;
}

.hq-gallery-pro-section-head__lead { margin-left: auto; margin-right: auto; }

.hq-gallery-pro-hero {
  position: relative;
  min-height: clamp(460px, 65vh, 580px);
  display: flex;
  align-items: flex-end;
  padding: calc(var(--hq-header-h) + 2rem) 0 0;
  color: #fff;
  overflow: hidden;
}

.hq-gallery-pro-hero__bg { position: absolute; inset: 0; }
.hq-gallery-pro-hero__bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 58%;
}

.hq-gallery-pro-hero--cinematic .hq-gallery-pro-hero__bg img {
  object-position: center 62%;
}

.hq-gallery-pro-hero__overlay {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(1, 15, 36, 0.28) 0%, rgba(2, 29, 69, 0.88) 100%),
    linear-gradient(90deg, rgba(2, 29, 69, 0.62) 0%, rgba(2, 29, 69, 0.18) 58%, transparent 100%);
}

.hq-gallery-pro-hero__inner { position: relative; z-index: 1; width: 100%; padding-bottom: 2.5rem; }
.hq-gallery-pro-hero__content { max-width: 640px; padding-top: 1rem; }

.hq-gallery-pro-hero__kicker {
  margin: 0 0 0.75rem;
  color: var(--hq-orange-light);
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.hq-gallery-pro-hero__title {
  margin: 0 0 1rem;
  font-family: var(--hq-font-display);
  font-size: clamp(2rem, 4.5vw, 3.25rem);
  font-weight: 700;
  letter-spacing: -0.04em;
  line-height: 1.05;
  color: #fff;
}

.hq-gallery-pro-hero__lead {
  margin: 0 0 1.25rem;
  max-width: 48ch;
  font-size: clamp(1rem, 2vw, 1.125rem);
  line-height: 1.75;
  color: rgba(255, 255, 255, 0.78);
}

.hq-gallery-pro-hero__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  gap: 0.75rem;
  margin-bottom: 1.25rem;
}

.hq-gallery-pro-hero__actions .hq-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 52px;
}

.hq-gallery-pro-hero__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.hq-gallery-pro-hero__chips li {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  min-height: 32px;
  padding: 0.35rem 0.75rem;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.16);
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.01em;
  color: rgba(255, 255, 255, 0.92);
}

.hq-gallery-pro-hero__chips i { color: var(--hq-orange-light); font-size: 0.8125rem; }

.hq-gallery-pro-intro {
  padding: var(--hq-section-y) 0;
  background: var(--hq-white);
  border-bottom: 1px solid var(--hq-border);
}

.hq-gallery-pro-intro__shell {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  justify-content: space-between;
  gap: 2rem;
}

.hq-gallery-pro-intro__copy { max-width: 560px; }
.hq-gallery-pro-intro__copy .hq-gallery-pro-title { text-align: left; max-width: 16ch; }

.hq-gallery-pro-intro__stats {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
}

.hq-gallery-pro-stat {
  min-width: 6.5rem;
  padding: 1.05rem 1.125rem 1rem;
  border-radius: var(--hq-radius);
  background: var(--hq-bg-soft);
  border: 1px solid var(--hq-border);
  text-align: left;
}

.hq-gallery-pro-stat strong {
  display: block;
  font-family: var(--hq-font-display);
  font-size: 1.75rem;
  color: var(--hq-navy);
  line-height: 1.1;
}

.hq-gallery-pro-stat span {
  display: block;
  margin-top: 0.25rem;
  font-size: 0.6875rem;
  font-weight: 600;
  color: var(--hq-muted);
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.hq-gallery-pro-highlights {
  padding: 2rem 0;
  background: var(--hq-bg-soft);
}

.hq-gallery-pro-highlights__grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1rem;
}

.hq-gallery-pro-highlight {
  padding: 1.25rem;
  border-radius: var(--hq-radius);
  background: var(--hq-white);
  border: 1px solid var(--hq-border);
  transition: transform 0.25s var(--hq-ease), box-shadow 0.25s var(--hq-ease);
}

.hq-gallery-pro-highlight:hover {
  transform: translateY(-3px);
  box-shadow: var(--hq-shadow-sm);
}

.hq-gallery-pro-highlight__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  margin-bottom: 0.75rem;
  border-radius: 10px;
  background: rgba(232, 139, 9, 0.1);
  color: var(--hq-orange);
  font-size: 1.125rem;
}

.hq-gallery-pro-highlight h3 {
  margin: 0 0 0.35rem;
  font-size: 0.9375rem;
  font-weight: 700;
  color: var(--hq-navy);
}

.hq-gallery-pro-highlight p {
  margin: 0;
  font-size: 0.8125rem;
  line-height: 1.55;
  color: var(--hq-muted);
}

.hq-gallery-pro-catalog {
  padding: var(--hq-section-y) 0;
  background: var(--hq-bg-soft);
}

.hq-gallery-pro-toolbar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 1rem;
  padding: 1.25rem;
  margin-bottom: 1.25rem;
  border-radius: var(--hq-radius-lg);
  background: var(--hq-white);
  border: 1px solid var(--hq-border);
}

.hq-gallery-pro-toolbar__label {
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--hq-muted);
}

.hq-gallery-pro-filters {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
}

.hq-gallery-pro-filter {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  padding: 0.4rem 0.85rem;
  border-radius: 999px;
  border: 1px solid var(--hq-border);
  background: var(--hq-bg-soft);
  color: var(--hq-muted);
  font-size: 0.8125rem;
  font-weight: 600;
  text-decoration: none;
  cursor: pointer;
  transition: border-color 0.2s ease, color 0.2s ease, background 0.2s ease;
}

.hq-gallery-pro-filter:hover {
  color: var(--hq-navy);
  border-color: rgba(2, 29, 69, 0.15);
}

.hq-gallery-pro-filter.active {
  background: rgba(232, 139, 9, 0.1);
  border-color: rgba(232, 139, 9, 0.35);
  color: var(--hq-orange-dark);
}

.hq-gallery-pro-count {
  margin: 0 0 1.25rem;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--hq-muted);
}

.hq-gallery-pro-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1rem;
}

.hq-gallery-pro-item {
  position: relative;
  padding: 0;
  border: none;
  border-radius: var(--hq-radius-lg);
  overflow: hidden;
  cursor: pointer;
  background: none;
  text-align: left;
  box-shadow: var(--hq-shadow-sm);
}

.hq-gallery-pro-item--featured {
  grid-column: span 2;
  grid-row: span 2;
  height: 100%;
}

.hq-gallery-pro-item img {
  width: 100%;
  height: 100%;
  aspect-ratio: 4/3;
  object-fit: cover;
  display: block;
  transition: transform 0.35s var(--hq-ease);
}

.hq-gallery-pro-item--featured img {
  aspect-ratio: auto;
  min-height: 100%;
}

.hq-gallery-pro-item:hover img { transform: scale(1.05); }

.hq-gallery-pro-item__overlay {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-start;
  gap: 0.35rem;
  padding: 1.1rem 1.15rem 1.15rem;
  background: linear-gradient(180deg, transparent 42%, rgba(2, 29, 69, 0.82) 100%);
  color: #fff;
  opacity: 1;
}

.hq-gallery-pro-item:hover .hq-gallery-pro-item__overlay { opacity: 1; }

.hq-gallery-pro-item__cat {
  align-self: flex-start;
  padding: 0.25rem 0.55rem;
  border-radius: 999px;
  background: rgba(232, 139, 9, 0.85);
  font-size: 0.6875rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.hq-gallery-pro-item__overlay strong {
  font-family: var(--hq-font-display);
  font-size: 0.9375rem;
  line-height: 1.3;
}

.hq-gallery-pro-item__zoom {
  position: absolute;
  top: 0.75rem;
  right: 0.75rem;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.25rem;
  height: 2.25rem;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.94);
  color: var(--hq-navy);
  font-size: 0.9375rem;
  opacity: 0;
  transform: translateY(-4px);
  transition: opacity 0.2s ease, transform 0.2s ease;
}

.hq-gallery-pro-item:hover .hq-gallery-pro-item__zoom,
.hq-gallery-pro-item:focus-visible .hq-gallery-pro-item__zoom {
  opacity: 1;
  transform: none;
}

.hq-gallery-pro-empty {
  text-align: center;
  padding: 3rem 1.5rem;
  border-radius: var(--hq-radius-lg);
  background: var(--hq-bg-soft);
  border: 1px dashed var(--hq-border);
}

.hq-gallery-pro-empty__icon {
  display: inline-flex;
  width: 4rem;
  height: 4rem;
  align-items: center;
  justify-content: center;
  margin-bottom: 1rem;
  border-radius: 50%;
  background: rgba(232, 139, 9, 0.1);
  color: var(--hq-orange);
  font-size: 1.5rem;
}

.hq-gallery-pro-empty h3 { margin: 0 0 0.5rem; color: var(--hq-navy); }
.hq-gallery-pro-empty p { margin: 0 0 1.25rem; color: var(--hq-muted); }

.hq-gallery-pro-cta {
  position: relative;
  padding: var(--hq-section-y) 0;
  overflow: hidden;
}

.hq-gallery-pro-cta__bg {
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse 50% 80% at 100% 50%, rgba(232, 139, 9, 0.12), transparent 55%),
    linear-gradient(135deg, var(--hq-navy) 0%, #0a2d5c 100%);
}

.hq-gallery-pro-cta__box {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
  padding: clamp(2rem, 4vw, 3rem);
  border-radius: calc(var(--hq-radius-lg) + 4px);
  border: 1px solid rgba(255, 255, 255, 0.1);
  background: rgba(255, 255, 255, 0.04);
}

.hq-gallery-pro-cta__title {
  margin: 0 0 0.75rem;
  font-family: var(--hq-font-display);
  font-size: clamp(1.75rem, 3vw, 2.25rem);
  font-weight: 700;
  color: #fff;
  line-height: 1.12;
}

.hq-gallery-pro-cta__lead {
  margin: 0;
  max-width: 42ch;
  font-size: 1rem;
  line-height: 1.7;
  color: rgba(255, 255, 255, 0.72);
}

.hq-gallery-pro-cta__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  gap: 0.75rem;
}

.hq-gallery-pro-cta__actions .hq-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 52px;
}

.hq-gallery-pro-cta__phone {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  font-size: 0.875rem;
  font-weight: 600;
  color: rgba(255, 255, 255, 0.88);
  text-decoration: none;
}

.hq-gallery-pro-cta__phone i { color: var(--hq-orange-light); }

@media (max-width: 1024px) {
  .hq-gallery-pro-highlights__grid { grid-template-columns: repeat(2, 1fr); }
  .hq-gallery-pro-grid { grid-template-columns: repeat(2, 1fr); }
  .hq-gallery-pro-item--featured { grid-column: span 2; grid-row: span 1; }
  .hq-gallery-pro-item--featured img { aspect-ratio: 16/10; }
  .hq-gallery-pro-cta__box { flex-direction: column; text-align: center; }
  .hq-gallery-pro-cta__actions { justify-content: center; }
}

@media (max-width: 640px) {
  .hq-gallery-pro-hero__actions { flex-direction: column; }
  .hq-gallery-pro-hero__actions .hq-btn { width: 100%; justify-content: center; }
  .hq-gallery-pro-hero__chips { gap: 0.4rem; }
  .hq-gallery-pro-highlights__grid,
  .hq-gallery-pro-grid { grid-template-columns: 1fr; }
  .hq-gallery-pro-item--featured { grid-column: auto; grid-row: auto; }
  .hq-gallery-pro-item--featured img { aspect-ratio: 4/3; }
  .hq-gallery-pro-intro__stats { width: 100%; justify-content: stretch; }
  .hq-gallery-pro-stat { flex: 1; min-width: 0; }
  .hq-gallery-pro-item__zoom { opacity: 1; transform: none; }
  .hq-gallery-pro-cta__actions { flex-direction: column; width: 100%; }
  .hq-gallery-pro-cta__actions .hq-btn { width: 100%; justify-content: center; }
}

@media (max-width: 480px) {
  .hq-gallery-pro-grid { grid-template-columns: 1fr; }
}

/* ═══ CONTACT — Premium Pro ═══ */
.hq-contact-pro-eyebrow {
  margin: 0 0 0.75rem;
  color: var(--hq-orange);
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.hq-contact-pro-title {
  margin: 0 0 0.75rem;
  font-family: var(--hq-font-display);
  font-size: clamp(1.625rem, 3vw, 2.25rem);
  font-weight: 700;
  letter-spacing: -0.03em;
  line-height: 1.1;
  color: var(--hq-navy);
}

.hq-contact-pro-lead {
  margin: 0;
  max-width: 52ch;
  color: var(--hq-muted);
  font-size: var(--hq-body);
  line-height: 1.75;
}

.hq-contact-pro-hero {
  position: relative;
  min-height: clamp(420px, 58vh, 520px);
  display: flex;
  align-items: flex-end;
  padding: calc(var(--hq-header-h) + 2rem) 0 0;
  color: #fff;
  overflow: hidden;
}

.hq-contact-pro-hero__bg { position: absolute; inset: 0; }
.hq-contact-pro-hero__bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 58%;
}

.hq-contact-pro-hero--cinematic .hq-contact-pro-hero__bg img {
  object-position: center 62%;
}

.hq-contact-pro-hero__overlay {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(1, 15, 36, 0.28) 0%, rgba(2, 29, 69, 0.88) 100%),
    linear-gradient(90deg, rgba(2, 29, 69, 0.62) 0%, rgba(2, 29, 69, 0.18) 58%, transparent 100%);
}

.hq-contact-pro-hero__inner { position: relative; z-index: 1; width: 100%; padding-bottom: 2.5rem; }
.hq-contact-pro-hero__content { max-width: 640px; padding-top: 1rem; }

.hq-contact-pro-hero__kicker {
  margin: 0 0 0.75rem;
  color: var(--hq-orange-light);
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.hq-contact-pro-hero__title {
  margin: 0 0 1rem;
  font-family: var(--hq-font-display);
  font-size: clamp(2rem, 4.5vw, 3rem);
  font-weight: 700;
  letter-spacing: -0.04em;
  line-height: 1.05;
  color: #fff;
}

.hq-contact-pro-hero__lead {
  margin: 0 0 1.25rem;
  max-width: 48ch;
  font-size: clamp(1rem, 2vw, 1.125rem);
  line-height: 1.75;
  color: rgba(255, 255, 255, 0.78);
}

.hq-contact-pro-hero__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  gap: 0.75rem;
  margin-bottom: 1.25rem;
}

.hq-contact-pro-hero__actions .hq-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 52px;
}

.hq-contact-pro-hero__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.hq-contact-pro-hero__chips li {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  min-height: 32px;
  padding: 0.35rem 0.75rem;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.16);
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.01em;
  color: rgba(255, 255, 255, 0.92);
}

.hq-contact-pro-hero__chips i { color: var(--hq-orange-light); font-size: 0.8125rem; }

.hq-contact-pro-main {
  padding: var(--hq-section-y) 0;
  background: var(--hq-bg-soft);
}

.hq-contact-pro-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.85fr);
  gap: clamp(1.5rem, 3vw, 2rem);
  align-items: start;
}

.hq-contact-pro-form-wrap {
  position: relative;
  padding: clamp(1.5rem, 3vw, 2rem);
  border-radius: var(--hq-radius-lg);
  background: var(--hq-white);
  border: 1px solid var(--hq-border);
  box-shadow: var(--hq-shadow-sm);
}

.hq-contact-pro-form-head { margin-bottom: 1.5rem; }

.hq-contact-pro-honeypot {
  position: absolute;
  left: -9999px;
  width: 1px;
  height: 1px;
  opacity: 0;
}

.hq-contact-pro-alert {
  display: flex;
  align-items: flex-start;
  gap: 0.65rem;
  padding: 0.875rem 1rem;
  margin-bottom: 1.25rem;
  border-radius: var(--hq-radius);
  font-size: 0.9375rem;
  line-height: 1.5;
}

.hq-contact-pro-alert i { flex-shrink: 0; margin-top: 0.1rem; font-size: 1.125rem; }

.hq-contact-pro-alert--success {
  background: rgba(16, 120, 72, 0.08);
  border: 1px solid rgba(16, 120, 72, 0.2);
  color: #107848;
}

.hq-contact-pro-alert--error {
  background: rgba(220, 38, 38, 0.06);
  border: 1px solid rgba(220, 38, 38, 0.18);
  color: #b91c1c;
}

.hq-contact-pro-form .hq-btn { margin-top: 0.25rem; min-height: 52px; }

.hq-contact-pro-form__note {
  margin: 0.35rem 0 0;
  font-size: 0.8125rem;
  line-height: 1.55;
  font-weight: 500;
  color: var(--hq-muted);
}

.hq-contact-pro-aside {
  position: sticky;
  top: calc(var(--hq-header-h) + 1.25rem);
  display: grid;
  gap: 1rem;
}

.hq-contact-pro-card {
  padding: 1.5rem;
  border-radius: var(--hq-radius-lg);
  background: var(--hq-white);
  border: 1px solid var(--hq-border);
  box-shadow: var(--hq-shadow-sm);
}

.hq-contact-pro-card__title {
  margin: 0 0 1.25rem;
  font-family: var(--hq-font-display);
  font-size: 1.25rem;
  color: var(--hq-navy);
}

.hq-contact-pro-details {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 0;
}

.hq-contact-pro-details li {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 0.875rem;
  padding: 0.875rem 0;
  border-bottom: 1px solid var(--hq-border);
}

.hq-contact-pro-details li:last-child { border-bottom: none; padding-bottom: 0; }

.hq-contact-pro-details__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.25rem;
  height: 2.25rem;
  border-radius: 10px;
  background: rgba(232, 139, 9, 0.1);
  color: var(--hq-orange);
  font-size: 1rem;
}

.hq-contact-pro-details strong {
  display: block;
  margin-bottom: 0.15rem;
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--hq-muted);
}

.hq-contact-pro-details a,
.hq-contact-pro-details span {
  display: block;
  font-size: 0.9375rem;
  font-weight: 600;
  color: var(--hq-navy);
  text-decoration: none;
  line-height: 1.45;
}

.hq-contact-pro-details a:hover { color: var(--hq-orange); }

.hq-contact-pro-socials {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  margin-top: 1.25rem;
  padding-top: 1.25rem;
  border-top: 1px solid var(--hq-border);
}

.hq-contact-pro-socials > span {
  font-size: 0.8125rem;
  font-weight: 600;
  color: var(--hq-muted);
}

.hq-contact-pro-socials div {
  display: flex;
  gap: 0.5rem;
}

.hq-contact-pro-socials a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.25rem;
  height: 2.25rem;
  border-radius: 50%;
  background: var(--hq-bg-soft);
  color: var(--hq-navy);
  text-decoration: none;
  transition: background 0.2s ease, color 0.2s ease;
}

.hq-contact-pro-socials a:hover {
  background: var(--hq-orange);
  color: #fff;
}

.hq-contact-pro-process {
  padding: 1.25rem;
  border-radius: var(--hq-radius-lg);
  background: var(--hq-navy);
  color: #fff;
}

.hq-contact-pro-process h3 {
  margin: 0 0 1rem;
  font-family: var(--hq-font-display);
  font-size: 1.0625rem;
}

.hq-contact-pro-process ol {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 0.875rem;
}

.hq-contact-pro-process li {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 0.75rem;
}

.hq-contact-pro-process li > span {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 1.75rem;
  height: 1.75rem;
  border-radius: 50%;
  background: rgba(232, 139, 9, 0.2);
  color: var(--hq-orange-light);
  font-size: 0.6875rem;
  font-weight: 700;
}

.hq-contact-pro-process strong {
  display: block;
  margin-bottom: 0.15rem;
  font-size: 0.875rem;
}

.hq-contact-pro-process p {
  margin: 0;
  font-size: 0.8125rem;
  line-height: 1.5;
  color: rgba(255, 255, 255, 0.72);
}

.hq-contact-pro-map {
  padding: var(--hq-section-y) 0;
  background: var(--hq-white);
}

.hq-contact-pro-map__head {
  max-width: 560px;
  margin-bottom: 1.5rem;
}

.hq-contact-pro-map__frame {
  border-radius: var(--hq-radius-lg);
  overflow: hidden;
  border: 1px solid var(--hq-border);
  box-shadow: var(--hq-shadow-sm);
  background: var(--hq-bg-soft);
}

.hq-contact-pro-map__frame iframe {
  display: block;
  width: 100%;
  min-height: 380px;
  border: 0;
}

.hq-contact-pro-cta { position: relative; padding: var(--hq-section-y) 0; overflow: hidden; }
.hq-contact-pro-cta__bg {
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse 50% 80% at 100% 50%, rgba(232, 139, 9, 0.12), transparent 55%),
    linear-gradient(135deg, var(--hq-navy) 0%, #0a2d5c 100%);
}
.hq-contact-pro-cta__box {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
  padding: clamp(2rem, 4vw, 3rem);
  border-radius: calc(var(--hq-radius-lg) + 4px);
  border: 1px solid rgba(255, 255, 255, 0.1);
  background: rgba(255, 255, 255, 0.04);
}
.hq-contact-pro-cta__title {
  margin: 0 0 0.75rem;
  font-family: var(--hq-font-display);
  font-size: clamp(1.75rem, 3vw, 2.25rem);
  font-weight: 700;
  color: #fff;
  line-height: 1.12;
}
.hq-contact-pro-cta__lead {
  margin: 0;
  max-width: 42ch;
  font-size: 1rem;
  line-height: 1.7;
  color: rgba(255, 255, 255, 0.72);
}
.hq-contact-pro-cta__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  gap: 0.75rem;
}

.hq-contact-pro-cta__actions .hq-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 52px;
}
.hq-contact-pro-eyebrow--light { color: var(--hq-orange-light); }

@media (max-width: 1024px) {
  .hq-contact-pro-layout { grid-template-columns: 1fr; }
  .hq-contact-pro-aside { position: static; }
}

@media (max-width: 640px) {
  .hq-contact-pro-hero__actions { flex-direction: column; }
  .hq-contact-pro-hero__actions .hq-btn { width: 100%; justify-content: center; }
  .hq-contact-pro-hero__chips { gap: 0.4rem; }
  .hq-contact-pro-map__frame iframe { min-height: 280px; }
  .hq-contact-pro-cta__box { flex-direction: column; text-align: center; }
  .hq-contact-pro-cta__actions { justify-content: center; flex-direction: column; width: 100%; }
  .hq-contact-pro-cta__actions .hq-btn { width: 100%; justify-content: center; }
}

/* ═══════════════════════════════════════════════════════════════
   Back-to-Top Floating Button
   ═══════════════════════════════════════════════════════════════ */
#hq-back-to-top {
  position: fixed;
  bottom: 1.75rem;
  right: 1.75rem;
  z-index: 800;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: var(--hq-navy);
  color: var(--hq-white);
  border: none;
  cursor: pointer;
  box-shadow: 0 8px 24px rgba(2,29,69,.22);
  opacity: 0;
  transform: translateY(16px) scale(.9);
  pointer-events: none;
  transition: opacity .3s var(--hq-ease), transform .3s var(--hq-ease), background .2s ease;
}

#hq-back-to-top.is-visible {
  opacity: 1;
  transform: translateY(0) scale(1);
  pointer-events: auto;
}

#hq-back-to-top:hover {
  background: var(--hq-orange);
  box-shadow: 0 10px 28px rgba(232,139,9,.35);
}

#hq-back-to-top i { font-size: 1.125rem; }

/* ═══════════════════════════════════════════════════════════════
   Mobile Nav Footer & Contact Info
   ═══════════════════════════════════════════════════════════════ */
.hq-mobile__footer {
  border-top: 1px solid rgba(255,255,255,.1);
  padding-top: 1rem;
  margin-top: auto;
  display: grid;
  gap: .75rem;
}

.hq-btn--block {
  display: flex;
  width: 100%;
  justify-content: center;
  text-align: center;
}

.hq-mobile__contact-info {
  display: grid;
  gap: .25rem;
  padding: .5rem .75rem;
  border-radius: var(--hq-radius);
  background: rgba(255,255,255,.05);
}

.hq-mobile__contact-info a,
.hq-mobile__contact-info span {
  display: flex;
  align-items: center;
  gap: .5rem;
  font-size: .8125rem;
  color: rgba(255,255,255,.65);
  text-decoration: none;
  padding: .2rem 0;
  transition: color .2s ease;
}

.hq-mobile__contact-info a:hover { color: var(--hq-orange-light); }
.hq-mobile__contact-info i { color: var(--hq-orange); font-size: .75rem; }

/* ═══════════════════════════════════════════════════════════════
   Responsive: Topbar responsive hiding
   ═══════════════════════════════════════════════════════════════ */
@media (max-width: 900px) {
  .hq-topbar__item--hide-md { display: none !important; }
}

@media (max-width: 640px) {
  .hq-topbar__item--hide-sm { display: none !important; }
  :root { --hq-topbar-h: 30px; }
  .hq-topbar__inner { height: var(--hq-topbar-h); }
  #hq-back-to-top { bottom: 6.25rem; right: 1.25rem; width: 44px; height: 44px; }
}

/* ═══════════════════════════════════════════════════════════════
   Professional UI unification — chrome, heroes, floats, focus
   ═══════════════════════════════════════════════════════════════ */
.hq-header-wrapper:has(.hq-header.scrolled) {
  box-shadow: 0 10px 32px rgba(2, 29, 69, 0.08);
}

.hq-about-pro-hero,
.hq-services-pro-hero,
.hq-projects-pro-hero,
.hq-paints-pro-hero,
.hq-gallery-pro-hero,
.hq-contact-pro-hero,
.hq-page-hero {
  padding-top: clamp(2.25rem, 4.5vw, 3.25rem);
}

.hq-about-pro-hero,
.hq-services-pro-hero,
.hq-projects-pro-hero,
.hq-paints-pro-hero,
.hq-gallery-pro-hero,
.hq-contact-pro-hero {
  min-height: clamp(420px, 56vh, 560px);
}

.hq-services-pro-hero--service,
.hq-projects-pro-hero--project,
.hq-paints-pro-hero--product {
  min-height: clamp(360px, 48vh, 460px);
}

.hq-breadcrumb {
  justify-content: flex-start;
}

.hq-page-hero .hq-breadcrumb {
  justify-content: center;
}

.hq-footer__contact a:hover {
  color: var(--hq-orange-light);
}

.whatsapp-float {
  bottom: 1.75rem;
  right: 1.75rem;
}

#hq-back-to-top {
  right: 1.75rem;
  bottom: 6.35rem;
}

@media (max-width: 640px) {
  .whatsapp-float {
    width: 3.25rem;
    height: 3.25rem;
    font-size: 1.45rem;
    bottom: 1.25rem;
    right: 1.25rem;
  }
}

:focus-visible {
  outline: 2px solid var(--hq-orange);
  outline-offset: 3px;
}

.hq-btn:focus-visible,
.hq-nav__link:focus-visible,
.hq-topbar__link:focus-visible {
  outline: 2px solid var(--hq-orange);
  outline-offset: 3px;
}

/* ═══════════════════════════════════════════════════════════════
   Professional device support — phones, tablets, desktops
   ═══════════════════════════════════════════════════════════════ */
.hq-header-wrapper {
  padding-top: env(safe-area-inset-top, 0px);
}

.hq-topbar {
  overflow: hidden;
}

.hq-topbar__item,
.hq-topbar__link {
  min-width: 0;
}

.hq-mobile__panel {
  width: min(92vw, 400px);
}

@media (min-width: 700px) and (max-width: 1023px) {
  .hq-mobile__panel {
    top: 16px;
    right: 16px;
    bottom: auto;
    height: auto;
    max-height: calc(100dvh - 32px);
    width: min(22.75rem, 52vw);
    padding: 1.15rem 1.2rem 1.2rem;
    border-radius: 20px;
    box-shadow: -12px 16px 48px rgba(1, 15, 36, 0.42);
    overflow: auto;
  }

  .hq-mobile__head {
    padding-bottom: 0.9rem;
    gap: 0.85rem;
  }

  .hq-mobile__close {
    width: 40px;
    height: 40px;
    border-radius: 11px;
  }

  .hq-mobile__kicker {
    margin: 1rem 0 0.4rem;
    padding: 0 0.85rem;
    font-size: 0.6875rem;
    letter-spacing: 0.16em;
  }

  .hq-mobile__links {
    flex: 0 1 auto;
    gap: 0.15rem;
    padding: 0 0 0.15rem;
    align-content: start;
  }

  .hq-mobile__links a,
  .hq-mobile__link {
    min-height: 44px;
    padding: 0.6rem 0.85rem;
    font-size: 0.9875rem;
    border-radius: 10px;
  }

  .hq-mobile__links a.is-active,
  .hq-mobile__links a.active,
  .hq-mobile__link.is-active,
  .hq-mobile__link.active {
    box-shadow: inset 2px 0 0 var(--hq-orange);
    background: rgba(232, 139, 9, 0.12);
  }

  .hq-mobile__footer {
    margin-top: 0.85rem;
    grid-template-columns: 1fr;
    gap: 0.55rem;
    padding-top: 0.9rem;
  }

  .hq-mobile__footer .hq-btn {
    min-height: 46px;
    font-size: 0.875rem;
    padding: 0.65rem 1rem;
  }

  .hq-mobile__contact-info {
    margin-top: 0.2rem;
    padding: 0.7rem 0.85rem;
    gap: 0.2rem;
    background: rgba(255, 255, 255, 0.045);
  }

  .hq-mobile__contact-info a,
  .hq-mobile__contact-info span {
    font-size: 0.8125rem;
    padding: 0.2rem 0;
  }

  .hq-topbar__link--highlight span {
    display: inline;
  }
}

.whatsapp-float {
  bottom: calc(1.75rem + env(safe-area-inset-bottom, 0px));
  right: calc(1.75rem + env(safe-area-inset-right, 0px));
}

#hq-back-to-top {
  right: calc(1.75rem + env(safe-area-inset-right, 0px));
  bottom: calc(6.35rem + env(safe-area-inset-bottom, 0px));
}

.hq-projects-pro-filter,
.hq-gallery-pro-filter,
.hq-paints-pro-filter,
.hq-about-pro-hero__anchors a {
  min-height: 40px;
}

@media (max-width: 1023px) {
  .hq-header__cta {
    min-width: 0;
  }
}

@media (max-width: 900px) {
  .hq-about-pro-hero__layout { grid-template-columns: 1fr; }
  .hq-about-pro-hero__panel { max-width: 420px; }
}

@media (max-width: 768px) {
  :root {
    --hq-section-y: clamp(3rem, 10vw, 4.25rem);
    --hq-display: clamp(1.85rem, 8vw, 2.5rem);
    --hq-h2: clamp(1.6rem, 6.8vw, 2.15rem);
    --hq-body: 1rem;
  }

  .container-site {
    padding-left: max(1rem, env(safe-area-inset-left, 0px));
    padding-right: max(1rem, env(safe-area-inset-right, 0px));
  }

  .hq-title,
  .hq-about-pro-hero__title,
  [class$="-pro-hero__title"],
  [class$="-pro-title"] {
    overflow-wrap: anywhere;
    hyphens: auto;
  }

  .hq-btn { min-height: 48px; }
  .hq-btn--lg { min-height: 50px; width: auto; }

  .hq-topbar { font-size: 0.75rem; }
  .hq-topbar__start,
  .hq-topbar__end { gap: 0.65rem; }

  .hq-hero__actions .hq-btn,
  .hq-about-pro-hero__actions .hq-btn,
  .hq-services-pro-hero__actions .hq-btn,
  .hq-projects-pro-hero__actions .hq-btn,
  .hq-paints-pro-hero__actions .hq-btn,
  .hq-gallery-pro-hero__actions .hq-btn,
  .hq-contact-pro-hero__actions .hq-btn {
    min-height: 50px;
  }

  .hq-about-pro-hero__anchors,
  .hq-projects-pro-filters,
  .hq-gallery-pro-filters,
  .hq-paints-pro-filters,
  .hq-services-pro-hero__badges {
    flex-wrap: nowrap;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    overscroll-behavior-x: contain;
  }

  .hq-about-pro-hero__anchors::-webkit-scrollbar,
  .hq-projects-pro-filters::-webkit-scrollbar,
  .hq-gallery-pro-filters::-webkit-scrollbar,
  .hq-paints-pro-filters::-webkit-scrollbar,
  .hq-services-pro-hero__badges::-webkit-scrollbar {
    display: none;
  }

  .hq-about-pro-hero__anchors a,
  .hq-projects-pro-filter,
  .hq-gallery-pro-filter,
  .hq-paints-pro-filter,
  .hq-services-pro-hero__badges li {
    flex: 0 0 auto;
  }

  .hq-form-grid { grid-template-columns: 1fr; }
}


@media (max-width: 640px) {
  .hq-about-pro-hero,
  .hq-services-pro-hero,
  .hq-projects-pro-hero,
  .hq-paints-pro-hero,
  .hq-gallery-pro-hero,
  .hq-contact-pro-hero,
  .hq-page-hero {
    min-height: 0;
  }

  .hq-about-pro-hero { min-height: 0; }

  .whatsapp-float {
    width: 3.25rem;
    height: 3.25rem;
    font-size: 1.45rem;
    bottom: calc(1.15rem + env(safe-area-inset-bottom, 0px));
    right: calc(1.15rem + env(safe-area-inset-right, 0px));
  }

  #hq-back-to-top {
    width: 44px;
    height: 44px;
    right: calc(1.15rem + env(safe-area-inset-right, 0px));
    bottom: calc(5.4rem + env(safe-area-inset-bottom, 0px));
  }

  .hq-footer__bottom {
    flex-direction: column;
    text-align: center;
  }
}

@media (max-width: 699px) {
  .hq-topbar__start { display: none; }
  .hq-topbar__end { width: 100%; justify-content: flex-end; gap: 0.85rem; }
  .hq-topbar__link--highlight span { display: none; }
}

@media (max-width: 420px) {
  .hq-brand--header .hq-brand__name { font-size: 0.875rem; }
}

@media (max-height: 500px) and (orientation: landscape) {
  .hq-about-pro-hero,
  .hq-services-pro-hero,
  .hq-projects-pro-hero,
  .hq-paints-pro-hero,
  .hq-gallery-pro-hero,
  .hq-contact-pro-hero,
  .hq-page-hero {
    min-height: 0;
    padding-top: 1.25rem;
  }
}

@media (min-width: 1440px) {
  .container-site { max-width: 1360px; }
}

@media (hover: none) and (pointer: coarse) {
  .hq-card:hover,
  .hq-portfolio__card:hover {
    transform: none;
  }

  .hq-gallery-pro-item__overlay,
  .hq-projects-pro-card__view {
    opacity: 1;
  }
}

/* Projects portfolio — cinematic hero that wins later unification rules */
.hq-projects-pro-hero.hq-projects-pro-hero--portfolio {
  min-height: clamp(520px, 66svh, 660px);
}

@media (max-width: 640px) {
  .hq-projects-pro-hero.hq-projects-pro-hero--portfolio {
    min-height: 0;
    padding-bottom: 0.5rem;
  }

  .hq-projects-pro-hero--portfolio .hq-projects-pro-hero__inner {
    padding-bottom: 2rem;
  }

  .hq-projects-pro-pillar h3 { font-size: 0.875rem; }
  .hq-projects-pro-hero__chips { gap: 0.4rem; }
}

.hq-about-pro-hero.hq-about-pro-hero--cinematic {
  min-height: clamp(520px, 66svh, 660px);
}

@media (max-width: 640px) {
  .hq-about-pro-hero.hq-about-pro-hero--cinematic {
    min-height: 0;
    padding-bottom: 0.5rem;
  }

  .hq-about-pro-hero--cinematic .hq-about-pro-hero__inner {
    padding-bottom: 2rem;
  }
}

.hq-services-pro-hero.hq-services-pro-hero--cinematic {
  min-height: clamp(520px, 66svh, 660px);
}

@media (max-width: 640px) {
  .hq-services-pro-hero.hq-services-pro-hero--cinematic {
    min-height: 0;
    padding-bottom: 0.5rem;
  }

  .hq-services-pro-hero--cinematic .hq-services-pro-hero__inner {
    padding-bottom: 2rem;
  }
}

.hq-gallery-pro-hero.hq-gallery-pro-hero--cinematic {
  min-height: clamp(520px, 66svh, 660px);
}

@media (max-width: 640px) {
  .hq-gallery-pro-hero.hq-gallery-pro-hero--cinematic {
    min-height: 0;
    padding-bottom: 0.5rem;
  }

  .hq-gallery-pro-hero--cinematic .hq-gallery-pro-hero__inner {
    padding-bottom: 2rem;
  }
}

.hq-contact-pro-hero.hq-contact-pro-hero--cinematic {
  min-height: clamp(520px, 66svh, 660px);
}

@media (max-width: 640px) {
  .hq-contact-pro-hero.hq-contact-pro-hero--cinematic {
    min-height: 0;
    padding-bottom: 0.5rem;
  }

  .hq-contact-pro-hero--cinematic .hq-contact-pro-hero__inner {
    padding-bottom: 2rem;
  }
}

/* ═══════════════════════════════════════════════════════════════
   HighQ Homes — Mobile Image & Content Perfect Fit Architecture
   Covers viewports 320px, 360px, 375px, 390px, 414px, 430px, 480px, 768px
   ═══════════════════════════════════════════════════════════════ */

/* Universal Image Fit & Anti-Distortion */
img, picture, svg, video, figure {
  max-width: 100%;
  height: auto;
  vertical-align: middle;
}

.hq-img-cover,
.hq-portfolio__media img,
.hq-projects-pro-card__img img,
.hq-home-portfolio-card img,
.home-project-card img,
.hq-service__img img,
.hq-services-pro-card__media img,
.hq-upcoming-spotlight__media img,
.hq-gallery-pro-item img,
.hq-paints-pro-card__visual img,
.hq-about-pro-story__visual img,
.hq-about-pro-grid img,
.hq-about__frame img,
.hq-bento__card img,
.hq-leader-card__photo img,
.hq-team-card img {
  width: 100%;
  object-fit: cover !important;
  object-position: center !important;
  display: block;
}

/* Container safety & zero horizontal overflow */
html, body {
  overflow-x: hidden !important;
  max-width: 100vw;
}

.container-site,
.container,
.hq-section,
.hq-header,
.hq-footer,
main {
  max-width: 100%;
  box-sizing: border-box;
}

/* Form input optimization for mobile (prevents iOS auto-zoom on focus) */
@media (max-width: 768px) {
  input[type="text"],
  input[type="email"],
  input[type="tel"],
  input[type="url"],
  input[type="number"],
  input[type="search"],
  input[type="password"],
  select,
  textarea {
    font-size: 16px !important;
    min-height: 46px;
  }

  /* Responsive image aspect ratios on phone screens */
  .hq-portfolio__media,
  .hq-projects-pro-card__img,
  .hq-service__img,
  .hq-services-pro-card__media {
    aspect-ratio: 16 / 10 !important;
    width: 100% !important;
    overflow: hidden;
    border-radius: 12px;
  }

  .hq-upcoming-spotlight__media {
    aspect-ratio: 16 / 9 !important;
    width: 100% !important;
    overflow: hidden;
    border-radius: 14px;
  }

  .hq-about-pro-story__visual,
  .hq-about__frame {
    aspect-ratio: 4 / 3 !important;
    width: 100% !important;
    overflow: hidden;
    border-radius: 14px;
    margin-top: 1rem;
  }

  .hq-leader-card__photo,
  .hq-team-card__photo {
    aspect-ratio: 1 / 1 !important;
    width: 100% !important;
    max-width: 240px;
    margin: 0 auto 1rem auto;
    border-radius: 16px;
    overflow: hidden;
  }

  .hq-gallery-pro-item,
  .hq-gallery-pro-item__inner {
    aspect-ratio: 4 / 3 !important;
    width: 100% !important;
    overflow: hidden;
    border-radius: 12px;
  }

  .hq-paints-pro-card__visual {
    aspect-ratio: 1 / 1 !important;
    width: 100% !important;
    overflow: hidden;
    border-radius: 12px;
  }

  /* Tables and Data grids horizontal scroll container */
  table,
  .table-responsive,
  .hq-paints-pro-specs-table-wrap,
  .hq-specs-table,
  .hq-pro-table {
    display: block;
    width: 100%;
    max-width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  /* Lightbox Mobile Optimization */
  .lightbox-modal {
    padding: max(1rem, env(safe-area-inset-top)) max(1rem, env(safe-area-inset-right)) max(1rem, env(safe-area-inset-bottom)) max(1rem, env(safe-area-inset-left));
  }

  .lightbox-modal .lightbox-img {
    max-width: 95vw !important;
    max-height: 75vh !important;
    object-fit: contain !important;
    border-radius: 8px;
    margin: auto;
  }

  .lightbox-close {
    top: max(1rem, env(safe-area-inset-top)) !important;
    right: max(1rem, env(safe-area-inset-right)) !important;
    width: 48px !important;
    height: 48px !important;
    font-size: 2rem !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: rgba(2, 29, 69, 0.75) !important;
    border-radius: 50% !important;
    color: #fff !important;
    border: none !important;
    z-index: 10001 !important;
  }

  .lightbox-prev,
  .lightbox-next {
    width: 44px !important;
    height: 44px !important;
    background: rgba(2, 29, 69, 0.75) !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #fff !important;
    border: none !important;
  }

  .lightbox-prev {
    left: max(0.75rem, env(safe-area-inset-left)) !important;
  }

  .lightbox-next {
    right: max(0.75rem, env(safe-area-inset-right)) !important;
  }
}

/* Ultra-compact screens (320px - 360px) */
@media (max-width: 360px) {
  .container-site {
    padding-left: 0.85rem !important;
    padding-right: 0.85rem !important;
  }

  .hq-btn {
    padding-left: 1rem !important;
    padding-right: 1rem !important;
    font-size: 0.875rem !important;
  }

  .hq-hero__panes--copy h1,
  .hq-hero__title {
    font-size: 1.65rem !important;
    line-height: 1.25 !important;
  }

  .hq-projects-pro-filter,
  .hq-gallery-pro-filter,
  .hq-paints-pro-filter {
    gap: 0.35rem !important;
  }
}

