/* AI in AV — site styles */
@import url("https://fonts.googleapis.com/css2?family=Geist:wght@300;400;500;600;700;800;900&display=swap");

:root{
  --ink:#0B0A08;          /* page bg            */
  --ink-2:#0E0D0A;        /* alt section bg     */
  --card:#141210;         /* card surface       */
  --gold:#C9A24B;         /* primary accent     */
  --gold-hi:#E6C77E;      /* hover accent       */
  --paper:#F5F3EF;        /* primary text       */
  --mut:#B9B3A8;          /* body text          */
  --mut-2:#9C968B;        /* secondary text     */
  --mut-3:#7C766B;        /* labels             */
}

html,body{margin:0;padding:0;background:var(--ink);}
*{box-sizing:border-box;}
::selection{background:var(--gold);color:var(--ink);}

body{
  color:var(--paper);
  font-family:'Geist',ui-sans-serif,system-ui,-apple-system,sans-serif;
  font-size:18px;line-height:1.65;overflow-x:hidden;min-height:100vh;
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
}
img{max-width:100%;}
main{display:block;}

/* ── motion ── */
@keyframes aiav-marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@keyframes aiav-spin{from{transform:rotate(0)}to{transform:rotate(360deg)}}
@keyframes aiav-pop{from{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}
@keyframes dave-in{from{opacity:0;transform:translateY(16px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes dave-blink{0%,80%,100%{opacity:.25}40%{opacity:1}}
@keyframes dave-pulse{0%{box-shadow:0 0 0 0 rgba(201,162,75,.45)}70%{box-shadow:0 0 0 12px rgba(201,162,75,0)}100%{box-shadow:0 0 0 0 rgba(201,162,75,0)}}

/* ── interactive states (ported from inline :hover rules) ── */
.aiav-link:hover{color:var(--gold-hi) !important;}
.aiav-btn-gold:hover{background:var(--gold-hi) !important;}
.aiav-btn-ghost:hover{border-color:var(--gold) !important;color:#fff !important;}
.aiav-card{transition:border-color .25s cubic-bezier(.2,.8,.2,1),transform .25s cubic-bezier(.2,.8,.2,1);}
.aiav-card:hover{border-color:rgba(201,162,75,0.45) !important;transform:translateY(-3px);}
.aiav-photo{transition:transform .5s cubic-bezier(.2,.8,.2,1);}
.aiav-photo:hover{transform:scale(1.03);}

/* ── form controls (ported from Join) ── */
.aiav-input{width:100%;background:#16140F;border:1px solid rgba(255,255,255,.12);border-radius:10px;padding:13px 15px;color:var(--paper);font-family:'Geist',sans-serif;font-size:16px;outline:none;transition:border-color .15s,box-shadow .15s;}
.aiav-input::placeholder{color:#6B665C;}
.aiav-input:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(201,162,75,.16);}
.aiav-seg{flex:1 1 130px;cursor:pointer;}
.aiav-seg input{position:absolute;opacity:0;pointer-events:none;}
.aiav-seg span{display:block;text-align:center;border:1px solid rgba(255,255,255,.12);border-radius:10px;padding:12px 10px;font-size:14px;font-weight:600;color:var(--mut);transition:all .15s;}
.aiav-seg input:checked + span{border-color:var(--gold);background:rgba(201,162,75,.12);color:var(--paper);}
.aiav-seg:hover span{border-color:rgba(201,162,75,.4);}

details summary{list-style:none;}
details summary::-webkit-details-marker{display:none;}
details summary::after{content:"+";float:right;color:var(--gold);font-weight:400;font-size:22px;line-height:1;margin-left:16px;}
details[open] summary::after{content:"\2013";}
details summary:hover{color:#fff;}

/* ── dAVe widget ── */
.dave-chip:hover{border-color:var(--gold) !important;color:var(--paper) !important;}
.dave-fab:hover{background:var(--gold-hi) !important;}
.dave-send:hover{background:var(--gold-hi) !important;}
.dave-input:focus{border-color:var(--gold) !important;}
#dave-msgs::-webkit-scrollbar{width:7px}
#dave-msgs::-webkit-scrollbar-thumb{background:rgba(255,255,255,.14);border-radius:4px}

/* ── mobile nav ── */
.nav-toggle{display:none;background:transparent;border:0;color:var(--paper);cursor:pointer;padding:6px;}
@media (max-width:760px){
  .nav-toggle{display:inline-flex;}
  .nav-links{position:absolute;top:100%;left:0;right:0;flex-direction:column !important;align-items:stretch !important;
    background:rgba(11,10,8,.97);backdrop-filter:blur(14px);border-bottom:1px solid rgba(255,255,255,.08);
    padding:14px clamp(20px,5vw,64px) 22px;gap:16px !important;display:none;}
  .nav-links.open{display:flex;}
  .nav-links a{font-size:16px !important;}
}
@media (prefers-reduced-motion:reduce){
  *{animation-duration:.001ms !important;animation-iteration-count:1 !important;}
}
