/* Mobile spacing and composition only. Desktop retains its current layout. */
.loyalty .mobile-promo-label,.loyalty .mobile-promo-button{display:none}
@media(max-width:700px){
 body{padding-bottom:calc(72px + env(safe-area-inset-bottom));}
 .wrap{width:calc(100% - 40px)}
 .header-main{padding-top:20px;padding-bottom:20px}
 .hero{width:100vw;max-width:none;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);height:auto;min-height:clamp(620px,174.36vw,720px)}
 .hero-background{inset:0;width:100%;height:100%}
 .hero-background img{display:block;width:100%;height:100%;object-fit:cover;object-position:72% bottom}
 .hero-inner{width:auto;margin:0;padding:24px 20px 120px}
 .hero .eyebrow{margin-bottom:16px}
 .hero .intro{margin-top:20px;max-width:86%}
 .hero-benefits{margin-top:28px;max-width:48%;gap:18px}
 .hero-mobile-action{padding-top:16px}
 .hero-mobile-action .button{min-height:48px}
 .services-section{padding-top:52px;padding-bottom:0;margin-bottom:52px}
 .services-section .section-heading{margin-bottom:24px}
 .services-grid{gap:12px}
 .service-title{min-height:68px}
 .loyalty.wrap{width:calc(100% - 32px);margin-top:0;margin-bottom:60px;height:auto;min-height:320px}
 .loyalty>img{width:100%;height:100%;object-fit:cover;object-position:72% center}
 .loyalty:after{background:linear-gradient(90deg,#053c2cf5 0%,#053c2cbb 44%,#053c2c66 65%,transparent 100%)}
 .loyalty .loyalty-copy{padding:24px 20px;position:relative;z-index:1}
 .loyalty .mobile-promo-label{display:block;font-family:var(--font-body);font-size:10px;font-weight:600;line-height:1.4;letter-spacing:.16em;text-transform:uppercase;margin:0 0 16px;max-width:270px;white-space:normal}
 .loyalty #loyalty-heading{font-size:clamp(28px,7.2vw,32px);line-height:1.08;width:100%;max-width:270px;letter-spacing:-.015em;word-spacing:normal;white-space:normal;overflow-wrap:normal;word-break:normal;hyphens:none;margin:0}
 .loyalty #loyalty-heading .loyalty-line:nth-child(1),.loyalty #loyalty-heading .loyalty-line:nth-child(2){display:inline}
 .loyalty #loyalty-heading .loyalty-line:nth-child(3){display:block}
 .loyalty .mobile-promo-button{display:inline-flex;margin-top:22px;min-height:44px;padding:11px 18px;font-size:15px;font-weight:600;line-height:1.2}
 .advantages{padding:0;margin-top:0;margin-bottom:68px}
 .advantages .section-heading{margin-bottom:30px}
 .advantages h2{font-size:clamp(32px,8.3vw,34px);line-height:1.1}
 .benefits-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 22px;align-items:start}
 .benefits-grid article,.benefits-grid article:nth-child(n+5){width:auto;min-width:0;display:flex;flex-direction:column;align-items:flex-start;text-align:left;gap:14px;padding:12px 0}
 .benefits-grid svg{width:30px;height:30px}
 .benefits-grid article>div{min-width:0;width:100%}
 .benefits-grid h3{max-width:100%;font-size:13px;line-height:1.45;font-weight:500;letter-spacing:-.015em;hyphens:none;overflow-wrap:normal;word-break:normal}
 .contacts{display:flex;flex-direction:column;gap:24px;margin-top:0;margin-bottom:52px;padding:0}
 .contacts .section-heading{margin-bottom:30px}
 .contacts h2{font-size:clamp(32px,8.3vw,34px);line-height:1.1}
 .contact-details{display:flex;flex-direction:column;gap:18px;font-size:16px;line-height:1.45;font-weight:500}
 .contact-details>a,.contact-details>div{display:flex;gap:12px;align-items:flex-start}
 .contact-details svg{width:20px;height:20px;margin-top:2px}
 .contact-details span{min-width:0;white-space:normal;letter-spacing:normal;word-spacing:normal}
 .contact-details .address br,.contact-details .hours br{display:initial}
 .route{margin-top:30px;min-height:46px;padding:12px 20px}
 .map{width:100%;height:290px;min-height:290px;border-radius:12px}
 .map iframe{width:100%;height:100%;min-height:290px}
 .footer-main{padding-top:40px;padding-bottom:40px;display:flex;flex-direction:column;align-items:flex-start;gap:24px}
 .footer-main p{font-size:13px;line-height:1.6;max-width:100%;margin:0}
 .footer-main nav{width:100%;display:flex;flex-wrap:wrap;justify-content:flex-start;gap:18px 24px;font-size:13px;line-height:1.45}
 .mobile-bar{height:calc(72px + env(safe-area-inset-bottom));padding:12px 16px calc(12px + env(safe-area-inset-bottom));gap:12px;align-items:stretch}
 .mobile-bar a{min-height:48px;padding:12px 8px;font-size:15px;line-height:1.2}
}
@media(max-width:359px){
 .hero-inner{padding-bottom:110px}
 .hero .intro{max-width:100%}
 .hero-benefits{max-width:56%}
 .loyalty.wrap{min-height:340px}
 .loyalty #loyalty-heading{max-width:100%;font-size:28px}
 .benefits-grid{column-gap:20px}
 .benefits-grid h3{font-size:13px;letter-spacing:-.025em}
 .contact-details{font-size:15px}
}
