.hospitality-packages { --hp-ink:#0b1f3a; --hp-blue:#0876a8; --hp-gold:#f4b544; --hp-pink:#ef1456; --hp-muted:#526173; --hp-line:#dce2e7; color:var(--hp-ink); }
.hospitality-packages .container { width:min(calc(100% - 48px),var(--container)); }
.hp-hero { padding:78px 0 66px; color:#fff; background:radial-gradient(circle at 88% 12%,rgba(8,118,168,.36),transparent 32%),linear-gradient(130deg,#08192d,#0b1f3a 62%,#123955); }
.hp-hero__inner { max-width:var(--container); }
.hp-hero .breadcrumbs { color:rgba(255,255,255,.62); }
.hp-hero .breadcrumbs a:hover { color:#fff; }
.hp-hero .eyebrow, .hp-budget .eyebrow { color:var(--hp-gold); }
.hp-hero h1 { max-width:930px; margin:0; font-size:clamp(42px,6vw,72px); line-height:1.03; letter-spacing:-.055em; }
.hp-hero h1 span { color:var(--hp-gold); }
.hp-hero__copy { max-width:760px; margin:24px 0 28px; color:rgba(255,255,255,.82); font-size:18px; }
.hp-hero .button { min-height:52px; }
.hp-pillars { display:flex; flex-wrap:wrap; gap:14px 28px; margin-top:44px; padding-top:23px; border-top:1px solid rgba(255,255,255,.19); }
.hp-pillars span { display:inline-flex; align-items:center; gap:9px; color:rgba(255,255,255,.86); font-size:14px; font-weight:700; }
.hp-pillars svg { width:20px; height:20px; color:var(--hp-gold); }
.hp-plans { padding:92px 0 100px; background:#f5f7f8; }
.hp-section-heading { max-width:760px; margin:0 auto 42px; text-align:center; }
.hp-section-heading h2, .hp-budget h2, .hp-consultation h2 { margin:0; font-size:clamp(34px,4.2vw,52px); line-height:1.08; letter-spacing:-.045em; }
.hp-section-heading>p:last-child { color:var(--hp-muted); }
.hp-plan-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); align-items:stretch; gap:20px; }
.hp-plan { min-width:0; padding:27px 24px 24px; display:flex; flex-direction:column; border:1px solid var(--hp-line); border-radius:10px; background:#fff; box-shadow:0 12px 32px rgba(11,31,58,.07); }
.hp-plan.is-featured { border:2px solid var(--hp-blue); box-shadow:0 18px 44px rgba(8,118,168,.15); }
.hp-plan__badge { margin:-27px -24px 20px; padding:9px 14px; color:#fff; background:var(--hp-blue); border-radius:8px 8px 0 0; text-align:center; font-size:12px; font-weight:800; letter-spacing:.04em; }
.hp-plan__number { margin:0 0 9px; color:var(--hp-blue); font-size:12px; font-weight:800; letter-spacing:.1em; }
.hp-plan h3 { min-height:62px; margin:0; font-size:25px; line-height:1.15; letter-spacing:-.025em; }
.hp-plan__intro { min-height:74px; margin:12px 0 16px; color:var(--hp-muted); }
.hp-plan__price { margin:0 0 17px; font-size:36px; line-height:1; font-weight:800; letter-spacing:-.04em; }
.hp-plan__price span { color:var(--hp-muted); font-size:14px; font-weight:500; letter-spacing:0; }
.hp-plan__cta { min-height:46px; width:100%; margin-bottom:22px; }
.hp-plan__group { padding:17px 0; border-top:1px solid var(--hp-line); }
.hp-plan__group h4 { margin:0 0 11px; font-size:15px; line-height:1.3; }
.hp-plan__group ul, .hp-budget__terms ul { margin:0; padding:0; list-style:none; }
.hp-plan__group li { display:flex; align-items:flex-start; gap:9px; margin:8px 0; color:#334356; font-size:14px; line-height:1.5; }
.hp-plan__group li svg { width:16px; height:16px; flex:0 0 16px; margin-top:3px; color:var(--hp-blue); }
.hp-plan__best { margin:auto 0 0; padding-top:15px; border-top:1px solid var(--hp-line); color:var(--hp-muted); font-size:14px; }
.hp-plan__best strong { color:var(--hp-ink); }
.hp-custom-plan { margin-top:24px; padding:23px 27px; display:flex; align-items:center; justify-content:space-between; gap:24px; border:1px solid var(--hp-line); border-left:4px solid var(--hp-gold); border-radius:7px; background:#fff; }
.hp-custom-plan h3 { margin:0 0 5px; font-size:20px; }
.hp-custom-plan p { margin:0; color:var(--hp-muted); }
.hp-custom-plan .button { flex:0 0 auto; }
.hp-budget { padding:78px 0; color:#fff; background:var(--hp-ink); }
.hp-budget__inner { display:grid; grid-template-columns:minmax(0,1fr) minmax(300px,.8fr); gap:72px; align-items:center; }
.hp-budget__inner>div:first-child>p:last-child { max-width:690px; color:rgba(255,255,255,.78); }
.hp-budget__terms { padding:24px 26px; border:1px solid rgba(255,255,255,.2); border-radius:8px; background:rgba(255,255,255,.05); }
.hp-budget__terms h3 { margin:0 0 13px; font-size:20px; }
.hp-budget__terms li { margin:9px 0; padding-left:19px; position:relative; color:rgba(255,255,255,.8); font-size:14px; line-height:1.5; }
.hp-budget__terms li::before { width:6px; height:6px; position:absolute; top:.6em; left:0; border-radius:50%; background:var(--hp-gold); content:""; }
.hp-consultation { padding:90px 0; background:#fff; }
.hp-consultation__grid { display:grid; grid-template-columns:minmax(0,.9fr) minmax(400px,1fr); gap:70px; align-items:center; }
.hp-consultation h2 { max-width:540px; }
.hp-consultation__grid>div:first-child>p:not(.eyebrow) { max-width:530px; color:var(--hp-muted); }
.hp-consultation__contact { display:flex; flex-wrap:wrap; gap:15px 24px; margin-top:27px; }
.hp-consultation__contact a { display:inline-flex; align-items:center; gap:8px; color:var(--hp-ink); font-weight:700; }
.hp-consultation__contact svg, .hp-consultation__contact .service-asset-icon { width:20px!important; height:20px!important; max-width:20px; flex:0 0 20px; color:var(--hp-blue); object-fit:contain; }
.hp-form { min-width:0; }
.hp-form h3 { margin:0 0 17px; font-size:24px; }
.hp-form__note { margin:-7px 0 18px; color:var(--hp-muted); font-size:14px; }
.hp-form .lead-card { width:100%; margin:0; padding:26px; border:1px solid var(--hp-line); border-radius:9px; background:rgba(255,255,255,.97); box-shadow:var(--shadow); }
.hp-form .lead-card .button { width:100%; }
.hp-form .lead-card .form-row { margin-bottom:11px; }
.hp-form .lead-card .form-row label { display:block; margin-bottom:4px; color:var(--hp-ink); font-weight:700; }
.hp-form .lead-card .form-row input, .hp-form .lead-card .form-row select { width:100%; height:40px; padding:0 12px; border:1px solid var(--hp-line); border-radius:4px; color:var(--hp-ink); background:#fff; }
.hp-form .lead-card .form-row input:focus, .hp-form .lead-card .form-row select:focus { border-color:var(--hp-blue); outline:2px solid rgba(8,118,168,.13); }
.hp-form .lead-card .button { margin-top:3px; }
.hp-thanks { min-height:65vh; padding:80px 24px; display:grid; place-items:center; background:linear-gradient(145deg,#f5f7f8,#fff); }
.hp-thanks__card { width:min(100%,680px); padding:46px; border-top:4px solid var(--hp-gold); background:#fff; box-shadow:0 18px 50px rgba(11,31,58,.12); text-align:center; }
.hp-thanks__icon { width:54px; height:54px; margin:0 auto 20px; display:grid; place-items:center; color:#fff; border-radius:50%; background:var(--hp-blue); }
.hp-thanks__icon svg { width:25px; height:25px; }
.hp-thanks__card h1 { margin:0; font-size:clamp(30px,5vw,44px); line-height:1.1; }
.hp-thanks__card>p:not(.eyebrow) { color:var(--hp-muted); }
.hp-thanks__actions { margin-top:24px; display:flex; flex-wrap:wrap; justify-content:center; gap:12px; }
@media(max-width:1050px) {
  .hp-plan-grid { grid-template-columns:repeat(2,minmax(0,1fr)); align-items:start; }
  .hp-plan:last-child { grid-column:1/-1; }
  .hp-budget__inner { grid-template-columns:minmax(0,1fr) minmax(280px,.85fr); gap:36px; }
  .hp-consultation__grid { grid-template-columns:minmax(0,1fr) minmax(340px,1fr); gap:36px; }
}
@media(max-width:760px) {
  .hospitality-packages .container { width:min(calc(100% - 36px),640px); }
  .hp-hero { padding:56px 0 48px; }
  .hp-hero h1 { font-size:clamp(38px,8vw,54px); }
  .hp-hero__copy { font-size:16px; }
  .hp-pillars { gap:13px 18px; margin-top:32px; }
  .hp-plans { padding:65px 0; }
  .hp-plan-grid, .hp-budget__inner, .hp-consultation__grid { grid-template-columns:minmax(0,1fr); }
  .hp-plan:last-child { grid-column:auto; }
  .hp-plan h3, .hp-plan__intro { min-height:0; }
  .hp-custom-plan { align-items:stretch; flex-direction:column; gap:16px; }
  .hp-custom-plan .button { width:100%; }
  .hp-budget { padding:62px 0; }
  .hp-consultation { padding:64px 0; }
}
@media(max-width:420px) {
  .hospitality-packages .container { width:calc(100% - 28px); }
  .hp-hero h1 { font-size:36px; }
  .hp-plan { padding:23px 18px 20px; }
  .hp-plan__badge { margin:-23px -18px 18px; }
  .hp-plan__price { font-size:32px; }
  .hp-budget__terms, .hp-form .lead-card { padding:21px 17px; }
  .hp-thanks__card { padding:33px 21px; }
  .hp-thanks__actions { flex-direction:column; }
}
