  * { box-sizing: border-box; }
  html { scroll-behavior: smooth; }
  body { margin: 0; background: #2a1320; }
  a { color: #C9A227; text-decoration: none; }
  a:hover { color: #E6C458; }
  ::selection { background: #C9A227; color: #1A1A2E; }
  input::placeholder, textarea::placeholder { color: rgba(255,255,255,0.55); }
  input, select, textarea, button { box-sizing: border-box; min-width: 0; max-width: 100%; }
  header[id], section[id] { scroll-margin-top: 92px; }
  [data-navlink] { transition: color .3s ease, text-shadow .3s ease; }
  @keyframes yq-ripple { from { transform: scale(0); opacity: .5; } to { transform: scale(2.6); opacity: 0; } }
  @keyframes yq-blob1 { 0%,100% { transform: translate(0,0) scale(1); } 33% { transform: translate(80px,-60px) scale(1.15); } 66% { transform: translate(-50px,40px) scale(0.9); } }
  @keyframes yq-blob2 { 0%,100% { transform: translate(0,0) scale(1); } 50% { transform: translate(-90px,70px) scale(1.2); } }
  @keyframes yq-blob3 { 0%,100% { transform: translate(0,0) scale(1); } 40% { transform: translate(70px,60px) scale(0.85); } 75% { transform: translate(-60px,-50px) scale(1.1); } }
  @keyframes yq-spin { to { transform: rotate(360deg); } }
  @keyframes yq-spinr { to { transform: rotate(-360deg); } }
  @keyframes yq-float { 0%,100% { transform: translateY(0) rotate(0deg); } 50% { transform: translateY(-22px) rotate(6deg); } }
  @keyframes yq-float2 { 0%,100% { transform: translateY(0) rotate(0deg); } 50% { transform: translateY(18px) rotate(-8deg); } }
  @keyframes yq-grad { 0% { background-position: 0% 50%; } 100% { background-position: 200% 50%; } }
  @keyframes yq-sheen { 0% { background-position: -150% 0; } 60%,100% { background-position: 250% 0; } }
  @keyframes yq-marquee { to { transform: translateX(-50%); } }
  @keyframes yq-pulse { 0%,100% { opacity: .5; transform: scale(1); } 50% { opacity: 1; transform: scale(1.15); } }
  @keyframes yq-ring { 0%,100% { box-shadow: 0 0 0 1px rgba(201,162,39,0.3), 0 0 30px rgba(201,162,39,0.15); } 50% { box-shadow: 0 0 0 1px rgba(201,162,39,0.6), 0 0 55px rgba(201,162,39,0.35); } }
  @keyframes yq-holo { 0% { transform: translate(-8%,-6%) rotate(0deg); } 50% { transform: translate(8%,6%) rotate(180deg); } 100% { transform: translate(-8%,-6%) rotate(360deg); } }
  @keyframes yq-sweep { 0% { transform: translateX(-60%) skewX(-14deg); opacity: 0; } 40% { opacity: .7; } 100% { transform: translateX(160%) skewX(-14deg); opacity: 0; } }
  @keyframes yq-hue { to { filter: hue-rotate(360deg); } }
  @keyframes yq-draw { to { stroke-dashoffset: 0; } }
  .yq-photo { filter: sepia(0.2) saturate(0.92) contrast(1.04) hue-rotate(-6deg); }
  h1, h2, h3 { text-wrap: balance; }
  details summary::marker { color: #E6C458; }
  select option { background: #2a1320; color: #fff; }
  p, li { text-wrap: pretty; }
  .yq-menubtn { display: none; }
  @media (max-width: 880px) {
    .yq-navlinks, .yq-navcta { display: none !important; }
    .yq-menubtn { display: inline-flex !important; }
    .yq-navbar { padding: 14px 20px !important; }
    footer nav a, footer nav button { padding: 10px 0 !important; }
    footer a[href^="mailto:"] { display: inline-block; padding: 8px 0; }
    nav[aria-label="Breadcrumb"] a { display: inline-block; padding: 6px 2px; }
  }
  @media (max-width: 600px) {
    section[id], header[id], .yq-pad { padding-left: 20px !important; padding-right: 20px !important; }
    .yq-letter { padding: 64px 22px 40px !important; }
    .yq-legal { padding: 4px 20px 24px !important; }
    .yq-stats { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px !important; }
    .yq-stats > div > div:first-child { font-size: 26px !important; }
    [aria-hidden="true"][style*="visibility: hidden"] { display: none !important; }
  }

  /* hover and focus states (the design tool applied these with script) */
  [data-navlink]:hover { color: #ffffff !important; }
  footer a:hover, footer button:hover { color: #ffffff !important; }
  a[data-ripple]:hover, button[data-ripple]:hover { filter: brightness(1.08); transform: translateY(-2px); }
  a[data-ripple], button[data-ripple] { transition: filter .2s ease, transform .2s ease; }
  #main a[href^="mailto:"][style*="border-radius: 999px"]:hover, header a[href="/services/"]:hover { border-color: rgba(201,162,39,0.5) !important; color: #E6C458 !important; }
  a[data-tilt]:hover { border-color: rgba(201,162,39,0.6) !important; }
  input:focus, select:focus, textarea:focus { border-color: #C9A227 !important; }
  a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible, summary:focus-visible { outline: 2px solid #F3DE8A; outline-offset: 3px; }
  .yq-skip { position: absolute; left: 12px; top: -60px; z-index: 400; padding: 10px 16px; border-radius: 8px; background: #F3DE8A; color: #1A1A2E; font-weight: 700; }
  .yq-skip:focus { top: 12px; }
  html { -webkit-text-size-adjust: 100%; }
  img { max-width: 100%; }
  @media (prefers-reduced-motion: reduce) { *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; scroll-behavior: auto !important; } }
