:root{--ink:#111111;--teal:#1558a5;--teal-dark:#104784;--muted:#555555;--cream:#ffffff;--mint:#f3f7fc;--line:#e2e6ec;--white:#fff;--sans:"DM Sans",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--serif:var(--sans);--radius:20px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--cream);font:16px/1.7 var(--sans);color:var(--ink);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,select{font:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img{display:block;max-width:100%;height:auto}svg{display:block}button{color:inherit}h1,h2,h3,h4,p{margin:0}h1,h2{font-family:var(--serif);font-weight:400;line-height:1.13;letter-spacing:-.05em}h1{font-size:clamp(42px,4.65vw,68px)}h2{font-size:clamp(33px,3.35vw,48px)}h3{font-size:21px;letter-spacing:-.035em;line-height:1.35;font-weight:500}p{color:var(--muted)}p+p{margin-top:18px}em{color:var(--teal);font-weight:400}a:focus-visible,button:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #1558a5;outline-offset:5px}.wrap{width:min(1200px,calc(100% - 96px));margin-inline:auto}.section{padding:100px 0}.eyebrow{display:block;font-size:11px;font-weight:600;letter-spacing:.17em;text-transform:uppercase;line-height:1.6;color:var(--teal)}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:42px}.section-heading h2{margin-top:12px;max-width:650px}.section-heading>p{max-width:365px;font-size:15px}.section-heading .text-link{margin-bottom:5px}.icon{width:22px;height:22px;flex:none}.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;border:1px solid transparent;border-radius:8px;padding:14px 23px;background:var(--teal);color:white;font-size:13px;font-weight:600;line-height:1.4;transition:background .18s,transform .18s,box-shadow .18s}.button:hover{background:var(--teal-dark);transform:translateY(-2px);box-shadow:0 6px 20px #1111110d}.button.secondary{background:transparent;border-color:#cbd3df;color:var(--ink)}.button.secondary:hover{background:var(--mint)}.button.white{background:#fff;color:var(--ink)}.button.white:hover{background:#f3f7fc}.button.outline-white{background:transparent;border-color:#ffffff5e;color:white}.button.outline-white:hover{background:#ffffff0f}.button .icon{width:18px;height:18px}.button-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.text-link{display:inline-flex;align-items:center;gap:12px;font-size:13px;font-weight:600;color:var(--teal);border-bottom:1px solid #1558a55c;padding-bottom:3px}.text-link .icon{width:17px;height:17px}.text-link:hover{color:var(--ink);border-color:var(--ink)}.skip{position:fixed;left:24px;top:-90px;padding:12px 22px;background:var(--ink);color:white;z-index:100}.skip:focus{top:15px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.topline{height:33px;background:var(--ink);color:#e7eef8;font-size:10px;letter-spacing:.035em}.topline .wrap{height:100%;display:flex;justify-content:space-between;align-items:center}.topline a{color:white;display:flex;align-items:center;gap:7px}.topline .icon{width:11px;height:11px}.site-header{position:sticky;top:0;z-index:40;background:#fffffff7;border-bottom:1px solid var(--line);backdrop-filter:blur(15px)}.nav-wrap{display:flex;align-items:center;justify-content:space-between;height:91px;gap:28px}.brand{display:flex;align-items:center;gap:11px;flex:none}.brand-icon{width:41px;height:45px;color:var(--teal)}.brand-name{font:400 29px/1 var(--serif);letter-spacing:-.04em;color:var(--ink)}.brand-caption{display:block;font-size:8px;letter-spacing:.14em;text-transform:uppercase;font-weight:500;margin-top:7px;line-height:1.3}.main-nav{display:flex;align-items:center;gap:28px}.main-nav>a{font-size:12px;font-weight:500;color:#454545;transition:color .2s}.main-nav>a:hover,.main-nav>a[aria-current=page]{color:var(--teal)}.main-nav .button{color:white;padding:11px 18px;min-height:43px;font-size:11px}.menu-toggle{display:none;background:transparent;border:1px solid var(--line);border-radius:8px;width:43px;height:43px;padding:9px;align-items:center;justify-content:center}.menu-toggle .icon{width:21px;height:21px}
.home-hero{padding:57px 0 44px}.hero-grid{display:grid;grid-template-columns:.98fr 1.02fr;gap:72px;align-items:center}.hero-copy .eyebrow{display:flex;align-items:center;gap:8px;font-size:10px;letter-spacing:.15em}.hero-copy .eyebrow:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--teal)}.hero-copy h1{margin:22px 0 24px}.hero-copy h1 em{display:block;font-size:.91em}.hero-copy>p{max-width:430px;font-size:15px;line-height:1.85}.hero-copy .button-row{margin-top:28px;gap:10px}.hero-copy .button{font-size:12px;padding-inline:19px}.hero-note{display:flex;align-items:center;gap:7px;margin-top:19px;color:#666666;font-size:10px}.hero-note .icon{width:13px;height:13px;color:var(--teal)}.hero-visual{position:relative;padding-bottom:26px}.hero-image{height:493px;width:100%;object-fit:cover;object-position:48% 54%;border-radius:150px 18px 18px 18px}.photo-note{position:absolute;bottom:0;left:-28px;background:white;padding:19px 25px;border:1px solid #e2e6ec;border-radius:12px;box-shadow:0 10px 30px #11111109;display:flex;align-items:center;gap:15px;min-width:264px}.photo-note .icon{width:31px;height:31px;color:var(--teal)}.photo-note strong{display:block;font-size:13px;font-weight:500;letter-spacing:-.02em}.photo-note span{font-size:10px;color:var(--muted)}.photo-tag{position:absolute;right:18px;top:20px;background:#fffffff0;color:var(--ink);border-radius:50px;padding:7px 13px;font-size:9px;display:flex;gap:6px;align-items:center}.photo-tag .icon{width:11px;height:11px}.hero-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:35px;border-top:1px solid var(--line);padding-top:27px;gap:20px}.benefit{display:flex;align-items:center;gap:11px;font-size:11px;color:#555555}.benefit .icon{color:var(--teal);width:19px;height:19px}.hero-bottom>span{font-family:var(--serif);font-size:15px;font-style:italic;color:#777777}
.services-section{padding-top:62px;background:white}.service-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.service-card{position:relative;display:flex;flex-direction:column;padding:32px;border:1px solid var(--line);border-radius:14px;min-height:245px;background:var(--cream);transition:border-color .2s,transform .2s}.service-card:hover{border-color:#8aaee0;transform:translateY(-3px)}.service-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.service-symbol{background:#edf3fb;border-radius:50%;width:45px;height:45px;display:flex;align-items:center;justify-content:center;color:var(--teal)}.service-symbol .icon{width:23px;height:23px}.service-no{color:#777777;font-size:10px;letter-spacing:.1em}.service-card h3{font-family:var(--serif);font-size:25px;letter-spacing:-.04em;margin-bottom:9px}.service-card p{font-size:13px;max-width:390px;line-height:1.8}.card-arrow{position:absolute;right:30px;bottom:31px;color:var(--teal)}.card-arrow .icon{width:19px;height:19px}.service-card.photo-service{background:var(--ink);overflow:hidden;color:white}.photo-service>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:70% 47%;filter:brightness(.42)}.photo-service .service-top,.photo-service h3,.photo-service p,.photo-service .card-arrow{position:relative;z-index:1}.photo-service .service-top{margin-bottom:24px}.photo-service .service-symbol{background:#ffffff21;color:white}.photo-service .service-no{color:#fff}.photo-service p{color:#eeeeee;max-width:340px}.photo-service .card-arrow{position:absolute;color:white}.service-rows{margin-top:20px;border-top:1px solid var(--line)}.service-row{display:grid;grid-template-columns:46px 1fr 1.15fr 30px;align-items:center;gap:22px;padding:27px 7px;border-bottom:1px solid var(--line);transition:padding .2s,background .2s}.service-row:hover{padding-inline:15px;background:#f7f9fc}.service-row>.icon{width:25px;height:25px;color:var(--teal)}.service-row h3{font-size:16px;font-weight:500}.service-row p{font-size:12px;line-height:1.7;max-width:370px}.service-row .row-arrow{width:17px;height:17px;justify-self:end}
.about-section{background:var(--mint)}.about-grid{display:grid;grid-template-columns:.93fr 1.07fr;gap:88px;align-items:center}.about-photo{position:relative}.about-photo img{width:100%;height:460px;object-fit:cover;object-position:58% 50%;border-radius:16px 100px 16px 16px}.about-photo .photo-caption{position:absolute;left:20px;right:20px;bottom:20px;background:#ffffffed;padding:17px 20px;border-radius:8px;font:italic 16px/1.5 var(--serif);color:var(--ink)}.about-copy h2{margin:15px 0 25px}.about-copy p{font-size:14px;line-height:1.9}.about-copy .text-link{margin-top:25px}.personal-sign{font:italic 33px/1.3 var(--serif);color:var(--teal);margin-top:25px}
.how-section{background:var(--ink);color:white;padding:80px 0}.how-section .section-heading h2{font-size:40px}.how-section .eyebrow{color:#c1d9f8}.how-section .section-heading>p{color:#dce5f0}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:50px}.step-no{font:400 37px/1 var(--serif);color:#c1d9f8;display:block;border-bottom:1px solid #ffffff2c;padding-bottom:20px;margin-bottom:22px}.step h3{font-size:17px;font-weight:500;margin-bottom:12px}.step p{font-size:12px;color:#dce5f0;line-height:1.9;max-width:285px}.how-foot{font-size:11px;color:#dce5f0;margin-top:35px;border-top:1px solid #ffffff20;padding-top:22px}
.reviews-section{background:white}.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.review{background:var(--cream);padding:29px;border:1px solid #e2e6ec;border-radius:12px;display:flex;flex-direction:column;min-height:240px}.stars{color:#1558a5;letter-spacing:.12em;font-size:13px}.review blockquote{font:400 20px/1.55 var(--serif);color:var(--ink);margin:18px 0 24px;letter-spacing:-.025em;flex:1}.review-person{display:flex;align-items:center;gap:10px;font-size:11px}.initial{background:#edf3fb;color:var(--teal);width:31px;height:31px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px}.review-person strong{display:block;font-weight:500}.review-person span.place{font-size:9px;color:var(--muted)}.reviews-source{font-size:10px;margin-top:20px;color:#666666}.reviews-source a{text-decoration:underline;text-underline-offset:3px}
.coverage-section{padding:90px 0}.coverage-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:90px;align-items:center}.coverage-copy h2{margin:14px 0 21px}.coverage-copy>p{font-size:14px;max-width:430px}.zone-list{display:flex;flex-wrap:wrap;gap:8px;margin:26px 0}.zone-list span{display:flex;align-items:center;gap:5px;background:white;border:1px solid var(--line);border-radius:50px;padding:7px 12px;font-size:11px}.zone-list .icon{width:12px;height:12px;color:var(--teal)}.zone-box{padding:36px;background:white;border-radius:18px;border:1px solid var(--line)}.zone-box .zone-icon{height:52px;width:52px;background:var(--mint);color:var(--teal);border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:22px}.zone-box h3{font:400 27px/1.3 var(--serif);letter-spacing:-.04em;margin-bottom:12px}.zone-box>p{font-size:12px}.zone-control{margin-top:24px}.zone-control label{display:block;font-size:11px;font-weight:500;margin-bottom:7px}.zone-control select{width:100%;padding:12px 14px;background:var(--cream);color:var(--ink);border:1px solid #ccd5e2;border-radius:7px;font-size:13px}.zone-control .button{width:100%;margin-top:13px;font-size:12px}.zone-feedback{font-size:10px!important;min-height:35px;margin-top:12px;line-height:1.7}
.faq-section{background:white}.faq-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:100px}.faq-heading h2{margin:15px 0 23px}.faq-heading p{font-size:13px;max-width:300px}.faq-heading .text-link{margin-top:25px}.faq-list{border-top:1px solid var(--line)}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{position:relative;list-style:none;cursor:pointer;font-size:13px;font-weight:500;line-height:1.6;padding:22px 38px 22px 0}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:"+";position:absolute;right:2px;top:18px;font-size:23px;font-weight:400;color:var(--teal)}.faq-list details[open] summary:after{content:"−"}.faq-list details>p{padding:0 35px 23px 0;font-size:12px;line-height:1.9}.faq-list details a{color:var(--teal);text-decoration:underline;text-underline-offset:3px}
.contact-band{background:var(--teal);color:white;padding:69px 0}.contact-band .wrap{display:flex;align-items:center;justify-content:space-between;gap:40px}.contact-band .eyebrow{color:#dce9fc}.contact-band h2{font-size:42px;margin-top:11px}.contact-band p{font-size:12px;color:#e8effb;margin-top:17px}.contact-band .button-row{flex:none}.site-footer{background:#f7f9fc;padding:57px 0 28px}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:45px}.footer-brand p{font-size:11px;max-width:220px;margin-top:18px;line-height:1.9}.footer-heading{display:block;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.1em;margin-bottom:16px}.footer-links{list-style:none;margin:0;padding:0}.footer-links li+li{margin-top:9px}.footer-links a{font-size:11px;color:#555555}.footer-links a:hover{text-decoration:underline;color:var(--teal)}.footer-phone{font:400 23px/1.4 var(--serif);color:var(--ink)}.footer-contact>p{font-size:10px;margin-top:7px}.footer-contact>a.text-link{font-size:11px;margin-top:15px}.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid #e2e6ec;margin-top:41px;padding-top:23px;font-size:9px;color:#666666}.footer-bottom a{text-decoration:underline;text-underline-offset:4px}.mobile-contact{display:none}
.breadcrumb{font-size:10px;color:#666666;padding-top:30px;display:flex;gap:9px;align-items:center}.breadcrumb a:hover{color:var(--teal);text-decoration:underline}.inner-hero{padding:45px 0 65px}.inner-hero .eyebrow{margin-bottom:18px}.inner-hero h1{max-width:900px;font-size:clamp(40px,4.5vw,62px)}.inner-hero>p{font-size:16px;max-width:680px;margin-top:25px;line-height:1.85}.inner-hero .button-row{margin-top:28px}.inner-body{background:white;padding:70px 0 90px}.content-with-aside{display:grid;grid-template-columns:1.45fr .7fr;gap:95px;align-items:start}.prose h2{font-size:33px;margin:0 0 23px;letter-spacing:-.04em}.prose h3{font-size:20px;margin:32px 0 12px}.prose p,.prose li{font-size:14px;line-height:1.95}.prose ul{padding-left:19px;color:var(--muted);margin:17px 0 27px}.prose li{padding-left:5px;margin-bottom:10px}.prose-section+.prose-section{margin-top:46px;padding-top:40px;border-top:1px solid var(--line)}.prose .text-link{margin-top:20px}.inline-note{background:var(--mint);border-left:3px solid var(--teal);padding:21px 24px;border-radius:0 8px 8px 0;margin-top:27px;font-size:12px!important;color:var(--ink)}.urgent-note{background:#f3f7fc;border-left-color:#1558a5}.aside-card{position:sticky;top:120px;background:var(--cream);border:1px solid var(--line);border-radius:15px;padding:29px}.aside-card>.icon{width:29px;height:29px;color:var(--teal);margin-bottom:23px}.aside-card h3{font:400 25px/1.35 var(--serif);margin-bottom:15px}.aside-card p{font-size:12px}.aside-card .button{width:100%;margin-top:14px;font-size:11px}.aside-card .small{font-size:10px;margin-top:17px}.wide-photo{width:100%;height:350px;object-fit:cover;border-radius:16px;object-position:50% 50%;margin-bottom:40px}.inner-services{background:white;padding:65px 0 95px}.full-services{display:grid;grid-template-columns:1fr 1fr;gap:24px}.full-service{padding:34px;border:1px solid var(--line);border-radius:14px;background:var(--cream);scroll-margin-top:120px}.full-service .service-symbol{margin-bottom:24px}.full-service h2{font-size:29px;margin-bottom:16px}.full-service p{font-size:13px;line-height:1.9}.full-service .text-link{margin-top:22px;font-size:12px}.full-service small{display:block;font-size:10px;line-height:1.8;color:#666666;margin-top:15px}.contact-page-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.contact-method{background:var(--cream);border:1px solid var(--line);border-radius:16px;padding:32px}.contact-method>.icon{width:30px;height:30px;color:var(--teal);margin-bottom:25px}.contact-method h2{font-size:30px;margin-bottom:16px}.contact-method p{font-size:13px}.contact-method .big-phone{font:400 33px/1.4 var(--serif);display:block;margin:20px 0}.contact-method .button{margin-top:22px}.contact-info{margin-top:35px;padding:27px;border:1px solid var(--line);border-radius:12px}.contact-info h3{margin-bottom:12px}.contact-info p{font-size:13px}.privacy-content{max-width:800px}
@media(min-width:1450px){.home-hero{padding-top:65px}.hero-image{height:520px}.hero-copy h1{font-size:68px}}
@media(max-width:1100px){.wrap{width:calc(100% - 64px)}.main-nav{gap:19px}.hero-grid{gap:40px}.hero-copy h1{font-size:54px}.hero-copy .button{padding-inline:13px;font-size:11px}.hero-image{height:465px}.hero-copy>p{font-size:14px}.about-grid{gap:55px}.coverage-grid{gap:55px}.faq-grid{gap:60px}.contact-band h2{font-size:35px}.contact-band .button-row{gap:8px}.contact-band .button{font-size:11px;padding-inline:17px}.content-with-aside{gap:50px}.footer-grid{gap:24px}.review{padding:24px}}
@media(max-width:850px){.wrap{width:calc(100% - 48px)}.nav-wrap{height:80px}.menu-toggle{display:flex}.main-nav{display:none;position:absolute;left:0;right:0;top:80px;background:var(--cream);border-bottom:1px solid var(--line);padding:20px 24px 25px;box-shadow:0 15px 30px #1111110e;gap:0}.main-nav[data-open=true]{display:flex;flex-direction:column;align-items:stretch}.main-nav>a{padding:12px 0;font-size:14px}.main-nav .button{margin-top:13px;padding:13px;font-size:13px}.hero-grid{gap:30px;grid-template-columns:1fr 1fr}.hero-copy h1{font-size:45px}.hero-image{height:438px}.hero-copy .button-row{flex-direction:column;align-items:stretch}.hero-copy .button{font-size:12px}.hero-copy>p{font-size:13px}.photo-note{left:-15px;min-width:235px;padding:15px 17px;gap:10px}.photo-note strong{font-size:12px}.photo-note span{font-size:9px}.hero-bottom>span{display:none}.benefit{font-size:10px;gap:7px}.section{padding:75px 0}.section-heading{gap:25px}.section-heading h2{font-size:37px}.service-row{grid-template-columns:36px 1fr 1fr 20px;gap:13px}.service-row h3{font-size:14px}.service-row p{font-size:11px}.about-grid{gap:38px}.about-photo img{height:420px}.about-copy h2{font-size:37px}.about-copy p{font-size:13px}.steps{gap:28px}.step p{font-size:11px}.how-section .section-heading>p{max-width:240px;font-size:13px}.review-grid{gap:12px}.review{padding:20px;min-height:230px}.review blockquote{font-size:18px}.coverage-grid{gap:35px}.zone-box{padding:26px}.faq-grid{gap:35px;grid-template-columns:.85fr 1.15fr}.contact-band .wrap{flex-direction:column;align-items:flex-start;gap:25px}.contact-band h2{font-size:40px}.footer-grid{grid-template-columns:1.3fr 1fr 1fr}.footer-contact{grid-column:1/-1;border-top:1px solid var(--line);padding-top:25px;display:flex;align-items:center;gap:25px}.footer-contact .footer-heading{margin:0}.footer-contact>p{margin:0}.footer-contact>a.text-link{margin:0}.content-with-aside{grid-template-columns:1.2fr .8fr;gap:35px}.aside-card{padding:23px}.aside-card h3{font-size:23px}.inner-hero h1{font-size:52px}}
@media(max-width:620px){body{padding-bottom:78px}.wrap{width:calc(100% - 40px)}.topline{height:30px;font-size:9px}.topline .top-info{max-width:215px}.topline a{font-size:10px}.site-header{backdrop-filter:none}.nav-wrap{height:74px}.main-nav{top:74px}.brand-icon{width:34px;height:38px}.brand-name{font-size:26px}.brand-caption{font-size:7px;letter-spacing:.11em}.brand{gap:9px}.menu-toggle{width:40px;height:40px}.home-hero{padding:35px 0 28px}.hero-grid{display:flex;flex-direction:column;gap:30px;align-items:stretch}.hero-copy .eyebrow{font-size:9px}.hero-copy h1{font-size:45px;margin:18px 0 19px;letter-spacing:-.055em;max-width:365px;line-height:1.13}.hero-copy h1 em{font-size:.94em}.hero-copy>p{font-size:14px;line-height:1.9;max-width:100%}.hero-copy .button-row{margin-top:23px;flex-direction:row;gap:8px;flex-wrap:nowrap}.hero-copy .button{padding:13px 12px;min-height:49px;font-size:11px;flex:1;gap:7px;white-space:nowrap}.hero-note{font-size:9px;margin-top:14px}.hero-visual{padding-bottom:22px}.hero-image{height:327px;object-position:50% 61%;border-radius:75px 14px 14px 14px}.photo-note{left:12px;bottom:0;min-width:0;padding:13px 17px;gap:11px;border-radius:9px;box-shadow:0 4px 20px #11111109}.photo-note .icon{width:26px;height:26px}.photo-note strong{font-size:11px}.photo-note span{font-size:9px}.photo-tag{top:14px;right:14px;font-size:8px;padding:6px 10px}.hero-bottom{padding-top:22px;margin-top:27px;gap:8px;align-items:flex-start}.benefit{flex-direction:column;text-align:center;font-size:9px;line-height:1.6;gap:7px;flex:1}.benefit .icon{width:18px;height:18px}.section{padding:59px 0}.services-section{padding-top:47px}.section-heading{flex-direction:column;align-items:flex-start;gap:19px;margin-bottom:30px}.section-heading h2{font-size:33px;line-height:1.2;margin-top:11px}.section-heading>p{font-size:13px}.section-heading .text-link{font-size:11px}.service-grid{grid-template-columns:1fr;gap:14px}.service-card{padding:25px;min-height:223px}.service-top{margin-bottom:21px}.service-card h3{font-size:25px}.service-card p{font-size:12px;max-width:290px;padding-right:12px}.service-symbol{width:42px;height:42px}.service-card.photo-service{min-height:239px}.service-row{grid-template-columns:31px 1fr 20px;gap:13px;padding:23px 3px}.service-row>p{grid-column:2;grid-row:2;font-size:11px;margin-top:-6px}.service-row h3{font-size:15px}.service-row>.icon{width:23px;height:23px;align-self:start;margin-top:1px}.service-row>.row-arrow{grid-column:3;grid-row:1/3;align-self:center;width:17px;height:17px}.about-grid{grid-template-columns:1fr;gap:31px}.about-photo img{height:315px;border-radius:13px 75px 13px 13px}.about-photo .photo-caption{left:15px;right:15px;bottom:15px;padding:12px 15px;font-size:14px}.about-copy h2{font-size:34px;margin-bottom:19px}.about-copy p{font-size:13px}.personal-sign{font-size:29px;margin-top:20px}.how-section{padding:57px 0}.how-section .section-heading h2{font-size:33px}.how-section .section-heading>p{max-width:100%;font-size:12px}.steps{grid-template-columns:1fr;gap:27px;margin-top:35px}.step{display:grid;grid-template-columns:45px 1fr;column-gap:19px;border-top:1px solid #ffffff28;padding-top:21px}.step-no{grid-row:1/3;font-size:29px;border:0;padding:0;margin:0;padding-top:3px}.step h3{font-size:16px;margin-bottom:8px}.step p{font-size:12px;max-width:none}.how-foot{font-size:10px;margin-top:30px}.review-grid{grid-template-columns:1fr;gap:12px}.review{padding:23px;min-height:0}.review blockquote{font-size:20px;margin:16px 0 22px}.review-person{font-size:11px}.stars{font-size:12px}.reviews-source{font-size:9px;line-height:1.8}.coverage-section{padding:57px 0}.coverage-grid{grid-template-columns:1fr;gap:29px}.coverage-copy h2{font-size:34px}.coverage-copy>p{font-size:13px}.zone-list{gap:7px;margin-bottom:22px}.zone-list span{font-size:10px;padding:6px 10px}.zone-box{padding:25px}.zone-box h3{font-size:26px}.zone-feedback{min-height:0}.faq-grid{grid-template-columns:1fr;gap:31px}.faq-heading h2{font-size:34px;margin-bottom:19px}.faq-heading p{max-width:100%}.faq-heading .text-link{margin-top:17px}.faq-list summary{font-size:13px;padding-block:20px}.faq-list details>p{font-size:12px}.contact-band{padding:46px 0}.contact-band h2{font-size:32px;line-height:1.25}.contact-band .wrap{gap:25px}.contact-band .button-row{gap:8px;width:100%;flex-wrap:nowrap}.contact-band .button{flex:1;padding-inline:10px;font-size:11px;min-height:49px}.contact-band p{font-size:11px}.site-footer{padding:40px 0 25px}.footer-grid{grid-template-columns:1fr 1fr;gap:30px 20px}.footer-brand{grid-column:1/-1}.footer-brand p{max-width:300px;font-size:11px;margin-top:16px}.footer-heading{font-size:9px;margin-bottom:13px}.footer-links a{font-size:10px}.footer-contact{grid-column:1/-1;display:block;padding-top:25px}.footer-contact .footer-heading{margin-bottom:10px}.footer-contact>a.text-link{margin-top:12px}.footer-contact>p{margin-top:7px}.footer-phone{font-size:25px}.footer-bottom{margin-top:30px;flex-direction:column;align-items:flex-start;gap:10px;font-size:8px}.mobile-contact{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:45;gap:9px;padding:10px 15px calc(10px + env(safe-area-inset-bottom));border-top:1px solid #e2e6ec;background:#fff;box-shadow:0 -3px 20px #11111108}.mobile-contact a{flex:1;min-height:44px;font-size:11px;gap:8px;padding:10px;border-radius:7px}.mobile-contact .icon{width:17px;height:17px}.breadcrumb{padding-top:22px;font-size:9px;gap:7px;flex-wrap:wrap}.inner-hero{padding:33px 0 42px}.inner-hero h1{font-size:39px;letter-spacing:-.05em;line-height:1.2}.inner-hero .eyebrow{font-size:9px;margin-bottom:15px}.inner-hero>p{font-size:14px;margin-top:20px}.inner-hero .button-row{margin-top:23px;gap:8px}.inner-hero .button{font-size:11px;padding-inline:15px}.inner-body{padding:42px 0 55px}.content-with-aside{grid-template-columns:1fr;gap:35px}.prose h2{font-size:29px;margin-bottom:20px}.prose h3{font-size:19px}.prose p,.prose li{font-size:13px;line-height:1.95}.prose-section+.prose-section{margin-top:32px;padding-top:30px}.inline-note{padding:19px;font-size:11px!important}.aside-card{position:static;padding:25px}.aside-card h3{font-size:26px}.aside-card .button{font-size:12px;min-height:49px}.wide-photo{height:260px;margin-bottom:30px;border-radius:12px}.full-services{grid-template-columns:1fr;gap:17px}.full-service{padding:27px}.full-service h2{font-size:27px}.inner-services{padding:39px 0 55px}.contact-page-grid{grid-template-columns:1fr;gap:16px}.contact-method{padding:27px}.contact-method h2{font-size:28px}.contact-method .big-phone{font-size:31px}.contact-info{padding:23px}.contact-info p{font-size:12px}}
@media(max-width:360px){.hero-copy h1{font-size:41px}.hero-copy .button-row,.contact-band .button-row{flex-direction:column;align-items:stretch}.hero-copy .button,.contact-band .button{width:100%}.topline .top-info{max-width:180px;font-size:8px}.topline a{font-size:9px}.hero-image{height:285px}.inner-hero h1{font-size:35px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* Azul, negro y blanco. Presentación limpia sin iconos decorativos. */
.brand-name{font-size:34px;color:#111}.brand-caption{color:#111}
.hero-copy .eyebrow{display:block}.hero-copy .eyebrow:before{content:none}
.hero-grid{grid-template-columns:1fr 1.1fr;gap:45px}
.hero-visual.hero-cutout{padding:0;overflow:hidden}
.hero-cutout .hero-image{width:134%;max-width:none;height:auto;aspect-ratio:1672/941;object-fit:contain;object-position:center;margin-left:-34%;border-radius:0;background:transparent}
.photo-note,.photo-tag,.service-symbol,.card-arrow,.row-arrow,.zone-icon{display:none}
.hero-bottom{justify-content:flex-start;gap:45px}.hero-bottom>span{margin-left:auto}
.service-card{border-radius:8px;box-shadow:none}.service-top{margin-bottom:16px}
.service-row{grid-template-columns:1fr 1.2fr;gap:30px;padding:26px 0}
.service-row:hover{padding-inline:8px}.service-row h3{font-size:17px}
.full-service{border-radius:8px}.full-service h2{margin-top:0}
.zone-box,.aside-card,.review,.contact-method{border-radius:8px;box-shadow:none}
.menu-toggle{width:auto;min-width:65px;padding:8px 13px;font-size:12px;font-weight:500}
.about-photo img{border-radius:8px}.about-photo .photo-caption{border-radius:4px}
.hero-note{gap:0}.benefit{gap:0}
@media(max-width:1100px){.hero-grid{gap:25px}.hero-bottom{gap:25px}}
@media(max-width:850px){.hero-grid{gap:24px}.hero-bottom{gap:20px}}
@media(max-width:620px){.brand-name{font-size:30px}.hero-grid{display:flex;gap:22px}.hero-visual.hero-cutout{margin-top:0}.hero-bottom{justify-content:space-between;gap:15px;margin-top:22px;padding-top:20px}.hero-bottom>span{display:none}.benefit{font-size:10px}.service-row{grid-template-columns:1fr;gap:9px;padding:22px 0}.service-row h3{font-size:16px}.service-row p{grid-column:auto;grid-row:auto;margin:0;max-width:100%}.menu-toggle{height:39px}.hero-copy .button-row{margin-top:23px}}

.vaccination-card{display:grid;grid-template-columns:minmax(0,1fr) 190px;gap:14px;align-items:center;background:#fff;padding:28px 24px 24px 32px;color:var(--ink)}
.vaccination-card .service-top{margin-bottom:16px}.vaccination-card h3{margin-bottom:12px}
.vaccination-card p{max-width:none;padding:0}.vaccination-cat{display:block;width:100%;height:226px;object-fit:contain;object-position:center bottom;align-self:end}
.vaccination-copy{align-self:start;padding-top:4px}
.about-grid.about-with-care{grid-template-columns:1fr 1.1fr;align-items:center;gap:80px}
.about-title h2{margin-top:15px;font-size:44px}.about-with-care .about-copy{padding-top:4px}
.about-care-visual{width:min(100%,430px);margin-top:24px;overflow:hidden}
.about-care-visual img{display:block;width:134%;max-width:none;height:auto;aspect-ratio:1672/941;object-fit:contain;margin-left:-34%}
.google-review-summary{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:26px 0;margin-bottom:27px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.google-rating{display:flex;align-items:center;gap:22px}.google-rating-value{font:400 49px/1.1 var(--serif);letter-spacing:-.05em;color:var(--ink)}
.google-rating strong{display:block;font-size:14px;font-weight:500;margin-top:5px}.google-rating .stars{display:block;font-size:14px;line-height:1.5}
.google-review-summary .button{font-size:12px}
@media(max-width:1100px){.vaccination-card{grid-template-columns:minmax(0,1fr) 145px;padding:27px}.vaccination-cat{height:210px}.vaccination-card h3{font-size:24px}.about-grid.about-with-care{gap:50px}}
@media(max-width:850px){.vaccination-card{grid-template-columns:minmax(0,1fr) 112px;gap:9px;padding:24px}.vaccination-cat{height:195px}.vaccination-card h3{font-size:22px}.about-title h2{font-size:36px}.about-grid.about-with-care{gap:36px}}
@media(max-width:620px){.vaccination-card{grid-template-columns:minmax(0,1fr) 115px;gap:12px;padding:25px}.vaccination-cat{height:205px}.vaccination-card h3{font-size:24px;line-height:1.3}.vaccination-card p{font-size:12px}.vaccination-card .service-top{margin-bottom:13px}.vaccination-card .service-no{font-size:9px}.about-grid.about-with-care{grid-template-columns:1fr;gap:25px}.about-title h2{font-size:34px}.about-care-visual{width:min(100%,360px);margin-top:22px}.google-review-summary{align-items:flex-start;flex-direction:column;gap:22px;padding:23px 0;margin-bottom:23px}.google-rating-value{font-size:45px}.google-rating{gap:18px}.google-review-summary .button{width:100%}}
@media(max-width:360px){.vaccination-card{grid-template-columns:minmax(0,1fr) 83px;gap:10px;padding:22px}.vaccination-card h3{font-size:21px}.vaccination-cat{height:180px}.vaccination-card p{font-size:11px}}

/* Títulos uniformes en negro y azul suave en las superficies de apoyo. */
h1,h2,h3,h4,h5,h6,.eyebrow,.footer-heading,.personal-sign{color:#111}
h1 em,h2 em,h3 em,h4 em,h5 em,h6 em,h1 strong,h2 strong,h3 strong,h1 span,h2 span,h3 span{color:inherit}
.how-section{background:#edf4fc;color:#111}
.how-section .eyebrow,.contact-band .eyebrow{color:#111}
.how-section .section-heading>p,.how-section .step p,.how-foot{color:#4d5d70}
.step-no{color:#1558a5;border-color:#cbdff2}.how-foot{border-color:#cbdff2}
.contact-band{background:#eaf3ff;color:#111}.contact-band p{color:#4d5d70}
.contact-band .button.secondary{border-color:#a9c5e7;background:#fff}
.additional-services{display:grid;grid-template-columns:minmax(0,1fr) 270px;align-items:center;gap:42px;margin-top:28px;padding:18px 28px;background:#f3f8ff;border:1px solid #dce9f9;border-radius:8px}
.additional-services .service-rows{margin-top:0;border-top:0}
.additional-services .service-row{grid-template-columns:.9fr 1.1fr;gap:23px;padding:25px 0;border-color:#d3e3f6}
.additional-services .service-row:last-child{border-bottom:0}
.additional-services .service-row:hover{background:#eaf3ff;padding-inline:8px}
.additional-services-photo{width:100%;align-self:center}
.additional-services-photo img{width:100%;height:310px;object-fit:contain}
@media(max-width:1100px){.additional-services{grid-template-columns:minmax(0,1fr) 210px;gap:28px;padding:18px 24px}.additional-services-photo img{height:300px}.additional-services .service-row{grid-template-columns:1fr;gap:8px;padding:22px 0}.additional-services .service-row h3{font-size:17px}.additional-services .service-row p{font-size:12px;max-width:100%}}
@media(max-width:620px){.additional-services{grid-template-columns:minmax(0,1fr);gap:2px;margin-top:20px;padding:4px 22px 20px}.additional-services .service-row{padding:22px 0;gap:9px}.additional-services-photo{width:200px;justify-self:end}.additional-services-photo img{height:200px}.additional-services .service-row p{grid-column:auto;grid-row:auto;margin:0}}

/* Recuadros azules y testimonios completos aportados por Javier. */
.service-card,.full-service,.review,.zone-box,.aside-card,.contact-method,.contact-info,.additional-services{background:#e7f1ff;border-color:#c6dcf7}
.service-card:hover{background:#dfecff;border-color:#8aaee0}
.service-no{color:#385b83}
.review-grid{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:20px}
.review:first-child{grid-row:span 2}
.review{min-height:0;padding:30px}
.review blockquote{margin:0 0 25px;font-size:19px;line-height:1.7}
.review-person{font-size:12px}
.initial{flex:none;background:#cfE2fb}
/* Una sola familia tipográfica y estilo recto en todos los textos. */
em,.personal-sign,.hero-bottom>span,.about-photo .photo-caption{font-style:normal}
.zone-box .zone-icon{display:none}
.additional-services .service-row{border-color:#c6dcf7}
@media(max-width:850px){.review{padding:25px}.review blockquote{font-size:18px}}
@media(max-width:620px){.review-grid{grid-template-columns:minmax(0,1fr);gap:16px}.review:first-child{grid-row:auto}.review{padding:25px}.review blockquote{font-size:18px;line-height:1.7}}

/* Portada panorámica: texto sobre el espacio claro y animales a la derecha. */
.home-hero.hero-panorama{padding:0 0 36px}
.hero-panorama .hero-stage{position:relative;isolation:isolate;display:flex;align-items:center;width:100%;min-width:0;aspect-ratio:1916/821;min-height:600px;max-height:740px;overflow:hidden}
.hero-panorama .hero-content{position:relative;z-index:1;padding-block:44px}
.hero-panorama .hero-copy{max-width:440px}
.hero-panorama .hero-copy h1{font-size:clamp(50px,4.2vw,66px)}
.hero-panorama .hero-copy>p{max-width:400px}
.hero-panorama .hero-backdrop{position:absolute;inset:0;z-index:0}
.hero-panorama .hero-image{width:100%;height:100%;max-width:none;aspect-ratio:auto;object-fit:cover;object-position:right bottom;margin:0;border-radius:0;background:transparent}
.hero-panorama .hero-bottom{margin-top:24px;padding-top:23px}
@media(max-width:1100px){
 .hero-panorama .hero-stage{flex-direction:column;align-items:stretch;aspect-ratio:auto;min-height:0;max-height:none}
 .hero-panorama .hero-content{padding-block:40px 24px}
 .hero-panorama .hero-copy{max-width:620px}
 .hero-panorama .hero-copy>p{max-width:540px}
 .hero-panorama .hero-backdrop{position:relative;inset:auto;z-index:0;overflow:hidden}
 .hero-panorama .hero-image{display:block;height:auto;object-fit:contain}
}
@media(max-width:850px){.hero-panorama .hero-image{width:135%;margin-left:-35%}}
@media(max-width:620px){
 .home-hero.hero-panorama{padding-bottom:28px}
 .hero-panorama .hero-content{padding-block:35px 22px}
 .hero-panorama .hero-copy h1{font-size:45px}
 .hero-panorama .hero-image{width:180%;margin-left:-80%}
 .hero-panorama .hero-bottom{margin-top:22px;padding-top:20px}
}
@media(max-width:360px){.hero-panorama .hero-copy h1{font-size:41px}}
