/* RTHS site styles. Layout lives in inline styles carried over from the
   Claude Design prototype; this file holds the things inline styles cannot
   express: hover states, responsive rules and focus rings. */

*{box-sizing:border-box}
html,body{margin:0;padding:0;-webkit-font-smoothing:antialiased;
  font-family:'Manrope',system-ui,-apple-system,"Segoe UI",sans-serif}
h1,h2,h3,h4,p{margin:0}
img{max-width:100%}

body.theme-dark{background:#1C1B19;color:#F0ECE4}
body.theme-light{background:#F0ECE4;color:#1C1B19}
body.theme-dark a{color:#8FBFB6;text-decoration:none}
body.theme-dark a:hover{color:#F0ECE4}
body.theme-light a{color:#3E7F76;text-decoration:none}
body.theme-light a:hover{color:#1C1B19}

/* Buttons: base styling stays inline, hover lives here. */
.btn{transition:background-color .18s ease,color .18s ease,border-color .18s ease}
.btn-ghost-light:hover{background:#F0ECE4;color:#1C1B19}
.btn-ghost-light:hover{border-color:#F0ECE4}
.btn-outline-light:hover{border-color:#F0ECE4}
.btn-solid-cream:hover{background:#3E7F76;color:#F0ECE4}
.btn-solid-ink:hover{background:#3E7F76;color:#F0ECE4}
.link-rule{border-bottom:1px solid rgba(240,236,228,.5)}
.link-rule:hover{color:#F0ECE4;border-color:#F0ECE4}

:where(a,button,input,select):focus-visible{outline:2px solid #8FBFB6;outline-offset:3px;border-radius:4px}

/* FAQ */
.faq-q{width:100%;display:flex;justify-content:space-between;align-items:center;gap:24px;
  padding:24px 0;background:none;border:0;cursor:pointer;text-align:left;font:inherit;color:inherit}
.faq-a{padding:0 0 28px;color:#3F3D39;font-size:17px;line-height:1.6;max-width:680px;text-wrap:pretty}
.js .faq-item[data-open="false"] .faq-a{display:none}
.faq-q{display:none}
.js .faq-q{display:flex}
.faq-icon{font-family:'Newsreader',serif;font-size:32px;line-height:1;color:#3E7F76;flex-shrink:0}

/* Form status messaging: never fail silently. */
.form-note{font-size:14px;line-height:1.5;padding-top:4px}
.form-note[data-state="error"]{color:#B4462F}
body.theme-dark .form-note[data-state="error"]{color:#E8907B}
.form-note[data-state="ok"]{color:#3E7F76}
body.theme-dark .form-note[data-state="ok"]{color:#8FBFB6}

@media (max-width:1100px){
  [data-m="stack"]{grid-template-columns:1fr !important;gap:40px !important}
  [data-m="hide"]{display:none !important}
}
@media (max-width:900px){
  [data-m="two"]{grid-template-columns:1fr 1fr !important}
  [data-m="pad"]{padding-left:20px !important;padding-right:20px !important}
  [data-m="nav"]{padding:10px 16px !important}
  [data-m="kv"]{grid-template-columns:1fr !important;gap:6px !important}
  [data-m="three"]{grid-template-columns:1fr !important}
  [data-m="footer3"]{grid-template-columns:1fr !important;gap:32px !important}
}
@media (prefers-reduced-motion:reduce){
  *{animation-duration:.01ms !important;transition-duration:.01ms !important}
}
