/* Blush & rose-gold layer: softer, feminine accents on Emerald Estate.
   Layered after styles.css + emerald-estate.css. */
.emerald{
  --blush:#FBF1EE; --blush-2:#F6E3DE; --blush-3:#EFD0C8;
  --rose:#C08A8F; --rose-ink:#8E4B57; --rosegold:linear-gradient(135deg,#E9C6B9 0%,#D8B08C 55%,#C9A96E 100%);
  --soft-radius:18px;
}
/* Softer shapes */
.emerald .btn{border-radius:999px;letter-spacing:.06em}
.emerald .card,.emerald .review,.emerald .steps li,.emerald .plan-ahead,.emerald .promise,.emerald form.card,.emerald .cal-ph{border-radius:var(--soft-radius)}
.emerald form.card input,.emerald form.card select,.emerald form.card textarea{border-radius:12px}
.emerald .card .icon{border-radius:14px;background:var(--blush-2);color:var(--rose-ink)}
.emerald .rating-badge{border-radius:999px}
.emerald .areas span{border-radius:999px}
.emerald .card.highlight{border-top:none;box-shadow:inset 0 3px 0 #D8B08C}
.emerald .section.blush{background:var(--blush)}
.emerald .review{background:#fff}
.emerald .reviews .review:nth-child(3n+2){background:var(--blush)}
.emerald .steps li::before{border-color:#D8B08C;color:var(--rose-ink)}
.footer-grid{grid-template-columns:1.3fr 1fr 1fr 1fr}
@media (max-width:900px){.footer-grid{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.footer-grid{grid-template-columns:1fr}}

/* Italic accents + botanical line ornaments */
.accent-italic{font-family:var(--serif);font-style:italic;font-weight:400;color:var(--rose-ink)}
.section.navy .accent-italic,.page-hero .accent-italic,.hero-a .accent-italic{color:#F1CFC4}
.botanical{display:block;width:150px;height:26px;margin:0 auto 14px;color:#C9A0A0}
.botanical.left{margin-left:0}
.page-hero .botanical,.hero-a .botanical,.section.navy .botanical{color:#E3BFB2}
.eyebrow-rose{color:var(--rose-ink)!important}

/* Nav: Resources dropdown */
.nav-dd{position:relative}
.dd-toggle{background:none;border:0;font:inherit;font-size:.9rem;color:#E9E2D3;padding:8px 8px;border-radius:8px;cursor:pointer;display:inline-flex;gap:6px;align-items:center;white-space:nowrap}
.dd-toggle:hover,.nav-dd.open .dd-toggle,.nav-dd:focus-within .dd-toggle{background:rgba(201,169,110,.14);color:#fff}
.nav-dd.is-current .dd-toggle{color:#fff;box-shadow:inset 0 -1px 0 var(--gold)}
.dd-menu{display:none;position:absolute;left:50%;transform:translateX(-50%);top:calc(100% + 10px);min-width:300px;background:#FBF8F1;border:1px solid #E8D8C4;border-radius:18px;box-shadow:0 18px 40px rgba(10,42,32,.22);padding:10px;z-index:80}
.dd-menu::before{content:"";position:absolute;top:-12px;left:0;right:0;height:12px}
.nav-dd:hover .dd-menu,.nav-dd:focus-within .dd-menu,.nav-dd.open .dd-menu{display:block}
.emerald .dd-menu a{display:block;color:#0F3D2E;padding:10px 14px;border-radius:12px;white-space:normal;letter-spacing:0}
.emerald .dd-menu a strong{display:block;font-family:var(--serif);font-weight:400;font-size:1.05rem}
.emerald .dd-menu a small{display:block;color:#6b6257;font-size:.8rem}
.emerald .dd-menu a:hover,.emerald .dd-menu a[aria-current="page"]{background:var(--blush-2);color:#0F3D2E;box-shadow:none}
@media (max-width:1400px){
  .nav-dd{width:100%}
  .dd-toggle{width:100%;justify-content:space-between;padding:12px 10px;font-size:1rem;border-bottom:1px solid rgba(255,255,255,.08);border-radius:0}
  .dd-menu{position:static;transform:none;min-width:0;box-shadow:none;border:0;background:rgba(255,255,255,.04);border-radius:12px;margin:6px 0;display:none}
  .nav-dd:hover .dd-menu{display:none}
  .nav-dd.open .dd-menu,.nav-dd:focus-within .dd-menu{display:block}
  .emerald .dd-menu a{color:#E9E2D3}
  .emerald .dd-menu a small{color:#BFB6A5}
  .emerald .dd-menu a:hover,.emerald .dd-menu a[aria-current="page"]{background:rgba(201,169,110,.14);color:#fff}
}

/* Tool teaser cards */
.tool-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-top:30px}
.tool-card{position:relative;display:flex;flex-direction:column;background:#fff;border-radius:22px;padding:26px 24px 22px;text-decoration:none;color:var(--charcoal);border:1px solid #EEDFD6;box-shadow:0 10px 30px rgba(142,75,87,.07);transition:transform .15s,box-shadow .15s;overflow:hidden}
.tool-card::before{content:"";position:absolute;inset:0 0 auto 0;height:5px;background:var(--rosegold)}
.tool-card:hover{transform:translateY(-3px);box-shadow:0 16px 36px rgba(142,75,87,.13);color:var(--charcoal)}
.tool-card .t-icon{width:48px;height:48px;border-radius:50%;background:var(--blush-2);display:grid;place-items:center;color:var(--rose-ink);margin-bottom:14px}
.tool-card .t-icon svg{width:24px;height:24px}
.tool-card h3{font-weight:400;margin-bottom:.3em}
.tool-card p{font-size:.95rem;color:#4a4640;margin-bottom:1em}
.tool-card .t-go{margin-top:auto;font-weight:700;color:#1F6B52;font-size:.92rem}
@media (max-width:1100px){.tool-grid{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.tool-grid{grid-template-columns:1fr}}

/* Chips & tags */
.chip{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:3px 11px;font-size:.76rem;font-weight:700;letter-spacing:.02em;line-height:1.6;white-space:nowrap}
.chip-open{background:#E2F0E8;color:#14532D}
.chip-limited{background:#FCF0D9;color:#7A4E00}
.chip-listed{background:#E8EEF5;color:#1E3A5F}
.chip-check{background:#F3E8F0;color:#6B2D5C}
.chip-closed{background:#F6E1E1;color:#8A1F1F}
.chip-area{background:var(--blush-2);color:var(--rose-ink)}
.chip-type{background:#F1EBDD;color:#5c4a24}
.tag-row{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0 10px}

/* Generic layouts for tools */
.tool-layout{display:grid;grid-template-columns:1.05fr .95fr;gap:32px;align-items:start}
.panel{background:#fff;border:1px solid #EEDFD6;border-radius:22px;padding:26px;box-shadow:0 10px 30px rgba(10,42,32,.05)}
.panel h3{font-weight:400}
.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 16px}
.field-grid .full{grid-column:1/-1}
.fld label{display:block;font-weight:600;font-size:.88rem;color:#0F3D2E;margin-bottom:5px}
.fld .hint{display:block;font-size:.78rem;color:#6b6257;margin-top:4px;line-height:1.35}
.fld input,.fld select,.fld textarea{width:100%;padding:11px 13px;border:1.5px solid #DCD1BB;border-radius:12px;font:inherit;font-size:1rem;background:#FFFDF9;color:var(--charcoal)}
.fld input::placeholder{color:#9b9187}
.fld input:focus,.fld select:focus,.fld textarea:focus{outline:3px solid rgba(201,169,110,.35);border-color:var(--gold)}
.input-affix{position:relative}
.input-affix span{position:absolute;top:50%;transform:translateY(-50%);color:#7a7066;font-size:.95rem;pointer-events:none}
.input-affix .pre{left:12px}.input-affix .suf{right:12px}
.input-affix input.has-pre{padding-left:26px}.input-affix input.has-suf{padding-right:30px}
.check-line{display:flex;gap:10px;align-items:flex-start;font-size:.92rem}
.check-line input{width:18px;height:18px;margin-top:3px;accent-color:#1F6B52}
.result-panel{background:linear-gradient(180deg,#0F3D2E 0%,#0A2A20 100%);color:#E9E2D3;border-radius:22px;padding:28px;position:sticky;top:96px}
.result-panel h3{color:#FBF8F1;font-weight:300}
.result-big{font-family:var(--serif);font-size:clamp(2.2rem,4vw,3rem);font-weight:300;color:#FBF8F1;line-height:1.1;margin:.1em 0 .1em}
.result-sub{color:#CFC3A8;font-size:.92rem;margin-bottom:16px}
.result-msg{background:rgba(255,255,255,.07);border:1px dashed rgba(233,198,185,.5);border-radius:14px;padding:12px 14px;color:#F1CFC4;font-size:.92rem}
.breakdown{list-style:none;padding:0;margin:14px 0 0}
.breakdown li{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid rgba(201,169,110,.2);font-size:.95rem}
.breakdown li span:first-child{display:flex;align-items:center;gap:9px}
.breakdown li i{width:11px;height:11px;border-radius:50%;display:inline-block}
.breakdown li.total{font-weight:700;color:#fff;border-bottom:0}
.stackbar{display:flex;height:14px;border-radius:999px;overflow:hidden;background:rgba(255,255,255,.08);margin-top:6px}
.stackbar span{display:block;height:100%}
.disclaimer{font-size:.82rem;color:#5a554e;background:var(--blush);border-radius:16px;padding:14px 16px;margin-top:18px;line-height:1.55}
.result-panel .disclaimer{background:rgba(255,255,255,.06);color:#D9D2C2}
.calc-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:22px}
.calc-tabs button{border:1.5px solid #E2CFC2;background:#fff;color:#0F3D2E;border-radius:999px;padding:10px 18px;font:inherit;font-weight:600;cursor:pointer}
.calc-tabs button[aria-selected="true"]{background:#0F3D2E;color:#FBF8F1;border-color:#0F3D2E}
.calc-pane[hidden]{display:none}
.dscr-meter{height:12px;border-radius:999px;background:linear-gradient(90deg,#E8A6A6 0%,#F1D7A8 45%,#9FD1B3 70%,#5FAF86 100%);position:relative;margin:14px 0 6px}
.dscr-meter b{position:absolute;top:-5px;width:4px;height:22px;background:#fff;border-radius:2px;box-shadow:0 0 0 2px #0A2A20;transition:left .2s}
.meter-legend{display:flex;justify-content:space-between;font-size:.74rem;color:#BFB6A5}

/* DPA lookup */
.filter-bar{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;align-items:end}
.dpa-count{margin:18px 0 6px;font-weight:600;color:#0F3D2E}
.dpa-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.dpa-card{background:#fff;border:1px solid #EEDFD6;border-radius:20px;padding:22px;display:flex;flex-direction:column;box-shadow:0 8px 24px rgba(10,42,32,.05)}
.dpa-card h3{font-size:1.15rem;font-weight:400;margin-bottom:.15em}
.dpa-card .admin{font-size:.82rem;color:#6b6257;margin-bottom:6px}
.dpa-card dl{margin:6px 0 10px;font-size:.9rem}
.dpa-card dt{font-weight:700;color:#8A6D3B;font-size:.74rem;text-transform:uppercase;letter-spacing:.12em;margin-top:10px}
.dpa-card dd{margin:2px 0 0;color:#2b2925;line-height:1.5}
.dpa-card .fit{font-size:.82rem;border-radius:12px;padding:8px 10px;margin:6px 0 10px}
.fit-yes{background:#E9F3EC;color:#14532D}.fit-maybe{background:#FCF4E4;color:#6A4600}.fit-no{background:#F6E6E6;color:#7A1F1F}
.dpa-card .src{margin-top:auto;padding-top:10px;border-top:1px solid #F0E6DC;font-size:.85rem}
.dpa-card .src a{font-weight:700}
.dpa-card .chg{display:block;color:#7a6f63;font-size:.78rem;margin-top:6px;font-style:italic}
.dpa-card.dim{opacity:.6}
.dpa-section-title{margin:34px 0 14px;font-weight:400}

/* Guides hub */
.guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.guide-card{background:#fff;border:1px solid #EEDFD6;border-radius:22px;padding:24px;display:flex;flex-direction:column;box-shadow:0 8px 24px rgba(10,42,32,.05)}
.guide-card h3{font-weight:400;margin:.2em 0 .3em}
.guide-card .mini{list-style:none;padding:12px 14px;margin:10px 0 14px;background:var(--blush);border-radius:14px;font-size:.86rem}
.guide-card .mini li{padding-left:22px;position:relative;margin:3px 0}
.guide-card .mini li::before{content:"";position:absolute;left:2px;top:6px;width:11px;height:11px;border:1.5px solid #B88A8F;border-radius:3px}
.guide-card .g-actions{margin-top:auto;display:flex;flex-wrap:wrap;gap:8px}
.guide-card .btn{padding:.6em 1.1em;min-height:40px;font-size:.82rem}
.lock{display:inline-flex;gap:6px;align-items:center;font-size:.76rem;color:var(--rose-ink);font-weight:700}
@media (max-width:1100px){.guide-grid,.dpa-grid{grid-template-columns:1fr 1fr}.filter-bar{grid-template-columns:1fr 1fr 1fr}}
@media (max-width:900px){.tool-layout{grid-template-columns:1fr}.result-panel{position:static}}
@media (max-width:600px){.guide-grid,.dpa-grid,.field-grid,.filter-bar{grid-template-columns:1fr}}

/* Printable guide pages */
.guide-doc{max-width:860px;margin:0 auto}
.guide-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;flex-wrap:wrap;margin-bottom:12px}
.guide-actions{display:flex;gap:10px;flex-wrap:wrap}
.cl-section{background:#fff;border:1px solid #EEDFD6;border-radius:20px;padding:22px 26px;margin:18px 0;break-inside:avoid}
.cl-section h2{font-size:1.35rem;font-weight:400;margin-bottom:.2em;display:flex;gap:12px;align-items:baseline}
.cl-section h2 .when{font-family:var(--sans);font-size:.74rem;text-transform:uppercase;letter-spacing:.14em;color:var(--rose-ink);font-weight:700}
.cl-section .sec-note{font-size:.9rem;color:#5a554e;margin-bottom:.6em}
.cl{list-style:none;padding:0;margin:0}
.cl li{position:relative;padding:8px 0 8px 34px;border-bottom:1px dashed #EADBD0;line-height:1.5}
.cl li:last-child{border-bottom:0}
.cl li::before{content:"";position:absolute;left:2px;top:11px;width:17px;height:17px;border:1.6px solid #B88A8F;border-radius:5px;background:#fff}
.cl li small{display:block;color:#6b6257;font-size:.84rem}
.tipbox{background:var(--blush);border-left:4px solid #D8B08C;border-radius:14px;padding:14px 18px;margin:18px 0;font-size:.95rem}
.gate{max-width:640px;margin:10px auto 30px;text-align:center}
.gate form{text-align:left}
.gate .skip-gate{display:inline-block;margin-top:12px;font-size:.88rem}
.is-gated .guide-body{display:none}
.print-foot{display:none}
.notes-lines{border:1px solid #EEDFD6;border-radius:16px;padding:14px 18px;background:#fff}
.notes-lines div{border-bottom:1px solid #EADBD0;height:30px}
/* Realtor flyer request preview */
.flyer-mock{border-radius:20px;overflow:hidden;border:1px solid #E8D8C4;background:#fff;box-shadow:0 12px 30px rgba(10,42,32,.10)}
.flyer-mock .fm-top{background:linear-gradient(135deg,#0F3D2E,#1A5440);color:#FBF8F1;padding:22px}
.flyer-mock .fm-top small{color:var(--gold-light);letter-spacing:.2em;text-transform:uppercase;font-size:.7rem}
.flyer-mock .fm-top h4{color:#FBF8F1;font-weight:300;font-size:1.5rem;margin:.2em 0 0}
.flyer-mock .fm-photo{height:140px;background:repeating-linear-gradient(135deg,#F6E3DE 0 14px,#FBF1EE 14px 28px);display:grid;place-items:center;color:#8E4B57;font-size:.85rem}
.flyer-mock .fm-body{padding:18px 22px;display:grid;grid-template-columns:1fr 1fr;gap:12px;font-size:.85rem}
.flyer-mock .fm-body b{display:block;font-family:var(--serif);font-weight:400;color:#0F3D2E;font-size:1rem}
.flyer-mock .fm-foot{padding:10px 22px;background:#FBF1EE;font-size:.7rem;color:#5a554e}
details.faq{background:#fff;border:1px solid #EEDFD6;border-radius:16px;padding:0 20px;margin:10px 0}
details.faq summary{cursor:pointer;padding:16px 0;font-family:var(--serif);font-size:1.1rem;color:#0F3D2E;list-style:none;display:flex;justify-content:space-between;gap:12px}
details.faq summary::after{content:"+";color:var(--rose-ink);font-family:var(--sans);font-weight:700}
details.faq[open] summary::after{content:"–"}
details.faq p{margin:0 0 16px;color:#3f3b36}
.anchor-nav{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}
.anchor-nav a{border:1px solid rgba(201,169,110,.55);color:#FBF8F1;border-radius:999px;padding:7px 14px;text-decoration:none;font-size:.85rem}
.anchor-nav a:hover{background:rgba(201,169,110,.15);color:#fff}
.source-list{font-size:.9rem}
.source-list li{margin:6px 0}
.law-cite{font-size:.84rem;color:#6b6257}
.compare{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border:1px solid #EEDFD6;border-radius:18px;overflow:hidden;font-size:.94rem}
.compare th,.compare td{padding:14px 16px;text-align:left;vertical-align:top;border-bottom:1px solid #F0E6DC}
.compare th{background:#0F3D2E;color:#FBF8F1;font-weight:500}
.compare tr:last-child td{border-bottom:0}
.table-wrap{overflow-x:auto}

/* Print */
@media print{
  @page{margin:14mm 12mm}
  body{background:#fff;font-size:11.5pt}
  .draft-banner,.topbar,.site-header,.site-footer,.mobile-cta,.guide-actions,.gate,.no-print,.skip{display:none!important}
  .is-gated .guide-body{display:block!important}
  .page-hero{background:#fff!important;color:#0F3D2E!important;padding:0 0 8px!important}
  .page-hero::before{display:none}
  .page-hero h1{color:#0F3D2E!important;font-size:22pt!important}
  .page-hero .lead{color:#333!important}
  .page-hero .eyebrow{color:#8E4B57!important}
  .section{padding:0!important;background:#fff!important}
  .cl-section{border:1px solid #ddd;border-radius:10px;padding:10px 14px;margin:8px 0;box-shadow:none}
  .cl li{padding:5px 0 5px 28px}
  .cl li::before{top:7px;width:13px;height:13px}
  .tipbox{background:#f8f1ee}
  .print-foot{display:block;margin-top:14px;padding-top:8px;border-top:1px solid #ccc;font-size:8pt;color:#444}
  .print-foot .confirm{border:0;background:none;padding:0}
  .confirm{background:#fff7c2!important}
  a{color:#0F3D2E;text-decoration:none}
}

/* Script accent + misc additions */
.script-accent{display:block;font-family:'Pinyon Script',cursive;font-size:clamp(1.9rem,3.2vw,2.5rem);line-height:1;color:#E9C6B9;margin-bottom:6px;font-weight:400;letter-spacing:0;text-transform:none}
.emerald .btn-ghost-dark{background:transparent;border:1px solid #CDBB9A;color:#0F3D2E}
.emerald .btn-ghost-dark:hover{background:var(--blush-2);color:#0F3D2E}
body:not(.is-gated) .gate{display:none}
.emerald a.card .more{color:#1F6B52;font-weight:700;font-size:.92rem}
.emerald a.card:hover{box-shadow:0 14px 32px rgba(142,75,87,.12)}
.compare th[scope="row"]{background:#FBF1EE;color:#0F3D2E;font-weight:600}
.hero-note{font-size:.95rem;font-style:italic}
@media print{.script-accent{color:#8E4B57;font-size:20pt}}
@media print{.section.navy,.btn-row{display:none!important}.cl-section h2{font-size:14pt}}
.filter-bar{align-items:start}
.filter-bar .fld label{white-space:nowrap}
.hero-a .hero-support{font-family:var(--serif);font-style:italic;font-weight:300;color:#F1CFC4;font-size:1.12rem;margin:-.2em 0 1.1em;padding-left:14px;border-left:2px solid #D8B08C}

/* Get a custom quote: multi-step form */
.vh,.hp-field{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important}
.hp-field{left:-10000px!important}
.hero-quote-link{margin:-4px 0 14px;font-size:.92rem;color:#CFC3A8;display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center}
.hero-quote-link a{color:#F1CFC4;font-weight:600;text-underline-offset:3px}
.hero-quote-link .dot{color:var(--gold)}
.portal-note{font-size:.9rem;color:#CFC3A8}
.quote-section{padding-top:72px}
.quote-card{position:relative;max-width:900px;margin:28px auto 0;background:#fff;border:1px solid #EEDFD6;border-radius:28px;padding:34px 38px 26px;box-shadow:0 20px 50px rgba(142,75,87,.10)}
.quote-card::before{content:"";position:absolute;inset:0 0 auto 0;height:6px;border-radius:28px 28px 0 0;background:var(--rosegold)}
.q-progress{height:10px;border-radius:999px;background:var(--blush-2);overflow:hidden}
.q-progress span{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#1F6B52,#C9A96E);transition:width .3s ease}
.q-progress-text{margin:8px 0 16px;font-size:.82rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--rose-ink)}
.q-step{border:0;padding:0;margin:0;min-width:0}
.q-step[hidden]{display:none}
.q-step legend{padding:0;margin-bottom:6px;width:100%}
.q-count{display:block;font-size:.78rem;color:#8A6D3B;letter-spacing:.14em;text-transform:uppercase;font-weight:600;margin-bottom:4px}
.q-title{display:block;font-family:var(--serif);font-weight:400;font-size:clamp(1.5rem,2.6vw,2rem);color:#0F3D2E;line-height:1.2}
.q-hint{color:#5a554e;font-size:.95rem;margin:4px 0 0}
.q-choices{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:20px}
.q-choices.q-5{grid-template-columns:repeat(3,1fr)}
.q-choice{position:relative;display:block;cursor:pointer}
.q-choice input{position:absolute;opacity:0;width:1px;height:1px}
.q-card{display:flex;align-items:center;gap:14px;min-height:72px;padding:16px 20px;border:1.5px solid #E6D6CA;border-radius:18px;background:#FFFDF9;font-weight:600;color:#0F3D2E;font-size:1.02rem;transition:border-color .15s,background .15s,box-shadow .15s,transform .15s}
.q-dot{flex:0 0 22px;height:22px;border-radius:50%;border:2px solid #C9A0A0;background:#fff;position:relative}
.q-choice:hover .q-card{border-color:#D8B08C;background:var(--blush);transform:translateY(-1px)}
.q-choice input:focus-visible+.q-card{outline:3px solid rgba(201,169,110,.55);outline-offset:2px}
.q-choice input:checked+.q-card{border-color:#1F6B52;background:#EEF6F1;box-shadow:0 8px 20px rgba(15,61,46,.10)}
.q-choice input:checked+.q-card .q-dot{border-color:#1F6B52;background:#1F6B52;box-shadow:inset 0 0 0 4px #fff}
.q-error{color:#8A1F1F;font-weight:600;font-size:.9rem;margin:12px 0 0}
.q-nav{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:24px;flex-wrap:wrap}
.q-nav .q-next,.q-nav .q-submit{margin-left:auto}
.q-nav .btn[hidden]{display:none}
.q-contact .field-grid{margin-top:18px}
.q-label-block{display:block;font-weight:600;font-size:.88rem;color:#0F3D2E;margin-bottom:6px}
.q-pills{display:flex;gap:10px;flex-wrap:wrap}
.q-pill{position:relative;cursor:pointer}
.q-pill input{position:absolute;opacity:0;width:1px;height:1px}
.q-pill span{display:inline-block;padding:10px 22px;border:1.5px solid #E2CFC2;border-radius:999px;background:#fff;font-weight:600;color:#0F3D2E}
.q-pill input:checked+span{background:#0F3D2E;color:#FBF8F1;border-color:#0F3D2E}
.q-pill input:focus-visible+span{outline:3px solid rgba(201,169,110,.55);outline-offset:2px}
.q-ferr{display:block;color:#8A1F1F;font-size:.82rem;font-weight:600;margin-top:4px}
.q-ferr[hidden]{display:none}
.fld input[aria-invalid="true"]{border-color:#B44A4A;background:#FFF7F7}
.fld .opt{font-weight:400;color:#7a7066}
.tcpa{font-size:.8rem;line-height:1.5;color:#4a4640;background:var(--blush);border-radius:14px;padding:12px 14px}
.tcpa a{color:#1F6B52}
.q-thanks{text-align:center;padding:10px 0 4px}
.q-thanks[hidden]{display:none}
.q-thanks h3{font-weight:400;font-size:clamp(1.6rem,3vw,2.1rem)}
.q-thanks:focus{outline:none}
.q-fine{font-size:.8rem;color:#6b6257;margin:20px 0 0;text-align:center}
@media (max-width:700px){.quote-card{padding:26px 18px 20px;border-radius:22px}.q-choices,.q-choices.q-5{grid-template-columns:1fr}.q-card{min-height:60px}}
@media print{.quote-section{display:none}}
@media (max-width:600px){.emerald .btn{white-space:normal;text-align:center;line-height:1.3}}
.fld label.tcpa{font-weight:400;font-size:.8rem;color:#4a4640;display:flex}
.tcpa input{flex:0 0 18px}
@media (max-width:600px){.hero-quote-link .dot{display:none}.hero-quote-link{flex-direction:column;align-items:flex-start}}
.lead-msg{margin-top:12px;border-radius:12px;padding:12px 14px;font-size:.92rem;font-weight:600}
.lead-msg[hidden]{display:none}
.lead-msg.is-ok{background:#E9F3EC;color:#14532D}
.lead-msg.is-err{background:#F6E6E6;color:#7A1F1F}
.lead-msg a{color:inherit}
.q-submit-error a{color:inherit}

/* Header: wider container so the desktop nav fits from 1401px up (mobile menu below) */
@media (min-width:1401px){.site-header .container{max-width:1400px}}

/* Homepage mortgage calculator */
.home-calc .tool-layout{margin-top:32px;text-align:left}
.home-calc .home-calc-cta{margin-top:30px}
.anchor-alias{display:block;height:0;overflow:hidden}
.section.navy .magnet .card h3{color:var(--navy)}

/* Book of the Month (book-club.html, About card, homepage strip) */
.book-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:28px;align-items:stretch}
.emerald .book-card{position:relative;display:grid;grid-template-columns:150px 1fr;gap:24px;align-items:start;overflow:hidden;border-color:#EEDFD6;box-shadow:0 10px 30px rgba(142,75,87,.07);padding:30px 28px 26px}
.book-card::before{content:"";position:absolute;inset:0 0 auto 0;height:5px;background:var(--rosegold)}
.book-cover{margin:0}
.book-cover img{display:block;width:150px;height:auto;border-radius:4px;box-shadow:0 14px 28px rgba(10,42,32,.22)}
.book-label{display:inline-block;font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;font-weight:600;color:var(--rose-ink);background:var(--blush-2);border-radius:999px;padding:5px 12px;margin-bottom:12px}
.emerald .book-card h3{font-size:1.65rem;margin:0 0 .1em}
.book-author{font-family:var(--serif);font-style:italic;color:#8A6D3B;margin:0 0 .2em;font-size:1.05rem}
.book-meta{font-size:.8rem;color:var(--muted);margin:0 0 .9em;letter-spacing:.02em}
.book-desc{margin:0 0 1em}
.book-take{background:var(--blush);border-left:3px solid #D8B08C;border-radius:0 12px 12px 0;padding:10px 14px;font-size:.95rem;margin:0 0 .9em}
.book-take strong{color:#0F3D2E;font-weight:600}
.book-src{font-size:.8rem;color:var(--muted);margin:0}
.book-src a{color:#1F6B52;font-weight:600}
.book-note-box{max-width:820px;margin:0 auto}
.book-note-box .field-grid{margin-top:18px}
.book-note-box textarea{resize:vertical}
.reading-card{display:flex;gap:18px;align-items:center;text-decoration:none;color:var(--charcoal);max-width:560px;margin:20px 0 0;padding:18px 20px;position:relative;overflow:hidden}
.reading-card::before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:var(--rosegold)}
.reading-card img{flex:0 0 64px;width:64px;height:auto;border-radius:3px;box-shadow:0 8px 18px rgba(10,42,32,.2)}
.reading-card .eyebrow{margin:0 0 .25em;font-size:.7rem}
.reading-card .rc-title{display:block;font-family:var(--serif);font-weight:400;font-size:1.2rem;color:#0F3D2E;line-height:1.25}
.reading-card .rc-by{display:block;font-size:.88rem;color:var(--muted)}
.reading-card .rc-more{display:inline-block;margin-top:6px;color:var(--rose-ink);font-weight:600;font-size:.88rem}
.reading-card:hover{color:var(--charcoal);box-shadow:0 16px 36px rgba(142,75,87,.13)}
.reading-card:hover .rc-more{text-decoration:underline}
.reading-strip{text-align:center;margin:20px 0 0;font-size:.92rem;color:var(--muted)}
.reading-strip a{color:var(--rose-ink);font-weight:600}
@media (max-width:900px){.book-grid{grid-template-columns:1fr}}
@media (max-width:560px){.emerald .book-card{display:block;padding:26px 20px 22px}.book-cover{float:left;margin:2px 16px 10px 0}.book-cover img{width:96px}.book-head{overflow:hidden}.book-label{letter-spacing:.12em;font-size:.66rem}.emerald .book-card h3{font-size:1.4rem}.book-desc{clear:both;padding-top:4px}}
@media print{.book-note-box{display:none}}
.book-rating{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;margin:0 0 .7em}
.rating-stars{display:inline-flex;color:#C9A96E;font-size:1.15rem;letter-spacing:.06em;line-height:1}
.rating-stars .half-star{background:linear-gradient(90deg,#C9A96E 50%,#E6DCCB 50%);-webkit-background-clip:text;background-clip:text;color:transparent}
.rating-text{font-size:.82rem;font-weight:600;color:#0F3D2E}
blockquote.book-take{margin:0 0 .9em}
blockquote.book-take p{margin:0 0 .35em;font-style:italic}
blockquote.book-take footer{font-size:.85rem;font-weight:600;color:var(--rose-ink)}
.reading-card .rc-rating{margin:4px 0 2px}
.reading-card .rating-stars{font-size:.95rem}
.reading-card .rc-quote{display:block;font-family:var(--serif);font-style:italic;color:#0F3D2E;font-size:.98rem;margin:2px 0 6px}

/* Nav: Learn split dropdown (label links to learn.html, caret button toggles the menu) */
.nav-dd-split{display:inline-flex;align-items:center}
.emerald .nav .nav-dd-split>.dd-label{padding-right:2px}
.nav-dd-split .dd-toggle{padding:8px 6px;font-size:.8rem}
.nav-dd.is-current .dd-toggle{box-shadow:none}
.emerald .nav .nav-dd.is-current>.dd-label{background:rgba(201,169,110,.16);color:#fff;box-shadow:inset 0 -1px 0 var(--gold)}
.nav-dd-split .dd-menu{left:0;transform:none}
/* Hover opens on desktop; click/keyboard use .open (set in main.js) */
.nav-dd:focus-within .dd-menu{display:none}
.nav-dd:hover .dd-menu,.nav-dd.open .dd-menu{display:block}
.emerald .nav a.is-current{background:rgba(201,169,110,.16);color:#fff;box-shadow:inset 0 -1px 0 var(--gold)}
@media (max-width:1400px){
  .nav-dd-split{display:flex;flex-wrap:wrap;align-items:stretch}
  .emerald .nav .nav-dd-split>.dd-label{flex:1 1 auto;padding-right:10px}
  .nav-dd-split .dd-toggle{width:auto;flex:0 0 56px;justify-content:center;font-size:1rem;border-left:1px solid rgba(255,255,255,.08)}
  .nav-dd-split .dd-menu{flex:1 1 100%}
  .nav-dd:hover .dd-menu,.nav-dd:focus-within .dd-menu{display:none}
  .nav-dd.open .dd-menu{display:block}
  .emerald .nav .nav-dd.is-current>.dd-label,.emerald .nav a.is-current{box-shadow:inset 3px 0 0 var(--gold)}
}

/* Learn hub cards */
.tool-grid.tg3{grid-template-columns:repeat(3,1fr)}
@media (max-width:1100px){.tool-grid.tg3{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.tool-grid.tg3{grid-template-columns:1fr}}

/* Realtor Portal: pill badge, meet strip, 3-step process, intro card */
.pill-badge{display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(201,169,110,.55);background:rgba(201,169,110,.10);color:var(--gold-light,#E3CFA0);border-radius:999px;padding:6px 14px;font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;font-weight:600;margin-bottom:16px}
.pill-badge span{width:6px;height:6px;border-radius:50%;background:var(--gold)}
.meet-section{padding-top:56px;padding-bottom:56px}
.meet-strip{display:grid;grid-template-columns:160px 1fr;gap:36px;align-items:center;max-width:960px}
.meet-photo{width:160px;height:160px;border-radius:50%;object-fit:cover;border:5px solid #fff;box-shadow:0 0 0 2px #D8B08C,var(--shadow)}
.meet-strip h2{margin-bottom:.3em}
.steps.s3{grid-template-columns:repeat(3,1fr);max-width:1040px;margin-left:auto;margin-right:auto}
.section.navy .steps li h3{color:var(--navy)}
.section.navy .steps li{color:var(--charcoal)}
.intro-card h3{color:var(--navy)}
.intro-card .btn-row{margin-top:14px}
@media (max-width:900px){.steps.s3{grid-template-columns:1fr}.meet-strip{grid-template-columns:1fr;justify-items:center;text-align:center;gap:20px}}

/* Google reviews link under review sections */
.reviews-link{margin:22px 0 0}
.emerald .reviews-link a.more{color:#1F6B52;font-weight:700;text-decoration:none}
.emerald .reviews-link a.more:hover{text-decoration:underline}

.print-foot .pf-eho svg{width:13px;height:11px;vertical-align:-1px;margin-right:3px;color:#222}

.oh-agent-line{font-size:.85em;color:#6b6257}
.narrow-flyer{max-width:820px}

/* ===== Homepage trim + review banner (2026-10-23) ===== */
.home-trim main>.section{padding-top:52px;padding-bottom:52px}
.home-trim .hero-a{padding-top:56px}
.home-trim .a-areas{margin-top:36px;letter-spacing:.18em}
.home-trim .steps-compact{margin-top:22px;gap:14px}
.home-trim .steps-compact li{padding:18px 16px}
.home-trim .steps-compact li p{font-size:.92rem;line-height:1.5;margin:0}
.home-trim .plan-ahead{margin-top:20px;padding:16px 22px}
.home-trim .section .lead{margin-bottom:.4em}
/* review banner */
.review-band{background:linear-gradient(135deg,#0F3D2E 0%,#164B39 60%,#0F3D2E 100%)!important;color:#FBF8F1}
.home-trim main>.review-band{padding-top:44px;padding-bottom:44px}
.rv-banner{display:flex;align-items:center;justify-content:center;gap:22px 28px;flex-wrap:wrap}
.rv-avatars{list-style:none;margin:0;padding:0;display:flex}
.rv-av{width:58px;height:58px;border-radius:50%;border:3px solid #FBF1EE;display:grid;place-items:center;overflow:hidden;margin-left:-14px;box-shadow:0 4px 10px rgba(0,0,0,.18)}
.rv-av:first-child{margin-left:0}
.rv-av svg{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.rv-av img{width:100%;height:100%;object-fit:cover;display:block}
.rv-av-1{background:linear-gradient(135deg,#FBF1EE,#E9C6B9);color:#0F3D2E}
.rv-av-2{background:linear-gradient(135deg,#E4CF9F,#C9A96E);color:#0F3D2E}
.rv-av-3{background:linear-gradient(135deg,#E9C6B9,#C08A8F);color:#FBF8F1}
.rv-av-4{background:linear-gradient(135deg,#1F6B50,#0F3D2E);color:#E4CF9F}
.rv-av-5{background:linear-gradient(135deg,#FBF8F1,#E4CF9F);color:#8E4B57}
.rv-av-6{background:linear-gradient(135deg,#D8B08C,#8E4B57);color:#FBF8F1}
.rv-text{display:flex;flex-direction:column;line-height:1.1}
.review-band .rv-title{color:#FBF8F1;font-size:1.9rem;margin:0}
.rv-stars{color:#C9A96E;font-size:1.7rem;letter-spacing:.12em}
.review-band .rv-row{columns:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:28px}
.review-band .rv-row .review{margin:0;padding:20px}
.review-band .rv-row blockquote{font-size:.98rem}
.review-band .rv-note{color:#CFC6B2;margin:14px 0 0}
/* teasers */
.teaser-grid{gap:18px}
.teaser{padding:22px!important}
.teaser h3{margin:.1em 0 .35em}
.teaser p{font-size:.94rem;margin:0 0 .6em}
.home-trim .teasers .community-line{margin-top:20px}
@media (max-width:760px){
 .home-trim main>.section{padding-top:38px;padding-bottom:38px}
 .home-trim .hero-a{padding-top:36px}
 .home-trim .a-areas{margin-top:22px}
 .home-trim .steps-compact{grid-template-columns:1fr 1fr}
 .home-trim .steps-compact li:last-child{grid-column:1/-1}
 .rv-av{width:48px;height:48px;margin-left:-12px}
 .rv-av svg{width:22px;height:22px}
 .review-band .rv-title{font-size:1.55rem}
 .review-band .rv-row{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;padding-bottom:6px}
 .review-band .rv-row .review{flex:0 0 82%;scroll-snap-align:start}
 .teaser-grid{grid-template-columns:1fr!important;gap:12px}
 .teaser{padding:18px!important}
}
.home-trim main>.review-band{padding-top:44px!important;padding-bottom:44px!important}
@media (max-width:760px){.review-band .rv-row{align-items:flex-start}.rv-text{align-items:center}}

/* ===== Homepage hero: layout L1 (form left, photo right) 2026-10-23 ===== */
.hero-l1-grid{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(0,.82fr);gap:56px;align-items:start;position:relative}
.hero-l1 h1{margin:.12em 0 .25em}
.hero-l1 .lead{margin-bottom:.5em}
.hero-l1 .hero-support{margin-bottom:1.2em}
.hero-quote{scroll-margin-top:90px}
.hero-l1 .hero-quote-h{font-family:var(--serif);color:#FBF8F1;font-size:1.45rem;font-weight:400;margin:0 0 .2em}
.hero-quote-sub{color:#CFC3A8;font-size:.92rem;margin:0 0 12px}
.hero-l1 .quote-card{margin:0;max-width:none;box-shadow:0 18px 44px rgba(0,0,0,.28)}
.hero-l1-side{text-align:center;display:flex;flex-direction:column;align-items:center;padding-top:6px}
.hero-l1-side .a-arch img{width:min(330px,100%)}
.hero-l1-side .proof{margin:18px 0 14px;justify-content:center}
.btn-stack{flex-direction:column;align-items:stretch;gap:10px;width:100%;max-width:340px;margin:0}
.btn-stack .btn{justify-content:center;text-align:center;width:100%}
.hero-portal-note{color:#CFC3A8;font-size:.85rem;margin:10px 0 4px}
.hero-l1-side .reassure{max-width:340px;margin:6px 0 0;font-size:.9rem}
.home-trim .hero-l1{padding-bottom:0}
@media (max-width:980px){
 .hero-l1-grid{grid-template-columns:1fr;gap:28px}
 .hero-l1-side{padding-top:0}
 .hero-l1-side .a-arch{order:0}
 .hero-l1-side .a-arch img{width:min(200px,56vw)}
 .hero-l1-side .a-arch-frame{padding:6px}
}
@media (max-width:600px){
 .hero-l1 h1{font-size:2.35rem}
 .hero-l1 .lead{font-size:1.02rem}
 .hero-l1 .hero-support{font-size:1rem;margin-bottom:1em}
 .hero-l1 .quote-card{padding:20px 14px 16px}
}

/* hero proof with small icon circles (2026-10-23) */
.hero-proof{display:inline-flex;align-items:center;gap:12px;margin:18px 0 16px;padding:10px 4px;border-top:1px solid rgba(201,169,110,.35);border-bottom:1px solid rgba(201,169,110,.35);text-decoration:none;color:#FBF8F1}
.rv-avatars-sm .rv-av{width:34px;height:34px;border-width:2px;margin-left:-9px;box-shadow:0 2px 6px rgba(0,0,0,.25)}
.rv-avatars-sm .rv-av:first-child{margin-left:0}
.rv-avatars-sm .rv-av svg{width:16px;height:16px;stroke-width:2}
.hp-text{display:flex;flex-direction:column;align-items:flex-start;line-height:1.15}
.hp-stars{color:var(--gold);letter-spacing:.1em;font-size:1rem}
.hp-label{font-size:.9rem;font-weight:700;text-decoration:underline;text-underline-offset:3px}
.hero-proof:hover .hp-label,.hero-proof:focus-visible .hp-label{color:var(--gold-light)}
@media (max-width:600px){.rv-avatars-sm .rv-av{width:30px;height:30px;margin-left:-8px}.rv-avatars-sm .rv-av svg{width:14px;height:14px}.hero-proof{gap:10px}}
.hero-l1 a.hero-proof,.hero-l1 a.hero-proof .hp-label{color:#FBF8F1!important}.hero-l1 a.hero-proof:hover .hp-label{color:#E4CF9F!important}

/* === Homepage reviews band: background video (2026-10-23 mockup) === */
.review-band.rv-has-video{position:relative;overflow:hidden;isolation:isolate}
.rv-has-video .rv-media{position:absolute;inset:0;z-index:-2;background:#0F3D2E url("../images/video/home-tour-poster.jpg") center/cover no-repeat}
.rv-has-video .rv-video-el{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .8s ease}
.rv-has-video.rv-video-on .rv-video-el{opacity:1}
.rv-has-video .rv-overlay{position:absolute;inset:0;z-index:-1;background:linear-gradient(135deg,rgba(15,61,46,.72) 0%,rgba(22,75,57,.64) 60%,rgba(15,61,46,.72) 100%)}
.rv-has-video .rv-title,.rv-has-video .rv-note{text-shadow:0 1px 12px rgba(0,0,0,.35)}
.rv-vbtn{position:absolute;right:16px;bottom:14px;z-index:2;width:36px;height:36px;border-radius:50%;border:1px solid rgba(228,207,159,.7);background:rgba(15,61,46,.7);color:#FBF8F1;display:grid;place-items:center;cursor:pointer;padding:0}
.rv-vbtn svg{width:16px;height:16px;fill:currentColor}
.rv-vbtn:hover{background:rgba(15,61,46,.9)}
.rv-vbtn:focus-visible{outline:2px solid #E4CF9F;outline-offset:3px}
@media (max-width:768px){.rv-has-video .rv-video-el,.rv-vbtn{display:none!important}}
@media (prefers-reduced-motion:reduce){.rv-has-video .rv-video-el{display:none!important}.rv-vbtn{display:none!important}}
@media print{.rv-has-video .rv-media,.rv-has-video .rv-overlay,.rv-vbtn{display:none}}
