
:root{
  --pine:#435447;--sage:#8c9a84;--sage-light:#dfe6dc;--ivory:#f6f2ea;--cream:#fffdf8;
  --gold:#b89a5a;--gold-light:#ead9b7;--ink:#29312d;--muted:#657069;--line:#d7cdbf;
  --shadow:0 22px 60px rgba(49,65,55,.13);--radius:24px;--max:1180px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--cream);font-family:"DM Sans",system-ui,sans-serif;line-height:1.65}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.container{width:min(var(--max),calc(100% - 36px));margin:auto}.skip-link{position:absolute;left:-999px}.skip-link:focus{left:16px;top:16px;background:#fff;padding:10px 16px;z-index:9999}.announcement{background:var(--pine);color:#fff;text-align:center;font-size:.88rem;padding:9px 16px}.announcement a{font-weight:700;color:#fff}.site-header{position:sticky;top:0;z-index:100;background:rgba(255,253,248,.94);backdrop-filter:blur(14px);border-bottom:1px solid rgba(67,84,71,.12)}.nav-wrap{height:88px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand img{width:265px;max-height:76px;object-fit:contain}.primary-nav{display:flex;align-items:center;gap:24px;font-size:.92rem;font-weight:650}.primary-nav a:not(.button){padding:10px 0;border-bottom:1px solid transparent}.primary-nav a.active,.primary-nav a:not(.button):hover{color:var(--pine);border-color:var(--gold)}.nav-toggle{display:none;background:none;border:0;padding:8px}.nav-toggle span:not(.sr-only){display:block;width:26px;height:2px;background:var(--pine);margin:5px}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--pine);color:#fff;border:1px solid var(--pine);padding:14px 22px;border-radius:999px;font-weight:750;box-shadow:0 8px 22px rgba(67,84,71,.16);transition:.2s}.button:hover{transform:translateY(-2px);background:#34443a}.button-small{padding:10px 17px}.button-gold{background:var(--gold);border-color:var(--gold);color:#19231d}.button-outline{background:transparent;color:var(--pine);box-shadow:none}.button-light{background:#fff;color:var(--pine);border-color:#fff}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:.75rem;font-weight:800;color:var(--gold);margin:0 0 12px}.hero{position:relative;overflow:hidden;background:linear-gradient(135deg,var(--ivory),#fff 55%,#eef1ec);padding:88px 0 76px}.hero:before{content:"";position:absolute;right:-70px;top:-80px;width:520px;height:300px;background:url('botanical-sprig.svg') center/contain no-repeat;opacity:.18;transform:rotate(-12deg)}.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:64px;align-items:center}.hero h1,.page-hero h1{font-family:"Cormorant Garamond",serif;color:var(--pine);font-size:clamp(3.3rem,6vw,5.6rem);line-height:.92;margin:0 0 24px;font-weight:600;letter-spacing:-.03em}.hero h1 em{color:var(--gold);font-weight:500}.hero-copy{font-size:1.13rem;color:#536058;max-width:690px}.hero-actions{display:flex;gap:13px;flex-wrap:wrap;margin:28px 0 26px}.trust-row{display:flex;flex-wrap:wrap;gap:10px}.trust-row span{border:1px solid var(--line);background:rgba(255,255,255,.65);padding:8px 12px;border-radius:999px;font-size:.83rem;font-weight:650;color:var(--pine)}.hero-card{position:relative;background:rgba(255,255,255,.78);border:1px solid rgba(184,154,90,.34);border-radius:36px;box-shadow:var(--shadow);padding:34px}.hero-card:before,.hero-card:after{content:"";position:absolute;width:92px;height:92px;border:1px solid var(--gold);opacity:.35}.hero-card:before{left:12px;top:12px;border-right:0;border-bottom:0;border-radius:24px 0 0 0}.hero-card:after{right:12px;bottom:12px;border-left:0;border-top:0;border-radius:0 0 24px 0}.hero-card .primary-logo{max-width:430px;margin:0 auto 12px}.price-mini{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:20px}.price-mini div{background:var(--ivory);border:1px solid var(--line);border-radius:18px;padding:15px 10px;text-align:center}.price-mini strong{display:block;color:var(--pine);font-family:"Cormorant Garamond",serif;font-size:1.65rem}.price-mini span{font-size:.72rem;text-transform:uppercase;letter-spacing:.09em;color:var(--muted)}.section{padding:82px 0}.section-alt{background:var(--ivory)}.section-sage{background:var(--pine);color:#fff}.section-sage h2,.section-sage h3{color:#fff}.section-header{text-align:center;max-width:770px;margin:0 auto 42px}.section-header.left{text-align:left;margin-left:0}.section h2,.page-hero h2{font-family:"Cormorant Garamond",serif;color:var(--pine);font-size:clamp(2.35rem,4vw,3.65rem);line-height:1.02;margin:0 0 16px;font-weight:600}.section p{color:var(--muted)}.section-sage p{color:#e6ebe6}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:27px;box-shadow:0 12px 30px rgba(43,53,47,.06);display:flex;flex-direction:column}.card-icon{width:52px;height:52px;border-radius:18px;background:var(--sage-light);display:grid;place-items:center;margin-bottom:18px;color:var(--pine);font-size:1.35rem}.card h3{font-family:"Cormorant Garamond",serif;font-size:1.7rem;color:var(--pine);margin:0 0 10px}.card p{font-size:.94rem;flex:1}.card a{color:var(--pine);font-weight:800;margin-top:8px}.split{display:grid;grid-template-columns:1fr 1fr;gap:58px;align-items:center}.brand-frame{background:linear-gradient(145deg,#fff,var(--ivory));border:1px solid var(--gold-light);border-radius:34px;box-shadow:var(--shadow);padding:30px;position:relative}.brand-frame img{margin:auto}.marketing-frame{padding:16px;background:#fff;border-radius:28px;box-shadow:var(--shadow);border:1px solid var(--line)}.marketing-frame img{border-radius:18px}.check-list{list-style:none;padding:0;margin:24px 0}.check-list li{position:relative;padding:9px 0 9px 34px}.check-list li:before{content:"✦";position:absolute;left:0;color:var(--gold);font-size:1.15rem}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.step{border:1px solid rgba(255,255,255,.25);border-radius:24px;padding:26px}.step .number{font-family:"Cormorant Garamond",serif;font-size:3rem;color:var(--gold);line-height:1}.step h3{font-family:"Cormorant Garamond",serif;font-size:1.75rem;margin:8px 0}.pricing-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.price-card{background:#fff;border:1px solid var(--line);border-radius:26px;padding:26px;position:relative;overflow:hidden}.price-card.featured{border:2px solid var(--gold);box-shadow:var(--shadow)}.price-card .badge{position:absolute;right:14px;top:14px;background:var(--gold);color:#1d271f;border-radius:999px;padding:6px 10px;font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.price-card h3{font-family:"Cormorant Garamond",serif;font-size:1.85rem;color:var(--pine);margin:0 0 5px}.price-card .price{font-family:"Cormorant Garamond",serif;font-size:3rem;color:var(--pine);font-weight:650;line-height:1}.price-card .price small{font-family:"DM Sans",sans-serif;font-size:.8rem;color:var(--muted)}.price-card ul{padding-left:18px;color:var(--muted);font-size:.92rem}.price-card .button{width:100%;margin-top:12px}.price-table-wrap{overflow:auto;border:1px solid var(--line);border-radius:24px;background:#fff}.price-table{border-collapse:collapse;width:100%;min-width:760px}.price-table th{background:var(--pine);color:#fff;padding:15px 12px;text-align:left;font-size:.82rem}.price-table td{padding:14px 12px;border-bottom:1px solid var(--line);font-size:.9rem}.price-table tr:nth-child(even) td{background:#fbf8f2}.price-table td:not(:first-child){font-weight:750;color:var(--pine)}.callout{background:var(--ivory);border:1px solid var(--gold-light);border-left:5px solid var(--gold);padding:24px;border-radius:18px}.area-band{display:grid;grid-template-columns:1.2fr .8fr;gap:28px;background:#fff;border:1px solid var(--line);border-radius:30px;padding:34px;box-shadow:0 12px 34px rgba(43,53,47,.06)}.area-pills{display:flex;flex-wrap:wrap;gap:9px;margin-top:17px}.pill{background:var(--sage-light);color:var(--pine);padding:8px 12px;border-radius:999px;font-size:.82rem;font-weight:750}.pill.secondary{background:var(--ivory);border:1px solid var(--line)}.page-hero{background:linear-gradient(135deg,var(--ivory),#fff);padding:72px 0 58px;text-align:center}.page-hero h1{font-size:clamp(3.1rem,5vw,4.7rem)}.page-hero p{max-width:760px;margin:0 auto;color:var(--muted);font-size:1.05rem}.service-list{display:grid;gap:22px}.service-detail{display:grid;grid-template-columns:.75fr 1.25fr;gap:34px;padding:34px;border:1px solid var(--line);border-radius:28px;background:#fff}.service-number{font-family:"Cormorant Garamond",serif;color:var(--gold);font-size:2.7rem}.service-detail h2{font-size:2.35rem}.inclusion-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.mini-panel{background:var(--ivory);border-radius:20px;padding:20px}.mini-panel h3{font-size:1.15rem;margin-top:0;color:var(--pine)}.mini-panel ul{margin-bottom:0;padding-left:20px;color:var(--muted)}.faq-list{max-width:850px;margin:auto}.faq-item{border-bottom:1px solid var(--line)}.faq-question{width:100%;background:none;border:0;text-align:left;padding:20px 0;font-weight:800;color:var(--pine);display:flex;justify-content:space-between;cursor:pointer}.faq-question:after{content:"+";font-size:1.4rem;color:var(--gold)}.faq-question[aria-expanded="true"]:after{content:"−"}.faq-answer{display:none;padding:0 0 20px}.faq-answer.open{display:block}.quote-layout{display:grid;grid-template-columns:.7fr 1.3fr;gap:34px}.quote-aside{background:var(--pine);color:#fff;border-radius:28px;padding:30px;align-self:start;position:sticky;top:118px}.quote-aside h2{color:#fff;font-size:2.3rem}.quote-aside p{color:#e4eae5}.quote-form{background:#fff;border:1px solid var(--line);border-radius:28px;padding:30px;box-shadow:0 12px 34px rgba(43,53,47,.06)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field{display:flex;flex-direction:column;gap:7px}.field.full{grid-column:1/-1}.field label{font-size:.84rem;font-weight:800;color:var(--pine)}.field input,.field select,.field textarea{width:100%;border:1px solid #cfc5b7;background:#fffdf8;border-radius:13px;padding:12px 13px;color:var(--ink)}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--gold-light);border-color:var(--gold)}.field textarea{min-height:125px;resize:vertical}.checkbox-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.checkbox-grid label{font-weight:500;display:flex;gap:8px;align-items:flex-start}.contact-strip{background:var(--gold);color:#1d271f;padding:18px 0}.contact-strip .container{display:flex;align-items:center;justify-content:center;gap:24px;flex-wrap:wrap;font-weight:750}.site-footer{background:#26332b;color:#f2f5f1;padding:62px 0 20px}.footer-grid{display:grid;grid-template-columns:1.4fr .7fr 1fr .9fr;gap:34px}.footer-brand-panel{display:inline-flex;align-items:center;justify-content:center;background:var(--ivory);border:1px solid rgba(184,154,90,.45);border-radius:22px;padding:11px 13px;margin:0 0 16px;max-width:315px;box-shadow:0 12px 28px rgba(0,0,0,.12)}.footer-logo{width:min(285px,100%);height:auto;max-height:none;object-fit:contain;filter:none!important;opacity:1;margin:0}.site-footer h2{font-size:.9rem;text-transform:uppercase;letter-spacing:.14em;color:var(--gold);margin:0 0 14px}.site-footer a,.site-footer p{display:block;color:#dce3dd;font-size:.88rem;margin:7px 0}.site-footer a:hover{color:#fff}.tagline{font-family:"Cormorant Garamond",serif;font-style:italic;font-size:1.15rem!important}.footer-bottom{border-top:1px solid rgba(255,255,255,.16);margin-top:38px;padding-top:18px;display:flex;justify-content:space-between;gap:16px;font-size:.78rem;color:#bdc8c0}.fine-print{font-size:.75rem!important;color:#aebbb2!important}.legal-copy{max-width:850px;margin:auto}.legal-copy h2{font-size:2rem;margin-top:34px}.legal-copy p,.legal-copy li{color:var(--muted)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.reveal{opacity:0;transform:translateY(18px);transition:.65s ease}.reveal.visible{opacity:1;transform:none}
@media(max-width:980px){.primary-nav{display:none;position:absolute;left:0;right:0;top:100%;background:#fffdf8;padding:18px;box-shadow:var(--shadow);flex-direction:column;align-items:stretch}.primary-nav.open{display:flex}.nav-toggle{display:block}.hero-grid,.split,.quote-layout,.area-band{grid-template-columns:1fr}.hero-card{max-width:650px}.cards,.pricing-grid{grid-template-columns:repeat(2,1fr)}.steps{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.service-detail{grid-template-columns:1fr}.quote-aside{position:static}}
@media(max-width:640px){.container{width:min(100% - 24px,var(--max))}.nav-wrap{height:75px}.brand img{width:215px}.hero{padding:62px 0}.hero-grid{gap:34px}.hero-card{padding:22px}.price-mini{grid-template-columns:1fr}.section{padding:62px 0}.cards,.pricing-grid,.footer-grid,.form-grid,.inclusion-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column}.checkbox-grid{grid-template-columns:1fr}.hero h1,.page-hero h1{font-size:3.25rem}}

/* Graceful Meadows responsive release v4 - July 2026 */
:root{color-scheme:light only}
html{
  overflow-x:clip;
  -webkit-text-size-adjust:100%;
  text-size-adjust:100%;
}
body{overflow-x:clip;min-width:0}
img,svg,video,canvas{max-inline-size:100%;block-size:auto}
button,input,select,textarea,a{max-width:100%}
.hero-grid,.split,.quote-layout,.area-band,.cards,.pricing-grid,.steps,.footer-grid,
.service-detail,.inclusion-grid,.form-grid,.checkbox-grid{min-width:0}
.hero-grid>*,.split>*,.quote-layout>*,.area-band>*,.cards>*,.pricing-grid>*,.steps>*,
.footer-grid>*,.service-detail>*,.inclusion-grid>*,.form-grid>*,.checkbox-grid>*{min-width:0;max-width:100%}
.hero-card,.quote-form,.quote-aside,.area-band,.service-detail,.card,.price-card{max-width:100%;min-width:0}
.hero-copy,.eyebrow,.trust-row,.price-mini,.hero-actions,.cta-actions{max-width:100%;min-width:0}
.button{white-space:normal;text-align:center;line-height:1.3}
a[href^="mailto:"],.site-footer a,.site-footer p,.contact-strip a{overflow-wrap:anywhere;word-break:break-word}

/* Footer logo uses a versioned, opaque background image. */
.footer-brand-panel{
  display:flex;
  align-items:center;
  justify-content:center;
  width:min(100%,340px);
  padding:10px;
  margin:0 0 16px;
  background:var(--ivory);
  border:1px solid rgba(184,154,90,.45);
  border-radius:20px;
  box-shadow:0 12px 28px rgba(0,0,0,.12);
  forced-color-adjust:none;
  color-scheme:light only;
}
.footer-logo-art{
  display:block;
  width:100%;
  aspect-ratio:1120/380;
  background:#f6f2ea url('footer-logo-v4.jpg') center/contain no-repeat;
  border-radius:12px;
  filter:none!important;
  mix-blend-mode:normal!important;
  forced-color-adjust:none;
  color-scheme:light only;
}
.footer-logo{display:none!important}

/* Stable add-on checkbox cards. */
.add-ons-field,.addons-fieldset{min-width:0;width:100%}
.addons-fieldset{border:0;margin:0;padding:0}
.addons-fieldset legend{display:block;padding:0;margin:0 0 4px;font-size:.88rem;font-weight:800;line-height:1.35;color:var(--pine)}
.field-help{margin:0 0 12px;color:var(--muted);font-size:.82rem;line-height:1.45}
.checkbox-grid.add-ons-grid,.checkbox-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;width:100%;min-width:0}
.checkbox-grid .check-option,.field.full .check-option{
  display:grid!important;
  grid-template-columns:20px minmax(0,1fr)!important;
  align-items:start!important;
  gap:11px!important;
  width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:13px 14px!important;
  border:1px solid var(--line)!important;
  border-radius:14px!important;
  background:var(--cream)!important;
  color:var(--ink)!important;
  font-size:.88rem!important;
  font-weight:500!important;
  line-height:1.35!important;
  cursor:pointer;
}
.checkbox-grid .check-option input[type="checkbox"],.field.full .check-option input[type="checkbox"]{
  appearance:auto!important;
  -webkit-appearance:checkbox!important;
  display:block!important;
  position:static!important;
  width:18px!important;
  height:18px!important;
  min-width:18px!important;
  max-width:18px!important;
  margin:2px 0 0!important;
  padding:0!important;
  border:0!important;
  box-shadow:none!important;
  accent-color:var(--pine);
}
.checkbox-grid .check-option span,.field.full .check-option span{display:block!important;min-width:0!important;margin:0!important;padding:0!important}
.checkbox-grid .check-option strong{display:block;margin:0;color:var(--pine);font-size:.9rem;line-height:1.3}
.checkbox-grid .check-option small{display:block;margin:4px 0 0;color:var(--muted);font-size:.76rem;font-weight:400;line-height:1.4}
.checkbox-grid .check-option:has(input:checked),.field.full .check-option:has(input:checked){background:var(--sage-light)!important;border-color:var(--sage)!important}
.field.full .consent-option{background:var(--ivory)!important;font-size:.82rem!important;line-height:1.45!important}
.field.full .consent-option span{font-weight:600!important}

@media(max-width:980px){
  .primary-nav{max-height:calc(100dvh - 76px);overflow-y:auto;overscroll-behavior:contain}
}

@media(max-width:760px){
  .container{
    width:auto!important;
    max-width:none!important;
    margin-left:max(14px,env(safe-area-inset-left))!important;
    margin-right:max(14px,env(safe-area-inset-right))!important;
  }
  .announcement{padding:8px 14px;font-size:.78rem;line-height:1.4;overflow-wrap:anywhere}
  .nav-wrap{height:72px;gap:8px}
  .brand{flex:1 1 auto;min-width:0}
  .brand img{width:min(205px,calc(100vw - 92px));height:auto;max-height:60px;object-fit:contain;object-position:left center}
  .nav-toggle{flex:0 0 auto;padding:8px;margin-right:-4px}
  .primary-nav{left:-14px;right:-14px;padding:15px 14px 22px;gap:2px}
  .primary-nav a{padding:12px 10px!important;border-radius:10px}
  .primary-nav .button{margin-top:8px;width:100%}

  .hero{padding:48px 0 52px}
  .hero:before{right:-170px;top:-55px;width:390px;height:240px;opacity:.11}
  .hero-grid,.split,.quote-layout,.area-band,.service-detail,
  .cards,.pricing-grid,.steps,.footer-grid,.form-grid,.inclusion-grid{grid-template-columns:minmax(0,1fr)!important}
  .hero-grid{gap:30px}
  .hero h1,.page-hero h1{
    font-size:clamp(2.35rem,11.8vw,3rem)!important;
    line-height:1!important;
    letter-spacing:-.025em;
    overflow-wrap:normal;
    word-break:normal;
    text-wrap:balance;
  }
  .page-hero{padding:48px 0 42px}
  .page-hero h1{max-width:15ch;margin-left:auto;margin-right:auto}
  .page-hero p,.hero-copy{font-size:1rem;line-height:1.62}
  .eyebrow{font-size:.69rem;letter-spacing:.13em;line-height:1.45;overflow-wrap:anywhere}
  .hero-actions,.cta-actions{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;width:100%;margin:24px 0}
  .hero-actions .button,.cta-actions .button{width:100%;min-height:48px;margin:0!important;padding:13px 16px}
  .trust-row{display:grid;grid-template-columns:minmax(0,1fr);gap:8px}
  .trust-row span{display:block;width:100%;padding:9px 12px;overflow-wrap:anywhere}
  .hero-card{width:100%;padding:18px;border-radius:24px}
  .hero-card:before,.hero-card:after{width:58px;height:58px}
  .hero-card .primary-logo{width:100%;max-width:360px;margin:0 auto 8px}
  .price-mini{grid-template-columns:minmax(0,1fr);gap:9px}
  .price-mini div{padding:12px 10px}

  .section{padding:52px 0}
  .section-header{margin-bottom:28px}
  .section h2,.service-detail h2,.quote-aside h2,.legal-copy h2{
    font-size:clamp(2rem,9vw,2.55rem);
    line-height:1.05;
    overflow-wrap:anywhere;
  }
  .card,.price-card,.quote-form,.quote-aside,.area-band,.service-detail{padding:20px;border-radius:20px}
  .brand-frame,.marketing-frame{padding:16px;border-radius:22px}
  .price-card.featured{padding-top:20px}
  .price-card .badge{position:static;display:inline-flex;margin:0 0 12px;max-width:100%;white-space:normal}
  .price-card .price{font-size:2.65rem}
  .button{width:100%;min-height:48px;padding:13px 16px}
  .area-pills{display:grid;grid-template-columns:minmax(0,1fr)}
  .pill{display:block;width:100%;text-align:center;overflow-wrap:anywhere}

  /* Convert wide price tables to portrait-friendly cards. */
  .price-table-wrap{overflow:visible;border:0;background:transparent;border-radius:0}
  .price-table{display:block;width:100%;min-width:0;border:0}
  .price-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
  .price-table tbody{display:grid;gap:12px;width:100%}
  .price-table tr{display:block;width:100%;overflow:hidden;border:1px solid var(--line);border-radius:16px;background:#fff}
  .price-table td{
    display:grid;
    grid-template-columns:minmax(105px,40%) minmax(0,1fr);
    gap:10px;
    width:100%;
    padding:10px 12px;
    border-bottom:1px solid var(--line);
    background:#fff!important;
    font-size:.86rem;
    line-height:1.4;
    text-align:left;
    overflow-wrap:anywhere;
  }
  .price-table td:last-child{border-bottom:0}
  .price-table td::before{content:attr(data-label);font-weight:700;color:var(--muted)}
  .price-table td:first-child{display:block;background:var(--pine)!important;color:#fff!important;font-weight:800;font-size:.95rem}
  .price-table td:first-child::before{display:none}

  .quote-aside{position:static;top:auto}
  .quote-form{width:100%}
  .form-grid{gap:15px}
  .field{min-width:0}
  .field input,.field select,.field textarea{min-width:0;min-height:48px;font-size:16px;padding:12px}
  .field textarea{min-height:130px}
  .checkbox-grid.add-ons-grid,.checkbox-grid{grid-template-columns:minmax(0,1fr)!important;gap:10px}

  .contact-strip .container{display:grid;grid-template-columns:minmax(0,1fr);gap:6px;text-align:center}
  .contact-strip span,.contact-strip a{display:block;width:100%;text-align:center;overflow-wrap:anywhere}
  .site-footer{padding:44px 0 20px}
  .footer-grid{gap:28px}
  .footer-grid>div:first-child{text-align:center}
  .footer-brand-panel{width:min(100%,330px);margin-left:auto;margin-right:auto;padding:8px}
  .footer-bottom{flex-direction:column;align-items:flex-start;gap:8px}
  .site-footer h2{margin-top:2px}
  .site-footer a,.site-footer p{max-width:100%}
}

@media(max-width:360px){
  .container{margin-left:max(10px,env(safe-area-inset-left))!important;margin-right:max(10px,env(safe-area-inset-right))!important}
  .primary-nav{left:-10px;right:-10px}
  .brand img{width:min(185px,calc(100vw - 82px))}
  .hero h1,.page-hero h1{font-size:clamp(2.2rem,11.5vw,2.65rem)!important}
  .card,.price-card,.quote-form,.quote-aside,.area-band,.service-detail{padding:16px}
  .hero-card{padding:14px}
  .price-table td{grid-template-columns:minmax(0,1fr);gap:2px}
  .price-table td::before{display:block;margin-bottom:1px}
  .footer-brand-panel{padding:7px}
}
/* End responsive release v4 */

/* Home-page alignment refinements. */
.price-mini{
  grid-template-columns:repeat(2,minmax(0,146px));
  justify-content:center;
}
.home-trust-row{
  justify-content:center;
}
.home-service-cards{
  grid-template-columns:repeat(2,minmax(0,280px));
  justify-content:center;
}
.home-steps .step{
  min-height:190px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
}
.home-steps .step h3{
  margin:10px 0 0;
  text-wrap:balance;
}
@media(max-width:760px){
  .home-trust-row{
    display:flex;
    justify-content:center;
  }
  .home-trust-row span{
    width:auto;
    text-align:center;
  }
}
@media(max-width:640px){
  .price-mini{
    grid-template-columns:minmax(0,1fr);
  }
  .home-service-cards{
    grid-template-columns:minmax(0,1fr);
  }
  .home-steps .step{
    min-height:150px;
  }
}

/* Review-round alignment and interaction fixes. */
.centered-pricing-grid{
  grid-template-columns:repeat(2,minmax(0,340px));
  justify-content:center;
  align-items:stretch;
}
.centered-pricing-grid .price-card{
  display:flex;
  flex-direction:column;
  text-align:center;
}
.centered-pricing-grid .price-card ul{
  text-align:left;
}
.centered-pricing-grid .price-card .button{
  margin-top:auto;
}
.values-cards{
  grid-template-columns:repeat(3,minmax(0,300px));
  justify-content:center;
  align-items:stretch;
}
.values-cards .card{
  text-align:center;
}
.service-list{
  max-width:1100px;
  margin-inline:auto;
}
.service-detail>div:first-child{
  align-self:center;
}
.service-detail>div:first-child p{
  max-width:38ch;
}
.compact-cta{
  padding:48px 0;
}
.centered-cta{
  display:flex;
  justify-content:center;
  text-align:center;
}
.section-header>:last-child,
.page-hero .container>:last-child{
  margin-bottom:0;
}
h1,h2,h3{
  text-wrap:balance;
}
.page-hero p,.section-header p,.service-detail p{
  text-wrap:pretty;
}

.button{
  touch-action:manipulation;
  -webkit-tap-highlight-color:rgba(184,154,90,.28);
}
.button:hover,.button:focus-visible,
.button-outline:hover,.button-outline:focus-visible{
  background:#34443a;
  border-color:#34443a;
  color:#fff;
}
.button-light:hover,.button-light:focus-visible{
  background:var(--ivory);
  border-color:var(--ivory);
  color:#26332b;
}
.button-gold:hover,.button-gold:focus-visible{
  background:#26332b;
  border-color:#26332b;
  color:#fff;
}
.button:focus-visible{
  outline:3px solid var(--gold-light);
  outline-offset:3px;
}
.button:active{
  transform:translateY(0);
}
@media(hover:none){
  .button:hover{
    transform:none;
  }
}

.footer-disclaimer-wrap{
  margin-top:10px;
}
.site-footer .estimate-disclaimer{
  margin:0!important;
  color:#aebbb2!important;
  font-size:.7rem!important;
  line-height:1.45;
  text-align:center;
}

@media(max-width:900px){
  .values-cards{
    grid-template-columns:minmax(0,520px);
  }
}
@media(max-width:760px){
  .centered-pricing-grid{
    grid-template-columns:minmax(0,520px);
  }
  .service-detail>div:first-child p{
    max-width:none;
  }
}

.thank-you-content{
  max-width:760px;
  text-align:center;
}
.thank-you-mark{
  width:190px;
  margin:0 auto 10px;
}
.thank-you-content .hero-copy{
  margin-left:auto;
  margin-right:auto;
}
.thank-you-content .hero-actions{
  justify-content:center;
}
