/* DAS Properties — site styles, extracted from the original single-file build */

html { scroll-behavior: smooth; }
  body { font-family: 'Inter', sans-serif; background:#FAF8F4; color:#0F2A4A; }
  h1,h2,h3,h4, .font-display { font-family: 'Fraunces', serif; }
  .mono { font-family: 'IBM Plex Mono', monospace; }

  /* Contour / topography line motif — signature element echoing surveyed land */
  .contour-bg {
    background-image:
      repeating-radial-gradient(circle at 15% 20%, transparent 0, transparent 38px, rgba(27,77,142,0.06) 39px, rgba(27,77,142,0.06) 40px),
      repeating-radial-gradient(circle at 85% 75%, transparent 0, transparent 46px, rgba(47,125,79,0.06) 47px, rgba(47,125,79,0.06) 48px);
  }
  .contour-dark {
    background-image:
      repeating-radial-gradient(circle at 20% 30%, transparent 0, transparent 40px, rgba(255,255,255,0.045) 41px, rgba(255,255,255,0.045) 42px),
      repeating-radial-gradient(circle at 80% 70%, transparent 0, transparent 52px, rgba(201,162,39,0.06) 53px, rgba(201,162,39,0.06) 54px);
  }

  #navbar { transition: background-color .4s ease, box-shadow .4s ease, padding .4s ease; }
  #navbar.solid { background-color: #FAF8F4; box-shadow: 0 4px 20px rgba(15,42,74,0.08); }

  .fade-up { opacity:0; transform: translateY(24px); transition: opacity .7s ease, transform .7s ease; }
  .fade-up.show { opacity:1; transform: translateY(0); }

  .card-hover { transition: transform .35s ease, box-shadow .35s ease; }
  .card-hover:hover { transform: translateY(-6px); box-shadow: 0 20px 40px -12px rgba(15,42,74,0.18); }

  .eyebrow { letter-spacing: .18em; text-transform: uppercase; font-family:'IBM Plex Mono', monospace; font-size:.72rem; }

  .rail::-webkit-scrollbar { height: 8px; }
  .rail::-webkit-scrollbar-thumb { background: #1B4D8E33; border-radius: 8px; }

  input[type="range"].ba-slider { -webkit-appearance: none; width:100%; height:4px; background: transparent; }
  input[type="range"].ba-slider::-webkit-slider-thumb {
    -webkit-appearance:none; width:44px; height:44px; border-radius:50%;
    background:#fff url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="none" stroke="%230F2A4A" stroke-width="2"><path d="M8 7l-5 5 5 5M16 7l5 5-5 5"/></svg>') center/20px no-repeat;
    border: 3px solid #C81E1E; cursor:ew-resize; margin-top:-22px; box-shadow: 0 4px 14px rgba(0,0,0,.25);
  }
  input[type="range"].ba-slider::-moz-range-thumb {
    width:44px; height:44px; border-radius:50%; background:#fff; border: 3px solid #C81E1E; cursor:ew-resize;
  }

  .accordion-panel { max-height: 0; overflow: hidden; transition: max-height .4s ease; }
  .accordion-item.open .accordion-panel { max-height: 400px; }
  .accordion-item.open .chevron { transform: rotate(45deg); }
  .chevron { transition: transform .3s ease; }

  .video-card:hover .play-btn { transform: scale(1.12); }
  .play-btn { transition: transform .3s ease; }

  #lightbox { backdrop-filter: blur(6px); }

  ::selection { background:#C9A227; color:#0F2A4A; }
  :focus-visible { outline: 2px solid #C81E1E; outline-offset: 3px; }

  @media (prefers-reduced-motion: reduce) {
    * { animation: none !important; transition: none !important; }
  }
