/* ============================================================
   Great Plains Recovery - Residential Landing page styles
   Scoped under .gpr-residential so nothing leaks into the global theme.
   Fonts reference the theme's existing woff2 files (no new uploads).
   ============================================================ */

@font-face{font-family:"GPRMont";font-weight:300;font-display:swap;src:url(/wp-content/themes/greatplains-2024/fonts/Montserrat-Light.woff2) format("woff2")}
@font-face{font-family:"GPRMont";font-weight:400;font-display:swap;src:url(/wp-content/themes/greatplains-2024/fonts/Montserrat-Regular.woff2) format("woff2")}
@font-face{font-family:"GPRMont";font-weight:500;font-display:swap;src:url(/wp-content/themes/greatplains-2024/fonts/Montserrat-Medium.woff2) format("woff2")}
@font-face{font-family:"GPRMont";font-weight:600;font-display:swap;src:url(/wp-content/themes/greatplains-2024/fonts/Montserrat-SemiBold.woff2) format("woff2")}
@font-face{font-family:"GPRMont";font-weight:700;font-display:swap;src:url(/wp-content/themes/greatplains-2024/fonts/Montserrat-Bold.woff2) format("woff2")}
@font-face{font-family:"GPRMont";font-weight:800;font-display:swap;src:url(/wp-content/themes/greatplains-2024/fonts/Montserrat-ExtraBold.woff2) format("woff2")}
/* "Mermaid" (hero headline) is already loaded globally by the theme. */

:root {
    --ink:#282627;          
    --teal:#397b89;         
    --teal-2:#29464c;       
    --teal-soft:#e1ecec;
    --clay:#7d0d0f;         
    --clay-d:#5e0018;       
    --amber:#f5a44e;        
    --sand:#f4efe7;
    --cream:#fbf8f3;
    --sage:#397b89;         
    --line:#e3ddd0;
    --muted:#6f6a62;
    --shadow:0 1px 2px rgba(40,40,40,.06), 0 8px 28px rgba(40,40,40,.08);
    --serif:"GPRMont",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
    --sans:"GPRMont",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
    --display:"Mermaid","GPRMont",Georgia,serif;
  }
.gpr-residential * {box-sizing:border-box}
.gpr-residential {scroll-behavior:smooth}
.gpr-residential {
    margin:0;
    font-family:var(--sans);
    color:var(--ink);
    background:var(--sand);
    line-height:1.65;
    font-size:17px;
    -webkit-font-smoothing:antialiased;
  }
.gpr-residential h1, .gpr-residential h2, .gpr-residential h3 {font-family:var(--serif);line-height:1.16;font-weight:700;letter-spacing:-.01em}
.gpr-residential h2 {font-size:clamp(1.6rem,3.4vw,2.3rem);margin:0 0 .6em;color:var(--teal-2);font-weight:800}
.gpr-residential h3 {font-size:1.22rem;margin:0 0 .4em;color:var(--teal-2);font-weight:700}
.gpr-residential p {margin:0 0 1.1em}
.gpr-residential a {color:var(--teal);text-decoration:underline;text-underline-offset:2px;text-decoration-thickness:1px}
.gpr-residential a:hover {color:var(--clay-d)}
.gpr-residential .wrap {max-width:1080px;margin:0 auto;padding:0 24px}
.gpr-residential .narrow {max-width:760px}
.gpr-residential section {padding:64px 0}
.gpr-residential .eyebrow {font-family:var(--sans);text-transform:uppercase;letter-spacing:.14em;font-size:.74rem;font-weight:700;color:var(--clay-d);margin:0 0 .8em}
.gpr-residential .btn {display:inline-flex;align-items:center;gap:.5em;font-family:var(--sans);font-weight:700;font-size:1rem;
    padding:.85em 1.5em;border-radius:999px;text-decoration:none;cursor:pointer;border:2px solid transparent;
    transition:transform .12s ease, box-shadow .12s ease, background .12s ease;white-space:nowrap}
.gpr-residential .btn:hover {transform:translateY(-1px)}
.gpr-residential .btn-call {background:var(--clay);color:#fff;box-shadow:0 6px 18px rgba(191,98,56,.32)}
.gpr-residential .btn-call:hover {background:var(--clay-d);color:#fff}
.gpr-residential .btn-ghost {background:transparent;color:var(--teal);border-color:var(--teal)}
.gpr-residential .btn-ghost:hover {background:var(--teal);color:#fff}
.gpr-residential .btn-light {background:#fff;color:var(--teal-2);border-color:rgba(255,255,255,.6)}
.gpr-residential .btn-light:hover {background:var(--cream);color:var(--teal-2)}
.gpr-residential header.site {position:sticky;top:0;z-index:50;background:rgba(251,248,242,.94);
    backdrop-filter:saturate(140%) blur(8px);border-bottom:1px solid var(--line)}
.gpr-residential .topbar {display:flex;align-items:center;justify-content:space-between;gap:18px;padding:12px 24px;max-width:1180px;margin:0 auto}
.gpr-residential .brand {display:flex;align-items:center;gap:11px;text-decoration:none;color:var(--teal-2)}
.gpr-residential .brand .logo {height:50px;width:auto;display:block}
.gpr-residential .brand .mark {width:38px;height:38px;flex:none}
@media(max-width:560px) {
.gpr-residential .brand .logo {height:40px}
}
.gpr-residential .brand .name {font-family:var(--serif);font-weight:600;font-size:1.16rem;line-height:1.05}
.gpr-residential .brand .name small {display:block;font-family:var(--sans);font-weight:600;font-size:.62rem;letter-spacing:.13em;
    text-transform:uppercase;color:var(--clay-d);margin-top:2px}
.gpr-residential .nav {display:flex;align-items:center;gap:22px}
.gpr-residential .nav a.lnk {font-size:.92rem;color:var(--ink);text-decoration:none;font-weight:600}
.gpr-residential .nav a.lnk:hover {color:var(--clay-d)}
.gpr-residential .header-cta {display:flex;align-items:center;gap:14px}
.gpr-residential .phone-block {text-align:right;line-height:1.1}
.gpr-residential .phone-block .lbl {font-size:.64rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-weight:700}
.gpr-residential .phone-block a {font-family:var(--serif);font-size:1.18rem;font-weight:600;color:var(--teal-2);text-decoration:none}
@media(max-width:960px) {
.gpr-residential .nav {display:none}
}
@media(max-width:560px) {
.gpr-residential .phone-block .lbl {display:none}
.gpr-residential .brand .name {font-size:1rem}
}
.gpr-residential .hero {position:relative;overflow:hidden;color:#fff;
    background:#29464c url("/wp-content/uploads/2024/05/GPR_Red_Clay_Mountains-min.jpg") center 35%/cover no-repeat}
.gpr-residential .hero:before {content:"";position:absolute;inset:0;z-index:1;
    background:linear-gradient(102deg, rgba(25,38,40,.93) 0%, rgba(25,38,40,.78) 40%, rgba(25,38,40,.34) 72%, rgba(25,38,40,.12) 100%)}
.gpr-residential .hero-inner {position:relative;z-index:2;max-width:1080px;margin:0 auto;padding:78px 24px 90px;
    display:grid;grid-template-columns:1.2fr .85fr;gap:48px;align-items:center}
.gpr-residential .hero h1 {font-family:var(--display);font-weight:400;font-size:clamp(2.3rem,5.2vw,3.7rem);line-height:1.04;
    letter-spacing:.005em;margin:0 0 .35em;color:#fff;text-shadow:0 2px 22px rgba(0,0,0,.4)}
.gpr-residential .hero .sub {font-size:1.18rem;color:#eaf2f0;max-width:38ch;margin:0 0 1.6em}
.gpr-residential .hero .actions {display:flex;flex-wrap:wrap;gap:14px;margin-bottom:1.5em}
.gpr-residential .hero .reassure {font-size:.95rem;color:#cfe0dd;display:flex;align-items:center;gap:8px}
.gpr-residential .hero .reassure svg {flex:none}
.gpr-residential .quickcard {background:var(--cream);color:var(--ink);border-radius:16px;padding:26px;box-shadow:0 18px 50px rgba(0,0,0,.28)}
.gpr-residential .quickcard h3 {margin:0 0 .15em;color:var(--teal-2)}
.gpr-residential .quickcard .small {font-size:.86rem;color:var(--muted);margin:0 0 16px}
.gpr-residential .quickcard label {display:block;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin:0 0 5px}
.gpr-residential .quickcard input, .gpr-residential .quickcard select, .gpr-residential .quickcard textarea {width:100%;padding:.7em .8em;margin:0 0 13px;border:1px solid var(--line);
    border-radius:9px;font:inherit;font-size:.95rem;background:#fff;color:var(--ink)}
.gpr-residential .quickcard input:focus, .gpr-residential .quickcard select:focus, .gpr-residential .quickcard textarea:focus {outline:2px solid var(--teal);border-color:var(--teal)}
.gpr-residential .quickcard .btn {width:100%;justify-content:center}
.gpr-residential .formnote {font-size:.74rem;color:var(--muted);margin:10px 0 0;line-height:1.45}
.gpr-residential .form-ok {display:none;background:var(--teal-soft);border:1px solid var(--teal);border-radius:10px;padding:14px;font-size:.92rem;color:var(--teal-2)}
@media(max-width:860px) {
.gpr-residential .hero-inner {grid-template-columns:1fr;gap:34px;padding:54px 24px 64px}
}
.gpr-residential .trust {background:var(--teal);color:#fff;padding:0}
.gpr-residential .trust .row {display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:rgba(255,255,255,.12)}
.gpr-residential .trust .cell {background:var(--teal);padding:20px 18px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:8px}
.gpr-residential .trust .cell svg {opacity:.95}
.gpr-residential .trust .cell b {font-size:.95rem;font-weight:700}
.gpr-residential .trust .cell span {font-size:.78rem;color:#cfe0dd;line-height:1.35}
@media(max-width:860px) {
.gpr-residential .trust .row {grid-template-columns:repeat(2,1fr)}
.gpr-residential .trust .cell:last-child {grid-column:1/-1}
}
.gpr-residential .data {background:var(--cream)}
.gpr-residential .data .lede {font-size:1.15rem;max-width:62ch;color:var(--ink)}
.gpr-residential .figgrid {display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:42px}
.gpr-residential figure.tufte {margin:0;background:var(--sand);border:1px solid var(--line);border-radius:14px;padding:24px 24px 18px}
.gpr-residential figure.tufte.full {grid-column:1/-1}
.gpr-residential figure.tufte h3 {font-size:1.08rem;margin-bottom:.15em}
.gpr-residential figure.tufte .kick {font-size:.82rem;color:var(--muted);margin:0 0 14px}
.gpr-residential figure.tufte svg {display:block;width:100%;height:auto;overflow:visible}
.gpr-residential figure.tufte figcaption {font-size:.83rem;color:var(--muted);margin-top:12px;line-height:1.5;border-top:1px solid var(--line);padding-top:11px}
.gpr-residential figure.tufte figcaption a {color:var(--teal)}
.gpr-residential .src-note {font-size:.78rem;color:var(--muted);margin-top:26px}
.gpr-residential text {font-family:var(--sans)}
@media(max-width:760px) {
.gpr-residential .figgrid {grid-template-columns:1fr}
}
.gpr-residential .cards {display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:38px}
.gpr-residential .card {background:var(--cream);border:1px solid var(--line);border-radius:14px;padding:26px;box-shadow:var(--shadow);position:relative}
.gpr-residential .card .step {font-family:var(--serif);font-size:.85rem;color:var(--clay-d);font-weight:700;letter-spacing:.04em;text-transform:uppercase}
.gpr-residential .card h3 {margin:.35em 0 .2em}
.gpr-residential .card .dur {font-size:.82rem;color:var(--muted);font-weight:600;margin-bottom:.7em}
.gpr-residential .card p {font-size:.95rem;margin:0}
@media(max-width:760px) {
.gpr-residential .cards {grid-template-columns:1fr}
}
.gpr-residential .split {display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}
.gpr-residential .split.rev .txt {order:2}
.gpr-residential ul.checks {list-style:none;padding:0;margin:1.2em 0 0}
.gpr-residential ul.checks li {position:relative;padding:0 0 .9em 32px;font-size:1rem}
.gpr-residential ul.checks li:before {content:"";position:absolute;left:0;top:3px;width:20px;height:20px;border-radius:50%;
    background:var(--sage);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E");
    background-repeat:no-repeat;background-position:center}
.gpr-residential ul.checks li b {color:var(--teal-2)}
.gpr-residential .feature-img {border-radius:16px;overflow:hidden;box-shadow:var(--shadow);background:var(--teal-2);aspect-ratio:5/4}
.gpr-residential .feature-img svg {display:block;width:100%;height:auto}
.gpr-residential .feature-img img {display:block;width:100%;height:100%;object-fit:cover}
@media(max-width:760px) {
.gpr-residential .split {grid-template-columns:1fr;gap:28px}
.gpr-residential .split.rev .txt {order:0}
}
.gpr-residential .day {background:var(--teal-2);color:#fff}
.gpr-residential .day h2 {color:#fff}
.gpr-residential .day .lede {color:#d7e4e1;max-width:60ch}
.gpr-residential .timeline {display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(255,255,255,.14);margin-top:36px;border-radius:14px;overflow:hidden}
.gpr-residential .timeline .slot {background:var(--teal-2);padding:22px 20px}
.gpr-residential .timeline .slot .t {font-family:var(--serif);font-size:1.25rem;color:#fff;margin:0 0 .25em}
.gpr-residential .timeline .slot .d {font-size:.88rem;color:#cfe0dd;margin:0}
@media(max-width:760px) {
.gpr-residential .timeline {grid-template-columns:1fr 1fr}
}
@media(max-width:440px) {
.gpr-residential .timeline {grid-template-columns:1fr}
}
.gpr-residential .steps {counter-reset:s;display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:36px}
.gpr-residential .stepbox {position:relative;background:var(--cream);border:1px solid var(--line);border-radius:14px;padding:28px 24px 24px}
.gpr-residential .stepbox:before {counter-increment:s;content:counter(s);position:absolute;top:-18px;left:24px;width:38px;height:38px;
    background:var(--clay);color:#fff;border-radius:50%;display:grid;place-items:center;font-family:var(--serif);font-weight:700;font-size:1.15rem;box-shadow:0 4px 12px rgba(191,98,56,.35)}
.gpr-residential .stepbox h3 {margin-top:.5em}
.gpr-residential .stepbox p {font-size:.95rem;margin:0}
@media(max-width:760px) {
.gpr-residential .steps {grid-template-columns:1fr}
}
.gpr-residential .ctaband {background:var(--clay);color:#fff;text-align:center}
.gpr-residential .ctaband h2 {color:#fff;margin-bottom:.3em}
.gpr-residential .ctaband p {color:#ffe9dd;max-width:52ch;margin:0 auto 1.5em;font-size:1.1rem}
.gpr-residential .ctaband .actions {display:flex;justify-content:center;flex-wrap:wrap;gap:14px}
.gpr-residential .ins {background:var(--cream)}
.gpr-residential .logos {display:flex;flex-wrap:wrap;gap:14px;margin-top:24px}
.gpr-residential .logos .chip {background:var(--sand);border:1px solid var(--line);border-radius:8px;padding:10px 18px;font-weight:700;color:var(--teal-2);font-size:.92rem}
.gpr-residential .contact {background:var(--teal);color:#fff}
.gpr-residential .contact h2 {color:#fff}
.gpr-residential .contact .grid {display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:start}
.gpr-residential .contact .info p {color:#d7e4e1}
.gpr-residential .contact .info a {color:#fff}
.gpr-residential .contact .bigform {background:var(--cream);color:var(--ink);border-radius:16px;padding:30px;box-shadow:0 18px 50px rgba(0,0,0,.25)}
.gpr-residential .contact .bigform .two {display:grid;grid-template-columns:1fr 1fr;gap:14px}
.gpr-residential .contact .bigform label {display:block;font-size:.76rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin:0 0 5px}
.gpr-residential .contact .bigform input, .gpr-residential .contact .bigform select, .gpr-residential .contact .bigform textarea {width:100%;padding:.72em .8em;margin:0 0 15px;border:1px solid var(--line);border-radius:9px;font:inherit;font-size:.95rem;background:#fff}
.gpr-residential .contact .bigform input:focus, .gpr-residential .contact .bigform select:focus, .gpr-residential .contact .bigform textarea:focus {outline:2px solid var(--clay);border-color:var(--clay)}
.gpr-residential .contact .bigform .btn {width:100%;justify-content:center}
@media(max-width:760px) {
.gpr-residential .contact .grid {grid-template-columns:1fr;gap:28px}
.gpr-residential .contact .bigform .two {grid-template-columns:1fr}
}
.gpr-residential .faq details {border-bottom:1px solid var(--line);padding:6px 0}
.gpr-residential .faq summary {cursor:pointer;list-style:none;padding:16px 36px 16px 0;position:relative;font-family:var(--serif);
    font-size:1.18rem;font-weight:600;color:var(--teal-2)}
.gpr-residential .faq summary::-webkit-details-marker {display:none}
.gpr-residential .faq summary:after {content:"+";position:absolute;right:6px;top:13px;font-size:1.5rem;color:var(--clay);font-family:var(--sans);transition:transform .2s}
.gpr-residential .faq details[open] summary:after {content:"\2013"}
.gpr-residential .faq details p {margin:0 0 18px;max-width:70ch}
.gpr-residential .crisis {background:var(--sand)}
.gpr-residential .crisis .box {background:var(--cream);border:1px solid var(--line);border-left:5px solid var(--clay);border-radius:12px;padding:26px 30px}
.gpr-residential .crisis ul {margin:.6em 0 0;padding-left:1.2em}
.gpr-residential .crisis li {margin:0 0 .5em}
.gpr-residential footer.site {background:var(--teal-2);color:#cfe0dd;padding:54px 0 30px;font-size:.92rem}
.gpr-residential footer.site .cols {display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:36px}
.gpr-residential footer.site h4 {color:#fff;font-family:var(--serif);font-size:1.05rem;margin:0 0 .7em}
.gpr-residential footer.site a {color:#cfe0dd}
.gpr-residential footer.site a:hover {color:#fff}
.gpr-residential footer.site .nap {font-style:normal}
.gpr-residential footer.site ul {list-style:none;padding:0;margin:0}
.gpr-residential footer.site li {margin:0 0 .5em}
.gpr-residential .legit {display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);
    border-radius:8px;padding:8px 12px;font-size:.78rem;color:#eaf2f0;margin-top:14px}
.gpr-residential footer .fine {border-top:1px solid rgba(255,255,255,.14);margin-top:34px;padding-top:18px;font-size:.78rem;color:#9fb6b3;line-height:1.6}
@media(max-width:760px) {
.gpr-residential footer.site .cols {grid-template-columns:1fr;gap:26px}
}
.gpr-residential .mobicall {display:none;position:fixed;left:0;right:0;bottom:0;z-index:60;background:var(--clay);
    padding:10px 14px;box-shadow:0 -4px 18px rgba(0,0,0,.2)}
.gpr-residential .mobicall a {display:flex;justify-content:center;align-items:center;gap:9px;color:#fff;text-decoration:none;font-weight:700;font-size:1.05rem}
@media(max-width:680px) {
.gpr-residential .mobicall {display:block}
.gpr-residential {padding-bottom:60px}
}

/* ============================================================
   Theme-compatibility overrides
   Neutralize greatplains-2024 globals that would otherwise leak in:
   theme sets  p,li { color:#fff }  + a reset forcing font-weight:bold,
   and  ul { padding-left:5% }. Headings/links are already handled by the
   scoped rules above (higher specificity than the theme's bare elements).
   ============================================================ */
.gpr-residential p,
.gpr-residential li { color: var(--ink); font-weight: 400; }
.gpr-residential ul { padding-left: 0; }

/* ============================================================
   Host-theme header on THIS template only.
   The theme header.php renders a built-in "grass field" banner
   (internal_hero.jpg + the Mountains-1.png torn edge) for any
   non-front/internal page, with the nav floating over it. This
   page brings its own hero, so we drop that banner and pin the
   nav as the theme's compact white bar, flush above .hero.
   (Not scoped to .gpr-residential — the nav lives outside the
   wrapper — but this stylesheet is enqueued only on this page.)
   ============================================================ */
body.page-template-template-residential-landing .header-bg-container > img:not(.mountain-range),
body.page-template-template-residential-landing .mountain-range { display:none !important; }

/* Banner container becomes a slim white strip that reserves the nav's height */
body.page-template-template-residential-landing .header-bg-container{
  height:90px;
  background:#fff;
  box-shadow:0 1px 0 #e3ddd0;
}

/* Compact white nav at every scroll position (matches the theme's scrolled state) */
body.page-template-template-residential-landing #desktop-header,
body.page-template-template-residential-landing #desktop-header.header-with-background{
  position:fixed; top:0; left:0; width:100%;
  height:90px; background:#fff; z-index:30; box-shadow:0 1px 0 #e3ddd0;
}
body.page-template-template-residential-landing #desktop-header .top-nav{
  height:90px; justify-content:space-between;
}
body.page-template-template-residential-landing #desktop-header .top-nav a.logo-link img{
  height:64px; max-height:64px;
}
body.page-template-template-residential-landing .social-container{ padding-bottom:0; }
body.page-template-template-residential-landing .header-right-side{ margin-bottom:0; }

/* ------------------------------------------------------------
   Gravity Forms submit buttons.
   The generic `.bigform input` / `.quickcard input` rules above
   also match <input type="submit">, painting it like a text
   field (white box, invisible white label). Re-style the GF
   submit (.gform_button) as the brand clay pill instead.
   ------------------------------------------------------------ */
.gpr-residential .quickcard .gform_button,
.gpr-residential .contact .bigform .gform_button{
  width:100%;
  margin:6px 0 0;
  padding:.9em 1.5em;
  border:2px solid transparent;
  border-radius:999px;
  background:var(--clay);
  color:#fff;
  font-family:var(--sans);
  font-weight:700;
  font-size:1rem;
  line-height:1.2;
  cursor:pointer;
  transition:background .12s ease, transform .12s ease;
}
.gpr-residential .quickcard .gform_button:hover,
.gpr-residential .contact .bigform .gform_button:hover{
  background:var(--clay-d);
  transform:translateY(-1px);
}
/* GF wrappers shouldn't add their own max-width/margins inside our cards */
.gpr-residential .quickcard .gform_wrapper,
.gpr-residential .contact .bigform .gform_wrapper{ margin:0; }
