/* HOA planning guide: scoped editorial layout and printable board worksheet. */
.hoa-guide .hoa-hero { padding-block: 60px 76px; }
.hoa-hero-grid { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(280px,.8fr); gap:clamp(36px,6vw,90px); align-items:center; }
.hoa-breadcrumb { display:flex; flex-wrap:wrap; gap:12px; font-size:.82rem; margin-bottom:34px; color:var(--snow-dim); }
.hoa-guide .hoa-hero h1 { font-size:clamp(2.65rem,4.5vw,4.55rem); max-width:850px; line-height:1.08; margin-bottom:24px; }
.hoa-guide .hoa-hero .lede { max-width:680px; }
.hoa-actions { display:flex; align-items:center; flex-wrap:wrap; gap:18px 26px; margin-top:28px; }
.hoa-text-link { font-weight:600; text-underline-offset:4px; }
.hoa-byline { margin-top:28px; color:var(--snow-dim); font-size:.82rem; line-height:1.7; }
.hoa-at-a-glance { padding:clamp(28px,3vw,46px); background:#183a30; color:#fbfaf6; border-top:4px solid #d4bc8e; }
.hoa-guide .hoa-at-a-glance .eyebrow { color:#dec496; font-size:.7rem; }
.hoa-guide .hoa-at-a-glance h2 { color:#fbfaf6; font-size:clamp(2rem,3vw,2.8rem); line-height:1.14; margin:16px 0 24px; }
.hoa-at-a-glance ol { list-style:none; padding:0; margin:0 0 28px; }
.hoa-at-a-glance li { display:flex; gap:15px; padding:14px 0; border-bottom:1px solid #496258; font-size:.95rem; }
.hoa-at-a-glance li span { color:#dec496; font-size:.75rem; padding-top:3px; }
.hoa-guide .hoa-at-a-glance a { color:#f2dfb9; font-weight:600; font-size:.9rem; }
.hoa-reading-layout { display:grid; grid-template-columns:220px minmax(0,800px); gap:clamp(42px,7vw,110px); align-items:start; padding-block:64px 90px; border-top:1px solid #d9d6c9; }
.hoa-contents { display:grid; gap:13px; position:sticky; top:125px; font-size:.9rem; }
.hoa-contents .eyebrow { margin:0 0 6px; }
.hoa-contents a { text-decoration:none; color:var(--snow-dim); }
.hoa-contents a:hover { color:#183a30; text-decoration:underline; }
.hoa-guide .hoa-introduction { font-size:1.2rem; line-height:1.8; margin:0 0 48px; }
.hoa-article section { scroll-margin-top:115px; padding-top:40px; margin-top:40px; border-top:1px solid #d9d6c9; }
.hoa-guide .hoa-article h2 { font-size:clamp(2rem,3vw,2.65rem); margin:12px 0 22px; }
.hoa-article p, .hoa-article ul, .hoa-article ol { margin-block:18px; }
.hoa-article li { margin-block:10px; padding-left:4px; }
.hoa-article ul, .hoa-article ol { padding-left:24px; }
.hoa-note { background:#f0eee6; border-left:3px solid #98733d; padding:22px 26px; margin-top:28px; }
.hoa-guide .hoa-worksheet-section { background:#f0eee6; scroll-margin-top:96px; }
.hoa-worksheet-intro { display:flex; justify-content:space-between; align-items:center; gap:30px; margin-bottom:34px; }
.hoa-worksheet-intro > div { max-width:740px; }
.hoa-guide .hoa-worksheet-intro h2 { font-size:clamp(2.25rem,3.7vw,3.2rem); }
.hoa-worksheet-intro p { margin-bottom:0; }
.hoa-worksheet-intro button { flex-shrink:0; }
.hoa-worksheet { display:grid; gap:32px; max-width:1000px; margin-inline:auto; }
.hoa-sheet { padding:clamp(24px,4vw,50px); background:#fff; border:1px solid #d6d3c7; box-shadow:0 6px 20px #183a3005; }
.hoa-sheet-heading { display:flex; justify-content:space-between; align-items:flex-start; gap:20px; padding-bottom:16px; border-bottom:1px solid #ddd9cc; }
.hoa-guide .hoa-sheet-heading .eyebrow { margin:0; font-size:.66rem; max-width:380px; }
.hoa-sheet-heading > span { font-size:.74rem; font-weight:600; text-align:right; color:#4e6058; }
.hoa-guide .hoa-sheet h3 { font-size:2rem; margin:24px 0; }
.hoa-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:21px 26px; }
.hoa-field { display:flex; flex-direction:column; gap:8px; min-width:0; font-size:.85rem; font-weight:600; color:#183a30; }
.hoa-field-wide { grid-column:1/-1; }
.hoa-guide .hoa-field input, .hoa-guide .hoa-field textarea { width:100%; min-width:0; min-height:46px; border:1px solid #aaaFA7; border-radius:2px; padding:10px 12px; background:#fff; color:#183a30; font:400 1rem/1.5 Figtree,system-ui,sans-serif; box-shadow:none; }
.hoa-guide .hoa-field textarea { resize:vertical; }
.hoa-guide .hoa-field input:focus-visible, .hoa-guide .hoa-field textarea:focus-visible, .hoa-checks input:focus-visible { outline:2px solid #285342; outline-offset:3px; }
.hoa-guide .hoa-field input::placeholder, .hoa-guide .hoa-field textarea::placeholder { color:#67736c; opacity:1; }
.hoa-checks { border:0; padding:0; margin:28px 0 0; min-width:0; }
.hoa-checks legend { padding:0; margin-bottom:10px; font-size:.92rem; font-weight:700; }
.hoa-checks label { display:flex; align-items:flex-start; gap:12px; padding:10px 0; min-height:44px; font-size:.9rem; cursor:pointer; line-height:1.5; }
.hoa-guide .hoa-checks input { flex:none; width:20px; height:20px; min-height:0; margin:1px 0 0; padding:0; accent-color:#285342; }
.hoa-sheet-note { margin:23px 0 0; border-top:1px solid #ddd9cc; padding-top:18px; color:#4e6058; font-size:.8rem; line-height:1.6; }
.hoa-after-worksheet { text-align:center; margin:30px 0 0; }
.hoa-print-value, .hoa-print-footer { display:none; }
.hoa-guide .hoa-faq .wrap { max-width:950px; }
.hoa-guide .hoa-final-cta .lede { max-width:670px; margin-inline:auto; }
.hoa-final-cta .hoa-actions { justify-content:center; }
.hoa-guide [hidden] { display:none !important; }
@media (max-width:960px) {
  .hoa-hero-grid { grid-template-columns:minmax(0,1fr); }
  .hoa-at-a-glance { max-width:680px; }
  .hoa-reading-layout { grid-template-columns:minmax(0,1fr); gap:38px; padding-block:44px 64px; }
  .hoa-contents { position:static; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px 24px; padding-bottom:32px; border-bottom:1px solid #d9d6c9; }
  .hoa-contents .eyebrow { grid-column:1/-1; }
  .hoa-worksheet-intro { flex-direction:column; align-items:flex-start; }
}
@media (max-width:620px) {
  .hoa-guide .hoa-hero { padding-block:32px 44px; }
  .hoa-breadcrumb { margin-bottom:24px; }
  .hoa-guide .hoa-hero h1 { font-size:2.65rem; }
  .hoa-actions { align-items:stretch; flex-direction:column; gap:18px; }
  .hoa-actions .btn { width:100%; text-align:center; justify-content:center; }
  .hoa-contents { font-size:.84rem; }
  .hoa-guide .hoa-introduction { font-size:1.1rem; }
  .hoa-article section { margin-top:32px; padding-top:32px; }
  .hoa-fields { grid-template-columns:minmax(0,1fr); gap:18px; }
  .hoa-field-wide { grid-column:auto; }
  .hoa-sheet-heading { flex-direction:column; gap:8px; }
  .hoa-sheet-heading > span { text-align:left; }
  .hoa-guide .hoa-sheet h3 { font-size:1.7rem; }
  .hoa-guide .hoa-sheet { padding:24px 18px; }
  .hoa-worksheet-intro button { width:100%; }
}
@media print {
  @page { size:letter; margin:14mm; }
  html, body.site-elegant.hoa-guide { background:white !important; color:#111 !important; font:10pt/1.35 Arial,sans-serif !important; }
  body.hoa-guide > :not(main), .hoa-guide main > :not(#board-checklist),
  .hoa-worksheet-intro, .hoa-after-worksheet { display:none !important; }
  .hoa-guide #board-checklist { padding:0 !important; margin:0 !important; background:white !important; }
  .hoa-guide #board-checklist > .wrap { width:100%; max-width:none; margin:0; padding:0; }
  .hoa-worksheet { display:block; max-width:none; }
  .hoa-sheet { padding:0; margin:0; border:0; box-shadow:none; }
  .hoa-sheet + .hoa-sheet { break-before:page; page-break-before:always; }
  .hoa-sheet-heading { display:flex; flex-direction:row; gap:12pt; padding-bottom:9pt; border-color:#999; }
  .hoa-guide .hoa-sheet-heading .eyebrow { font:700 8pt/1.4 Arial,sans-serif; letter-spacing:.04em; color:#222; max-width:300px; }
  .hoa-sheet-heading > span { color:#222; font-size:8pt; white-space:nowrap; }
  .hoa-guide .hoa-sheet h3 { font:400 21pt/1.2 Georgia,serif; color:#111; margin:16pt 0; break-after:avoid; }
  .hoa-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12pt 18pt; }
  .hoa-field { gap:5pt; font:700 9pt/1.3 Arial,sans-serif; color:#111; break-inside:avoid; }
  .hoa-field-wide { grid-column:1/-1; }
  .hoa-guide .hoa-field input, .hoa-guide .hoa-field textarea { font:10pt/1.4 Arial,sans-serif; min-height:24pt; border:0; border-bottom:1px solid #888; padding:3pt 0; color:#111; }
  .hoa-guide.hoa-print-ready .hoa-field [data-print-field] { display:none; }
  .hoa-print-ready .hoa-print-value { display:block; min-height:24pt; padding:3pt 0; border-bottom:1px solid #888; font:400 10pt/1.4 Arial,sans-serif; white-space:pre-wrap; overflow-wrap:anywhere; }
  .hoa-print-ready .hoa-print-notes { min-height:38pt; }
  .hoa-checks { margin-top:18pt; }
  .hoa-checks legend { color:#111; font:700 10pt/1.3 Arial,sans-serif; margin-bottom:6pt; }
  .hoa-checks label { gap:8pt; min-height:0; padding:5pt 0; font:400 9pt/1.4 Arial,sans-serif; color:#111; break-inside:avoid; }
  .hoa-guide .hoa-checks input { appearance:auto; width:11pt; height:11pt; margin:1pt 0 0; }
  .hoa-sheet-note { margin-top:15pt; padding-top:10pt; color:#222; font:400 8pt/1.4 Arial,sans-serif; break-inside:avoid; }
  .hoa-print-footer { display:block; margin:14pt 0 0; padding-top:8pt; border-top:1px solid #ccc; color:#333; font:400 7.5pt/1.3 Arial,sans-serif; }
}
