/* SayRaye v4.0.7 — Netlify compatibility only. Loaded last. */
[hidden], .honeypot { display:none !important; }

/* Keep listening platform cards identical across hosts. */
.platform-grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:1rem!important;
  align-items:stretch!important;
}
.platform-card{
  box-sizing:border-box!important;
  min-width:0!important;
  min-height:18rem!important;
  padding:2rem!important;
  display:grid!important;
  grid-template-rows:auto 1fr auto!important;
  align-content:stretch!important;
  border:1px solid rgba(185,151,91,.38)!important;
  background:#11100e!important;
  color:#f2eee7!important;
  text-decoration:none!important;
  overflow:hidden!important;
}
.platform-card>span{display:flex!important;flex-direction:column!important;align-self:center!important;gap:.65rem!important;min-width:0!important}
.platform-card strong{display:block!important;font-family:var(--font-display)!important;font-size:1.8rem!important;line-height:1.05!important;font-weight:400!important;color:#f2eee7!important}
.platform-card small{display:block!important;font-family:var(--font-ui)!important;font-size:.88rem!important;line-height:1.35!important;color:var(--gold-light)!important}
.platform-card i{display:block!important;align-self:end!important;color:var(--gold-light)!important}
.platform-card img{display:block!important;width:3rem!important;height:3rem!important;object-fit:contain!important}

/* Contact route buttons must remain buttons rather than inherited text links. */
.conversation-card .button,
.conversation-card .button:visited{
  display:inline-flex!important;
  width:auto!important;
  min-height:4.6rem!important;
  padding:0 2rem!important;
  align-items:center!important;
  justify-content:center!important;
  margin-top:auto!important;
  border:1px solid var(--gold)!important;
  color:#0b0b0b!important;
  background:var(--gold)!important;
  font-family:var(--font-ui)!important;
  font-size:.78rem!important;
  font-weight:600!important;
  letter-spacing:.16em!important;
  text-transform:uppercase!important;
  text-decoration:none!important;
}
.conversation-card:not(.conversation-card-featured) .button-secondary{
  background:transparent!important;
  color:#0b0b0b!important;
  border-color:#9e7e45!important;
}
.conversation-card-featured .button{background:var(--gold)!important;color:#0b0b0b!important}

/* Contact form — stable two-column composition and no accidental raw controls. */
.contact-message-section{display:grid!important;grid-template-columns:minmax(18rem,.42fr) minmax(0,.58fr)!important;gap:clamp(3rem,7vw,7rem)!important}
.contact-form-panel{min-width:0!important}
.submission-form .honeypot{display:none!important}
.topic-choice-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:.65rem!important}
.topic-choice input{position:absolute!important;opacity:0!important;pointer-events:none!important}
.topic-choice span{box-sizing:border-box!important;min-height:4.6rem!important;display:flex!important;align-items:center!important;padding:1rem 1.25rem!important}

/* Footer — explicit final layout and link colors. */
.site-footer{
  display:grid!important;
  grid-template-columns:minmax(15rem,1.15fr) minmax(9rem,.7fr) minmax(9rem,.7fr) minmax(9rem,.7fr) minmax(15rem,1fr)!important;
  gap:clamp(2rem,4vw,4.5rem)!important;
  align-items:start!important;
  padding:clamp(4rem,6vw,6rem) var(--pad) 2rem!important;
  background:#0b0b0b!important;
  color:#f2eee7!important;
}
.site-footer a,.site-footer a:visited{display:block!important;margin:.3rem 0!important;color:#d9c18c!important;text-decoration:none!important}
.site-footer a:hover{color:#fff4d6!important}
.footer-nav p,.footer-social p{margin:0 0 .8rem!important;color:#f2eee7!important;font-size:.68rem!important;font-weight:600!important;letter-spacing:.15em!important;text-transform:uppercase!important}
.footer-legal{align-self:end!important;display:flex!important;flex-wrap:wrap!important;gap:.4rem .8rem!important;color:#f2eee7!important}
.footer-brand .raye-signature{display:block!important;max-width:13rem!important;height:auto!important;margin-top:1.5rem!important}

@media(max-width:72rem){
  .platform-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .site-footer{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .contact-message-section{grid-template-columns:1fr!important}
}
@media(max-width:42rem){
  .platform-grid,.topic-choice-grid,.site-footer{grid-template-columns:1fr!important}
  .platform-card{min-height:14rem!important}
}

/* v4.0.8 — Form controls normalized for Netlify/static hosting. */
:root{--font-ui:var(--font-sans)}

/* Never expose trap fields, including any legacy cached markup. */
.honeypot,[name="company"]{display:none!important;visibility:hidden!important;position:absolute!important;left:-99999px!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important}

/* ASK / private submission form — keep the editorial dark treatment. */
.ask-page-hero + .submission-section .submission-form-wrap,
.submission-section .submission-form-wrap{
  min-width:0!important;
}
.submission-section .submission-form{
  display:grid!important;
  gap:1.35rem!important;
  width:100%!important;
  max-width:none!important;
}
.submission-section .form-field{
  display:grid!important;
  gap:.55rem!important;
  width:100%!important;
}
.submission-section .form-field label,
.submission-section .checkbox-field label{
  color:#f2eee7!important;
  font-family:var(--font-sans)!important;
  font-size:.95rem!important;
  line-height:1.35!important;
}
.submission-section .form-field label span{color:#a9a196!important;font-size:.82em!important}
.submission-section .form-field input,
.submission-section .form-field select,
.submission-section .form-field textarea{
  appearance:none!important;
  -webkit-appearance:none!important;
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  box-sizing:border-box!important;
  margin:0!important;
  border:1px solid rgba(213,189,140,.34)!important;
  border-radius:0!important;
  background:#11100e!important;
  color:#f2eee7!important;
  font-family:var(--font-sans)!important;
  font-size:1rem!important;
  line-height:1.5!important;
  padding:.95rem 1rem!important;
  outline:none!important;
  box-shadow:none!important;
}
.submission-section .form-field input,
.submission-section .form-field select{min-height:3.7rem!important}
.submission-section .form-field textarea{
  min-height:15rem!important;
  height:auto!important;
  resize:vertical!important;
}
.submission-section .form-field select{
  background-image:linear-gradient(45deg,transparent 50%,#d5bd8c 50%),linear-gradient(135deg,#d5bd8c 50%,transparent 50%)!important;
  background-position:calc(100% - 18px) 50%,calc(100% - 12px) 50%!important;
  background-size:6px 6px,6px 6px!important;
  background-repeat:no-repeat!important;
  padding-right:2.75rem!important;
}
.submission-section .form-field input:focus,
.submission-section .form-field select:focus,
.submission-section .form-field textarea:focus{
  border-color:#d5bd8c!important;
  box-shadow:0 0 0 1px #d5bd8c!important;
}
.submission-section .field-meta{
  display:flex!important;
  justify-content:space-between!important;
  gap:1rem!important;
  color:#aaa39a!important;
  font-family:var(--font-sans)!important;
  font-size:.78rem!important;
  line-height:1.4!important;
}
.submission-section .checkbox-field{
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr)!important;
  gap:.7rem!important;
  align-items:start!important;
}
.submission-section .checkbox-field input{
  appearance:auto!important;
  -webkit-appearance:auto!important;
  width:1rem!important;
  height:1rem!important;
  margin:.18rem 0 0!important;
  accent-color:#c9a35f!important;
}
.submission-section .form-fallback{
  color:#aaa39a!important;
  font-family:var(--font-sans)!important;
  font-size:.82rem!important;
  line-height:1.5!important;
}

/* CONTACT form — retain the existing cream editorial section, but normalize browser controls. */
.contact-message-section .submission-form{
  display:grid!important;
  gap:1.15rem!important;
  width:100%!important;
  max-width:none!important;
}
.contact-message-section .form-field{
  display:grid!important;
  gap:.45rem!important;
  width:100%!important;
}
.contact-message-section .form-field label{
  color:#0b0b0b!important;
  font-family:var(--font-sans)!important;
  font-size:.84rem!important;
  font-weight:500!important;
}
.contact-message-section .form-field input,
.contact-message-section .form-field textarea{
  appearance:none!important;
  -webkit-appearance:none!important;
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  box-sizing:border-box!important;
  margin:0!important;
  border:1px solid rgba(11,11,11,.28)!important;
  border-radius:0!important;
  background:rgba(255,255,255,.12)!important;
  color:#0b0b0b!important;
  font-family:var(--font-sans)!important;
  font-size:1rem!important;
  line-height:1.45!important;
  padding:.9rem 1rem!important;
  outline:none!important;
  box-shadow:none!important;
}
.contact-message-section .form-field input{min-height:3.6rem!important}
.contact-message-section .form-field textarea{
  min-height:10.5rem!important;
  height:auto!important;
  resize:vertical!important;
}
.contact-message-section .form-field input:focus,
.contact-message-section .form-field textarea:focus{
  border-color:#9e7e45!important;
  box-shadow:0 0 0 1px #9e7e45!important;
}
.contact-message-section .field-meta{
  display:flex!important;
  justify-content:space-between!important;
  gap:1rem!important;
  color:#675e53!important;
  font-family:var(--font-sans)!important;
  font-size:.76rem!important;
}
.contact-message-section .field-error{min-height:0!important;margin:0!important;color:#8a3b31!important;font-size:.76rem!important}
.contact-message-section .form-fallback{color:#61594f!important;font-family:var(--font-sans)!important;font-size:.78rem!important;line-height:1.5!important}
.contact-message-section .form-fallback a,.contact-message-section .form-fallback a:visited{color:#73582d!important;text-decoration:underline!important;text-underline-offset:.16em!important}

/* Topic choices must never fall back to raw browser radios. */
.contact-message-section .topic-choice{margin:0 0 .75rem!important;padding:0!important;border:0!important}
.contact-message-section .topic-choice legend{margin-bottom:.8rem!important;color:#0b0b0b!important;font-family:var(--font-sans)!important;font-size:.68rem!important;font-weight:600!important;letter-spacing:.14em!important;text-transform:uppercase!important}
.contact-message-section .topic-choice-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:.65rem!important}
.contact-message-section .topic-choice label{display:block!important;position:relative!important;min-width:0!important;cursor:pointer!important}
.contact-message-section .topic-choice input{position:absolute!important;inline-size:1px!important;block-size:1px!important;opacity:0!important;pointer-events:none!important}
.contact-message-section .topic-choice span{
  display:flex!important;
  align-items:center!important;
  width:100%!important;
  min-height:4.25rem!important;
  padding:.85rem 1.15rem!important;
  border:1px solid rgba(11,11,11,.22)!important;
  background:transparent!important;
  color:#0b0b0b!important;
  font-family:var(--font-sans)!important;
  font-size:.95rem!important;
  line-height:1.25!important;
}
.contact-message-section .topic-choice input:checked + span{background:#0b0b0b!important;color:#f2eee7!important;border-color:#0b0b0b!important}
.contact-message-section .topic-choice input:focus-visible + span{outline:2px solid #b9975b!important;outline-offset:2px!important}

@media(max-width:42rem){
  .submission-section .field-meta{flex-direction:column!important;gap:.2rem!important}
  .contact-message-section .topic-choice-grid{grid-template-columns:1fr!important}
}

