/* ============================================================
   THYS · 2026 redesign · shared styles
   Palette: Deep Plum #1E1030 · Antique Lilac #DDD4E8 · Lilac Mid #6A4A90
            Wisteria #ECDFE8 · Wisteria Mid #D4B0C8 · Warm Ivory #F5EDE8
            Page #FBF7F4 · Body text #4A3A5E · Aged gold #C8A06E
   Type: Italiana (display, large sizes only) · Manrope (everything else)
   ============================================================ */
body{margin:0;-webkit-font-smoothing:antialiased}
img,video{max-width:100%}
[hidden]{display:none !important}
a{color:#1E1030}a:hover{color:#6A4A90}
.dark a{color:#F5EDE8}
.dark a:hover{color:#D4B0C8 !important}
:focus-visible{outline:2px solid #6A4A90;outline-offset:3px}
.dark :focus-visible{outline-color:#D4B0C8}

/* layout */
.px{padding-left:40px;padding-right:40px}
.g12{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:24px}
.n1{font-family:Manrope,sans-serif;font-weight:200;font-size:0.72em;letter-spacing:-0.01em}
@media (max-width: 900px){
  .px{padding-left:20px;padding-right:20px}
  .g12{grid-template-columns:minmax(0,1fr);row-gap:48px}
  .g12 > *{grid-column:1 / -1 !important;grid-row:auto !important;margin-left:0 !important;margin-right:0 !important;margin-top:0 !important;width:100% !important}
  .bleed-sm{margin-left:-20px !important;margin-right:-20px !important;width:calc(100% + 40px) !important}
}

/* header (always visible) + menu */
html{scroll-padding-top:84px}
.site-hdr{position:sticky;top:0;z-index:50}
.logo-word{font-family:Italiana,serif;font-size:40px;letter-spacing:12px;line-height:1}
.logo-mark{height:38px;width:auto}
.hdr-cta{padding:0 20px;font-size:13px}
.nav-full{padding:16px 32px}
.menu-panel{right:32px}
@media (max-width: 600px){
  .logo-word{font-size:28px;letter-spacing:7px}
  .logo-mark{height:28px}
  .hdr-cta{padding:0 12px;font-size:12px}
  .nav-full{padding:14px 20px}
  .menu-panel{right:20px;left:20px;width:auto !important}
}

/* homepage height presets */
.preset{min-height:44px;padding:0;background:transparent;border:0;font:inherit;font-size:14px;cursor:pointer;color:#C8A06E}
.preset[aria-pressed="true"]{color:#C8A06E;text-decoration:underline;text-underline-offset:7px}

/* forms */
.field input:focus,.field select:focus{outline:none;border-bottom-color:#1E1030}
button[disabled]{opacity:0.6;cursor:default}

@media (prefers-reduced-motion: reduce){.bg-video{display:none}}

/* homepage cover: keep the three-line headline on desktop */
@media (min-width: 901px){.hero-h1{white-space:nowrap}}

/* "Request Our Deck": header button turns gold on hover; gold buttons lighten */
a.hdr-cta{transition:background-color .2s,color .2s,border-color .2s}
.dark a.hdr-cta:hover,a.hdr-cta:hover{background:#C8A06E !important;color:#1E1030 !important;border-color:#C8A06E !important}
a.deck-btn{transition:background-color .2s}
.dark a.deck-btn:hover,a.deck-btn:hover{background:#DCB886 !important;color:#1E1030 !important}

/* homepage mechanism features: two columns, one on phones */
.feat-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:24px;row-gap:44px}
@media (max-width: 600px){.feat-grid{grid-template-columns:minmax(0,1fr);row-gap:36px}.feat-grid > li:nth-child(2){border-top:1px solid #1E1030;padding-top:22px !important}}

/* investors eyebrow: drop the dot when the line wraps on phones */
@media (max-width: 600px){.eyebrow-sep{display:none}}
