/* V323: scoped customer cards and both full-menu drawers. */
.customerAppShell .recruitmentCardV323{display:grid;grid-template-columns:minmax(0,1fr) minmax(110px,27%);align-items:center;gap:20px}
.recruitmentCardV323>div{display:grid;gap:12px;min-width:0}.recruitmentCardV323>div>button{justify-self:start}
.recruitmentCardV323>img{display:block;width:100%;aspect-ratio:1;object-fit:cover;border-radius:18px}
.customerAppShell .requestCtaV323{display:grid;grid-template-columns:minmax(0,1fr) minmax(130px,28%);gap:20px;align-items:center}
.requestCtaV323>div{min-width:0}.customerAppShell .requestCtaV323 h2{font-size:clamp(20px,2.6vw,28px);word-break:keep-all;overflow-wrap:break-word;line-height:1.5}
.requestCtaV323>img{display:block;width:100%;aspect-ratio:1;object-fit:cover;border-radius:18px}
.customerAppShell .requestCtaV323>button{grid-column:1/-1;justify-self:stretch;width:100%;min-height:46px}
.customerAppShell .noticeHintV323{font-size:14px;color:#5a7069;margin:0 0 16px;line-height:1.6}
.customerAppShell .noticeAccordionV323{margin:10px 0;border:1px solid #cddfd8;background:#fff;border-radius:14px;overflow:hidden}
.noticeAccordionV323>summary{display:flex;align-items:center;justify-content:space-between;gap:14px;list-style:none;padding:18px;cursor:pointer;min-height:48px;box-sizing:border-box;color:#294e43}
.noticeAccordionV323>summary::-webkit-details-marker{display:none}.noticeAccordionV323>summary:focus-visible{outline:3px solid #42887a;outline-offset:-3px}
.noticeAccordionV323>summary>strong{font-size:16px;line-height:1.5;word-break:keep-all;overflow-wrap:break-word}
.noticeExpandV323{flex:none;width:9px;height:9px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);margin:0 3px 5px}
.noticeAccordionV323[open] .noticeExpandV323{transform:rotate(225deg);margin-top:6px}
.customerAppShell .noticeAccordionV323>p{padding:0 18px 18px;margin:0;white-space:pre-line;font-size:14px;line-height:1.8;color:#52665f}
.customerMobileMenu .customerMobileMenuGrid>button,.providerMobileMenu .providerMobileMenuGrid>button{display:flex;align-items:center;justify-content:flex-start;gap:9px;min-width:0;min-height:48px;text-align:left;padding:12px 10px;word-break:keep-all;overflow-wrap:break-word}
:is(.customerMobileMenuGrid,.providerMobileMenuGrid) .menuVectorIcon{display:block;flex:0 0 21px;width:21px;height:21px;color:#38786c}
:is(.customerMobileMenuGrid,.providerMobileMenuGrid)>button>span{min-width:0}
:is(.customerMobileMenuGrid,.providerMobileMenuGrid) .friendShare>button{display:flex;align-items:center;gap:9px;min-height:48px;width:100%;text-align:left}
.customerAppShell .livingCheckGrid article>div{min-width:0;flex:1}.customerAppShell .dailyCheckBodyV323{display:flex;align-items:flex-start;gap:14px;margin-top:15px;min-width:0}
.customerAppShell .dailyCheckBodyV323>.dailyCheckImageV323{flex:0 0 96px;width:96px;height:86px;border-radius:12px;object-fit:cover;margin:0}
.customerAppShell .dailyCheckBodyV323>div{min-width:0;flex:1}.customerAppShell .dailyCheckBodyV323 p{margin:0 0 15px;font-size:14px;line-height:1.65}
.customerAppShell .dailyCheckBodyV323 button{font-size:14px;min-height:44px;text-align:left;white-space:normal;word-break:keep-all}
/* Override the V315 mobile strip only for request/quote: artwork stays behind the copy. */
.customerAppShell .customerMain .requestQuoteHero.hasFeatureBanner.hasFeatureBanner{min-height:260px;padding:28px 40% 28px 26px;background:#edf8f4;color:#24483d}
.customerAppShell .customerMain .requestQuoteHero.hasFeatureBanner.hasFeatureBanner>img{display:block;position:absolute;inset:0;z-index:-2;width:100%;height:100%;max-width:none;margin:0;aspect-ratio:auto;object-fit:cover;object-position:right center}
.customerAppShell .customerMain .requestQuoteHero.hasFeatureBanner.hasFeatureBanner::before{display:block;position:absolute;inset:0;content:'';z-index:-1;background:linear-gradient(90deg,rgba(237,248,244,.99),rgba(237,248,244,.9) 45%,rgba(237,248,244,.28));pointer-events:none}
.customerAppShell .customerMain .requestQuoteHero.hasFeatureBanner.hasFeatureBanner :is(h1,p,span){color:#24483d}
.customerAppShell .customerMain .requestQuoteHero.hasFeatureBanner.hasFeatureBanner>.inlineButton{color:#fff;background:#34796c;position:relative;z-index:1}
@media(max-width:768px){
.customerAppShell .customerMain .requestQuoteHero.hasFeatureBanner.hasFeatureBanner{min-height:250px;padding:24px 22px}
.customerAppShell .customerMain .requestQuoteHero.hasFeatureBanner.hasFeatureBanner::before{background:linear-gradient(90deg,rgba(237,248,244,.98),rgba(237,248,244,.9) 48%,rgba(237,248,244,.57))}
.customerAppShell .requestCtaV323{grid-template-columns:minmax(0,1fr) 120px;padding:22px;gap:16px}
.customerAppShell .recruitmentCardV323{grid-template-columns:minmax(0,1fr) 110px;padding:20px;gap:12px}
}
@media(max-width:380px){
.customerAppShell .requestCtaV323{grid-template-columns:minmax(0,1fr) 96px;padding:18px;gap:12px}
.customerAppShell .recruitmentCardV323{grid-template-columns:minmax(0,1fr) 88px;padding:16px}
.customerAppShell .dailyCheckBodyV323>.dailyCheckImageV323{flex-basis:72px;width:72px;height:72px}.customerAppShell .dailyCheckBodyV323{gap:10px}
.customerMobileMenu .customerMobileMenuGrid>button,.providerMobileMenu .providerMobileMenuGrid>button{font-size:13px;gap:6px;padding:10px 8px}
}
