/* Generated from the prototype page "Contact Page" by scripts/george/build.mjs */

  a:focus-visible, button:focus-visible { outline: 2px solid var(--bigg-blue) !important; outline-offset: 3px; }

  * { box-sizing: border-box; }
  html, body { margin: 0; padding: 0; background: #fff; }
  a { color: var(--bigg-ink, var(--bigg-ink)); -webkit-tap-highlight-color: transparent; }
  a:hover { color: var(--bigg-coral, var(--bigg-coral)); }
  @keyframes hero-dot-pulse { 0%, 100% { transform: scale(1); opacity: 1; } 50% { transform: scale(1.1); opacity: .9; } }
  @keyframes ct-step-in { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: none; } }
  .ct-step { animation: ct-step-in 360ms var(--ease-out) both; }
  .ct-input::placeholder { color: rgba(1,0,39,.45); }
  .ct-hero-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.08fr); gap: clamp(36px, 5vw, 80px); align-items: center; }
  .ct-fields2 { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
  .ct-find { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.7fr); gap: clamp(28px, 4vw, 64px); align-items: stretch; }
  @media (max-width: 980px) { .ct-hero-grid { grid-template-columns: minmax(0, 1fr); gap: 40px; } .ct-find { grid-template-columns: minmax(0, 1fr); } .ct-nav { display: none !important; } }
  @media (max-width: 560px) { .ct-fields2 { grid-template-columns: minmax(0, 1fr) !important; } }
  @media (max-width: 900px) { .ct-footer-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 36px 28px !important; } .ct-footer-grid > div:first-child { grid-column: 1 / -1; } }
  .nav-dd { position: relative; display: inline-flex; align-items: center; }
  .nav-dd-menu { position: absolute; top: 100%; left: 50%; z-index: 80; padding-top: 14px; opacity: 0; visibility: hidden; transform: translate(-50%, -6px); transition: opacity 200ms ease, transform 240ms var(--ease-out); }
  .nav-dd:hover .nav-dd-menu, .nav-dd:focus-within .nav-dd-menu { opacity: 1; visibility: visible; transform: translate(-50%, 0); }
  .nav-dd-card { display: flex; flex-direction: column; gap: 2px; min-width: 216px; padding: 10px; border-radius: 18px; background: #fff; box-shadow: 0 18px 40px rgba(1,16,56,.2); }
  .nav-dd-card a { display: block; padding: 11px 14px; border-radius: 12px; font-family: var(--font-ui); font-weight: 700; font-size: 14.5px; letter-spacing: -0.01em; color: var(--bigg-ink); text-decoration: none; transition: background-color 180ms ease; }
  .nav-dd-card a:hover { background: var(--surface-muted); color: var(--bigg-ink); }
  .nav-dd-caret { width: 0; height: 0; margin-left: 6px; border-left: 4px solid transparent; border-right: 4px solid transparent; border-top: 5px solid currentColor; transition: transform 200ms ease; }
  .nav-dd:hover .nav-dd-caret { transform: translateY(2px); }

/* hover / focus / active states */
[data-sf="x0"]:focus-visible{transform: none !important; opacity: 1 !important}
[data-sh="x1"]:hover{color: var(--hero-fg, #fff) !important}
[data-sh="x2"]:hover{color: var(--bigg-coral) !important}
[data-sh="x3"]:hover{color: var(--hero-fg, #fff) !important; text-decoration: underline !important}
[data-sh="x4"]:hover{transform: translateY(-2px) !important; border-color: var(--bigg-ink) !important}
[data-sf="x5"]:focus-visible{border-color: var(--bigg-blue) !important; background: #fff !important; box-shadow: 0 0 0 3px color-mix(in srgb, var(--bigg-blue) 25%, transparent) !important}
[data-sh="x6"]:hover{background: var(--bigg-coral-hover) !important; transform: translateY(-3px) !important; box-shadow: 0 12px 26px rgba(255,122,102,.35) !important}
[data-sa="x7"]:active{transform: scale(.98) !important}
[data-sh="x8"]:hover{background: var(--bigg-coral-hover) !important; transform: translateY(-2px) !important}
[data-sh="x9"]:hover{color: var(--bigg-ink) !important}
[data-sh="xa"]:hover{border-color: var(--bigg-ink) !important}
