
.hotel-page{background:#fff}
.hotel-hero{position:relative;min-height:590px;overflow:hidden;color:#fff;background:#063c68}
.hotel-hero-media{position:absolute;inset:0;display:block;width:100%;height:100%}
.hotel-hero-media img{width:100%;height:100%;display:block;object-fit:cover;object-position:center}
.hotel-hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,52,88,.92) 0%,rgba(0,52,88,.74) 38%,rgba(0,52,88,.20) 70%,rgba(0,52,88,.08) 100%)}
.hotel-hero-shell{position:relative;z-index:2;max-width:1360px;margin:auto;padding:112px 32px 70px}
.eyebrow{margin:0 0 11px;font-size:12px;letter-spacing:1.6px;font-weight:800;color:#75e2c1}
.eyebrow.blue{color:#0a96ef}
.hotel-hero h1{margin:0;max-width:760px;font-size:62px;line-height:.98;letter-spacing:-2px;color:#fff}
.hotel-hero p:not(.eyebrow){max-width:650px;margin:22px 0 0;font-size:19px;line-height:1.45;color:rgba(255,255,255,.96)}
.hotel-actions{display:flex;gap:14px;margin-top:30px}
.hotel-btn{display:inline-flex;align-items:center;justify-content:center;gap:14px;min-height:50px;padding:0 24px;border-radius:28px;font-weight:800}
.hotel-btn-primary{background:#14b981;color:#fff}
.hotel-btn-outline{border:1.5px solid rgba(255,255,255,.9);color:#fff}
.hotel-btn-light{background:#fff;color:#004b7c}
.hotel-shell{width:min(1360px,calc(100% - 64px));margin:auto}
.hotel-intro{padding:52px 0;background:#fff}
.intro-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:start}
.intro-grid h2,.hotel-section-heading h2,.laundry-copy h2,.housekeeping-copy h2,.support-copy h2,.hotel-cta h2{margin:0;color:#063f70;letter-spacing:-.7px}
.intro-grid h2{font-size:40px;line-height:1.05}
.intro-grid>div:last-child>p{margin:0;font-size:17px;line-height:1.65;color:#435f73}
.intro-badges{display:flex;flex-wrap:wrap;gap:9px;margin-top:20px}
.intro-badges span{padding:8px 12px;border-radius:18px;background:#eef8fc;color:#075281;font-size:12px;font-weight:700}
.hotel-solutions{background:#f7fbfd;padding:52px 0 58px}
.hotel-section-heading{max-width:820px;margin-bottom:26px}
.hotel-section-heading h2{font-size:38px;line-height:1.06}
.hotel-section-heading>p:not(.eyebrow){color:#45657c;line-height:1.55}
.hotel-area-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.hotel-area-card{background:#fff;border:1px solid #e2edf4;border-radius:12px;overflow:hidden;box-shadow:0 8px 22px rgba(0,58,96,.07)}
.hotel-area-card img{width:100%;aspect-ratio:1.45/1;object-fit:cover;display:block}
.hotel-area-body{position:relative;padding:20px 20px 22px}
.area-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#0a96ef;color:#fff;font-weight:800;margin-bottom:13px}
.hotel-area-body h3{margin:0 0 8px;color:#063f70;font-size:20px}
.hotel-area-body p{margin:0;color:#526f82;font-size:14px;line-height:1.5}
.hotel-laundry{padding:58px 0;background:linear-gradient(135deg,#073f6a,#006f9f);color:#fff}
.laundry-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start}
.laundry-copy h2{font-size:42px;line-height:1.05;color:#fff}
.laundry-copy>p:not(.eyebrow){font-size:16px;line-height:1.65;color:rgba(255,255,255,.9)}
.process-pills{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}
.process-pills span{border:1px solid rgba(255,255,255,.35);padding:8px 11px;border-radius:18px;font-size:12px}
.laundry-products{background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.18);border-radius:16px;padding:24px}
.laundry-products h3{margin-top:0;font-size:20px}
.mini-product-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.mini-product-grid div{padding:15px;background:rgba(255,255,255,.08);border-radius:10px}
.mini-product-grid strong,.mini-product-grid span{display:block}
.mini-product-grid span{font-size:12px;line-height:1.45;margin-top:5px;color:rgba(255,255,255,.83)}
.hotel-housekeeping{padding:60px 0}
.housekeeping-grid,.support-grid{display:grid;grid-template-columns:1fr 1fr;gap:58px;align-items:center}
.housekeeping-photo img,.support-photo img{width:100%;display:block;border-radius:14px;aspect-ratio:1.45/1;object-fit:cover}
.housekeeping-copy h2,.support-copy h2{font-size:39px;line-height:1.06}
.housekeeping-copy>p:not(.eyebrow),.support-copy>p:not(.eyebrow){color:#4b687b;line-height:1.6}
.check-list{list-style:none;padding:0;margin:22px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:12px 18px}
.check-list li{position:relative;padding-left:27px;color:#174f77}
.check-list li:before{content:"✓";position:absolute;left:0;top:-2px;width:20px;height:20px;border-radius:50%;background:#17b77f;color:#fff;display:grid;place-items:center;font-size:11px}
.hotel-support{padding:58px 0;background:#f5fafc}
.support-points{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:25px}
.support-points div{position:relative;padding-left:48px}
.support-points span{position:absolute;left:0;top:0;width:36px;height:36px;border-radius:50%;background:#0a96ef;color:#fff;display:grid;place-items:center;font-size:12px;font-weight:800}
.support-points strong{display:block;color:#073f6d;margin-bottom:4px}
.support-points p{margin:0;color:#587587;font-size:12px;line-height:1.4}
.hotel-benefits{padding:55px 0;background:#fff}
.centered{text-align:center;margin-left:auto;margin-right:auto}
.centered .eyebrow{color:#0a96ef}
.benefit-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.benefit-grid article{padding:25px 18px;border:1px solid #e2edf4;border-radius:13px;text-align:center}
.benefit-grid article>span{font-size:30px;color:#0a96ef}
.benefit-grid h3{color:#063f70}
.benefit-grid p{color:#5a7586;font-size:13px;line-height:1.45}
.hotel-mobile-summary{display:none}
.hotel-cta{padding:46px 0;background:#0b93d4;color:#fff}
.cta-shell{display:grid;grid-template-columns:1fr auto;gap:30px;align-items:center}
.hotel-cta h2{color:#fff;font-size:32px;max-width:840px;line-height:1.12}
.compact-footer .footer-main{grid-template-columns:1.5fr repeat(3,1fr)}

@media(max-width:980px){
  .hotel-hero-shell{padding:90px 28px 60px}
  .hotel-hero h1{font-size:50px}
  .hotel-area-grid{grid-template-columns:repeat(2,1fr)}
  .intro-grid,.laundry-grid,.housekeeping-grid,.support-grid{grid-template-columns:1fr}
  .benefit-grid{grid-template-columns:repeat(2,1fr)}
}

@media(max-width:700px){
  .hotel-hero{min-height:620px}
  .hotel-hero-media img{object-position:center 42%}
  .hotel-hero-overlay{background:linear-gradient(180deg,rgba(0,53,90,.80) 0%,rgba(0,53,90,.70) 56%,rgba(0,53,90,.90) 100%)}
  .hotel-hero-shell{padding:70px 20px 46px}
  .hotel-hero h1{font-size:39px;line-height:1.02;letter-spacing:-1px}
  .hotel-hero p:not(.eyebrow){font-size:16px;line-height:1.45;margin-top:16px}
  .hotel-actions{margin-top:22px;display:grid;grid-template-columns:1fr}
  .hotel-btn{min-height:47px}
  .hotel-shell{width:min(100% - 30px,720px)}
  .hotel-intro{padding:36px 0}
  .intro-grid{gap:15px}
  .intro-grid h2,.hotel-section-heading h2,.laundry-copy h2,.hotel-cta h2{font-size:29px}
  .intro-grid>div:last-child>p{font-size:15px;line-height:1.55}
  .intro-badges{gap:7px}.intro-badges span{font-size:11px}
  .hotel-solutions{padding:38px 0}
  .hotel-area-grid{grid-template-columns:1fr 1fr;gap:11px}
  .hotel-area-card img{aspect-ratio:1.2/1}
  .hotel-area-body{padding:13px 12px 15px}
  .area-icon{width:31px;height:31px;font-size:11px;margin-bottom:9px}
  .hotel-area-body h3{font-size:15px;line-height:1.08}
  .hotel-area-body p{font-size:12px;line-height:1.4}
  .mobile-hide{display:none}
  .hotel-laundry{padding:42px 0}
  .laundry-copy>p:not(.eyebrow){font-size:14px}
  .desktop-detail{display:none!important}
  .support-grid{gap:22px}
  .hotel-support{padding:40px 0}
  .support-copy h2{font-size:29px}
  .support-copy>p:not(.eyebrow){font-size:14px}
  .support-points{grid-template-columns:1fr;gap:15px}
  .support-photo img{aspect-ratio:1.4/1}
  .hotel-benefits{display:none}
  .hotel-mobile-summary{display:block;padding:38px 0;background:#f4fbfd}
  .hotel-mobile-summary h2{margin:0;color:#063f70;font-size:27px}
  .hotel-mobile-summary p{color:#516f82;line-height:1.55}
  .hotel-mobile-summary .hotel-btn{margin-top:8px}
  .hotel-cta{padding:36px 0}
  .cta-shell{grid-template-columns:1fr}
  .compact-footer .footer-main{grid-template-columns:1fr 1fr}
  .compact-footer .footer-brand{grid-column:1/-1}
}
