.home-packages{margin:96px 0;padding:64px 0 48px;background:linear-gradient(150deg,#f1f8f6 0%,#f5f8fb 65%,#eef6f4 100%);scroll-margin-top:112px}
.hp-heading{max-width:760px;margin:0 auto 44px;text-align:center}
.hp-eyebrow{display:inline-block;margin-bottom:14px;color:#348d76;font-size:11px;line-height:1.5;font-weight:700;letter-spacing:.16em}
.hp-heading h2{margin:0;color:#303858;font-size:clamp(26px,3vw,40px);line-height:1.22;font-weight:800;letter-spacing:-.035em;text-wrap:balance}
.hp-heading>p{max-width:620px;margin:18px auto 0;color:#7c8494;font-size:14px;line-height:1.8;font-weight:450;text-wrap:pretty}
.hp-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:28px;max-width:1180px;margin:0 auto}
.hp-card{display:flex;flex-direction:column;min-width:0;overflow:hidden;background:#fff;border:1px solid #dfeae7;border-radius:24px;box-shadow:0 12px 36px rgba(29,64,67,.045)}
.hp-image{position:relative;aspect-ratio:16/8;overflow:hidden;background:#e8f0ef}
.hp-image:after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(13,40,45,.22));pointer-events:none}
.hp-image img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 55%}
.hp-number{position:absolute;z-index:1;left:20px;bottom:18px;padding:7px 12px;border:1px solid rgba(255,255,255,.5);border-radius:100px;background:rgba(255,255,255,.92);color:#303858;font-size:10px;font-weight:750;letter-spacing:.12em}
.hp-body{display:flex;flex-direction:column;flex:1;padding:26px 24px 24px}
.hp-tags{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:17px}
.hp-tags span{padding:6px 10px;border-radius:100px;background:#eff7f4;color:#367f6d;font-size:10px;font-weight:650;line-height:1.4}
.hp-body h3{margin:0 0 18px;color:#303858;font-size:clamp(22px,2.25vw,28px);line-height:1.22;letter-spacing:-.035em;font-weight:800;text-wrap:balance}
.hp-price{display:flex;align-items:flex-start;flex-direction:column;gap:4px;padding:0 0 20px;border-bottom:1px solid #e8eeec}
.hp-price>span{color:#7c8494;font-size:10px;line-height:1.5;letter-spacing:.09em;font-weight:650}
.hp-price strong{color:#303858;font-size:40px;line-height:1.12;letter-spacing:-.055em;font-weight:800;font-variant-numeric:tabular-nums}
.hp-description{margin:20px 0 22px;color:#7c8494;font-size:13px;font-weight:400;line-height:1.8}
.hp-inclusions h4{margin:0 0 14px;color:#303858;font-size:12px;font-weight:700}
.hp-inclusions ul{display:flex;flex-direction:column;gap:13px;margin:0;padding:0;list-style:none}
.hp-inclusions li{display:flex;align-items:flex-start;gap:10px;color:#4e5b6a;font-size:12px;line-height:1.65;font-weight:450}
.hp-check{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:19px;height:19px;margin-top:1px;border-radius:50%;color:#348d76;background:#e7f5ef}
.hp-check svg{width:13px;height:13px}
.hp-visits{margin:20px 0 0;padding:14px 16px;border:1px solid #e5efeb;border-radius:12px;background:#f7faf9}
.hp-visits>div{display:flex;align-items:baseline;justify-content:space-between;gap:12px;font-size:11px;line-height:1.6}
.hp-visits>div+div{margin-top:7px}
.hp-visits dt{color:#7c8494;white-space:nowrap}
.hp-visits dd{margin:0;text-align:right;color:#303858;font-weight:600}
.hp-cta{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;min-height:50px;margin-top:28px;padding:14px 18px;border-radius:12px;background:#41a88a;color:#fff;font-size:12px;font-weight:700;line-height:1.5;text-decoration:none;transition:background .2s,transform .2s}
.hp-cta:hover{background:#348d76;transform:translateY(-1px)}
.hp-cta:focus-visible{outline:3px solid #303858;outline-offset:4px}
.hp-cta svg{width:20px;height:20px;flex-shrink:0}
.hp-card:first-child .hp-cta{margin-top:auto}
.hp-card:first-child .hp-inclusions{margin-bottom:28px}
.hp-note{max-width:820px;margin:28px auto 0;text-align:center;color:#7c8494;font-size:11px;line-height:1.8}
@media(min-width:768px){.home-packages{margin:128px 0;padding:80px 0 56px}.hp-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.hp-heading{margin-bottom:48px}.hp-body{padding:28px}.hp-description{font-size:14px}.hp-inclusions li{font-size:13px}.hp-tags span{font-size:11px}.hp-visits>div{font-size:12px}.hp-cta{font-size:13px}}
@media(min-width:1280px){.hp-grid{gap:32px}.hp-body{padding:32px}.hp-price strong{font-size:46px}}
@media(prefers-reduced-motion:reduce){.hp-cta{transition:none}}
