
.hospitality-hero{position:relative;min-height:500px;overflow:hidden;background:#071e47;color:#fff}
.hospitality-hero .hero-image{position:absolute;inset:0;background:url('images/irys-hotel-exterior.webp') center center/cover no-repeat}
.hospitality-hero .hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,25,60,.97) 0%,rgba(4,34,82,.92) 36%,rgba(4,34,82,.50) 63%,rgba(4,34,82,.08) 100%)}
.hero-grid{position:relative;display:flex;align-items:center;min-height:500px}
.hero-copy{width:min(620px,100%);padding:48px 0}
.hero-copy h1{font-size:clamp(52px,5.4vw,82px);line-height:1.0;letter-spacing:-1.6px;margin:0 0 16px;font-weight:800}
.hero-copy h1 span{color:#64a0ff}
.hero-copy>p:not(.eyebrow){font-size:18px;line-height:1.55;max-width:580px;margin:0 0 24px}
.hero-points{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;max-width:760px}
.hero-points div{padding-right:12px;border-right:1px solid rgba(255,255,255,.28)}
.hero-points div:last-child{border-right:0}
.hero-points strong{display:block;font-size:16px;margin-bottom:5px}
.hero-points span{display:block;font-size:14px;line-height:1.45;color:#d9e8ff}
.role-section{padding:34px 0 22px;background:#f6f9fe}
.role-grid{display:grid;grid-template-columns:1.15fr .95fr;gap:24px;align-items:start}
.role-copy h2{font-size:clamp(34px,3.5vw,58px);line-height:1.02;letter-spacing:-1px;margin:0 0 14px}
.role-copy h2 span{color:#0755df}
.role-copy p:last-child{font-size:18px;line-height:1.58;color:#425879;margin:0;max-width:760px}
.role-card{background:#fff;border:1px solid #dde8f5;border-radius:14px;padding:28px 28px 24px;box-shadow:0 5px 18px rgba(7,30,71,.06)}
.role-card h3{font-size:22px;line-height:1.2;margin:0 0 16px;color:#1541a1}
.role-card ul{list-style:none;padding:0;margin:0}
.role-card li{padding:10px 0 10px 30px;position:relative;font-size:16px;line-height:1.45;color:#425879}
.role-card li:before{content:'✓';position:absolute;left:0;top:8px;color:#0755df;font-weight:800;font-size:19px}
.support-section{padding:24px 0;background:#f6f9fe}
.support-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.support-card{background:#fff;border:1px solid #dde8f5;border-radius:14px;overflow:hidden;box-shadow:0 5px 18px rgba(7,30,71,.06);padding:22px}
.support-head{display:flex;gap:16px;align-items:flex-start;margin-bottom:16px}
.support-icon{width:52px;height:52px;border-radius:14px;background:#edf4ff;display:grid;place-items:center;font-size:28px;color:#0755df;font-weight:700;flex:0 0 52px}
.support-head h2{font-size:22px;line-height:1.15;margin:0 0 6px;color:#1541a1}
.support-head p{margin:0;color:#4a5f7c;font-size:15px;line-height:1.45}
.support-photo{width:100%;height:250px;object-fit:cover;border-radius:10px;margin-bottom:18px}
.support-list.two-col{display:grid;grid-template-columns:repeat(2,1fr);gap:18px 20px}
.support-list h3{font-size:18px;line-height:1.2;margin:0 0 6px;color:#0d4cd4}
.support-list p{font-size:14px;line-height:1.45;color:#4a5f7c;margin:0}
.fit-section{padding:26px 0 18px;background:#f6f9fe}
.fit-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:24px;align-items:center}
.fit-copy h2{font-size:34px;line-height:1.08;margin:0 0 12px;color:#1541a1}
.fit-copy p{font-size:16px;line-height:1.55;color:#425879;margin:0 0 20px;max-width:560px}
.fit-flow{display:grid;grid-template-columns:1fr auto 1fr auto 1fr auto 1.2fr;gap:10px;align-items:center}
.flow-box{background:#fff;border:1px solid #dde8f5;border-radius:14px;padding:26px 16px;text-align:center;font-weight:700;color:#1541a1;box-shadow:0 4px 16px rgba(7,30,71,.05);min-height:104px;display:grid;place-items:center}
.flow-box.active{background:#0d3f97;color:#fff;border-color:#0d3f97}
.flow-arrow{font-size:36px;color:#0d4cd4;line-height:1;text-align:center}
.property-section{padding:28px 0 38px;background:#f6f9fe}
.property-head h2{font-size:30px;line-height:1.1;margin:0 0 20px;color:#1541a1}
.property-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:16px}
.property-grid article{background:#fff;border:1px solid #dde8f5;border-radius:10px;overflow:hidden;box-shadow:0 4px 16px rgba(7,30,71,.05)}
.property-grid img{width:100%;height:120px;object-fit:cover}
.property-grid h3{font-size:16px;line-height:1.25;margin:12px 12px 14px;color:#1541a1;text-align:center}
.final-cta{position:relative;color:#fff;padding:24px 0 30px;overflow:hidden;background:#041b43}
.final-bg{position:absolute;inset:0;background:url('images/about-hotel-hero.webp') center center/cover no-repeat}
.final-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,20,50,.96) 0%,rgba(4,31,75,.84) 44%,rgba(4,31,75,.36) 100%)}
.final-grid{position:relative;display:grid;grid-template-columns:.9fr 1.1fr;gap:24px;align-items:end}
.final-copy{padding:26px 0 12px}
.final-copy h2{font-size:clamp(34px,3.3vw,54px);line-height:1.06;letter-spacing:-1px;margin:0 0 14px}
.final-copy h2 span{color:#64a0ff}
.final-copy p{font-size:16px;line-height:1.55;color:#dce9ff;max-width:520px;margin:0 0 22px}
.final-actions{display:flex;gap:20px;align-items:center;flex-wrap:wrap}
.phone.large{font-size:32px;color:#fff}
.final-photo-frame{align-self:end}
.final-photo-frame img{width:100%;height:310px;object-fit:cover;border-radius:12px 12px 0 0;box-shadow:0 12px 30px rgba(0,0,0,.18)}

@media (max-width:1200px){
  .property-grid{grid-template-columns:repeat(3,1fr)}
}
@media (max-width:1050px){
  .support-grid,.role-grid,.fit-grid,.final-grid{grid-template-columns:1fr}
  .fit-flow{grid-template-columns:1fr;gap:14px}
  .flow-arrow{display:none}
}
@media (max-width:760px){
  .hero-copy h1{font-size:44px}
  .hero-points{grid-template-columns:1fr;gap:14px}
  .hero-points div{border-right:0;border-bottom:1px solid rgba(255,255,255,.25);padding-bottom:10px}
  .hero-points div:last-child{border-bottom:0}
  .support-list.two-col{grid-template-columns:1fr}
  .property-grid{grid-template-columns:repeat(2,1fr)}
  .phone.large{font-size:24px}
}
@media (max-width:480px){
  .role-copy p:last-child,.hero-copy>p:not(.eyebrow){font-size:16px}
  .role-card,.support-card{padding:18px}
  .property-grid{grid-template-columns:1fr}
}
