@import url('https://fonts.googleapis.com/css2?family=Epilogue:wght@400;500;600;700&display=swap');
@font-face{font-family:Attica;src:url('/fonts/attica.woff2') format('woff2'),url('/fonts/attica.ttf') format('truetype');font-weight:700;font-display:swap}@font-face{font-family:Fachiwel;src:url('/fonts/fachiwel.woff2') format('woff2'),url('/fonts/fachiwel.ttf') format('truetype');font-weight:600;font-display:swap}
:root{--blue:#f8df86;--navy:#142d48;--cream:#fffbed;--peach:#f8df86;--head:Fachiwel,Impact,sans-serif;--display:Attica,Impact,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;color:var(--navy);background:var(--cream);font-family:Epilogue,Arial,sans-serif;font-size:16px;line-height:1.7}a{color:inherit}button{font:inherit;cursor:pointer;color:inherit}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--peach);outline-offset:5px}h1,h2,h3{font-family:var(--head);font-weight:600;line-height:1.05;margin:0 0 25px;letter-spacing:.01em}h2{font-size:clamp(40px,5vw,72px)}h3{font-size:32px}p{margin:0 0 23px}img{display:block;max-width:100%}.skip{position:fixed;top:-80px;left:15px;background:var(--cream);padding:12px;z-index:30}.skip:focus{top:10px}.nav{position:absolute;top:0;left:0;right:0;z-index:5;padding:26px 5%;display:flex;justify-content:space-between;align-items:center;color:var(--cream);gap:30px}.logo{text-decoration:none;display:inline-flex;flex-direction:column;align-items:center;line-height:1}.logo>span{font-family:var(--display);font-weight:700;font-size:43px;letter-spacing:-1.7px}.logo>small{font-size:9px;font-weight:700;letter-spacing:3.4px;margin-top:8px}.nav nav{display:flex;align-items:center;gap:28px}.nav nav>a{font-family:var(--head);font-size:17px;text-decoration:none}.button{display:inline-flex;justify-content:center;align-items:center;border-radius:999px;border:3px solid transparent;padding:15px 29px;font-size:15px;font-weight:700;text-decoration:none;line-height:1.4;transition:transform .2s,box-shadow .2s;box-shadow:4px 4px 0 var(--navy)}.button:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--navy)}.button.small{padding:10px 24px}.peach{background:var(--peach);color:var(--navy)}.blue{background:var(--blue);color:var(--cream)}.cream{background:var(--cream);color:var(--navy)}.outline{border-color:var(--cream);color:var(--cream);box-shadow:none}.menu-button{display:none}.hero{background:var(--blue);color:var(--navy);position:relative;overflow:hidden;min-height:930px;display:flex;flex-direction:column;align-items:center}.hero-content{position:relative;z-index:2;text-align:center;padding:153px 5% 0;width:100%;max-width:1200px}.eyebrow{font-size:12px;letter-spacing:2px;font-weight:700;margin-bottom:22px}.hero h1{font-size:clamp(55px,7.3vw,104px);line-height:.98;letter-spacing:.005em;margin-bottom:22px}.hero-content>p:not(.eyebrow){font-size:16px;line-height:1.7}.actions{display:flex;justify-content:center;align-items:center;gap:30px;margin-top:27px}.call{font-size:15px;font-weight:700;text-underline-offset:6px}.hero-scene{width:100%;max-width:1400px;height:420px;position:relative;margin-top:-14px;overflow:hidden;mask-image:linear-gradient(transparent,#000 19%);-webkit-mask-image:linear-gradient(transparent,#000 19%)}.hero-scene img{width:100%;height:100%;object-fit:cover;object-position:center 65%;mix-blend-mode:normal}.hero-bottom{position:absolute;bottom:0;left:0;right:0;text-align:center;padding:15px;background:var(--cream);color:var(--navy);font-size:11px;letter-spacing:3px;font-weight:700}.section{padding:110px 7%}.welcome{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.round-image{position:relative;border-radius:50%;box-shadow:14px 14px 0 var(--blue);aspect-ratio:1}.round-image img{width:100%;height:100%;object-fit:cover;border-radius:50%}.image-note{position:absolute;bottom:20px;left:0;right:0;margin:auto;width:80%;transform:rotate(-6deg);background:var(--peach);color:var(--navy);border-radius:50px;text-align:center;font-family:var(--head);font-size:26px;padding:15px 6px}.welcome h2{color:var(--blue)}.welcome p{font-size:16px}.welcome .eyebrow{font-size:11px}.signoff{font:italic 32px Georgia,serif!important;margin:26px 0 7px}.caption{font-size:10px!important;letter-spacing:2px;font-weight:700;margin-bottom:25px}.centered{text-align:center}.standards{background:var(--navy);color:var(--cream)}.standards>h2{font-size:clamp(50px,7vw,95px);margin-bottom:70px}.standards-layout{display:grid;grid-template-columns:.7fr 1fr;gap:80px;max-width:1100px;margin:auto}.big-number{font-family:var(--display);font-size:230px;line-height:1;position:sticky;top:150px;align-self:start;color:var(--peach)}.standard-list article{padding:0 0 65px;margin-bottom:60px;border-bottom:2px solid #fff5e74d;scroll-margin-top:120px}.standard-list article:last-child{margin:0;padding-bottom:0;border:0}.standard-list h3{font-size:46px}.standard-list p:last-child{margin:0;max-width:550px}.standard-list .eyebrow{color:var(--cream);font-size:12px}.service-intro{display:flex;justify-content:space-between;align-items:end;gap:70px;margin-bottom:50px}.service-intro h2{margin:0}.service-intro>p{max-width:350px;margin-bottom:0}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.service-art{aspect-ratio:1.2;border-radius:30px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;gap:24px;padding:25px;box-shadow:5px 5px 0 var(--navy);margin-bottom:32px;overflow:hidden}.service-art>span{font-family:var(--display);font-size:clamp(28px,3.1vw,48px);line-height:1.03}.service-art small{font-size:9px;letter-spacing:1px;font-weight:700}.home-art{background:var(--blue);color:var(--cream)}.four-art{background:var(--peach)}.wind-art{background:var(--navy);color:var(--cream)}.service-grid h3{font-size:29px;margin-bottom:15px}.service-grid p{font-size:15px;min-height:105px}.underlined{border:0;border-bottom:2px solid var(--blue);background:none;padding:0 0 5px;font-size:14px;font-weight:700}.service-bottom{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #1f335830;padding-top:35px;margin-top:50px;gap:30px}.service-bottom p{margin:0;font-size:15px}.agent-banner{background:var(--peach);text-align:center}.agent-banner h2{font-size:clamp(45px,6vw,84px)}.agent-banner>p:not(.eyebrow){max-width:720px;margin-left:auto;margin-right:auto}.partner-options{display:flex;justify-content:center;gap:12px;margin:35px 0 24px}.partner-options button{border:2px solid var(--navy);border-radius:50px;padding:10px 18px;background:transparent;font-weight:600;font-size:14px}.partner-options button[aria-selected=true]{background:var(--navy);color:var(--cream)}#partner-copy{font-size:15px;min-height:80px;max-width:660px}.areas h2{color:var(--blue)}.towns{display:flex;flex-wrap:wrap;justify-content:center;gap:14px;max-width:900px;margin:40px auto}.towns span{border:2px solid var(--blue);padding:10px 24px;border-radius:99px;font-weight:600;font-size:16px}.areas>p:last-child{font-size:14px;margin:0}.faq{border-top:1px solid #1f335825;display:grid;grid-template-columns:.85fr 1.15fr;gap:80px}.faq details{padding:24px 0;border-bottom:1px solid #1f33583a}.faq details:first-child{border-top:1px solid #1f33583a}.faq summary{font-weight:600;font-size:16px;display:flex;justify-content:space-between;gap:25px;cursor:pointer;list-style:none}.faq summary:after{content:'+';font-size:25px;line-height:1}.faq details[open] summary:after{content:'−'}.faq summary::-webkit-details-marker{display:none}.faq details p{font-size:15px;margin:20px 0 0}.contact{background:var(--blue);color:var(--cream);text-align:center}.contact h2{font-size:clamp(55px,7vw,100px)}.contact-note{font-size:12px;margin:30px 0 0}footer{background:var(--navy);color:var(--cream);padding:60px 7% 24px}.footer-top{display:grid;grid-template-columns:1fr 1fr .7fr;gap:60px}.footer-top p{font-size:14px;margin-top:24px}.footer-top .eyebrow{font-size:11px;margin-top:10px}.footer-top nav{display:flex;flex-direction:column;align-items:start;gap:8px}.footer-top nav>a{text-decoration:none;font-size:14px}.footer-bottom{border-top:1px solid #fff5e730;padding-top:25px;margin-top:35px;display:flex;justify-content:space-between;font-size:11px}dialog{background:var(--cream);color:var(--navy);border:3px solid var(--navy);border-radius:30px;padding:45px;width:min(570px,92vw);max-height:85vh}dialog::backdrop{background:#10233ce0}dialog h2{font-size:42px}dialog p,dialog li{font-size:15px}dialog ul{padding-left:22px;margin-bottom:25px}.dialog-close{position:absolute;right:20px;top:12px;border:0;background:none;font-size:30px}dialog .button{margin-top:12px}
/* Full-width sections use viewport gutters; centered sections already have a width cap. */
@media(min-width:1600px){.section:where(:not(.about-story,.about-way,.price-rates,.price-list,.quote-section,.faq-topic,.privacy-page,.guide-hero,.guide-cards,.guide-body)){padding-left:max(7%,calc((100vw - 1350px)/2));padding-right:max(7%,calc((100vw - 1350px)/2))}.section:where(.about-story,.about-way,.price-rates,.price-list,.quote-section,.faq-topic,.privacy-page,.guide-hero,.guide-cards,.guide-body){padding-inline:72px}}@media(max-width:1050px){.nav nav{gap:17px}.nav nav>a{font-size:15px}.hero{min-height:850px}.hero-content{padding-top:145px}.hero h1{font-size:80px}.hero-scene{height:380px}.section{padding:80px 6%}.welcome{gap:50px}.standards-layout{gap:45px}.big-number{font-size:180px}.standard-list h3{font-size:38px}.service-grid{gap:22px}.service-grid h3{font-size:25px}.service-grid p{min-height:125px}.service-art{padding:20px}.faq{gap:50px}.service-intro{gap:40px}}
@media(max-width:760px){html{scroll-padding-top:25px}.nav{padding:20px 6%}.logo>span{font-size:35px}.logo>small{font-size:7px;letter-spacing:2.5px}.menu-button{display:block;border:2px solid var(--cream);background:transparent;color:var(--cream);padding:7px 13px;border-radius:30px;font-size:13px}.nav nav{display:none;position:absolute;top:90px;left:4%;right:4%;padding:25px;background:var(--cream);color:var(--navy);border-radius:20px;box-shadow:5px 5px 0 var(--navy)}.nav nav.open{display:flex;flex-direction:column;align-items:stretch}.nav nav>a{font-size:22px}.hero{min-height:800px}.hero-content{padding:135px 6% 0}.hero .eyebrow{font-size:10px;letter-spacing:1.5px}.hero h1{font-size:clamp(43px,10.8vw,72px);margin-bottom:23px}.hero-content>p:not(.eyebrow){font-size:15px}.desktop{display:none}.actions{gap:22px;flex-wrap:wrap}.button{font-size:14px;padding:13px 23px}.call{font-size:13px}.hero-scene{height:320px;width:160%;max-width:none;margin-top:5px;flex-shrink:0}.hero-scene img{object-position:center 70%}.hero-bottom{font-size:9px;letter-spacing:1.5px;padding:15px 5%}.section{padding:60px 7%}h2{font-size:44px}.eyebrow{font-size:10px;letter-spacing:1.6px}.welcome{grid-template-columns:1fr;gap:55px}.round-image{width:90%;margin:auto;box-shadow:10px 10px 0 var(--blue)}.image-note{font-size:22px}.welcome p{font-size:15px}.welcome .eyebrow{font-size:10px}.standards>h2{font-size:53px;margin-bottom:45px}.standards-layout{grid-template-columns:1fr}.big-number{display:none}.standard-list article{padding-bottom:35px;margin-bottom:35px}.standard-list h3{font-size:38px}.standard-list p{font-size:15px}.service-intro{display:block;margin-bottom:35px}.service-intro>p{margin-top:24px;font-size:15px}.service-grid{grid-template-columns:1fr;gap:40px}.service-art{aspect-ratio:1.4;margin-bottom:25px}.service-art>span{font-size:43px}.service-art small{font-size:9px}.service-grid h3{font-size:30px}.service-grid p{min-height:0}.service-bottom{align-items:start;flex-direction:column;margin-top:40px}.agent-banner h2{font-size:42px}.agent-banner>p{font-size:15px}.partner-options{gap:8px;flex-wrap:wrap}.partner-options button{font-size:12px;padding:9px 12px}#partner-copy{min-height:125px;font-size:14px}.towns{gap:10px;margin:30px auto}.towns span{font-size:13px;padding:8px 15px}.faq{grid-template-columns:1fr;gap:25px}.faq summary{font-size:15px}.contact h2{font-size:54px}.contact>p:not(.eyebrow):not(.contact-note){font-size:15px}.contact-note{font-size:11px}.footer-top{grid-template-columns:1fr 1fr;gap:30px}.footer-top nav{grid-column:1/-1;flex-direction:row;flex-wrap:wrap;gap:20px}.footer-bottom{flex-direction:column;gap:8px}dialog{padding:40px 25px 30px}dialog h2{font-size:35px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Sunday brand palette */
.nav{color:var(--navy)}.nav .button.peach{background:var(--navy);color:var(--cream)}.hero .button.peach{background:var(--navy);color:var(--cream);box-shadow:4px 4px 0 #142d4840}.blue{color:var(--navy)}.welcome h2,.areas h2{color:var(--navy)}.standards{background:var(--navy)}.standards .big-number{color:var(--blue);min-height:230px}.home-art{color:var(--navy)}.four-art{background:var(--cream);border:3px solid var(--navy)}.contact{background:var(--navy)}.hero-scene{mask-image:linear-gradient(transparent,#000 28%);-webkit-mask-image:linear-gradient(transparent,#000 28%)}.menu-button{color:var(--navy);border-color:var(--navy)}.round-image{box-shadow:14px 14px 0 var(--blue)}.partner-options button:focus-visible,.nav a:focus-visible,.hero a:focus-visible{outline-color:var(--navy)}

.nav{top:18px;background:var(--cream);padding-top:14px;padding-bottom:14px}.logo>.logo-crop{display:block;width:240px;height:66px;overflow:hidden}.logo-crop img{width:240px;height:auto;max-width:none;transform:translateY(-47px)}footer .logo{background:var(--cream);padding:10px 8px;border-top:8px solid var(--blue);border-bottom:8px solid var(--blue)}.hero{min-height:0;padding-bottom:45px}.hero-content{padding-top:170px}.hero-scene{width:96%;max-width:1100px;height:auto;aspect-ratio:2;margin-top:25px}.hero-scene img{object-position:center bottom}.hero-bottom{padding:15px}.hero-scene{border-radius:45px 45px 0 0} @media(max-width:760px){.nav{top:14px;padding:10px 6%}.logo>.logo-crop{width:190px;height:54px}.logo-crop img{width:190px;transform:translateY(-36px)}.nav nav{top:85px}.hero-content{padding-top:145px}.hero-scene{width:125%;aspect-ratio:1.7;margin-top:20px;border-radius:0}.hero-scene img{object-position:center bottom}.hero{padding-bottom:44px}footer .logo>.logo-crop{width:160px;height:46px}footer .logo-crop img{width:160px;transform:translateY(-30px)}}

/* Typography-led homepage, without vehicle imagery. */
.hero{min-height:690px;justify-content:center;padding:150px 0 105px}.hero-content{padding:35px 5% 0;max-width:1400px}.hero h1{font-size:clamp(56px,8vw,112px);line-height:1.05;text-transform:none}.hero h1 .easy-like{font-size:.55em;display:inline-block;margin-bottom:8px}.hero-content>p:not(.eyebrow){max-width:650px;margin-left:auto;margin-right:auto}.hero .eyebrow{line-height:1.6}@media(max-width:760px){.hero{min-height:640px;padding:130px 0 85px}.hero-content{padding:25px 6% 0}.hero h1{font-size:clamp(49px,12.5vw,75px);line-height:1.04}.hero .eyebrow{max-width:300px;margin-left:auto;margin-right:auto}}

@font-face{font-family:SundayScript;src:url('/fonts/sunday-script.woff2') format('woff2'),url('/fonts/sunday-script.otf') format('opentype');font-weight:400;font-style:normal;font-display:swap}
/* Bold opening statement paired with the reference's brush script. */
.hero h1{font-size:clamp(36px,5.8vw,82px);line-height:1.16;margin:0 auto 28px;max-width:1280px}.hero-statement{display:block;text-transform:uppercase;font-family:var(--head);font-weight:600}.hero-script{display:block;font-family:SundayScript,cursive;font-weight:400;text-transform:none;font-size:clamp(46px,7vw,100px);line-height:1.3;letter-spacing:0;padding:8px 15px 16px;margin:0 -15px}.hero-content{max-width:1440px}.hero{padding-top:155px;padding-bottom:105px;min-height:690px}@media(max-width:760px){.hero{padding:135px 0 85px;min-height:650px}.hero h1{font-size:clamp(33px,8.5vw,54px);line-height:1.12;max-width:550px}.hero-script{font-size:clamp(43px,10.8vw,68px);line-height:1.25;margin-top:12px;padding-bottom:10px}.hero-content{padding-left:7%;padding-right:7%}}

/* Standards remain readable even when scroll observers are unavailable. */
.standard-list article{opacity:1;visibility:visible}.standard-list article h3{color:var(--cream)}.standard-list article p{color:var(--cream)}

/* Pearl-style sticky counter with a vertically rolling second digit. */
.standards-layout{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:5rem;max-width:1100px;align-items:start;position:relative}
.standards-counter{display:flex;position:sticky;top:20vh;align-self:start;height:12rem;overflow:hidden;color:var(--blue);font-family:var(--display);font-weight:700;font-size:12rem;line-height:1}
.standards-counter>span,.standards-digit-track>span{display:block;height:12rem;line-height:1}
.standards-digit-window{height:12rem;overflow:hidden}
.standards-digit-track{will-change:transform;text-align:center}
.standard-list{display:grid;gap:7rem;min-width:0}
.standard-list article,.standard-list article:last-child{display:block;padding:0;margin:0;border:0}
.standard-number{display:none}
.standard-copy{min-width:0}
.standard-progress{height:5px;width:100%;border-radius:999px;background:var(--cream);margin-bottom:2rem;overflow:hidden}
.standard-progress>span{display:block;height:100%;width:100%;background:var(--blue);transform:scaleX(0);transform-origin:left;transition:transform .8s cubic-bezier(.65,0,.35,1)}
.standard-list article.is-active .standard-progress>span{transform:scaleX(1)}
@media(max-width:1050px){.standards-layout{gap:2rem;grid-template-columns:.75fr minmax(0,1fr)}}
@media(max-width:760px){.standards-layout{display:block}.standards-counter{display:none}.standard-list{gap:3rem}.standard-list article{padding:2rem 0}.standard-number{display:block;font-family:var(--display);color:var(--blue);font-size:6rem;line-height:1;margin-top:2.5rem;margin-bottom:2rem}.standard-list h3{font-size:38px}}
@media(prefers-reduced-motion:reduce){.standards-digit-track{will-change:auto}}

/* Approved Sunday wordmarks: navy on cream and cream on butter yellow. */
/* Richer display treatment; original approved artwork stays intact. */
.logo-crop img{filter:saturate(1.2)}
.logo>.logo-crop{width:260px;height:auto;aspect-ratio:2.8;overflow:hidden}
.logo-crop img{display:block;width:100%;height:100%;max-width:100%;object-fit:cover;object-position:center;transform:none}
footer .logo{background:var(--blue);padding:8px;border:0}
footer .logo>.logo-crop{width:240px;height:auto;aspect-ratio:2.8}
footer .logo-crop img{width:100%;height:100%;transform:none;object-position:center 62%}
@media(max-width:1050px) and (min-width:761px){.logo>.logo-crop{width:220px}}
@media(max-width:760px){.logo>.logo-crop{width:190px;height:auto;aspect-ratio:2.8}.logo-crop img{width:100%;height:100%;transform:none}.nav nav{top:95px}footer .logo>.logo-crop{width:160px;height:auto;aspect-ratio:2.8}footer .logo-crop img{width:100%;height:100%;transform:none}}

/* Service-area pages share Sunday's palette, wordmarks, and typography. */
.hero-script{color:var(--cream);-webkit-text-fill-color:var(--cream);-webkit-text-stroke:2px var(--navy);paint-order:stroke fill;text-shadow:3px 3px 0 var(--navy)}
@media(max-width:760px){.hero-script{-webkit-text-stroke:1.5px var(--navy);text-shadow:2px 2px 0 var(--navy)}}
.towns a{border:2px solid var(--blue);padding:10px 24px;border-radius:99px;font-weight:600;font-size:16px;text-decoration:none}
.towns a:hover{background:var(--blue)}
.areas>.actions{margin-bottom:30px}
.location-page .nav{position:relative;top:0;border-top:12px solid var(--blue);border-bottom:12px solid var(--blue)}
.area-hero{background:var(--blue);padding-top:55px;padding-bottom:70px}
.area-hero h1{font-size:clamp(40px,5.8vw,82px);max-width:1000px;margin:24px 0;overflow-wrap:break-word}
.breadcrumbs{display:flex;flex-wrap:wrap;gap:12px;font-size:14px;margin-bottom:40px}
.breadcrumbs a{text-underline-offset:4px}
.area-lead{font-size:clamp(20px,2.2vw,28px);line-height:1.4;max-width:850px}
.area-intro{max-width:800px}
.area-hero .actions{justify-content:flex-start}
.area-hero .button{background:var(--navy);color:var(--cream);box-shadow:4px 4px 0 #142d4840}
.area-focus{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start}
.area-focus h2,.area-services h2,.area-neighbors h2,.related-areas h2,.hub-cities h2,.area-questions h2{font-size:clamp(34px,4vw,58px)}
.area-concerns article{padding:0 0 30px;margin-bottom:30px;border-bottom:2px solid var(--blue)}
.area-concerns h3,.area-service-grid h3,.community-groups h3,.local-resource h3{font-size:28px;line-height:1.15}
.area-services{background:var(--navy);color:var(--cream)}
.area-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;margin-top:45px}
.area-service-grid a{color:var(--blue);text-underline-offset:5px}
.area-combo{margin:40px 0 0;border-top:1px solid #fffbed50;padding-top:30px}
.area-neighbors{background:var(--blue)}
.area-neighbors>p{max-width:850px}
.community-list{list-style:none;display:flex;flex-wrap:wrap;gap:12px;padding:0;margin:30px 0}
.community-list li{padding:8px 18px;border:2px solid var(--navy);border-radius:99px}
.area-questions{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px}
.area-questions details{padding:24px 0;border-bottom:1px solid #142d4850}
.area-questions summary{font-weight:700;cursor:pointer}
.area-questions details p{margin:20px 0 0}
.local-resource{padding:30px;margin-top:40px;border:2px solid var(--blue)}
.local-resource p{font-size:14px;margin:15px 0 0}
.area-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px;margin:35px 0}
.area-card{display:flex;flex-direction:column;align-items:start;gap:15px;text-decoration:none;padding:30px;border:2px solid var(--navy);border-radius:20px;background:var(--cream);transition:background .2s}
.area-card:hover{background:var(--blue)}
.area-card .eyebrow{font-size:12px;line-height:1.5;margin:0}
.area-card h3{font-size:34px;margin:0}
.area-card p{margin:0;font-size:16px}
.area-card-label{font-size:14px;font-weight:700;text-decoration:underline;text-underline-offset:4px;margin-top:auto}
.community-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px;margin:40px 0}
.community-groups p{margin-bottom:12px}
.area-contact h2{font-size:clamp(36px,5.5vw,75px)}
@media(max-width:960px){.nav .menu-button{display:block;border:2px solid var(--navy);background:transparent;padding:7px 13px;border-radius:30px;font-size:14px}.nav nav{display:none;position:absolute;top:110px;left:4%;right:4%;padding:25px;background:var(--cream);color:var(--navy);border-radius:20px;box-shadow:5px 5px 0 var(--navy)}.nav nav.open{display:flex;flex-direction:column;align-items:stretch}.nav nav>a{font-size:22px}.area-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.area-focus,.area-questions{gap:35px}.area-service-grid{gap:25px}}
@media(max-width:760px){.location-page .nav{padding:10px 6%}.area-hero{padding-top:30px}.area-hero h1{font-size:clamp(34px,9vw,60px)}.breadcrumbs{font-size:14px;margin-bottom:30px}.area-focus,.area-questions,.area-service-grid,.community-groups,.area-grid{grid-template-columns:1fr}.area-card{padding:25px}.area-card h3{font-size:30px}.area-hero .actions{align-items:flex-start;flex-direction:column}.local-resource{padding:20px}.towns a{font-size:14px;padding:8px 15px}.community-list li{font-size:14px}.nav nav{top:95px}.footer-top>div{min-width:0}}

/* The Sunday Way: a bold introduction and alternating circular story sections. */
.about-hero{background:var(--blue);text-align:center;padding-top:95px;padding-bottom:95px}
.about-hero h1{font-size:clamp(40px,6vw,86px);max-width:1080px;margin:0 auto 28px;line-height:1.06}
.about-hero>p:last-child{font-size:20px;margin:0}
.about-story,.about-way{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:80px;max-width:1440px;margin:auto}
.about-story h1,.about-story h2,.about-way h2{font-size:clamp(36px,4.5vw,65px);line-height:1.08}
.about-accent{color:var(--navy);background:linear-gradient(transparent 65%,var(--blue) 65%);box-decoration-break:clone;-webkit-box-decoration-break:clone}
.about-round-image{aspect-ratio:1;border-radius:50%;overflow:hidden;box-shadow:12px 12px 0 var(--blue)}
.about-round-image img{height:100%;width:100%;object-fit:cover}
.about-values-circle{aspect-ratio:1;border-radius:50%;background:var(--navy);color:var(--cream);box-shadow:12px 12px 0 var(--blue);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:35px;gap:15px}
.about-values-circle span{font:600 clamp(34px,4.3vw,68px)/1.05 var(--head)}
.about-values-circle span:nth-child(2){color:var(--blue)}
.about-way .actions{justify-content:flex-start;gap:22px;flex-wrap:wrap}
.about-promises{background:var(--blue)}
.about-promises h2{font-size:clamp(36px,4.5vw,64px)}
.about-promise-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:35px;margin:55px 0 35px}
.about-promise-grid article>span{display:block;font:700 50px/1 var(--display);margin-bottom:24px}
.about-promise-grid h3{font-size:28px}
.about-promise-grid p{margin-bottom:0}
.about-contact h2{font-size:clamp(40px,6vw,85px)}
@media(max-width:1050px){.about-story,.about-way{gap:45px}.about-promise-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.about-hero{padding:65px 7%}.about-hero h1{font-size:clamp(35px,9vw,60px)}.about-hero>p:last-child{font-size:17px}.about-story,.about-way{grid-template-columns:1fr;gap:50px}.about-round-image,.about-values-circle{width:90%;max-width:450px;margin:auto;box-shadow:8px 8px 0 var(--blue)}.about-values-circle span{font-size:clamp(38px,9vw,60px)}.about-way .actions{align-items:flex-start;flex-direction:column}.about-promise-grid{gap:30px}.about-promise-grid p{font-size:16px}.about-promise-grid h3{font-size:26px}.about-promise-grid article>span{font-size:44px}.about-story .caption{font-size:12px!important;letter-spacing:1px}}
@media(max-width:420px){.about-promise-grid{grid-template-columns:1fr}}

.button.chat-bubble{background:var(--cream);color:var(--navy);border-color:var(--navy);text-decoration:none;box-shadow:4px 4px 0 var(--navy)}
.button.chat-bubble:hover{box-shadow:6px 6px 0 var(--navy)}

.booking-cta{display:inline-flex;flex-direction:column;align-items:center;gap:12px;max-width:100%}
.booking-caption{font-size:14px;line-height:1.4;text-align:center}
.hero .actions,.about-way .actions{align-items:flex-start}

/* A slow rolling wave keeps the script flowing as whole words. */
.wave-readable{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.wave-word{display:inline-block;transform-origin:50% 70%;animation:sunday-wave 4.8s ease-in-out infinite;animation-delay:var(--wave-delay)}
@keyframes sunday-wave{0%,100%{transform:translateY(.035em) rotate(.7deg)}50%{transform:translateY(-.065em) rotate(-.7deg)}}
@media(prefers-reduced-motion:reduce){.wave-word{animation:none;transform:none}}

.welcome-toast{font-size:20px;line-height:1.5;margin:28px 0}

/* Service catalog: readable, linked content without a modal or script dependency. */
.home-service-menu{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:30px;margin:65px 0 35px;padding-top:45px;border-top:2px solid var(--navy)}
.home-service-menu h3{font-size:27px;line-height:1.15;margin-bottom:20px}
.home-service-menu ul{list-style:none;margin:0;padding:0}
.home-service-menu li{margin:0 0 14px;line-height:1.5}
.home-service-menu a{font-size:16px;text-underline-offset:4px}
.service-group-nav{display:flex;flex-wrap:wrap;gap:14px;padding-top:30px;padding-bottom:30px;border-bottom:2px solid var(--navy)}
.service-group-nav a{padding:9px 18px;border:2px solid var(--navy);border-radius:999px;text-decoration:none;font-size:16px;line-height:1.5}
.service-group-nav a:hover{background:var(--blue)}
.catalog-category{padding-top:70px;padding-bottom:70px}
.catalog-category:nth-of-type(odd){background:var(--blue)}
.catalog-category h2,.service-facts h2,.service-scope h2,.service-preparation h2,.service-faq h2,.service-coverage h2,.service-related h2,.service-comparison h2{font-size:clamp(32px,4vw,58px);line-height:1.1}
.catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:35px}
.catalog-card{display:flex;flex-direction:column;border:2px solid var(--navy);border-radius:22px;padding:28px;background:var(--cream);min-width:0}
.catalog-card .eyebrow{font-size:14px;letter-spacing:1px;line-height:1.5;margin-bottom:15px}
.catalog-card h3{font-size:30px;line-height:1.12;overflow-wrap:break-word}
.catalog-card h3 a{text-decoration:none}
.catalog-card h3 a:hover{text-decoration:underline;text-underline-offset:5px}
.catalog-card p{font-size:16px}
.catalog-more{margin-top:auto;font-size:14px;font-weight:700;line-height:1.5;text-underline-offset:4px}
.service-hero h1{max-width:1100px;text-transform:uppercase}
.service-facts dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px;margin:35px 0 0}
.service-facts dt{font-family:var(--head);font-size:28px;line-height:1.2;margin-bottom:15px}
.service-facts dd{margin:0;font-size:16px}
.service-scope{background:var(--navy);color:var(--cream)}
.service-focus-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;margin-top:40px}
.service-focus-grid h3{font-size:28px;line-height:1.15;color:var(--blue)}
.scope-note{margin-top:40px;padding-top:30px;border-top:1px solid #fffbed60;max-width:1000px}
.scope-note h3{font-size:24px}
.scope-note p{margin-bottom:0}
.service-preparation{display:grid;grid-template-columns:1.3fr .7fr;gap:65px;align-items:start}
.service-preparation ul{padding-left:22px;margin-bottom:0}
.service-preparation li{margin-bottom:14px}
.service-preparation aside{background:var(--blue);padding:30px;border-radius:24px;border:2px solid var(--navy)}
.service-preparation aside h3{font-size:30px}
.service-preparation aside a{text-underline-offset:4px}
.service-faq{background:var(--blue)}
.service-faq>div{max-width:1000px}
.service-faq details{border-bottom:1px solid #142d4850;padding:22px 0}
.service-faq summary{font-size:18px;font-weight:700;cursor:pointer;line-height:1.5}
.service-faq details p{margin:18px 0 0;max-width:850px}
.official-resource{margin:30px 0 0;font-size:16px}
.service-coverage>p{max-width:850px}
.service-area-links{list-style:none;display:flex;flex-wrap:wrap;gap:15px;margin:30px 0;padding:0}
.service-area-links a{display:block;border:2px solid var(--navy);border-radius:999px;padding:9px 20px;text-decoration:none}
.service-area-links a:hover{background:var(--blue)}
.service-related{border-top:2px solid var(--blue)}
.service-related>p:last-child{margin-top:30px}
.service-booking h2{font-size:clamp(32px,4.5vw,65px);overflow-wrap:break-word;max-width:1100px;margin-left:auto;margin-right:auto}
.service-booking>p{max-width:850px;margin-left:auto;margin-right:auto}
.service-comparison{background:var(--navy);color:var(--cream)}
.comparison-scroll{overflow-x:auto;margin-top:35px}
.service-comparison table{width:100%;border-collapse:collapse;min-width:500px;text-align:left}
.service-comparison th,.service-comparison td{padding:20px 18px;border-bottom:1px solid #fffbed60;vertical-align:top;font-size:16px}
.service-comparison thead th{color:var(--blue)}
.service-comparison th[scope="row"]{width:30%}
.service-comparison a{color:var(--blue);text-underline-offset:4px}
.service-table-note{margin:25px 0 0;font-size:14px}
@media(max-width:1100px){.home-service-menu{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.catalog-grid,.service-facts dl,.service-focus-grid,.service-preparation{grid-template-columns:1fr}.service-preparation{gap:30px}.service-facts dl,.service-focus-grid{gap:28px}.catalog-category{padding-top:50px;padding-bottom:50px}.catalog-card{padding:24px}.catalog-card h3{font-size:28px}.home-service-menu{grid-template-columns:1fr;gap:24px;margin-top:45px}.service-group-nav{gap:10px}.service-group-nav a{font-size:14px;padding:8px 14px}.service-preparation aside{padding:25px}.service-booking .actions{flex-wrap:wrap}.service-faq summary{font-size:16px}}

.button.booking-button{display:inline-flex;text-align:center;line-height:1.4}
.booking-button-detail{font-family:var(--body,Arial,sans-serif);font-size:14px;font-weight:600;line-height:1.4;letter-spacing:0;text-transform:none}

/* Paired actions share the same silhouette and centered baseline. */
.hero .actions,.about-way .actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:24px;width:100%;max-width:550px}
.hero .actions{margin-left:auto;margin-right:auto}
.hero .booking-cta,.about-way .booking-cta{display:flex;align-items:stretch;width:100%;height:100%}
.hero .actions .button,.about-way .actions .button{width:100%;min-height:88px;padding:15px 20px;text-align:center;justify-content:center;align-items:center;box-shadow:4px 4px 0 var(--navy)}
.hero .actions .button:hover,.about-way .actions .button:hover{box-shadow:6px 6px 0 var(--navy)}
.booking-button-detail{font-family:inherit;font-size:14px;font-weight:700}
@media(max-width:760px){.hero .actions,.about-way .actions{grid-template-columns:1fr;max-width:320px;gap:20px}.hero .actions .button,.about-way .actions .button{min-height:88px}}

.standard-list article .standard-category{font-family:SundayScript,cursive;font-size:clamp(32px,3.5vw,48px);font-weight:400;line-height:1.3;letter-spacing:0;text-transform:none;color:var(--blue);margin:0 0 14px}
.standard-list article h3{font-size:clamp(32px,3.6vw,52px);line-height:1.12;margin-bottom:24px}
.standard-list article .standard-copy>p:not(.standard-category){max-width:740px;font-size:18px;line-height:1.7}
@media(max-width:760px){.standard-list article .standard-category{font-size:34px}.standard-list article h3{font-size:34px}.standard-list article .standard-copy>p:not(.standard-category){font-size:16px}}

.standard-list article .standard-category{width:fit-content;max-width:100%;transform:rotate(-5deg);transform-origin:left center;margin-bottom:20px}

.services .service-intro{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:0;text-align:center;max-width:1050px;margin:0 auto 60px}
.services .service-intro .service-script{font-family:SundayScript,cursive;font-size:clamp(34px,4vw,50px);font-weight:400;line-height:1.3;color:var(--navy);max-width:100%;transform:rotate(-5deg);margin:0 0 20px}
.services .service-intro h2{font-size:clamp(38px,5vw,72px);line-height:1.08;margin:0 0 26px}
.services .service-intro .service-intro-copy{font-size:18px;font-weight:500;line-height:1.65;max-width:820px;margin:0}
@media(max-width:760px){.services .service-intro{margin-bottom:40px}.services .service-intro .service-intro-copy{font-size:16px}.services .service-intro h2{font-size:clamp(34px,8vw,48px)}}

.home-category-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:28px;max-width:1200px;margin:0 auto}
.home-category-card{grid-column:span 2;display:flex;flex-direction:column;min-width:0;border:2px solid var(--navy);border-radius:28px;background:var(--blue);color:var(--navy);padding:36px 30px;box-shadow:5px 5px 0 var(--navy)}
.home-category-card:nth-child(2){background:var(--navy);color:var(--cream)}
.home-category-card:nth-child(3){background:var(--cream)}
.home-category-card:nth-child(n+4){grid-column:span 3}
.home-category-card h3{font-size:clamp(28px,2.5vw,36px);line-height:1.13;margin:0 0 20px}
.home-category-card h3 a{text-decoration:none}
.home-category-card p{font-size:16px;line-height:1.65;margin:0 0 28px}
.category-link{margin-top:auto;font-size:14px;font-weight:700;line-height:1.5;text-underline-offset:5px}
.category-footer{text-align:center;margin-top:48px}
.category-description{max-width:760px;font-size:18px;line-height:1.65}
@media(max-width:1000px){.home-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home-category-card,.home-category-card:nth-child(n+4){grid-column:auto}.home-category-card:last-child{grid-column:1/-1}}
@media(max-width:600px){.home-category-grid{grid-template-columns:1fr;gap:24px}.home-category-card{padding:30px 25px}.home-category-card:last-child{grid-column:auto}.home-category-card h3{font-size:32px}.category-description{font-size:16px}}

.about-script{font-family:SundayScript,cursive;font-size:clamp(32px,3.5vw,46px);font-weight:400;line-height:1.3;width:fit-content;max-width:100%;transform:rotate(-5deg);transform-origin:left center;margin-bottom:22px;color:var(--navy)}
.about-script.centered{margin-left:auto;margin-right:auto;transform-origin:center}
.about-promise-grid{max-width:1200px;margin-left:auto;margin-right:auto}
.about-promise-grid article{border-top:3px solid var(--navy);padding-top:25px;min-width:0}
.about-promise-grid h3{font-size:clamp(24px,2.3vw,30px);line-height:1.15;overflow-wrap:break-word}
.about-promise-grid p{font-size:16px;line-height:1.7}
@media(max-width:760px){.about-script{font-size:34px}.about-promise-grid{grid-template-columns:1fr;gap:32px}.about-promise-grid h3{font-size:28px}}
/* Clear pricing with a live, itemized summary. */
.pricing-hero{background:var(--blue);text-align:center;padding-top:75px;padding-bottom:70px}
.pricing-hero .service-script,.price-inclusions .service-script,.price-booking .service-script{font-family:SundayScript,cursive;font-size:clamp(34px,4vw,48px);line-height:1.3;transform:rotate(-5deg);margin-bottom:22px}
.pricing-hero h1{font-size:clamp(40px,5.8vw,78px);max-width:1100px;margin:0 auto 24px;line-height:1.08}
.pricing-hero>p:not(.service-script){max-width:760px;margin:0 auto 25px;font-size:18px}
.insurance-route{font-weight:600;font-size:16px;text-underline-offset:5px}
.price-workspace{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.85fr);gap:55px;align-items:start;max-width:1440px;margin:auto}
#price-form fieldset{border:0;margin:0 0 45px;padding:0;min-width:0}
#price-form legend{font-family:var(--head);font-size:34px;line-height:1.15;margin-bottom:24px}
.price-size-label{display:block;font-weight:600;margin-bottom:10px}
#home-size{width:100%;max-width:540px;padding:17px 40px 17px 18px;border:2px solid var(--navy);border-radius:14px;background:var(--cream);color:var(--navy);font:inherit;font-size:16px}
#home-size:focus-visible,.price-addon:focus-within{outline:3px solid var(--navy);outline-offset:4px}
.field-hint{font-size:14px;line-height:1.6;margin:15px 0 22px}
.price-addon{display:flex;gap:15px;align-items:start;border:2px solid var(--navy);border-radius:16px;padding:20px;margin-bottom:14px;cursor:pointer}
.price-addon:has(input:checked){background:var(--blue)}
.price-addon input{width:21px;height:21px;margin:3px 0 0;accent-color:var(--navy);flex-shrink:0}
.price-addon>span:nth-child(2){flex:1;min-width:0}.price-addon strong{font-size:16px;line-height:1.4;display:block}
.addon-description{display:block;font-size:14px;line-height:1.55;margin-top:7px}.addon-amount{font-weight:700;white-space:nowrap;font-size:17px}
.price-summary{position:sticky;top:30px;background:var(--navy);color:var(--cream);border-radius:26px;padding:35px;box-shadow:7px 7px 0 var(--blue)}
.price-summary h2{font-size:38px;margin-bottom:25px}.price-summary .eyebrow{font-size:14px}
.price-breakdown{margin:0 0 28px}.price-breakdown>div{display:flex;justify-content:space-between;gap:20px;padding:12px 0;border-bottom:1px solid #fffbed40;font-size:16px;line-height:1.5}.price-breakdown dd{margin:0;white-space:nowrap;font-weight:600}
.total-label{font-size:14px;margin-bottom:4px}.price-total{font-family:var(--head);font-size:64px;line-height:1.1;color:var(--blue);margin-bottom:24px}.price-saving{font-size:16px;color:var(--blue)}
.price-summary-note{font-size:14px;line-height:1.6}.price-summary .button{width:100%}.price-text-link{display:block;text-align:center;margin-top:18px;font-size:16px;text-underline-offset:5px}
.price-inclusions{background:var(--blue);text-align:center}.price-inclusions h2,.price-rates h2,.price-booking h2{font-size:clamp(34px,4.5vw,58px)}.price-inclusions>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px;max-width:1100px;margin:40px auto 0}.price-inclusions strong{display:block;margin-bottom:8px}
.price-rates{max-width:1300px;margin:auto}.price-rates h3{margin-top:45px;font-size:30px}.price-rates .comparison-scroll{margin:30px 0}.price-rates table{width:100%;border-collapse:collapse}.price-rates th,.price-rates td{padding:17px;border-bottom:1px solid #142d4830;text-align:left;font-size:16px}.price-rates thead{background:var(--navy);color:var(--cream)}
.price-booking{text-align:center;background:var(--blue)}.booking-pending{font-size:14px;margin:28px auto 0;max-width:600px}.price-booking .actions{flex-wrap:wrap}
@media(max-width:1000px){.price-workspace{gap:30px;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)}.price-summary{padding:25px}.pricing-page .nav nav{gap:16px}}
@media(max-width:760px){.price-workspace{grid-template-columns:1fr;padding-top:50px;padding-bottom:50px}.price-summary{position:static}.pricing-hero{padding:60px 7%}.pricing-hero>p:not(.service-script){font-size:16px}.price-inclusions>div{grid-template-columns:1fr;gap:16px}.price-addon{padding:17px 14px;gap:10px}.price-rates th,.price-rates td{padding:14px}#price-form legend{font-size:30px}.price-rates table{min-width:520px}.price-rates .comparison-scroll{overflow-x:auto}.price-summary h2{font-size:34px}}

.pricing-page .price-list{width:100%;max-width:1200px;margin:0 auto;min-width:0}
.price-list .service-script{font-family:SundayScript,cursive;font-size:40px;transform:rotate(-5deg);width:fit-content;margin-bottom:25px}
.price-list .addon-list-heading{margin-top:75px}
.pricing-hero .actions{margin-bottom:28px;flex-wrap:wrap}
.price-list .comparison-scroll{width:100%;max-width:100%;overflow-x:auto}
.price-list table{width:100%;min-width:0}
.price-list th:first-child{width:60%}
.insurance-explain{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:30px}.insurance-explain strong{display:block}
.schedule-pending{opacity:.55;cursor:default;box-shadow:none}.schedule-pending:hover{transform:none;box-shadow:none}
@media(max-width:760px){.price-list th,.price-list td{font-size:14px;padding:14px 10px}.price-list th:first-child{width:auto}.insurance-explain{grid-template-columns:1fr;gap:10px}.price-list .addon-list-heading{margin-top:50px}}

/* A balanced ivory navigation band for Sunday. */
.nav{gap:24px;padding:14px 4%;min-height:104px}
.nav .logo{flex:0 0 auto}
.nav .logo>.logo-crop{width:220px}
.nav nav{gap:20px;flex-shrink:0}
.nav nav>a{font-size:16px;line-height:1.2;white-space:nowrap;position:relative}
.nav nav>a:not(.button)::after{content:"";position:absolute;left:0;right:0;bottom:-8px;height:3px;border-radius:3px;background:var(--blue);transform:scaleX(0);transform-origin:left;transition:transform .18s}
.nav nav>a:not(.button):hover::after,.nav nav>a:not(.button):focus-visible::after{transform:scaleX(1)}
.nav nav>.button.small{padding:12px 23px;background:var(--navy);color:var(--cream);box-shadow:3px 3px 0 var(--blue)}
.nav nav>.button.small:hover{box-shadow:5px 5px 0 var(--blue)}
@media(min-width:1401px){.nav .menu-button{display:none}.nav nav{display:flex;position:static;padding:0;background:transparent;box-shadow:none;border-radius:0;flex-direction:row;align-items:center}}
@media(max-width:1400px){.nav .menu-button{display:block;border:2px solid var(--navy);color:var(--navy);background:transparent;padding:8px 17px;border-radius:999px;font-size:14px}.nav nav{display:none;position:absolute;top:calc(100% + 8px);left:4%;right:4%;padding:24px;background:var(--cream);color:var(--navy);border-radius:22px;box-shadow:4px 4px 0 var(--navy)}.nav nav.open{display:flex;flex-direction:column;align-items:stretch;gap:20px}.nav nav>a{font-size:19px}.nav nav>a:not(.button)::after{right:auto;width:45px}.nav nav>.button.small{align-self:flex-start}}
@media(max-width:760px){.nav,.location-page .nav{padding:10px 6%;min-height:86px}.nav .logo>.logo-crop{width:185px}.nav nav{top:calc(100% + 8px)}}

/* Ivory edging on the navy hero headline. */
.hero-statement{color:var(--navy);-webkit-text-fill-color:var(--navy);-webkit-text-stroke:4px var(--cream);paint-order:stroke fill}
@media(max-width:760px){.hero-statement{-webkit-text-stroke:3px var(--cream)}}

.hero-content>p.hero-location{font-size:14px;line-height:1.6;letter-spacing:0;font-weight:500;margin:24px auto 0;max-width:440px;text-wrap:balance}
@media(max-width:760px){.hero-content>p.hero-location{font-size:13px;margin-top:22px;max-width:290px}}

.contact-email{font-size:16px;margin:26px 0 0;overflow-wrap:anywhere}.contact-email a{text-underline-offset:5px}footer a[href^="mailto:"]{overflow-wrap:anywhere}

.headshot-placeholder{position:relative}
.headshot-reminder{position:absolute;z-index:1;left:10%;right:10%;top:50%;transform:translateY(-50%);padding:16px 20px;background:var(--cream);color:var(--navy);border:2px solid var(--navy);border-radius:24px;text-align:center;font-size:18px;font-weight:700;line-height:1.4;box-shadow:4px 4px 0 var(--blue)}
@media(max-width:760px){.headshot-reminder{font-size:16px;padding:13px 16px}}

/* Refined wordmark: preserve the approved colors and full descriptor. */
.logo-crop img{filter:none;object-position:center}footer .logo-crop img{object-position:center}footer .logo{background:var(--cream)}
/* Simple ivory sunrise rays behind the original Sunday hero. */
.hero{isolation:isolate}
.hero::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:repeating-conic-gradient(from -90deg at 50% 100%,rgba(255,251,237,.26) 0deg 8deg,transparent 8deg 16deg)}
.hero-content{position:relative;z-index:2}

/* Clear next steps throughout the existing Sunday experience. */
.hero-content>p.hero-reassurance{font-size:16px;line-height:1.55;font-weight:500;margin:0 auto 27px;max-width:530px;text-wrap:balance}
.conversion-actions{display:flex;justify-content:center;align-items:stretch;gap:24px;flex-wrap:wrap;margin:40px auto 0}
.conversion-actions .button{min-width:240px;min-height:66px;font-size:15px}
.conversion-book{background:var(--navy);color:var(--cream)}
.conversion-call{background:var(--cream);color:var(--navy);border-color:var(--navy)}
.conversion-price-link{text-align:center;margin:22px 0 0;font-size:14px}.conversion-price-link a{text-underline-offset:5px}
.contact-direct{font-size:15px;margin:25px auto 18px}.contact-text{font-size:14px;margin:0 auto 15px}.contact-text a{text-underline-offset:4px}
.mobile-conversion-bar{display:none}
@media(max-width:760px){
.hero-content>p.hero-reassurance{font-size:14px;max-width:320px;margin-bottom:25px}
.conversion-actions{flex-direction:column;max-width:320px;gap:20px}.conversion-actions .button{width:100%}
body{padding-bottom:calc(80px + env(safe-area-inset-bottom,0px))}
.mobile-conversion-bar{display:grid;grid-template-columns:1fr 1fr;gap:10px;position:fixed;bottom:0;left:0;right:0;z-index:25;margin:0;padding:12px 12px calc(12px + env(safe-area-inset-bottom,0px));background:var(--cream);border-top:2px solid var(--navy);box-shadow:0 -4px 15px #142d4815}
.mobile-conversion-bar a{display:flex;justify-content:center;align-items:center;min-height:48px;border:2px solid var(--navy);border-radius:99px;padding:8px 9px;font-family:Epilogue,Arial,sans-serif;font-weight:700;font-size:clamp(10px,3vw,13px);line-height:1.3;text-align:center;text-decoration:none}
.mobile-book{background:var(--navy);color:var(--cream)}.mobile-call{background:var(--cream);color:var(--navy)}
}
/* Welcome and Standards share one continuous Sunday navy field. */
#about.welcome{background:var(--navy);color:var(--cream);padding-bottom:55px}
#about.welcome h2{color:var(--blue)}
#about.welcome .welcome-toast{color:var(--cream)}
#about.welcome .button.blue{background:var(--blue);color:var(--navy);box-shadow:4px 4px 0 #fffbed40}
#standards.standards{background:var(--navy);padding-top:55px;border-top:0}
@media(max-width:760px){#about.welcome{padding-bottom:30px}#standards.standards{padding-top:30px}}
/* Continuous ivory Welcome and Standards, with readable navy typography. */
#about.welcome,#standards.standards{background:var(--cream);color:var(--navy)}
#about.welcome h2,#about.welcome .welcome-toast,#standards .standard-list article h3,#standards .standard-list article p{color:var(--navy)}
#standards .standards-counter{color:var(--navy);text-shadow:3px 3px 0 var(--blue)}
#standards .standard-progress{background:#142d4820}
#standards .standard-progress>span{background:var(--navy)}
#about.welcome .button.blue{background:var(--navy);color:var(--cream);box-shadow:4px 4px 0 var(--blue)}

/* Sunday call-or-text chooser. Native dialog keeps keyboard focus inside. */
.doug-dialog{position:fixed;inset:0;width:min(520px,calc(100% - 32px));max-height:calc(100dvh - 40px);overflow:auto;margin:auto;padding:48px 34px 30px;background:var(--cream);color:var(--navy);border:3px solid var(--navy);border-radius:28px;box-shadow:8px 8px 0 var(--blue);text-align:center}
.doug-dialog::backdrop{background:rgba(20,45,72,.65)}
.doug-dialog .doug-dialog-close{position:absolute;top:8px;right:10px;display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;border-radius:50%;background:transparent;color:var(--navy);font:32px Arial,sans-serif}
.doug-dialog .doug-dialog-close:hover{background:var(--blue)}
.doug-dialog-eyebrow{font-size:10px;font-weight:700;letter-spacing:1.5px;margin:8px 0 18px}
.doug-dialog h2{font-size:clamp(34px,6vw,46px);margin-bottom:18px}
.doug-dialog #doug-dialog-description{font-size:15px;line-height:1.6;margin-bottom:26px}
.doug-dialog-options{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.doug-dialog-options .button{min-height:56px;padding:14px 18px;border-color:var(--navy)}
.doug-call{background:var(--navy);color:var(--cream)}.doug-text{background:var(--blue);color:var(--navy)}
.doug-dialog-number{font-weight:700;font-size:20px;margin:26px 0 0}.doug-dialog-number span{display:block;font-size:12px;font-weight:400;margin-top:5px}
html.doug-dialog-open{overflow:hidden}
.doug-dialog a:focus-visible,.doug-dialog button:focus-visible{outline:3px solid var(--navy);outline-offset:4px}
@media(max-width:380px){.doug-dialog{padding:44px 20px 25px}.doug-dialog-options{grid-template-columns:1fr;gap:14px}}

/* Local trust and report preview */
.hero-location strong{font-weight:700}
.sunday-credential{display:flex;align-items:center;gap:20px;margin-top:32px;padding-top:24px;border-top:1px solid rgba(20,45,72,.18);text-align:left}
.sunday-credential img{width:100px;height:auto;flex-shrink:0;object-fit:contain}
.sunday-credential p{margin:0;font-size:15px;line-height:1.5}
.sunday-credential p span{display:block;max-width:300px;margin-top:8px;font-size:12px;line-height:1.6}
.sample-report{display:grid;grid-template-columns:1.15fr 1fr;align-items:center;gap:clamp(35px,6vw,100px);background:var(--cream);scroll-margin-top:35px}
.sample-report h2{font-size:clamp(36px,4.5vw,64px)}
.sample-report-copy>p:not(.eyebrow){max-width:560px}
.sample-report .button{gap:18px;border-color:var(--navy)}
.sample-report .sample-report-note{font-size:12px;margin:22px 0 0;line-height:1.8}
.sample-report-note a{text-underline-offset:3px}
.sample-report-details{border:2px solid var(--navy);border-radius:26px;padding:clamp(24px,3vw,42px);background:#f8df86;box-shadow:9px 9px 0 var(--navy)}
.sample-report-details>.eyebrow{font-size:11px}
.sample-report-details>div{padding:19px 0;border-top:1px solid rgba(20,45,72,.22)}
.sample-report-details h3{font-family:Epilogue,Arial,sans-serif;font-size:19px;font-weight:700;line-height:1.35;margin:0 0 6px}
.sample-report-details p{font-size:14px;margin:0;line-height:1.65}
.sample-report-details .sample-report-signoff{border-top:1px solid rgba(20,45,72,.22);padding-top:18px;font-weight:600;font-size:12px}
@media(max-width:760px){.sample-report{grid-template-columns:1fr;padding:65px 7%;gap:35px}.sunday-credential{gap:14px}.sunday-credential img{width:80px}.sample-report .button{font-size:14px;padding:15px 20px}.sample-report-details{box-shadow:6px 6px 0 var(--navy)}}

/* Balanced closing invitation, scoped to the homepage. */
#contact h2{font-size:clamp(32px,4.2vw,58px);line-height:1.12;letter-spacing:0;max-width:900px;margin:0 auto 20px;text-wrap:balance}
#contact>p.closing-invitation{font-size:clamp(22px,2.3vw,29px);font-weight:500;line-height:1.4;margin:0 auto 32px}
#contact .actions{margin-top:0}
@media(max-width:600px){#contact .closing-line-break{display:none}#contact h2{max-width:440px;margin-bottom:18px}#contact>p.closing-invitation{margin-bottom:26px}}

.partner-page .agent-banner{padding-top:170px;min-height:75vh}.partner-page .agent-banner h1{font-size:clamp(42px,6vw,80px);max-width:1000px;margin:0 auto 28px}
@media(max-width:760px){.partner-page .agent-banner{padding-top:130px}.partner-page .agent-banner h1{font-size:42px}}

#about .welcome-people-title{font-size:clamp(34px,3.8vw,54px);line-height:1.1;letter-spacing:0;text-wrap:balance}

/* An understated welcome label and a personal script finish. */
#about .welcome-label{display:inline-flex;align-items:center;gap:12px;font-family:Epilogue,Arial,sans-serif;font-size:11px;font-weight:700;letter-spacing:1.7px;line-height:1.4;margin:0 0 22px}
#about .welcome-label::before{content:"";width:32px;height:4px;border-radius:4px;background:var(--blue)}
#about .welcome-people-title{font-size:clamp(32px,3vw,44px);line-height:1.12;letter-spacing:0;margin:0 0 30px;text-wrap:initial}
.welcome-house-line{display:block}
#about .welcome-personal-line{display:block;font-family:SundayScript,cursive;font-size:clamp(36px,3.4vw,50px);font-weight:400;line-height:1.35;letter-spacing:0;margin-top:8px;text-transform:none}
@media(max-width:760px){#about .welcome-label{margin-bottom:18px}#about .welcome-people-title{font-size:clamp(29px,7vw,40px);margin-bottom:26px}#about .welcome-personal-line{font-size:clamp(33px,8vw,46px);margin-top:7px}}

#about .welcome-owner-signoff{font-family:Epilogue,Arial,sans-serif;font-size:18px;line-height:1.6;margin:26px 0 24px}
.welcome-next-actions{display:flex;flex-wrap:wrap;gap:16px;align-items:center;margin:0 0 30px}
#about .welcome-about-button{border-color:var(--navy);background:var(--cream);color:var(--navy)}
#about .welcome-quote-button{background:var(--navy);color:var(--cream);box-shadow:4px 4px 0 var(--blue)}
@media(max-width:420px){.welcome-next-actions{gap:14px}.welcome-next-actions .button{width:100%}}

#about .welcome-copy p.welcome-body-copy{font-family:Epilogue,Arial,sans-serif;font-size:18px;font-weight:600;line-height:1.75;letter-spacing:0;color:var(--navy);margin-bottom:24px}
@media(max-width:760px){#about .welcome-copy p.welcome-body-copy{font-size:16px;line-height:1.75}}

.booking-main{padding:150px 5% 65px;background:var(--cream)}
.booking-intro{max-width:850px;text-align:center;margin:0 auto 32px}
.booking-intro h1{font-size:clamp(34px,4.5vw,62px);line-height:1.12;margin-bottom:22px}
.booking-intro>p:not(.eyebrow){font-size:16px;max-width:650px;margin:0 auto}.booking-intro a,.booking-fallback a{text-underline-offset:4px}
.booking-frame-wrap{max-width:1160px;margin:0 auto;background:#fff;border:2px solid var(--navy);border-radius:22px;padding:20px;box-shadow:6px 6px 0 var(--blue)}
.spectora-scheduler{display:block;min-height:1100px;background:#fff}
.booking-fallback{font-size:13px;text-align:center;margin:20px 8px 5px;line-height:1.7}
@media(max-width:760px){.booking-main{padding:120px 16px 45px}.booking-frame-wrap{padding:8px;border-radius:16px;box-shadow:4px 4px 0 var(--blue)}.booking-intro>p:not(.eyebrow){font-size:14px}.booking-fallback{font-size:12px}}

/* Clear inspection pricing and insurance bundle totals. */
.pricing-how{font-size:18px;line-height:1.6;max-width:760px}.pricing-bundle{background:#fff6d9;border:2px solid #142d48;border-radius:18px;padding:28px;margin:28px 0 35px}.pricing-bundle h3{font-size:32px;margin:8px 0 14px}.bundle-totals{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:20px 0}.bundle-totals p{margin:0;padding:20px;background:#fffdf7;border-radius:12px}.bundle-totals span,.bundle-totals strong,.bundle-totals small{display:block}.bundle-totals strong{font-size:32px;margin:8px 0}.bundle-totals small{font-size:14px;line-height:1.5}.bundle-row{background:#fff6d9}.bundle-row small{display:block;font-size:13px;margin-top:5px}@media(max-width:600px){.bundle-totals{grid-template-columns:1fr;gap:12px}.pricing-bundle{padding:20px}.pricing-bundle h3{font-size:27px}.pricing-how{font-size:16px}}

.thermal-included{font-size:17px;line-height:1.55;margin:20px 0}.thermal-included strong{font-weight:800}.service-intro .thermal-included{max-width:650px;margin:20px auto}

.quote-section{max-width:1200px;margin:auto}.quote-layout{display:grid;grid-template-columns:1.15fr 1fr;gap:35px;margin-top:30px;align-items:start}.quote-size-label{display:block;font-weight:800;margin-bottom:10px}#quote-size{width:100%;max-width:340px;padding:16px;border:2px solid #142d48;border-radius:10px;background:white;font:inherit;color:#142d48}.quote-layout fieldset{border:0;padding:0;margin:25px 0 0}.quote-layout legend{font-weight:800;margin-bottom:12px}.quote-option{display:flex;align-items:center;gap:12px;padding:15px 0;border-bottom:1px solid #142d4830;cursor:pointer}.quote-option input{width:22px;height:22px;accent-color:#142d48;flex-shrink:0}.quote-option span{flex:1}.quote-option strong{white-space:nowrap}.quote-result{background:#142d48;color:#fff9eb;padding:30px;border-radius:20px}.quote-result .eyebrow,.quote-result p{color:inherit}.quote-total{font-size:clamp(40px,6vw,62px);font-weight:900;line-height:1.1;margin:12px 0}.quote-result ul{list-style:none;padding:0;margin:24px 0}.quote-result li{display:flex;gap:18px;justify-content:space-between;padding:10px 0;border-bottom:1px solid #ffffff30}.quote-result li strong{white-space:nowrap}.quote-contact{display:block;color:#fff9eb;margin-top:18px}.quote-note{font-size:13px;line-height:1.6;margin-top:22px}.quote-result .button{width:100%;text-align:center}.quote-option:focus-within{outline:2px solid #142d48;outline-offset:3px}@media(max-width:760px){.quote-layout{grid-template-columns:1fr;gap:24px}.quote-result{padding:24px}.quote-option{font-size:15px}.quote-section h2{overflow-wrap:break-word}}

.hero-quote-action{margin:18px 0 0;text-align:center}.hero-quote-button{font-size:16px;padding:14px 24px}.hero-quote-button:focus-visible{outline:3px solid #142d48;outline-offset:5px}@media(max-width:600px){.hero-quote-action{margin-top:16px}.hero-quote-button{max-width:100%;white-space:normal}}

.hero .quote-no-contact{font-size:14px;line-height:1.5;margin:10px auto 0;max-width:360px;color:#142d48}

#sample-report.sample-report{grid-template-columns:1fr;gap:0;text-align:center}
#sample-report .sample-report-copy{width:100%;max-width:820px;margin:0 auto}
#sample-report .sample-report-copy>p:not(.eyebrow){max-width:650px;margin-left:auto;margin-right:auto}

/* Sunday service appreciation offer */
.service-thanks{background:#fff6d9;text-align:center}.service-thanks .service-script{font-family:SundayScript,cursive;font-size:clamp(28px,4vw,40px);line-height:1.4;margin-bottom:24px}.service-thanks h2{font-size:clamp(28px,3.5vw,44px);line-height:1.15;max-width:880px;margin:0 auto 24px}.service-thanks>p:not(.service-script){max-width:760px;margin:0 auto 22px}.service-thanks .thanks-code{border:2px dashed var(--navy);border-radius:14px;padding:18px 24px;width:fit-content}.thanks-code strong{display:block;font-size:clamp(24px,4vw,32px);letter-spacing:.06em}.service-thanks .actions{justify-content:center;flex-wrap:wrap}

/* Full customer and agent reviews. */
.sunday-kind-words{background:var(--cream);padding-top:60px;padding-bottom:65px}.sunday-kind-words>h2{font-family:SundayScript,cursive;font-size:clamp(34px,4vw,48px);line-height:1.4;font-weight:400;text-align:center;margin:0 0 32px}.sunday-review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;max-width:1240px;margin:0 auto;align-items:start}.sunday-review-card{margin:0;padding:28px;background:#fffdf7;border:1px solid #142d4826;border-radius:12px}.sunday-review-card figcaption{font-size:16px;font-weight:700;line-height:1.4;padding-bottom:18px;margin-bottom:20px;border-bottom:1px solid #142d481a}.sunday-review-card figcaption span{display:block;font-size:12px;font-weight:400;margin-top:6px}.sunday-review-card blockquote{margin:0;font-size:15px;line-height:1.8}.sunday-review-card blockquote p{margin:0 0 18px}.sunday-review-card blockquote p:last-child{margin-bottom:0}.sunday-review-note{max-width:850px;text-align:center;font-size:12px;line-height:1.6;margin:24px auto 0;opacity:.75}@media(max-width:1000px){.sunday-review-grid{grid-template-columns:1fr;max-width:700px}.sunday-review-card{padding:25px}.sunday-review-card blockquote{font-size:16px}}@media(max-width:600px){.sunday-kind-words{padding-top:42px;padding-bottom:45px}.sunday-review-card{padding:22px}}

/* Longest review first, with two supporting reviews below. */
.sunday-review-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-width:1050px;gap:26px;align-items:stretch}.sunday-review-feature{grid-column:1 / -1;background:#fff6d9;padding:34px 40px}.sunday-review-feature blockquote{font-size:17px;line-height:1.85}.sunday-review-feature figcaption{margin-bottom:22px}.sunday-review-card{border-radius:16px}@media(max-width:700px){.sunday-review-grid{grid-template-columns:1fr;gap:20px}.sunday-review-feature{grid-column:auto;padding:25px}.sunday-review-feature blockquote{font-size:16px}}

/* Compact previews with the full reviews available on demand. */
.sunday-kind-words{padding-top:38px;padding-bottom:42px}.sunday-kind-words>h2{font-size:clamp(30px,3.5vw,40px);margin-bottom:22px}.sunday-review-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;max-width:1180px;align-items:start}.sunday-review-compact{padding:22px;border-radius:12px}.sunday-review-compact summary{list-style:none;cursor:pointer;display:block}.sunday-review-compact summary::-webkit-details-marker{display:none}.review-person{display:block;font-size:15px;font-weight:700;line-height:1.4}.review-person>span{display:block;font-size:11px;font-weight:400;margin-top:5px}.review-preview{display:block;font-size:15px;line-height:1.7;margin-top:17px}.review-toggle{display:block;font-size:12px;font-weight:700;margin-top:18px;text-decoration:underline;text-underline-offset:4px}.review-close{display:none}.sunday-review-compact[open] .review-read,.sunday-review-compact[open] .review-preview{display:none}.sunday-review-compact[open] .review-close{display:inline}.sunday-review-compact[open] blockquote{margin-top:20px;padding-top:18px;border-top:1px solid #142d4826;font-size:15px;line-height:1.75}.sunday-review-compact summary:focus-visible{outline:2px solid var(--navy);outline-offset:7px;border-radius:3px}@media(max-width:760px){.sunday-review-grid{grid-template-columns:1fr;gap:12px;max-width:650px}.sunday-review-compact{padding:18px 20px}.review-preview{margin-top:10px;font-size:14px}.review-toggle{margin-top:12px}.sunday-kind-words{padding-top:30px;padding-bottom:32px}}

/* Manual review carousel; touch scrolling works without JavaScript. */
.sunday-review-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;gap:18px;max-width:1180px;padding:4px 4px 14px;align-items:flex-start;scrollbar-width:thin;scrollbar-color:#142d4840 transparent}.sunday-review-track>.sunday-review-card{flex:0 0 calc((100% - 36px)/3);min-width:0;scroll-snap-align:start}.review-preview{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;min-height:6.8em}.review-carousel-controls{display:flex;align-items:center;justify-content:center;gap:20px;margin:12px auto 0}.review-arrow{display:grid;place-items:center;width:42px;height:42px;border:1px solid var(--navy);border-radius:50%;background:var(--cream);font-size:22px;line-height:1}.review-arrow:hover{background:var(--blue)}.review-arrow:disabled{opacity:.3;cursor:default}.review-arrow:focus-visible,.sunday-review-track:focus-visible{outline:2px solid var(--navy);outline-offset:3px}#review-position{font-size:12px;min-width:65px;text-align:center}@media(max-width:760px){.sunday-review-track{max-width:650px;gap:14px}.sunday-review-track>.sunday-review-card{flex-basis:100%}}@media(prefers-reduced-motion:reduce){.sunday-review-track{scroll-behavior:auto}}

.partner-support{max-width:1200px;margin:auto}.partner-support h2{font-size:clamp(32px,4vw,48px)}.partner-support-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;margin:30px 0}.partner-support-grid h3{font-size:26px}.partner-resource-links{display:flex;flex-wrap:wrap;gap:20px;font-weight:700}#partner-copy{max-width:850px;margin:25px auto 0}#partner-copy p{margin-bottom:12px}.booking-quote{max-width:1000px;margin:0 auto 25px;padding:18px 22px;border:1px solid var(--navy);border-radius:12px;background:var(--cream)}.booking-quote[hidden]{display:none}.booking-quote summary{cursor:pointer;font-weight:700}.booking-quote summary strong{float:right}.booking-quote p{margin:16px 0;font-size:14px}.booking-quote ul{list-style:none;padding:0}.booking-quote li{display:flex;justify-content:space-between;gap:20px;margin:8px 0}.booking-quote a{font-weight:700}@media(max-width:760px){.partner-support-grid{grid-template-columns:1fr;gap:15px}.booking-quote{margin-left:6%;margin-right:6%;padding:16px}}

.faq-intro{background:var(--blue);padding-top:65px;padding-bottom:45px;text-align:center}.faq-intro h1{font-size:clamp(36px,5vw,62px);line-height:1.1}.faq-intro .service-script{font-family:SundayScript,cursive;font-size:36px;line-height:1.4}.faq-topics{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;max-width:1000px;margin:25px auto 0}.faq-topics a{border:1px solid var(--navy);border-radius:999px;padding:8px 15px;font-size:13px;text-decoration:none}.faq-topic{max-width:1100px;margin:auto;padding-top:45px;padding-bottom:25px}.faq-topic h2{font-size:clamp(28px,4vw,40px)}.faq-topic details{border-top:1px solid #142d4833;padding:18px 0}.faq-topic summary{cursor:pointer;font-size:17px;font-weight:700;line-height:1.5}.faq-topic details p{margin:15px 0 0;line-height:1.8}.faq-contact{text-align:center;padding-top:40px;padding-bottom:55px}.faq-contact h2{font-size:36px}.faq-more{display:inline-block;margin-top:24px;font-weight:700}.footer-hours{font-size:13px;line-height:1.7}.footer-hours strong{font-size:14px}

/* Light ivory edging on navy display headings over butter yellow. */
.area-hero h1,.about-hero h1,.pricing-hero h1,.agent-banner h1,.faq-intro h1,.price-inclusions h2,.price-booking h2,.contact>h2{
 -webkit-text-stroke:2px var(--cream);
 paint-order:stroke fill;
}
@supports not (-webkit-text-stroke:2px #fffbed){
 .area-hero h1,.about-hero h1,.pricing-hero h1,.agent-banner h1,.faq-intro h1,.price-inclusions h2,.price-booking h2,.contact>h2{
  text-shadow:-1px -1px 0 var(--cream),1px -1px 0 var(--cream),-1px 1px 0 var(--cream),1px 1px 0 var(--cream);
 }
}
@media(max-width:760px){
 .area-hero h1,.about-hero h1,.pricing-hero h1,.agent-banner h1,.faq-intro h1,.price-inclusions h2,.price-booking h2,.contact>h2{-webkit-text-stroke:1.25px var(--cream)}
}

/* A simpler first impression, with a clear path to book or talk. */
.hero{min-height:620px;padding:140px 0 65px}
.hero::before{background:repeating-conic-gradient(from -90deg at 50% 100%,rgba(255,251,237,.16) 0deg 8deg,transparent 8deg 16deg)}
.hero h1{margin-bottom:12px}
.hero .actions{margin-top:18px}
.hero .actions .button{min-height:76px}
.hero-quote-action{margin-top:12px}
.hero-price-link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:8px 12px;font-size:15px;font-weight:600;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px;border-radius:6px}
.hero-price-link:hover{text-decoration-thickness:2px}
.hero-price-link:focus-visible{outline:3px solid var(--navy);outline-offset:3px}
.hero-content>p.hero-location{margin-top:14px;font-size:13px;font-weight:400;max-width:none}
@media(max-width:760px){
 .hero{min-height:0;padding:125px 0 52px}
 .hero h1{margin-bottom:10px}
 .hero .actions{gap:14px;margin-top:20px}
 .hero .actions .button{min-height:64px}
 .hero-quote-action{margin-top:10px}
 .hero-content>p.hero-location{font-size:12px;margin-top:12px}
}

/* Sunday pricing stands on its own as the cursive page heading. */
.pricing-hero h1.pricing-title{font-family:SundayScript,cursive;font-size:clamp(34px,4vw,48px);font-weight:400;line-height:1.3;letter-spacing:0;text-transform:none;color:var(--navy);-webkit-text-fill-color:var(--navy);-webkit-text-stroke:0;text-shadow:none;margin:0 auto 22px}

/* The insurance pair is visible where visitors choose their add-ons. */
.quote-option.quote-combo{background:#f8df8640;border:2px solid var(--navy);border-radius:14px;padding:16px 12px;margin:10px 0}
.quote-saving{display:inline-block;background:var(--navy);color:var(--cream);border-radius:999px;padding:3px 10px;margin:5px 0 0 8px;font-size:13px;font-weight:700;line-height:1.5;white-space:nowrap}
@media(max-width:600px){.quote-saving{display:table;margin-left:0}.quote-option.quote-combo{padding:14px 10px}}

/* Ivory gives the pricing introduction room to breathe. */
.sunday-pricing-intro{background:var(--cream);padding-top:52px;padding-bottom:44px;border-bottom:1px solid #142d4820}
.sunday-pricing-intro h1.pricing-title{font-size:clamp(44px,5vw,64px);margin-bottom:26px}
.sunday-pricing-intro h1.pricing-title::after{content:"";display:block;width:76px;height:5px;background:var(--blue);border-radius:999px;margin:12px auto 0}
.sunday-pricing-intro>p:not(.service-script){max-width:640px;font-size:17px;line-height:1.65;margin-bottom:24px}
.sunday-pricing-intro .actions{gap:18px;margin-top:0;margin-bottom:24px}
.sunday-pricing-intro .actions .button{min-height:56px;padding:14px 26px;box-shadow:none;border:2px solid var(--navy)}
.sunday-pricing-intro .actions .button.cream{background:var(--navy);color:var(--cream)}
.sunday-pricing-intro .actions .button.peach{background:transparent;color:var(--navy)}
.sunday-pricing-intro .actions .button:hover{transform:translateY(-2px);box-shadow:0 3px 0 #142d4825}
.sunday-pricing-intro .actions .button:focus-visible,.sunday-pricing-intro .insurance-route:focus-visible{outline-color:var(--navy)}
.sunday-pricing-intro .insurance-route{display:inline-block;max-width:100%;font-size:14px;font-weight:500;line-height:1.6;text-decoration-thickness:1px}
@media(max-width:760px){.sunday-pricing-intro{padding:38px 7% 34px}.sunday-pricing-intro>p:not(.service-script){font-size:15px}.sunday-pricing-intro .actions{gap:12px}.sunday-pricing-intro .actions .button{font-size:14px;padding:13px 22px}.sunday-pricing-intro .insurance-route{font-size:13px}}

/* Ivory hero with a right-hand architectural detail and live typography. */
.hero.hero-architecture{background:var(--cream)}
.hero-architecture::before{display:none}
.hero-architecture-art{position:absolute;right:0;top:0;width:27%;height:100%;object-fit:cover;object-position:right center;pointer-events:none;z-index:0;opacity:.8}
.hero-architecture .hero-content{max-width:none;padding:35px 14% 0 6%}
.hero-architecture h1{font-size:clamp(36px,5.3vw,82px)}
.hero-architecture .hero-statement{-webkit-text-stroke:0;text-shadow:none}
.hero-architecture .hero-script{color:var(--blue);-webkit-text-fill-color:var(--blue);-webkit-text-stroke:2px var(--navy);text-shadow:2px 2px 0 var(--navy);font-size:clamp(46px,6.3vw,100px)}
.hero-architecture .actions .button{box-shadow:none;border:2px solid var(--navy)}
.hero-architecture .actions .button:hover{box-shadow:0 3px 0 #142d4825}
.hero-architecture .hero-price-link:focus-visible{outline-color:var(--navy)}
@media(max-width:1050px){.hero-architecture-art{width:24%;opacity:.45}.hero-architecture .hero-content{padding-left:5%;padding-right:10%}}
@media(max-width:760px){
 .hero-architecture-art{top:auto;bottom:0;width:42%;height:65%;object-position:right bottom;opacity:.14;mask-image:linear-gradient(to right,transparent,#000 45%);-webkit-mask-image:linear-gradient(to right,transparent,#000 45%)}
 .hero-architecture .hero-content{padding:25px 7% 0}
 .hero-architecture h1{font-size:clamp(33px,8.5vw,54px)}
 .hero-architecture .hero-script{font-size:clamp(43px,10.8vw,68px);-webkit-text-stroke:1.5px var(--navy)}
}

/* A Gulf horizon and a clear transition into the introduction. */
.hero.hero-architecture{min-height:580px;padding-top:125px;padding-bottom:35px}
.hero-ocean-art{position:absolute;left:-25px;bottom:42px;width:27%;max-width:440px;height:auto;opacity:.45;pointer-events:none;z-index:0;mask-image:linear-gradient(to right,#000 55%,transparent);-webkit-mask-image:linear-gradient(to right,#000 55%,transparent)}
.hero-architecture::after{content:"";position:absolute;bottom:-26px;left:-10%;width:120%;height:56px;border-radius:50% 50% 0 0;background:#fff2c5;z-index:1;pointer-events:none}
.hero-next{display:flex;align-items:center;justify-content:center;width:44px;height:44px;margin:12px auto 0;border:1px solid #142d4830;border-radius:50%;background:var(--cream);text-decoration:none;transition:transform .2s,border-color .2s}
.hero-next:hover{transform:translateY(3px);border-color:var(--navy)}
.hero-next:focus-visible{outline:3px solid var(--navy);outline-offset:4px}
#about.welcome{background:#fff2c5;padding-top:58px;padding-bottom:72px;scroll-margin-top:24px}
#about .round-image{box-shadow:10px 10px 0 var(--cream)}
@media(max-width:760px){
 .hero.hero-architecture{min-height:0;padding-top:125px;padding-bottom:28px}
 .hero-ocean-art{width:40%;bottom:35px;opacity:.2}
 #about.welcome{padding-top:36px;padding-bottom:52px;gap:34px}
 #about .welcome-copy{grid-row:1}
}
@media(prefers-reduced-motion:reduce){.hero-next{transition:none}.hero-next:hover{transform:none}}

/* Fade decorative artwork at section edges instead of a hard rectangular crop. */
.hero-architecture-art{
 mask-image:linear-gradient(to bottom,transparent 0,transparent 140px,#000 220px,#000 calc(100% - 60px),transparent 100%);
 -webkit-mask-image:linear-gradient(to bottom,transparent 0,transparent 140px,#000 220px,#000 calc(100% - 60px),transparent 100%);
}
@media(max-width:760px){
 .hero-architecture-art{
  mask-image:linear-gradient(to bottom,transparent 0,#000 80px,#000 calc(100% - 70px),transparent 100%);
  -webkit-mask-image:linear-gradient(to bottom,transparent 0,#000 80px,#000 calc(100% - 70px),transparent 100%);
 }
}

/* A compact services introduction brings the choices into view sooner. */
.services-compact-intro{background:var(--cream);padding-top:28px;padding-bottom:32px;border-bottom:1px solid #142d4820}
.services-compact-intro .breadcrumbs{font-size:12px;margin:0 0 18px}
.services-compact-intro h1{font-size:clamp(32px,3.4vw,46px);line-height:1.1;letter-spacing:0;margin:0 0 14px;text-transform:none;-webkit-text-stroke:0;text-shadow:none}
.services-compact-intro .area-lead{font-size:17px;line-height:1.6;margin:0 0 8px;max-width:none}
.services-compact-intro .thermal-included{font-size:14px;font-weight:500;margin:0;line-height:1.6;max-width:none}
.services-compact-intro .actions{margin-top:18px;gap:24px;flex-wrap:wrap}
.services-compact-intro .button{min-height:44px;padding:10px 20px;font-size:14px;box-shadow:none}
.services-compact-intro a:focus-visible{outline-color:var(--navy)}
@media(max-width:760px){.services-compact-intro{padding:22px 7% 26px}.services-compact-intro h1{font-size:34px}.services-compact-intro .area-lead{font-size:15px}.services-compact-intro .thermal-included{font-size:13px}.services-compact-intro .actions{flex-direction:row;align-items:center;gap:18px}}

/* A single introduction and category navigation flow into the service listings. */
.services-catalog .services-compact-intro{display:flex;justify-content:space-between;align-items:center;gap:36px;padding-top:40px;padding-bottom:24px;border:0}
.services-catalog .services-compact-intro h1{font-family:SundayScript,cursive;font-weight:400;font-size:clamp(38px,4vw,52px);line-height:1.3;margin:0 0 12px;text-transform:none}
.services-catalog .services-compact-intro .area-lead{font-size:16px;line-height:1.6;margin:0 0 7px}
.services-catalog .services-compact-intro .thermal-included{font-size:13px;font-weight:500;margin:0}
.services-catalog .services-compact-intro .actions{display:flex;flex-direction:column;align-items:center;gap:12px;margin:0;flex-shrink:0}
.services-catalog .services-compact-intro .call{font-size:13px}
.services-catalog .service-group-nav{background:var(--cream);padding-top:12px;padding-bottom:24px;border-bottom:1px solid #142d481f;gap:12px 28px}
.services-catalog .service-group-nav a{border:0;border-radius:0;padding:8px 0;font-size:14px;font-weight:600;line-height:1.5;text-decoration:underline;text-decoration-color:#142d4840;text-underline-offset:7px;text-decoration-thickness:1px}
.services-catalog .service-group-nav a:hover{background:transparent;text-decoration-color:var(--navy)}
.services-catalog .catalog-category{padding-top:40px;padding-bottom:48px}
.services-catalog .catalog-category h2{font-size:clamp(30px,3vw,42px);margin-bottom:12px}
.services-catalog .category-description{font-size:16px;margin-bottom:26px}
@media(max-width:760px){
 .services-catalog .services-compact-intro{display:block;padding-top:28px;padding-bottom:16px}
 .services-catalog .services-compact-intro .area-lead{font-size:15px}
 .services-catalog .services-compact-intro .actions{flex-direction:row;justify-content:flex-start;gap:20px;margin-top:18px;flex-wrap:wrap}
 .services-catalog .service-group-nav{gap:4px 20px;padding-top:10px;padding-bottom:20px}
 .services-catalog .service-group-nav a{font-size:13px;min-height:44px;display:inline-flex;align-items:center}
 .services-catalog .catalog-category{padding-top:30px;padding-bottom:36px}
 .services-catalog .category-description{font-size:15px}
}

/* One composed navy introduction, followed by lighter editorial service cards. */
.services-catalog .services-overview{margin:28px 7% 8px;background:var(--navy);color:var(--cream);border-radius:26px;padding:28px 32px 26px}
.services-catalog .services-overview .services-compact-intro{background:transparent;color:inherit;padding:0;gap:28px;align-items:center}
.services-overview .services-intro-copy{min-width:0}
.services-catalog .services-overview h1{color:var(--cream);-webkit-text-fill-color:var(--cream);font-size:clamp(38px,4vw,50px);margin-bottom:10px}
.services-catalog .services-overview .area-lead{font-size:15px;max-width:580px;color:var(--cream)}
.services-catalog .services-overview .thermal-included{display:inline-block;color:var(--blue);font-size:12px;font-weight:500}
.services-catalog .services-overview .actions .button{background:var(--blue);color:var(--navy);border-color:var(--blue);padding:11px 20px;min-height:44px}
.services-catalog .services-overview .actions .call{color:var(--cream);font-size:12px;font-weight:500;text-decoration-thickness:1px}
.services-catalog .services-overview a:focus-visible{outline-color:var(--blue)}
.services-catalog .services-overview .service-group-nav{background:transparent;border:0;padding:24px 0 0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}
.services-catalog .services-overview .service-group-nav a{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:54px;padding:11px 14px;background:var(--cream);color:var(--navy);border:0;border-radius:10px;text-decoration:none;font-size:12px;font-weight:600;line-height:1.4}
.services-catalog .services-overview .service-group-nav a:hover{background:var(--blue)}
.services-catalog .services-overview .service-group-nav a span:last-child{font-size:18px;font-weight:400;flex-shrink:0}
.services-catalog .catalog-category{background:var(--cream);padding-top:34px;padding-bottom:38px}
.services-catalog .catalog-category:nth-of-type(even){background:#f5efdf}
.services-catalog .catalog-category h2{font-size:clamp(29px,3vw,38px);margin-bottom:10px}
.services-catalog .category-description{font-size:15px;max-width:760px;margin-bottom:20px}
.services-catalog .catalog-grid{margin-top:24px;gap:20px}
.services-catalog .catalog-card{background:#fffef8;border:1px solid #142d481a;border-top:4px solid var(--blue);border-radius:16px;padding:25px 24px 24px}
.services-catalog .catalog-card h3{font-size:27px;margin-bottom:16px}
.services-catalog .catalog-card p{font-size:14px;line-height:1.75}
.services-catalog .catalog-more{font-size:13px;text-decoration-thickness:1px}
@media(min-width:1600px){.services-catalog .services-overview{max-width:1350px;margin-left:auto;margin-right:auto}}
@media(max-width:1050px){.services-catalog .services-overview .service-group-nav{grid-template-columns:repeat(3,minmax(0,1fr))}.services-catalog .services-overview{padding:26px}}
@media(max-width:760px){
 .services-catalog .services-overview{margin:20px 5% 4px;padding:24px 20px;border-radius:20px}
 .services-catalog .services-overview .services-compact-intro{display:block;padding:0}
 .services-catalog .services-overview h1{font-size:39px}
 .services-catalog .services-overview .area-lead{font-size:14px}
 .services-catalog .services-overview .actions{flex-direction:row;margin-top:18px;gap:18px}
 .services-catalog .services-overview .service-group-nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding-top:22px}
 .services-catalog .services-overview .service-group-nav a{font-size:12px;min-height:52px;padding:10px 12px}
 .services-catalog .services-overview .service-group-nav a:last-child{grid-column:1/-1}
 .services-catalog .catalog-category{padding-top:28px;padding-bottom:32px}
 .services-catalog .catalog-card{padding:22px}
}

/* A brief, brand-matched guided service chooser. */
.services-catalog .service-comparison{background:#fff2c5;padding-top:50px;padding-bottom:50px}
.service-chooser{margin-top:28px;background:var(--cream);border-radius:22px;padding:32px;max-width:1000px}
.service-chooser[hidden],#chooser-fallback[hidden]{display:none}
.chooser-step{font-size:12px;font-weight:700;letter-spacing:.06em;color:var(--navy);margin:0 0 12px}
.chooser-question{font-family:Epilogue,Arial,sans-serif;font-size:clamp(22px,2.5vw,30px);font-weight:700;line-height:1.4;margin-bottom:24px;letter-spacing:0}
.chooser-question:focus{outline:none}
.chooser-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.chooser-choice{background:var(--cream);border:1px solid #142d4840;border-radius:12px;text-align:left;min-height:58px;padding:15px 18px;font-size:15px;font-weight:600;line-height:1.5;transition:background .15s,border-color .15s}
.chooser-choice:hover{background:var(--blue);border-color:var(--navy)}
.service-chooser a:focus-visible,.service-chooser button:focus-visible{outline:3px solid var(--navy);outline-offset:4px}
.chooser-controls{display:flex;gap:24px;margin-top:26px}
.chooser-back{background:none;border:0;padding:8px 0;min-height:44px;text-decoration:underline;text-underline-offset:5px;font-size:13px}
.chooser-recommendations{display:grid;gap:12px;margin-bottom:20px}
.chooser-service{font-weight:700;font-size:19px;line-height:1.5;text-decoration:underline;text-underline-offset:5px}
.chooser-note{font-size:15px;line-height:1.75;max-width:760px;margin-bottom:24px}
.chooser-result-actions{display:flex;align-items:center;flex-wrap:wrap;gap:18px}
.service-chooser .button{font-size:14px;min-height:48px;padding:12px 20px;box-shadow:none}
.service-chooser .button.peach{background:var(--navy);color:var(--cream)}
.service-chooser .button.cream{border:1px solid var(--navy)}
.chooser-pricing{font-size:14px;font-weight:600;text-underline-offset:5px;min-height:44px;display:inline-flex;align-items:center}
@media(max-width:760px){.services-catalog .service-comparison{padding:36px 7%}.service-chooser{padding:24px 20px}.chooser-options{grid-template-columns:1fr}.chooser-choice{font-size:14px}.chooser-note{font-size:14px}.chooser-result-actions{gap:14px}}

/* Explicit chooser colors prevent the previous dark section theme from leaking in. */
.services-catalog .service-comparison{color:var(--navy)}
.services-catalog .service-comparison>h2,.services-catalog .service-comparison>.eyebrow{color:var(--navy);-webkit-text-fill-color:var(--navy);text-shadow:none}
.services-catalog .service-comparison a{color:var(--navy)}
.services-catalog .service-chooser{color:var(--navy)}
.services-catalog .service-chooser .chooser-question,.services-catalog .service-chooser .chooser-choice,.services-catalog .service-chooser .chooser-back,.services-catalog .service-chooser .chooser-note,.services-catalog .service-chooser .chooser-service,.services-catalog .service-chooser .chooser-pricing{color:var(--navy);-webkit-text-fill-color:var(--navy)}
.services-catalog .service-chooser .button.peach{color:var(--cream);-webkit-text-fill-color:var(--cream);background:var(--navy)}
.services-catalog .service-chooser .button.cream{color:var(--navy);-webkit-text-fill-color:var(--navy);background:var(--cream)}
.services-catalog #chooser-fallback table{color:var(--navy)}
.services-catalog #chooser-fallback thead th{color:var(--navy)}
.services-catalog #chooser-fallback th,.services-catalog #chooser-fallback td{border-bottom-color:#142d4830}

/* Always available help, opened only by the visitor. */
.inspection-helper-launcher{position:fixed;right:24px;bottom:24px;z-index:26;display:inline-flex;align-items:center;gap:10px;background:var(--navy);color:var(--cream);border:2px solid var(--cream);border-radius:999px;padding:12px 19px 12px 12px;min-height:52px;font-size:14px;font-weight:700;line-height:1.4;text-decoration:none;box-shadow:0 6px 20px #142d4830}
.inspection-helper-launcher>span{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--blue);color:var(--navy);font-size:18px}
.inspection-helper-launcher:hover{background:#203d5c}
.inspection-helper-launcher:focus-visible{outline:3px solid var(--blue);outline-offset:4px}
.inspection-helper{position:fixed;inset:auto 24px 92px auto;width:440px;max-width:calc(100vw - 32px);max-height:min(680px,calc(100dvh - 130px));margin:0;padding:0;border:2px solid var(--navy);border-radius:22px;background:var(--cream);color:var(--navy);overflow:auto;box-shadow:0 14px 48px #142d4830}
.inspection-helper::backdrop{background:#142d481f}
.inspection-helper-header{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 20px;background:var(--navy);color:var(--cream)}
.inspection-helper-header h2{font-family:Epilogue,Arial,sans-serif;font-size:17px;font-weight:700;line-height:1.5;letter-spacing:0;margin:0;color:var(--cream);-webkit-text-fill-color:var(--cream)}
.inspection-helper-close{display:grid;place-items:center;width:36px;height:36px;flex-shrink:0;padding:0;background:transparent;border:1px solid #fffbed70;border-radius:50%;font-size:25px;line-height:1;color:var(--cream)}
.inspection-helper .service-chooser{margin:0;padding:22px;background:var(--cream);color:var(--navy);border-radius:0;max-width:none}
.inspection-helper .chooser-options{grid-template-columns:1fr;gap:9px}
.inspection-helper .chooser-step{font-size:11px;margin-bottom:8px}
.inspection-helper .chooser-question{font-size:21px;margin-bottom:17px;color:var(--navy);-webkit-text-fill-color:var(--navy)}
.inspection-helper .chooser-choice{min-height:46px;padding:11px 14px;font-size:13px;color:var(--navy);-webkit-text-fill-color:var(--navy)}
.inspection-helper .chooser-note{font-size:13px;line-height:1.75;color:var(--navy)}
.inspection-helper .chooser-service{font-size:17px;color:var(--navy)}
.inspection-helper .chooser-back,.inspection-helper .chooser-pricing{font-size:12px;color:var(--navy)}
.inspection-helper .chooser-controls{margin-top:16px}
.inspection-helper .chooser-result-actions{gap:12px}
.inspection-helper .service-chooser .button{margin-top:0;min-height:44px;font-size:12px;padding:11px 15px}
.inspection-helper .service-chooser .button.peach{background:var(--navy);color:var(--cream);-webkit-text-fill-color:var(--cream)}
.inspection-helper .service-chooser .button.cream{background:var(--cream);color:var(--navy);-webkit-text-fill-color:var(--navy)}
.inspection-helper-close:focus-visible{outline-color:var(--blue)}
@media(max-width:760px){
 .inspection-helper-launcher{right:14px;bottom:calc(86px + env(safe-area-inset-bottom,0px));min-height:46px;padding:9px 14px 9px 9px;font-size:12px;gap:8px}
 .inspection-helper-launcher>span{width:25px;height:25px;font-size:16px}
 .inspection-helper{inset:auto 12px calc(145px + env(safe-area-inset-bottom,0px)) auto;width:calc(100vw - 24px);max-width:none;max-height:calc(100dvh - 175px - env(safe-area-inset-bottom,0px));border-radius:18px}
 .inspection-helper-header{padding:14px 16px}.inspection-helper-header h2{font-size:15px}
 .inspection-helper .service-chooser{padding:18px}
}

/* A welcoming, compact homepage FAQ in Sunday's existing palette. */
#faq.faq{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr);gap:clamp(32px,5vw,72px);align-items:start;border-top:0;padding-top:64px;padding-bottom:64px}
#faq .home-faq-intro{background:var(--blue);border-radius:24px;padding:32px;min-width:0}
#faq .home-faq-intro .eyebrow{font-size:10px;letter-spacing:1.7px;margin:0 0 18px}
#faq .home-faq-intro h2{font-family:var(--display);font-size:clamp(30px,3vw,42px);font-weight:700;line-height:1.13;letter-spacing:-.02em;text-transform:none;margin:0 0 18px}
#faq .home-faq-intro>p:not(.eyebrow){font-size:15px;line-height:1.75;margin:0;max-width:32ch}
#faq .faq-more{font-size:13px;margin-top:24px;text-underline-offset:5px}
#faq .faq-more span{display:inline-block;margin-left:6px}
#faq .home-faq-list{min-width:0}
#faq details{padding:20px 0;border-color:#142d4826}
#faq summary{font-size:15px;line-height:1.6;align-items:center;gap:18px}
#faq summary:after{display:flex;align-items:center;justify-content:center;flex:0 0 28px;height:28px;border-radius:50%;background:var(--blue);font-size:20px}
#faq details p{line-height:1.8;font-size:14px;margin-top:14px;padding-right:32px}
@media(max-width:700px){#faq.faq{grid-template-columns:1fr;gap:28px;padding-top:40px;padding-bottom:40px}#faq .home-faq-intro{padding:26px;border-radius:20px}#faq .home-faq-intro h2{font-size:32px}#faq .home-faq-intro>p:not(.eyebrow){max-width:none}#faq details{padding:18px 0}}

/* Compact navigation remains available throughout each page. */
.nav,.location-page .nav{position:fixed;top:0;left:0;right:0;z-index:30;min-height:80px;padding:8px 4%;background:var(--cream);border-top:0;border-bottom:1px solid #142d4818;box-shadow:0 3px 14px #142d480a}
.nav .logo>.logo-crop{width:180px}
.location-page{padding-top:81px}
html{scroll-padding-top:100px}
.nav nav.open{max-height:calc(100dvh - 110px);overflow-y:auto;overscroll-behavior:contain}
@media(max-width:760px){.nav,.location-page .nav{min-height:66px;padding:6px 5%}.nav .logo>.logo-crop{width:148px}.location-page{padding-top:67px}html{scroll-padding-top:85px}.nav nav.open{top:calc(100% + 6px);max-height:calc(100dvh - 155px);padding:20px;gap:16px}}

/* Text-only help launcher with balanced spacing. */
.inspection-helper-launcher{padding:12px 20px;justify-content:center}

/* Quiet analytics controls, separate from the inspection helper. */
.analytics-disclosure{font-size:11px;line-height:1.7;margin:20px 0 0;max-width:900px;color:var(--cream)}
.analytics-disclosure a,.analytics-disclosure button{color:inherit;text-decoration:underline;text-underline-offset:3px}
.analytics-disclosure button{border:0;background:none;font:inherit;padding:0;cursor:pointer}
.analytics-notice{position:fixed;left:18px;bottom:18px;z-index:27;width:min(350px,calc(100vw - 36px));background:var(--cream);color:var(--navy);border:1px solid #142d4830;border-radius:16px;box-shadow:0 6px 24px #142d4820;padding:18px}
.analytics-notice[hidden]{display:none}
.analytics-notice p{font-size:13px;line-height:1.6;margin:0 0 10px}
.analytics-notice>a{font-size:12px;color:var(--navy);text-underline-offset:3px}
.analytics-notice-actions{display:flex;gap:10px;margin-top:14px}
.analytics-notice-actions button{border:1px solid var(--navy);border-radius:999px;padding:9px 13px;min-height:42px;background:var(--cream);color:var(--navy);font-size:12px;font-weight:600}
.analytics-notice-actions button:first-child{background:var(--navy);color:var(--cream)}
.analytics-notice button:focus-visible,.analytics-notice a:focus-visible{outline:3px solid var(--navy);outline-offset:3px}
.analytics-notice-actions button:disabled{opacity:.5;cursor:default}
.privacy-page{max-width:1000px;margin:auto;padding-top:48px;padding-bottom:60px}
.privacy-page h1{font-size:clamp(34px,4vw,52px)}
.privacy-page h2{font-size:28px;margin-top:32px;margin-bottom:16px}
.privacy-page p{font-size:15px;line-height:1.8}
.privacy-page .button{background:var(--navy);color:var(--cream);box-shadow:none;font-size:14px}
@media(max-width:760px){.analytics-notice{bottom:calc(144px + env(safe-area-inset-bottom,0px));left:12px;width:calc(100vw - 24px);padding:16px}.privacy-page{padding-top:30px}.privacy-page h2{font-size:25px}}

/* Compact calculator introduction keeps the form in focus. */
.pricing-page .quote-section{padding-top:40px;padding-bottom:40px}
.pricing-page .quote-section>h2{font-family:Epilogue,Arial,sans-serif;font-size:clamp(24px,2.4vw,30px);font-weight:700;line-height:1.3;letter-spacing:-.02em;text-transform:none;max-width:none;margin:0 0 10px;color:var(--navy);-webkit-text-fill-color:var(--navy);-webkit-text-stroke:0;text-shadow:none}
.pricing-page .quote-section>p{font-size:15px;line-height:1.6;margin-bottom:0}
.pricing-page .quote-section .quote-layout{margin-top:24px}

/* Partner page: team invitation first, focused service tabs below. */
.partners-redesign{max-width:1260px;margin:0 auto;padding:155px 6% 52px}
.partners-redesign h1{font-size:clamp(32px,4vw,48px);line-height:1.12;letter-spacing:0;margin:0 0 14px;max-width:100%}
.partners-redesign .partner-lead{font-size:17px;margin:0 0 36px;line-height:1.65}
.team-invitation{background:#f6f0e2;padding:30px;border-radius:16px}
.partners-redesign h2{font-size:clamp(25px,2.7vw,32px);line-height:1.2;letter-spacing:0;margin:0 0 25px}
.team-invitation>h2{max-width:700px}
.team-offers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.offer-number{display:block;font-size:12px;font-weight:700;color:#526276;margin-bottom:10px}
.team-offers h3{font-family:Epilogue,Arial,sans-serif;font-size:17px;font-weight:700;line-height:1.4;letter-spacing:0;margin:0 0 10px}
.team-offers p{font-size:14px;line-height:1.8;margin:0}
.team-invite-action{display:flex;gap:24px;justify-content:space-between;align-items:center;margin-top:26px}
.team-invite-action p{font-size:14px;margin:0;max-width:560px}
.team-invite-action .button{flex-shrink:0;box-shadow:none;font-size:14px;min-height:48px;padding:12px 24px}
.partner-clients{margin-top:48px}
.partners-redesign .partner-options{display:flex;justify-content:flex-start;gap:24px;margin:0;border-bottom:1px solid #142d4825;flex-wrap:nowrap}
.partners-redesign .partner-options button{border:0;border-bottom:3px solid transparent;border-radius:0;background:none;color:var(--navy);padding:12px 0;font-size:14px;text-align:left;line-height:1.4}
.partners-redesign .partner-options button[aria-selected=true]{background:none;color:var(--navy);border-bottom-color:var(--blue);font-weight:800}
.partner-client-layout{display:grid;grid-template-columns:1.4fr 1fr;gap:40px;margin-top:25px;align-items:start}
.partners-redesign #partner-copy,.partner-audience-panel{min-height:0;max-width:none;margin:0;font-size:15px;line-height:1.8}
.partner-audience-panel[hidden]{display:none}
.partner-audience-panel p{margin:0 0 15px}
.partner-audience-panel a,.partner-quick-links a{font-size:14px;font-weight:700;text-decoration-thickness:2px;text-decoration-color:var(--blue);text-underline-offset:6px}
.partner-service-notes{list-style:none;padding:0;margin:0;font-size:14px;line-height:1.7}
.partner-service-notes li{position:relative;padding-left:24px;margin-bottom:12px}
.partner-service-notes li::before{content:'✓';position:absolute;left:0;font-weight:800;color:var(--navy)}
.partner-lab-note{font-size:12px;margin:17px 0 0;color:#526276}
.partner-quick-links{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:38px;padding-top:25px;border-top:1px solid #142d4820;flex-wrap:wrap}
.partners-redesign .partner-quick-links h2{font-size:22px;margin:0}
@media(max-width:760px){.partners-redesign{padding:125px 6% 38px}.partners-redesign .partner-lead{font-size:15px;margin-bottom:25px}.team-invitation{padding:23px 20px}.team-offers{grid-template-columns:1fr;gap:22px}.offer-number{display:none}.team-invite-action{align-items:flex-start;flex-direction:column;gap:16px}.partner-clients{margin-top:34px}.partners-redesign .partner-options{gap:16px}.partners-redesign .partner-options button{flex:1;min-width:0;font-size:12px}.partner-client-layout{grid-template-columns:1fr;gap:22px}.partner-quick-links{gap:18px}.partners-redesign .partner-quick-links h2{width:100%}}

.area-hero h1.area-hub-heading{font-family:Epilogue,Arial,sans-serif;font-size:clamp(24px,2.5vw,32px);font-weight:700;line-height:1.4;letter-spacing:0;text-transform:none;max-width:900px;margin:20px 0 22px;color:var(--navy);-webkit-text-fill-color:var(--navy);-webkit-text-stroke:0;text-shadow:none}

.compact-area-list{padding-top:38px;padding-bottom:48px}.compact-area-list>h1{font-family:Epilogue,Arial,sans-serif;font-size:clamp(26px,3vw,34px);font-weight:700;line-height:1.3;letter-spacing:0;margin:0 0 26px;text-transform:none}@media(max-width:760px){.compact-area-list{padding-top:28px}}

.welcome .round-image.doug-portrait{overflow:hidden}.welcome .round-image.doug-portrait img{object-position:50% 36%}.about-round-image.doug-portrait{aspect-ratio:4/5;border-radius:28px;max-width:500px;justify-self:center;width:100%}.about-round-image.doug-portrait img{object-position:50% 40%;border-radius:28px}

/* Clear, compact inspection detail pages. */
.service-detail-page .service-hero{background:var(--cream);padding-top:28px;padding-bottom:32px}
.service-detail-page .service-hero .breadcrumbs{font-size:12px;line-height:1.6;margin-bottom:20px}
.service-detail-page .service-hero h1{font-family:Epilogue,Arial,sans-serif;font-size:clamp(27px,3vw,38px);font-weight:750;line-height:1.25;letter-spacing:-.02em;text-transform:none;max-width:1000px;margin:0 0 14px;color:var(--navy);-webkit-text-fill-color:var(--navy);-webkit-text-stroke:0;text-shadow:none}
.service-detail-page .service-hero .area-intro{font-size:16px;line-height:1.75;max-width:900px;margin:0 0 12px}
.service-detail-page .service-hero .actions{margin-top:20px;gap:16px}
.service-detail-page .service-hero .button{font-size:14px;padding:12px 24px;min-height:46px;box-shadow:none}
.service-detail-page main>.section:not(.service-hero){padding-top:40px;padding-bottom:40px}
.service-detail-page .service-facts{background:#f5f0e6}
.service-detail-page main h2{font-family:Epilogue,Arial,sans-serif;font-size:clamp(23px,2.4vw,30px);font-weight:700;line-height:1.3;letter-spacing:0;margin-bottom:24px;text-transform:none}
.service-detail-page .service-facts>.eyebrow,.service-detail-page .service-scope>.eyebrow,.service-detail-page .service-preparation>div>.eyebrow,.service-detail-page .service-coverage>.eyebrow,.service-detail-page .service-related>.eyebrow{display:none}
.service-detail-page .service-facts dl{margin-top:0;gap:28px}
.service-detail-page .service-facts dt{font-family:Epilogue,Arial,sans-serif;font-size:16px;font-weight:700;line-height:1.45;margin-bottom:8px}
.service-detail-page .service-facts dd{font-size:14px;line-height:1.8}
.service-detail-page .service-focus-grid{margin-top:24px;gap:28px}
.service-detail-page .service-focus-grid h3,.service-detail-page .service-preparation aside h3{font-family:Epilogue,Arial,sans-serif;font-size:19px;font-weight:700;line-height:1.4}
.service-detail-page .service-preparation aside{background:#f5f0e6;border:0;border-radius:14px;padding:24px}
.service-detail-page .service-faq{background:#f5f0e6}
.service-detail-page .service-related .catalog-card{border-top:1px solid #142d4825}
@media(max-width:760px){.service-detail-page .service-hero{padding-top:22px;padding-bottom:28px}.service-detail-page .service-hero .area-intro{font-size:15px}.service-detail-page main>.section:not(.service-hero){padding-top:30px;padding-bottom:30px}.service-detail-page .service-facts dl{gap:22px}.service-detail-page .service-hero .actions{align-items:flex-start}}

/* Area pages explain the actual inspection before local resources. */
.area-inspection-overview{gap:48px;padding-top:45px;padding-bottom:45px;align-items:start}
.area-inspection-overview h2{font-family:Epilogue,Arial,sans-serif;font-size:clamp(25px,2.6vw,34px);font-weight:700;line-height:1.3;letter-spacing:0;text-transform:none;margin-bottom:20px}
.area-inspection-overview p{font-size:15px;line-height:1.8;margin-bottom:18px}
.area-inspection-overview .area-scope-limit{font-size:13px;color:#526276}
.area-inspection-overview .area-concerns article{padding:0 0 21px;margin:0 0 21px;border-bottom:1px solid #142d4820}
.area-inspection-overview .area-concerns article:last-child{padding-bottom:0;margin-bottom:0;border:0}
.area-inspection-overview .area-concerns h3{font-family:Epilogue,Arial,sans-serif;font-size:19px;font-weight:700;line-height:1.4;letter-spacing:0;text-transform:none;margin-bottom:9px}
.area-inspection-overview .area-concerns p{margin-bottom:0}
.area-scope-link{font-size:14px;font-weight:700;text-underline-offset:5px}
.area-inspection-overview+.area-services{padding-top:38px;padding-bottom:45px;background:#f5f0e6}
.area-inspection-overview+.area-services>h2{font-family:Epilogue,Arial,sans-serif;font-size:clamp(25px,2.6vw,34px);font-weight:700;line-height:1.3;letter-spacing:0}
.area-inspection-overview+.area-services>.eyebrow{display:none}
@media(max-width:760px){.area-inspection-overview{padding-top:30px;padding-bottom:30px;gap:25px}.area-inspection-overview .area-concerns h3{font-size:18px}}

/* Booking guidance and compact mobile consent, October 2026. */
.service-booking-note,.booking-service-note{font-size:15px;line-height:1.65;max-width:850px;margin:22px auto 14px}
.service-hero .service-booking-note{margin-left:0;margin-right:0}
.custom-quote-actions{flex-wrap:wrap}.custom-quote-actions>p{flex-basis:100%;margin:0;font-weight:600}
.scheduler-loading{padding:24px 18px;background:#f5f0e6;border-radius:12px;text-align:center;font-size:16px}
.scheduler-loading[hidden]{display:none}
.contact .contact-hours{font-size:14px;line-height:1.7;max-width:680px;margin:28px auto 0}
.county-coverage{max-width:820px;margin:18px auto 28px;font-size:16px}
@media(max-width:760px){
 .analytics-notice{left:0;right:0;bottom:0;width:100%;padding:10px 14px calc(10px + env(safe-area-inset-bottom,0px));border-radius:12px 12px 0 0;z-index:29;box-shadow:0 -3px 14px #142d4818;display:grid;grid-template-columns:1fr auto;gap:5px 10px;align-items:center}
 .analytics-notice p{grid-column:1/-1;font-size:12px;line-height:1.35;margin:0}
 .analytics-notice>a{font-size:11px}.analytics-notice-actions{margin:0;gap:8px}
 .analytics-notice-actions button{min-height:44px;padding:7px 11px;font-size:11px}
 body.has-analytics-notice{padding-bottom:calc(var(--analytics-notice-height,130px) + 20px)}
 body.has-analytics-notice .mobile-conversion-bar{display:none}
 body.has-analytics-notice .inspection-helper-launcher{bottom:calc(var(--analytics-notice-height,130px) + 12px)}
 .booking-service-note{padding:0 4%;font-size:14px}.service-booking-note{font-size:14px}
}

/* Separate the starting price for larger homes from the standard tiers. */
.pricing-page .large-home-starting-price th,.pricing-page .large-home-starting-price td{border-top:2px solid #142d4840;padding-top:25px;padding-bottom:22px}
.large-home-pricing-note{font-size:14px;line-height:1.6;margin:14px 0 28px}

/* Pricing closing CTA: navy, ivory and a focused butter-yellow booking action. */
.pricing-page .price-booking{background:#142d48;color:#fffbed;border-bottom:1px solid #fffbed26}
.pricing-page .price-booking .service-script{color:#f8df86}
.pricing-page .price-booking h2{color:#fffbed;-webkit-text-stroke:0;text-shadow:none}
.pricing-page .price-booking>p:not(.service-script){color:#eeeadd}
.pricing-page .price-booking .button{box-shadow:none;transition:background-color .2s,color .2s,border-color .2s,transform .2s}
.pricing-page .price-booking .button.peach{background:#f8df86;color:#142d48;border-color:#f8df86;box-shadow:0 4px 0 #0b1e32}
.pricing-page .price-booking .button.cream{background:transparent;color:#fffbed;border:1px solid #fffbed88}
.pricing-page .price-booking .button.peach:hover{background:#fff0b6;border-color:#fff0b6;transform:translateY(-2px)}
.pricing-page .price-booking .button.cream:hover{background:#fffbed;color:#142d48;border-color:#fffbed;transform:translateY(-2px)}
.pricing-page .price-booking .button:focus-visible{outline:3px solid #fffbed;outline-offset:5px}

/* Understated, confirmed credential beneath both hero actions. */
.hero-content>p.hero-proof{font-family:Epilogue,Arial,sans-serif;font-size:12px;font-weight:500;line-height:1.6;letter-spacing:.025em;color:var(--navy);margin:18px auto 0;max-width:560px;text-wrap:balance}
.hero-proof+.hero-quote-action{margin-top:5px}
@media(max-width:760px){.hero-content>p.hero-proof{font-size:11px;margin-top:16px;padding:0 8px}}

/* Compact credential signature in the hero, using the existing approved CPI badge. */
.hero-content .hero-credential{width:fit-content;max-width:440px;gap:14px;margin:21px auto 0;padding:0;border:0;justify-content:center;text-align:left}
.hero-content .hero-credential img{width:64px;height:64px;opacity:.9}
.hero-content .hero-credential p{font-size:13px;line-height:1.45;margin:0}
.hero-content .hero-credential strong{font-weight:600}
.hero-content .hero-credential p span{max-width:310px;font-size:11px;line-height:1.5;margin-top:4px}
.hero-credential+.hero-quote-action{margin-top:9px}
@media(max-width:760px){.hero-content .hero-credential{max-width:335px;gap:11px;margin-top:19px}.hero-content .hero-credential img{width:52px;height:52px}.hero-content .hero-credential p{font-size:12px}.hero-content .hero-credential p span{font-size:10px;max-width:245px}}

/* A quiet horizontal proof row in the hero; full credentials stay in the bio. */
.hero-content .hero-credential{max-width:100%;gap:13px;align-items:center;margin-top:21px}
.hero-content .hero-credential img{width:48px;height:48px;flex:0 0 48px}
.hero-content .hero-credential p{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:5px 16px;max-width:620px;font-size:12px}
.hero-content .hero-credential p span{display:inline-block;position:relative;white-space:nowrap;font-size:12px;line-height:1.5;margin:0;max-width:none}
.hero-content .hero-credential p span+span:before{content:'·';position:absolute;left:-10px;color:#142d4880}
@media(max-width:760px){.hero-content .hero-credential{max-width:100%;gap:10px;margin-top:19px}.hero-content .hero-credential img{width:42px;height:42px;flex-basis:42px}.hero-content .hero-credential p{gap:4px 13px;max-width:340px}.hero-content .hero-credential p span{font-size:10px}.hero-content .hero-credential p span+span:before{left:-8px}}

/* Make the hero's credentials readable and confident, without enlarging the block. */
.hero-content .hero-credential p span{font-family:Epilogue,Arial,sans-serif;font-size:14px;font-weight:700;line-height:1.5;letter-spacing:.01em;color:#142d48}
.hero-content .hero-credential img{width:52px;height:52px;flex-basis:52px;opacity:1}
.hero-content .hero-credential p{max-width:690px;gap:6px 19px}
.hero-content .hero-credential p span+span:before{left:-12px;color:#142d48}
@media(max-width:760px){.hero-content .hero-credential p{max-width:340px;gap:5px 15px}.hero-content .hero-credential p span{font-size:12px;font-weight:700}.hero-content .hero-credential p span+span:before{left:-9px}.hero-content .hero-credential img{width:46px;height:46px;flex-basis:46px}}

/* Meet Sunday biography after removing the decorative circle. */
.about-page .about-way.about-way-text{grid-template-columns:minmax(0,1fr);max-width:1000px;gap:0}

/* Light service-area panels need navy text and links, not inherited ivory. */
.area-inspection-overview+.area-services{background:#f5f0e6;color:#142d48}
.area-inspection-overview+.area-services h2,.area-inspection-overview+.area-services h3,.area-inspection-overview+.area-services p{color:#142d48}
.area-inspection-overview+.area-services a{color:#142d48;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}
.area-inspection-overview+.area-services a:hover{text-decoration-thickness:2px}
.area-inspection-overview+.area-services a:focus-visible{outline:3px solid #142d48;outline-offset:4px}
.area-inspection-overview+.area-services .area-combo{border-top-color:#142d4833}

/* Direct mobile Book / Call / Text actions. */
@media(max-width:760px){
 .mobile-conversion-bar{grid-template-columns:minmax(0,1.7fr) minmax(0,.65fr) minmax(0,.65fr);gap:7px}
 .mobile-conversion-bar a{font-size:12px;padding:8px 6px;min-height:46px}
 body.has-analytics-notice .mobile-conversion-bar{display:grid}
}
.agent-scheduling{font-size:15px;font-weight:600;margin:0 0 26px}
/* Below 760px, use a single slim consent row at the top and reserve its space. */
@media(max-width:759.98px){
 .analytics-notice{position:fixed;top:0;bottom:auto;left:0;right:0;width:100%;border-radius:0;display:flex;justify-content:space-between;align-items:center;gap:8px;padding:5px 9px;padding-top:calc(5px + env(safe-area-inset-top,0px));z-index:28;box-shadow:0 2px 8px #142d4815}
 .analytics-notice[hidden]{display:none}
 .analytics-notice>p{display:none}
 .analytics-notice>a{font-size:11px;font-weight:600;white-space:nowrap;line-height:1.3}
 .analytics-notice-actions{display:flex;gap:6px;margin:0;flex-shrink:0}
 .analytics-notice-actions button{font-size:11px;padding:5px 10px;min-height:34px;white-space:nowrap}
 body.has-analytics-notice{padding-top:var(--analytics-notice-height,46px);padding-bottom:90px}
 body.has-analytics-notice .nav{top:var(--analytics-notice-height,46px)}
 body.has-analytics-notice .inspection-helper-launcher{bottom:calc(86px + env(safe-area-inset-bottom,0px))}
}
@media(min-width:760px) and (max-width:760px){.analytics-notice{bottom:calc(140px + env(safe-area-inset-bottom,0px))}}


.quote-result [hidden]{display:none!important}
.quote-custom-actions{display:flex;flex-wrap:wrap;gap:12px;margin:16px 0}
.quote-custom-actions .button{flex:1;min-width:90px}


/* Compact homepage supporting sections. */
#kind-words .sunday-review-track{max-width:760px;margin:0 auto}
#kind-words .sunday-review-track>.sunday-review-card{flex-basis:100%}
#standards .standard-list{gap:3.5rem}
#standards.standards{padding-bottom:65px}
@media(max-width:760px){#standards .standard-list{gap:1.5rem}#standards .standard-list article{padding:1rem 0}#standards .standard-number{font-size:4rem;margin:1rem 0}#standards.standards{padding-bottom:42px}}

/* Full-home pricing: compact branded masthead. */
.sunday-pricing-intro.pricing-horizontal{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:30px 48px;text-align:left;padding-top:30px;padding-bottom:30px}
.pricing-horizontal .pricing-brand-title{display:flex;align-items:center;gap:18px;margin:0 0 12px;max-width:none;font-family:SundayScript,cursive;font-size:44px;font-weight:400;line-height:1.2;letter-spacing:0;text-transform:none;transform:none;color:var(--navy);-webkit-text-fill-color:var(--navy);-webkit-text-stroke:0;text-shadow:none}
.pricing-brand-title img{width:175px;height:auto;flex-shrink:0}
.pricing-brand-title>span{padding-bottom:5px}
.pricing-brand-copy>p{max-width:570px;font-size:15px;line-height:1.65;margin:0}
.pricing-header-actions{max-width:460px}
.pricing-horizontal .actions{justify-content:flex-start;flex-wrap:nowrap;gap:12px;margin:0 0 12px}
.pricing-horizontal .actions .button{min-height:48px;font-size:14px;padding:12px 20px;white-space:nowrap}
.pricing-horizontal .insurance-route{font-size:12px;line-height:1.6}
@media(max-width:1000px){.sunday-pricing-intro.pricing-horizontal{grid-template-columns:1fr;gap:20px}.pricing-brand-copy>p{max-width:640px}.pricing-header-actions{max-width:none}}
@media(max-width:600px){.sunday-pricing-intro.pricing-horizontal{padding-top:24px;padding-bottom:26px;gap:20px}.pricing-horizontal .pricing-brand-title{gap:14px;font-size:36px;margin-bottom:10px}.pricing-brand-title img{width:145px}.pricing-brand-copy>p{font-size:14px}.pricing-horizontal .actions{gap:10px;flex-wrap:wrap}.pricing-horizontal .actions .button{padding:11px 16px;font-size:13px;min-height:44px}}

/* Gentle blue attention cue for the pricing header booking button. */
.pricing-horizontal .pricing-header-actions .button[href="/book/"]{background:#142d48;color:#fffbed;border-color:#142d48;animation:pricing-booking-pulse 4.5s ease-in-out infinite}
@keyframes pricing-booking-pulse{0%,100%{background:#142d48;border-color:#142d48;box-shadow:0 0 0 0 rgba(51,111,166,0)}45%{background:#234e76;border-color:#336fa6;box-shadow:0 0 0 6px rgba(51,111,166,.13)}70%{background:#142d48;border-color:#142d48;box-shadow:0 0 0 10px rgba(51,111,166,0)}}
.pricing-horizontal .pricing-header-actions .button[href="/book/"]:hover,.pricing-horizontal .pricing-header-actions .button[href="/book/"]:focus-visible{animation:none;background:#234e76;border-color:#234e76;box-shadow:0 0 0 4px rgba(51,111,166,.15)}
@media(prefers-reduced-motion:reduce){.pricing-horizontal .pricing-header-actions .button[href="/book/"]{animation:none}}

/* Homepage wordmark-inspired heading. */
@font-face{font-family:SundayHeroSerif;src:url('/fonts/sunday-hero-serif.otf') format('opentype');font-style:normal;font-weight:700;font-display:swap}
.hero-architecture .hero-statement{font-family:SundayHeroSerif,Georgia,serif;font-weight:700;letter-spacing:-.035em;line-height:1.12;color:var(--navy);-webkit-text-fill-color:var(--navy);-webkit-text-stroke:1px var(--blue);paint-order:stroke fill;text-shadow:1px 1px 0 var(--blue),2px 2px 0 var(--blue),3px 3px 0 var(--blue);padding-bottom:.06em}
@media(max-width:760px){.hero-architecture .hero-statement{font-size:clamp(29px,7.7vw,54px);-webkit-text-stroke:.75px var(--blue);text-shadow:1px 1px 0 var(--blue),2px 2px 0 var(--blue)}}

/* Compact payment information beside pricing and booking introductions. */
.payment-options{font-size:14px;line-height:1.6;margin:18px 0 0;max-width:650px;color:var(--navy)}.payment-options strong{font-size:16px}.booking-intro .payment-options{margin-left:auto;margin-right:auto}

/* Compact pricing introduction */
.pricing-focused.pricing-horizontal{gap:18px 40px;padding-top:28px;padding-bottom:24px}
.pricing-focused .pricing-brand-title{margin-bottom:8px}
.pricing-focused .pricing-header-actions{justify-self:end}
.pricing-payment-strip{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 24px;border-radius:12px;background:var(--navy);color:var(--cream);font-size:15px;line-height:1.4}
.pricing-payment-strip span{white-space:nowrap}
.pricing-payment-strip span:before{content:'✓';color:var(--peach);margin-right:9px}
.pricing-focused.pricing-horizontal>p.pricing-payment-terms{grid-column:1/-1;margin:-8px 0 0;max-width:none;font-size:12px;color:#536276}
@media(max-width:1000px){.pricing-focused.pricing-horizontal{grid-template-columns:1fr auto}.pricing-focused .pricing-brand-copy>p{max-width:420px}}
@media(max-width:700px){.pricing-focused.pricing-horizontal{grid-template-columns:1fr;gap:16px}.pricing-focused .pricing-header-actions{justify-self:start}.pricing-payment-strip{display:grid;grid-template-columns:1fr 1fr;padding:18px;gap:14px;font-size:14px}.pricing-payment-strip>strong{grid-column:1/-1}.pricing-payment-strip span:last-child{grid-column:1/-1}}
/* A section link should land on its heading, not the previous section. */
#standards{scroll-margin-top:0}

@media(max-width:700px){.pricing-payment-strip{grid-template-columns:1fr}.pricing-payment-strip span{white-space:normal}}
