.hero-choices{display:grid;grid-template-columns:1fr 1fr;gap:15px;max-width:720px;margin:30px 0 24px}.hero .service-choice{justify-content:flex-start;gap:16px;padding:22px;text-align:left;min-height:100px;border-color:#9bdff377;max-width:none}.service-choice .ui-icon{width:29px;height:29px}.service-choice span{display:block}.service-choice strong{display:block;font-size:23px;line-height:1.25}.service-choice small{display:block;font-size:13px;font-weight:400;margin-top:7px;line-height:1.4}.hero .choice-clearing{background:#dff5fc;color:#073a57;border-color:#dff5fc}.hero .choice-clearing:hover{background:#c6eefa;color:#073a57}.hero .service-choice:hover span{transform:none}.hero h1{font-size:clamp(52px,6.5vw,86px)}.hero .intro{max-width:550px}.cleaning-section .services{grid-template-columns:repeat(2,minmax(0,1fr))}.section-cta{margin-top:30px}.clearing{border-top:1px solid #c9e5f1;padding-top:65px;background:linear-gradient(#f1f9fd,transparent);border-radius:24px;padding-inline:30px}.anchor-alias{display:block;scroll-margin-top:24px}.consultation-choice{display:flex;align-items:center;gap:10px;font-size:15px;margin:15px 0 30px}.request-form fieldset{border-top:1px solid #dce9ef;padding-top:16px}.request-form legend{font-size:21px;color:#073a57}.hero .hero-copy{padding-top:65px;padding-bottom:60px}@media(max-width:720px){.hero-choices{grid-template-columns:1fr;gap:12px;margin-top:24px}.hero .service-choice{padding:17px 20px;min-height:85px;width:100%}.service-choice strong{font-size:21px}.service-choice small{font-size:13px}.hero h1{font-size:clamp(49px,13vw,66px);line-height:1.04}.hero .hero-copy{padding:40px 0}.cleaning-section .services{grid-template-columns:1fr}.clearing{padding:38px 20px}.header nav>a:nth-child(2){display:inline}.header nav>a:first-child{display:inline}.header nav{gap:12px;flex-wrap:wrap;justify-content:flex-end}.header nav .nav-contact{display:none}}

/* Keep animated photos clipped above their captions. */
.clearing-photo .photo-frame,.office-banner .photo-frame{overflow:hidden;position:relative;isolation:isolate}
.photo-frame>img{display:block}
.clearing-photo .photo-caption,.office-banner .photo-caption{position:relative;z-index:1;margin:0;padding:20px 24px;line-height:1.5}
@media(max-width:720px){.clearing-photo .photo-caption,.office-banner .photo-caption{padding:17px 18px;font-size:15px}}
/* Left-align captions while keeping them vertically centered. */
.clearing-photo .photo-caption,.office-banner .photo-caption{display:flex;align-items:center;justify-content:flex-start;text-align:left;min-height:80px;box-sizing:border-box;padding:22px 24px;margin:0;line-height:1.5}
@media(max-width:720px){.clearing-photo .photo-caption,.office-banner .photo-caption{min-height:76px;padding:20px 18px}}

/* Preserve the centered content width of the conference-room photo. */
.office-banner.wrap{margin-inline:auto}

/* One clear contact action in the header on every screen size. */
.header .contact-navigation{display:flex;flex-wrap:nowrap;justify-content:flex-end;flex-shrink:0}
.header .contact-navigation>a.nav-contact{display:inline-flex;align-items:center;white-space:nowrap}
@media(max-width:360px){.header:has(.contact-navigation) .brand,.header:has(.contact-navigation) .brand img{width:100px}.header .contact-navigation>a.nav-contact{font-size:12px;padding-inline:10px;gap:7px}}

/* Descriptive service heading with deliberate line breaks on small screens. */
.hero h1.hero-service-title{font-size:clamp(40px,5.2vw,68px);line-height:1.1;max-width:960px;letter-spacing:-.04em}
.hero-service-title>span,.hero-service-title>em{display:block}
.hero h1 .hero-title-region{font-size:.56em;line-height:1.25;letter-spacing:-.025em;margin-top:16px}
.hero .intro{max-width:650px}
@media(max-width:720px){.hero h1.hero-service-title{font-size:clamp(27px,7.1vw,49px);line-height:1.14}.hero h1 .hero-title-region{font-size:.65em;margin-top:13px}.hero .hero-location{font-size:18px}.hero .intro{font-size:16px;line-height:1.65}}

/* Strong, balanced title with quieter supporting copy. */
.hero h1.hero-service-title{font-size:clamp(64px,7.5vw,100px);line-height:1.02;letter-spacing:-.05em;max-width:900px;margin-bottom:24px}
.hero h1 .hero-title-region{font-size:.28em;line-height:1.35;letter-spacing:-.015em;margin-top:22px;font-weight:500}
.hero .hero-location{font-size:18px;line-height:1.5;max-width:620px;margin-bottom:14px;font-weight:500}
.hero .intro{font-size:16px;line-height:1.65;max-width:600px}
@media(max-width:720px){.hero h1.hero-service-title{font-size:clamp(48px,12.5vw,78px);line-height:1.04;margin-bottom:20px}.hero h1 .hero-title-region{font-size:19px;margin-top:17px}.hero .hero-location{font-size:15px;line-height:1.55;max-width:100%}.hero .intro{font-size:14px;line-height:1.65}}
