/* Expressive identity: bold display lettering, sunshine yellow and a dog-led collage. */
:root{--blue:#163fdd;--ink:#082892;--yellow:#ffe129;--cream:#fffcf0;--mint:#bde8c5}h1,h2,h3,h4,legend{font-family:'Lilita One',sans-serif;font-weight:400;letter-spacing:-.025em}body{background:var(--cream)}.site-header{padding-block:16px}.site-header .brand{width:140px}.site-header nav{font-size:var(--text-small);gap:28px}.site-header nav .button{background:var(--yellow);color:var(--ink)}.button,.yellow-button{font-weight:700}.home .site-header{min-height:112px}.brand-hero{background:var(--yellow);position:relative;isolation:isolate;overflow:hidden}.brand-hero-grid{display:grid;grid-template-columns:1fr 1fr;min-height:680px;align-items:center;position:relative;z-index:2}.brand-hero-copy{padding:55px 0 80px;position:relative;z-index:4}.brand-hero-copy .eyebrow{letter-spacing:.12em;font-size:var(--text-small);margin-bottom:22px}.brand-hero-copy h1{font-size:clamp(80px,8.8vw,128px);line-height:.96;letter-spacing:-.035em;margin-bottom:28px;color:var(--blue)}.brand-hero-copy h1 span{color:var(--cream);-webkit-text-stroke:1px var(--blue);text-shadow:3px 3px 0 var(--blue)}.brand-hero-copy>p:not(.eyebrow){font-size:20px;line-height:1.5;color:var(--ink);margin-bottom:30px}.hero-quote{display:flex;gap:8px;padding:7px;background:var(--cream);border:2px solid var(--blue);border-radius:100px;max-width:475px;margin-bottom:18px}.hero-quote input{width:45%;min-width:0;margin:0;padding:14px 18px;border:0;border-radius:100px;background:none;font-size:var(--text-small);min-height:52px}.hero-quote input::placeholder{color:#697298}.hero-quote .button{flex:1;white-space:nowrap;font-size:var(--text-small);min-height:54px}.hero-secondary{font-size:var(--text-small);font-weight:600;text-underline-offset:4px}.hero-art{position:relative;height:640px;align-self:end;min-width:0}.dog-halo{position:absolute;width:560px;height:560px;background:var(--blue);border-radius:47% 53% 48% 52%/52% 46% 54% 48%;left:10%;top:35px;transform:rotate(-10deg)}.dog-halo:before{content:'';position:absolute;inset:22px;border:1px dashed #ffffff70;border-radius:inherit}.hero-dog{position:absolute;width:850px;max-width:none;height:610px;object-fit:contain;left:50%;top:20px;transform:translateX(-50%);filter:drop-shadow(0 12px 12px #09289422);z-index:2}.good-dog-sticker{position:absolute;z-index:3;right:-5px;top:20px;background:var(--cream);color:var(--blue);width:142px;height:142px;display:flex;flex-direction:column;justify-content:center;align-items:center;border-radius:50%;transform:rotate(10deg);outline:1px solid var(--blue);outline-offset:-9px}.good-dog-sticker span{font-size:var(--text-small);font-weight:700;letter-spacing:.06em}.good-dog-sticker strong{font-family:'Lilita One',sans-serif;font-size:27px;font-weight:400;line-height:1.1;text-align:center;margin-top:5px}.yard-label{position:absolute;z-index:3;bottom:79px;left:52%;transform:translateX(-50%) rotate(-5deg);background:var(--cream);color:var(--blue);border-radius:8px;padding:12px 20px;white-space:nowrap;font-weight:700;font-size:var(--text-small);letter-spacing:.05em}.hero-spark{position:absolute;width:70px;height:70px;z-index:3;fill:var(--cream)}.spark-one{top:70px;left:0;transform:rotate(15deg)}.spark-two{bottom:185px;right:-16px;width:40px;height:40px}.hero-wave{position:absolute;z-index:5;bottom:-1px;left:0;width:100%;height:70px;fill:var(--cream)}.hero-cloud{position:absolute;background:#fff9bf;border-radius:200px;height:65px;width:220px;opacity:.65;z-index:0}.hero-cloud:before,.hero-cloud:after{content:'';position:absolute;border-radius:50%;background:inherit;bottom:0}.hero-cloud:before{width:100px;height:100px;left:28px}.hero-cloud:after{width:80px;height:80px;right:25px}.cloud-one{top:0;left:42%;transform:scale(.7)}.cloud-two{bottom:90px;left:-65px;transform:scale(1.3)}.promise-strip{font-size:var(--text-small);gap:70px;border-bottom:0;padding:22px 0 0;color:var(--blue)}.promise-strip span:before{content:'';display:inline-block;width:6px;height:6px;background:var(--blue);border-radius:50%;margin-right:12px;vertical-align:middle}.home>.section{padding-block:80px}.section-heading h2{font-size:clamp(44px,5vw,65px);line-height:1}.section-heading .eyebrow{color:var(--blue)}.image-services{gap:30px}.image-services>a{border:0;position:relative;border-radius:38px;background:#dfeee2;overflow:visible}.image-services>a:first-child{border-radius:42px 42px 42px 8px}.image-services>a:last-child{background:#dce6ff;border-radius:42px 42px 8px 42px}.image-services>a>img{border-radius:34px 34px 0 0;aspect-ratio:1.45;object-fit:cover}.image-services>a>div{padding:30px 34px 32px}.image-services>a h3{font-size:36px;line-height:1.05;max-width:330px;margin-bottom:12px}.image-services>a span{display:block;color:var(--ink);font-size:var(--text-small)}.image-services>a .eyebrow{font-size:var(--text-small)}.pricing{background:var(--blue);color:var(--cream);position:relative}.pricing:before,.pricing:after{content:'';position:absolute;height:23px;left:0;right:0;background:radial-gradient(24px at 50% 24px,transparent 23px,var(--cream) 24px) 0 0/48px 24px repeat-x;top:-1px}.pricing:after{top:auto;bottom:-1px;transform:rotate(180deg)}.pricing .section-heading .eyebrow,.pricing .section-heading>p{color:var(--cream)}.pricing .section-heading h2{color:var(--yellow)}.plans{gap:22px}.plan{color:var(--ink);background:var(--cream);border:0;border-radius:32px;min-height:360px;padding:36px 32px}.plan h3{font-size:36px}.plan .price{font-family:'Lilita One',sans-serif;font-weight:400;font-size:78px;line-height:1;letter-spacing:-.035em}.plan .price span{font-family:'DM Sans',sans-serif;font-size:var(--text-small);margin-bottom:25px;line-height:1.5}.plan.featured{background:var(--yellow);color:var(--ink);border:0;position:relative}.plan.featured .button{background:var(--blue);color:var(--cream)}.plan-stamp{background:var(--cream);color:var(--blue);padding:6px 14px;position:absolute;right:22px;top:-12px;transform:rotate(4deg);border:1px solid var(--blue)}.plan .eyebrow{font-size:var(--text-small)}.plan .button{min-height:50px;font-size:var(--text-small)}.pricing-note{color:#e6ebff;font-size:var(--text-small);margin-top:28px;max-width:950px}.addon-band{background:#dce6ff;padding-block:40px;color:var(--ink)}.addon-band h2{font-size:44px}.addon-band p{font-size:var(--text-small)}.addon-band .button{background:var(--blue);color:white}.steps h3{font-size:33px}.steps p{font-size:var(--text-small)}.number{font-family:'Lilita One',sans-serif;font-size:34px;background:var(--yellow);border-radius:50%;width:70px;height:70px;display:grid;place-content:center}.faq-grid h2{font-size:60px}.faq-grid summary{font-size:var(--text-small);font-weight:600}.faq-grid details{border-color:#ccd2e0}.closing-cta{background:var(--yellow);color:var(--blue);position:relative;border-radius:50px;overflow:hidden;padding:56px 64px;margin-top:25px;margin-bottom:80px}.closing-cta h2{font-size:80px;line-height:.96}.closing-cta img{width:260px;max-height:300px;object-fit:contain}.closing-cta .button{background:var(--blue);color:var(--cream)}.closing-cta:before{content:'';position:absolute;width:360px;height:360px;border-radius:50%;background:#f6d508;right:-20px;bottom:-100px;z-index:0}.closing-cta>div{position:static;z-index:1}.closing-cta>img{position:relative;z-index:1}.closing-cta .eyebrow{font-size:var(--text-small);color:var(--ink)}footer{background:var(--blue);color:var(--cream);padding-top:48px}.footer-top .brand{background:var(--cream);padding:12px;width:140px;border-radius:24px}.footer-top p{font-size:20px;font-weight:600}.footer-bottom{border-color:#ffffff30;color:#e8edff}.photo-hero{background:var(--yellow);color:var(--blue)}.photo-hero .hero-copy h1 span{color:var(--blue)}.photo-hero .hero-copy p:not(.eyebrow){color:var(--ink)}.photo-hero .hero-copy .yellow-button{background:var(--blue);color:white}.photo-hero figure{border-radius:100px 0 0 100px;overflow:hidden}.photo-hero .hero-copy h1{font-size:82px;line-height:.98}.quote-heading h1,.portal-heading h1{font-size:64px;line-height:1}.quote-wizard{border-color:#d3d7e5;border-radius:30px}.price-result{background:var(--yellow);color:var(--blue)}.price-result small{color:#284289}.result-price{font-family:'Lilita One',sans-serif;font-weight:400}.selected-summary,.account-callout{background:#fff8c7;color:var(--ink)}.status-pill{color:var(--blue)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.booking-card h3{font-size:30px}
@media(max-width:1100px){.brand-hero-grid{min-height:620px}.brand-hero-copy h1{font-size:100px}.brand-hero-copy>p:not(.eyebrow){font-size:18px}.hero-art{height:600px}.dog-halo{width:480px;height:500px;left:5%;top:40px}.hero-dog{width:730px;height:550px;top:35px}.good-dog-sticker{right:0;top:12px;width:116px;height:116px}.good-dog-sticker strong{font-size:23px}.yard-label{bottom:75px}.site-header nav{gap:22px}.hero-quote input{padding-left:12px}.hero-quote .button{padding-inline:18px;font-size:var(--text-small)}}
@media(max-width:800px){.brand-hero-grid{grid-template-columns:1fr 1fr;min-height:530px}.brand-hero-copy h1{font-size:79px}.brand-hero-copy .eyebrow{font-size:var(--text-small)}.brand-hero-copy>p:not(.eyebrow){font-size:var(--text-small)}.hero-art{height:500px}.dog-halo{width:390px;height:410px;left:0}.hero-dog{width:610px;height:480px;top:0}.good-dog-sticker{width:100px;height:100px;right:-10px}.good-dog-sticker strong{font-size:21px}.hero-spark{width:46px;height:46px}.spark-one{left:10px;top:60px}.yard-label{font-size:var(--text-small);bottom:65px;padding:10px 12px}.hero-quote{display:block;border-radius:20px;padding:8px;max-width:290px}.hero-quote input{width:100%;padding:9px 12px;min-height:40px}.hero-quote .button{width:100%;min-height:45px}.hero-secondary{font-size:var(--text-small);max-width:260px;display:block}.promise-strip{gap:25px;font-size:var(--text-small)}.plan{padding:30px 25px}.plan .price{font-size:65px}.closing-cta h2{font-size:64px}.photo-hero .hero-copy h1{font-size:65px}}
@media(max-width:650px){.site-header .brand{width:99px}.home .site-header{min-height:90px}.site-header nav{gap:12px;font-size:var(--text-small)}.brand-hero-grid{display:block;min-height:0}.brand-hero-copy{padding:30px 5px 0}.brand-hero-copy .eyebrow{font-size:var(--text-small);margin-bottom:18px}.brand-hero-copy h1{font-size:86px;line-height:.95;letter-spacing:-.035em;margin-bottom:20px;max-width:500px}.brand-hero-copy>p:not(.eyebrow){font-size:var(--text-small);margin-bottom:22px}.hero-quote{display:flex;border-radius:100px;max-width:440px;padding:6px;gap:3px;margin-bottom:12px}.hero-quote input{width:45%;min-height:46px;font-size:var(--text-small);padding-left:13px}.hero-quote .button{width:auto;min-height:48px;font-size:var(--text-small);padding-inline:18px}.hero-secondary{max-width:none;font-size:var(--text-small)}.hero-art{height:385px;margin:16px -16px 0}.dog-halo{width:330px;height:325px;left:50%;top:5px;transform:translateX(-50%) rotate(-8deg)}.hero-dog{width:590px;height:355px;top:0;left:50%}.good-dog-sticker{width:94px;height:94px;right:20px;top:0;outline-offset:-7px}.good-dog-sticker span{font-size:var(--text-small)}.good-dog-sticker strong{font-size:20px}.spark-one{left:30px;top:40px;width:43px;height:43px}.spark-two{right:30px;bottom:145px;width:27px;height:27px}.yard-label{bottom:60px;font-size:var(--text-small);left:52%;padding:9px 13px}.hero-wave{height:40px}.cloud-one{left:70%;top:45px}.cloud-two{display:none}.promise-strip{gap:12px;font-size:var(--text-small);padding-top:16px}.promise-strip span:before{width:4px;height:4px;margin-right:6px}.section-heading h2{font-size:48px}.section-heading>p{font-size:var(--text-small)}.section-heading .eyebrow{font-size:var(--text-small)}.image-services{gap:24px}.image-services>a>img{aspect-ratio:1.5}.image-services>a>div{padding:25px}.image-services>a h3{font-size:34px;max-width:270px}.image-services>a span{font-size:var(--text-small)}.plan{min-height:0;border-radius:27px;padding:30px}.plan h3{font-size:36px}.plan .price{font-size:74px}.plan .price span{margin-bottom:20px}.plan.featured{order:0}.plans{gap:22px}.addon-band{padding-block:35px}.addon-band h2{font-size:41px}.addon-band .button{margin-top:18px}.steps h3{font-size:32px}.number{width:54px;height:54px;font-size:28px}.faq-grid h2{font-size:48px}.closing-cta{padding:38px 28px;border-radius:32px;margin-block:10px 55px;min-height:300px}.closing-cta h2{font-size:64px;max-width:250px}.closing-cta .eyebrow{max-width:230px;line-height:1.6;font-size:var(--text-small)}.closing-cta img{position:absolute;width:150px;bottom:10px;right:0;margin:0}.closing-cta:before{width:220px;height:220px;right:-70px;bottom:-70px}.closing-cta .button{font-size:var(--text-small);padding:14px 22px}.footer-top p{font-size:var(--text-small)}.footer-top .brand{width:110px}.photo-hero .hero-copy h1{font-size:60px}.photo-hero figure{border-radius:50px 50px 0 0}.quote-heading h1,.portal-heading h1{font-size:47px}.quote-heading h1 br{display:none}.portal-heading h1{font-size:42px}.quote-wizard{border-radius:24px}.booking-card h3{font-size:27px}}
@media(max-width:370px){.brand-hero-copy h1{font-size:76px}.site-header nav .button{padding-inline:12px;font-size:var(--text-small)}.site-header .brand{width:90px}.promise-strip{font-size:var(--text-small);gap:8px}.hero-dog{width:550px}.good-dog-sticker{right:10px}}
.home .brand-hero-copy h1{font-size:clamp(76px,7.6vw,110px)}.home .closing-cta h2{font-size:70px}.home .hero-dog{width:650px;height:570px;top:35px}.home .dog-halo{width:530px;height:535px;top:40px}.home .yard-label{bottom:76px}.home .good-dog-sticker{right:0;top:20px}.home .hero-art{height:640px}.home .image-services>a:first-child>img{object-position:center 60%}@media(max-width:1100px){.home .brand-hero-copy h1{font-size:88px}.home .hero-dog{width:560px;height:530px;top:35px}.home .dog-halo{width:465px;height:490px}.home .hero-art{height:600px}}@media(max-width:800px){.home .brand-hero-copy h1{font-size:72px}.home .hero-dog{width:460px;height:450px;top:20px}.home .dog-halo{width:370px;height:410px}.home .hero-art{height:500px}}@media(max-width:650px){.home .brand-hero-copy h1{font-size:clamp(65px,15vw,94px)}.home .brand-hero-copy>p:not(.eyebrow){font-size:var(--text-small)}.home .hero-art{height:405px}.home .hero-dog{width:405px;height:365px;top:8px}.home .dog-halo{width:330px;height:325px;top:15px}.home .good-dog-sticker{top:8px;right:15px}.home .yard-label{bottom:62px}.home .closing-cta h2{font-size:54px;max-width:235px}}
.home .brand-hero-copy h1 span{font-size:.8em;white-space:nowrap}.home .brand-hero-copy h1{max-width:none}.home .brand-hero-copy{padding-right:10px}

/* Keep service photos compact instead of using their HTML source height. */
.home .image-services>a>img{height:clamp(200px,23vw,280px);aspect-ratio:auto}.home .image-services>a:last-child>img{object-position:center 75%}

.home .image-services>a:first-child>img{object-position:center 20%}

/* Blend the lower pricing scallops into the deodorizing section. */
.pricing:after{background:radial-gradient(24px at 50% 24px,transparent 23px,#dce6ff 24px) 0 0/48px 24px repeat-x}

/* Let the upper scallops reveal the residential hero beneath them. */
.photo-hero+.pricing{margin-top:-23px;z-index:1;background:linear-gradient(var(--blue),var(--blue)) 0 22px/100% calc(100% - 22px) no-repeat}
.photo-hero+.pricing:before{background:radial-gradient(24px at 50% 24px,var(--blue) 23px,transparent 24px) 0 0/48px 24px repeat-x}

/* Shared reading sizes across marketing, forms, and account pages. */
:root{--text-base:18px;--text-small:16px;--text-caption:14px}
body{font-size:var(--text-base)}
:is(.brand-hero-copy,.home .brand-hero-copy,.hero-copy,.photo-hero .hero-copy)>p:not(.eyebrow),.section-heading>p,.plan p,.steps p,.addon-band p,.faq-grid details p,.sector-link p,.property-detail p,.quote-heading p,.portal-heading p{font-size:var(--text-base)}
:is(.eyebrow,.brand-hero-copy .eyebrow,.section-heading .eyebrow,.image-services>a .eyebrow,.plan .eyebrow,.closing-cta .eyebrow){font-size:var(--text-caption);line-height:1.5}
.site-header nav,.site-header nav .button,.hero-quote .button,.plan .button,.wizard-actions>.button,.booking-actions .button,.closing-cta .button{font-size:var(--text-small)}
input:not([type=checkbox]),select,textarea,label,.booking-card dd{font-size:var(--text-base)}
.price-result small,.booking-card small{font-size:var(--text-small);line-height:1.6}
.hero-copy p:not(.eyebrow){max-width:420px}.hero-secondary{max-width:none}.pricing-note{line-height:1.65}.plan{min-height:400px}.plan .price span{line-height:1.6}
.boarding-band{display:flex;align-items:center;justify-content:space-between;gap:40px;padding:40px 48px;margin-block:0 70px;border-radius:32px;background:#dce6ff;color:var(--ink)}.boarding-band h2{font-size:clamp(40px,4vw,58px);line-height:1;margin-bottom:18px}.boarding-band p:not(.eyebrow){max-width:660px;font-size:var(--text-base);margin-bottom:0}.boarding-band .eyebrow{color:var(--blue)}.boarding-band .button{flex-shrink:0}
@media(max-width:800px){.site-header nav{gap:14px}.hero-quote .button{padding-inline:16px}.hero-quote input{font-size:var(--text-small)}.boarding-band{gap:24px;padding:32px}}
@media(max-width:650px){.site-header nav{flex-wrap:wrap;justify-content:flex-end;max-width:calc(100% - 110px);gap:6px 12px}.site-header nav .button{min-height:44px;font-size:var(--text-small)}.site-header nav .portal-link{white-space:nowrap}.site-header{gap:10px}.promise-strip{gap:10px 20px;justify-content:flex-start}.plan{min-height:0}.hero-quote{max-width:100%}.hero-quote .button{font-size:var(--text-small);padding-inline:16px}.hero-quote input{font-size:var(--text-small);padding-left:10px}.closing-cta .eyebrow{max-width:100%;padding-right:20px}.boarding-band{display:block;padding:30px 26px;margin-bottom:50px}.boarding-band .button{margin-top:24px}.footer-bottom{flex-wrap:wrap}}

.good-dog-sticker span{font-size:var(--text-caption)}.boarding-page .photo-hero .hero-copy h1{font-size:clamp(56px,5.8vw,82px);max-width:none}
