.vals-packages,
.vals-packages *{box-sizing:border-box}
.vals-packages{--vals-navy:#0B2A67;--vals-orange:#F58220;--vals-ink:#15233b;--vals-muted:#667085;--vals-line:#e6eaf0;background:#fff;color:var(--vals-ink);font-family:inherit;position:relative;overflow:hidden;padding:72px 20px 86px}
.vals-packages:before,.vals-packages:after{content:"";position:absolute;border-radius:50%;pointer-events:none;z-index:0}
.vals-packages:before{width:360px;height:360px;right:-210px;top:-220px;border:38px solid color-mix(in srgb,var(--vals-orange) 92%,white);opacity:.96}
.vals-packages:after{width:470px;height:470px;left:-345px;bottom:-360px;border:52px solid color-mix(in srgb,var(--vals-navy) 95%,white);opacity:.06}
.vals-packages__inner{max-width:1240px;margin:0 auto;position:relative;z-index:1}
.vals-packages__header{text-align:center;max-width:820px;margin:0 auto 42px}
.vals-packages__eyebrow{display:inline-flex;align-items:center;gap:8px;color:var(--vals-orange);font-weight:800;font-size:13px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:12px}
.vals-packages__eyebrow:before,.vals-packages__eyebrow:after{content:"";display:block;width:34px;height:2px;background:var(--vals-orange)}
.vals-packages__header h1{font-size:clamp(32px,4.6vw,54px);line-height:1.08;margin:0 0 16px;color:var(--vals-navy);font-weight:800;letter-spacing:-.03em}
.vals-packages__header p{font-size:17px;line-height:1.7;color:var(--vals-muted);margin:0}
.vals-packages__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;align-items:start}
.vals-packages--cols-2 .vals-packages__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.vals-packages--cols-3 .vals-packages__grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.vals-packages--cols-4 .vals-packages__grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.vals-package-card{background:#fff;border:1px solid var(--vals-line);border-radius:22px;overflow:hidden;box-shadow:0 10px 34px rgba(11,42,103,.08);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;display:flex;flex-direction:column;min-width:0}
.vals-package-card:hover{transform:translateY(-4px);box-shadow:0 18px 44px rgba(11,42,103,.14);border-color:color-mix(in srgb,var(--vals-navy) 20%,var(--vals-line))}
.vals-package-card__media{aspect-ratio:1/1;background:#f7f9fc;overflow:hidden;position:relative}
.vals-package-card__media:after{content:"";position:absolute;inset:auto -28px -48px auto;width:125px;height:125px;border-radius:50%;border:18px solid var(--vals-orange);opacity:.08}
.vals-package-card__media img{display:block;width:100%;height:100%;object-fit:cover;margin:0}
.vals-package-card__placeholder{height:100%;display:grid;place-items:center;font-size:44px;font-weight:900;color:var(--vals-navy)}
.vals-package-card__body{padding:22px;display:flex;flex-direction:column;flex:1}
.vals-package-card__badge{align-self:flex-start;display:inline-flex;background:rgba(11,42,103,.08);color:var(--vals-navy);border:1px solid rgba(11,42,103,.12);padding:6px 11px;border-radius:999px;font-size:12px;font-weight:800;line-height:1;margin-bottom:11px}
.vals-package-card h2{color:var(--vals-navy);font-size:21px;line-height:1.22;margin:0 0 16px;font-weight:800;letter-spacing:-.015em}
.vals-package-card__price-row{display:flex;justify-content:space-between;gap:14px;align-items:flex-end;padding-bottom:16px;border-bottom:1px solid var(--vals-line)}
.vals-package-card__price{display:flex;flex-direction:column;min-width:0;flex:1}
.vals-package-card__price+.vals-package-card__price{border-left:1px solid var(--vals-line);padding-left:14px}
.vals-package-card__price small{color:var(--vals-muted);font-size:11px;text-transform:uppercase;letter-spacing:.05em;font-weight:700;margin-bottom:3px}
.vals-package-card__price strong{font-size:20px;line-height:1.1;color:var(--vals-orange);font-weight:900;white-space:nowrap}
.vals-package-card__amc strong{color:var(--vals-navy)}
.vals-package-card__tax{display:inline-flex;align-self:flex-start;margin-top:10px;padding:5px 9px;border-radius:8px;background:#f4f8ff;color:var(--vals-navy);font-size:11px;font-weight:700}
.vals-package-card__bottom{margin-top:10px;background:#fff8f1;border:1px solid #fde1c2;border-radius:10px;padding:9px 11px;display:flex;justify-content:space-between;gap:10px;font-size:12px}
.vals-package-card__bottom strong{color:var(--vals-orange)}
.vals-package-card__extras{display:grid;gap:7px;margin:14px 0 0;padding:0}
.vals-package-card__extras>div{display:flex;justify-content:space-between;gap:14px;padding:8px 10px;border-radius:9px;background:#f8fafc;font-size:12px}
.vals-package-card__extras dt{font-weight:700;color:var(--vals-muted)}
.vals-package-card__extras dd{margin:0;font-weight:800;color:var(--vals-navy);text-align:right}
.vals-package-card__features{list-style:none!important;margin:18px 0 22px!important;padding:0!important;display:grid;gap:9px;flex:1}
.vals-package-card__features li{list-style:none!important;margin:0!important;padding:0!important;display:flex;align-items:flex-start;gap:9px;color:#43506a;font-size:13px;line-height:1.45}
.vals-package-card__features li:before{display:none!important}
.vals-check{flex:0 0 19px;width:19px;height:19px;border-radius:50%;display:inline-grid;place-items:center;background:rgba(245,130,32,.12);color:var(--vals-orange);font-size:12px;font-weight:900;margin-top:1px}
.vals-package-card__terms{margin:0 0 18px;padding:0;border-radius:10px;background:#fafafa;border:1px solid var(--vals-line);font-size:11px;line-height:1.5;color:#596579;overflow:hidden}
.vals-package-card__terms summary{cursor:pointer;list-style:none;padding:10px 12px;color:var(--vals-navy);font-weight:800}
.vals-package-card__terms summary::-webkit-details-marker{display:none}
.vals-package-card__terms summary:after{content:"+";float:right;color:var(--vals-orange);font-size:15px}
.vals-package-card__terms[open] summary:after{content:"−"}
.vals-package-card__terms p{margin:0;padding:0 12px 12px}
.vals-package-card__cta{display:flex!important;justify-content:center;align-items:center;gap:10px;width:100%;min-height:48px;border-radius:12px;background:var(--vals-navy);color:#fff!important;text-decoration:none!important;font-weight:800;font-size:14px;padding:12px 18px;box-shadow:none!important;transition:background .2s ease,transform .2s ease}
.vals-package-card__cta:hover,.vals-package-card__cta:focus{background:var(--vals-orange);color:#fff!important;transform:translateY(-1px)}
.vals-package-card__cta span{font-size:18px;line-height:1}
.vals-package-policies{margin-top:58px}
.vals-package-policies__heading{text-align:center;color:var(--vals-navy);font-size:30px;line-height:1.2;margin:0 0 24px;font-weight:800}
.vals-package-policies__list{display:grid;gap:14px;max-width:1000px;margin:0 auto}
.vals-policy-card{border:1px solid var(--vals-line);border-radius:16px;background:#fff;overflow:hidden;box-shadow:0 6px 22px rgba(11,42,103,.06)}
.vals-policy-card summary{list-style:none;cursor:pointer;padding:18px 20px;display:flex;align-items:center;justify-content:space-between;gap:18px;color:var(--vals-navy)}
.vals-policy-card summary::-webkit-details-marker{display:none}
.vals-policy-card summary strong{display:block;font-size:16px}
.vals-policy-card summary small{display:block;color:var(--vals-muted);font-size:12px;margin-top:4px;font-weight:500}
.vals-policy-card__plus{font-size:25px;font-weight:400;color:var(--vals-orange);transition:transform .2s ease}
.vals-policy-card[open] .vals-policy-card__plus{transform:rotate(45deg)}
.vals-policy-card__content{padding:0 20px 20px;color:#43506a;font-size:14px;line-height:1.7}
.vals-policy-card__content h3{color:var(--vals-navy);font-size:16px;margin:18px 0 8px}
.vals-policy-card__content p{margin:0 0 12px}
.vals-policy-card__content ul{margin:0 0 16px 20px}
.vals-policy-card__content li{margin-bottom:7px}
@media(max-width:1100px){.vals-packages--cols-4 .vals-packages__grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:820px){.vals-packages{padding:56px 16px 70px}.vals-packages .vals-packages__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.vals-package-card__body{padding:19px}}
@media(max-width:560px){.vals-packages .vals-packages__grid{grid-template-columns:1fr}.vals-packages__header{margin-bottom:30px}.vals-package-card{max-width:430px;width:100%;margin:0 auto}.vals-package-card__price strong{font-size:20px}.vals-package-card__price-row{gap:10px}.vals-package-card__price+.vals-package-card__price{padding-left:10px}.vals-package-policies__heading{font-size:25px}}

/* v2.2.2: explicit main display; prevents empty-template/layout regressions. */
.vals-packages-page-template{display:block;width:100%;min-height:300px;clear:both}


/* v2.2.5: robust pricing layout, avoids collisions in narrow 4-column cards.
   Each amount gets a dedicated full-width row; never share a horizontal line. */
.vals-packages .vals-package-card__price-row{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  align-items:stretch!important;
  justify-content:stretch!important;
  gap:10px!important;
  width:100%;min-width:0;
  padding:0 0 16px;
}
.vals-packages .vals-package-card__price-row .vals-package-card__price{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  gap:4px;
  width:100%!important;
  max-width:100%;min-width:0!important;
  flex:none!important;
  margin:0!important;
  padding:12px 14px!important;
  border:1px solid #e5ebf5!important;
  border-radius:12px;
  background:#f8faff;
  overflow-wrap:anywhere;
}
.vals-packages .vals-package-card__price-row .vals-package-card__amc{
  background:#fff9f3;
  border-color:#f7e3cf!important;
}
.vals-packages .vals-package-card__price-row .vals-package-card__price small{
  display:block;width:100%;font-size:11px;line-height:1.4;
  letter-spacing:.045em;margin:0;color:#52617a;
}
.vals-packages .vals-package-card__price-row .vals-package-card__price strong{
  display:block;width:100%;max-width:100%;
  font-size:clamp(17px,1.55vw,21px);line-height:1.25;
  font-weight:850;white-space:normal!important;
  overflow-wrap:anywhere;word-break:normal;
  letter-spacing:-.025em;
}
.vals-packages .vals-package-card__price-row .vals-package-card__amc strong{color:var(--vals-navy)}
@media(max-width:820px){
 .vals-packages .vals-package-card__price-row .vals-package-card__price strong{font-size:20px}
}
@media(max-width:560px){
 .vals-packages .vals-package-card__price-row .vals-package-card__price{padding:13px 15px!important}
 .vals-packages .vals-package-card__price-row .vals-package-card__price strong{font-size:22px}
}
