/* Compact glass comparison layout for the four public packages. */
.site-view[data-view="packages"]{
  background:radial-gradient(circle at 12% 30%,rgba(252,194,38,.23),transparent 26%),radial-gradient(circle at 90% 75%,rgba(252,194,38,.17),transparent 28%),#f5f0e5;
}
.site-view[data-view="packages"]>.route-title{
  min-height:0!important;
  padding:clamp(30px,3vw,48px) clamp(20px,5vw,86px) clamp(22px,2vw,34px)!important;
  background:transparent!important;
}
.site-view[data-view="packages"]>.route-title::after{display:none!important}
.site-view[data-view="packages"]>.route-title h1{max-width:1150px;margin:10px 0 9px!important;font-size:clamp(40px,4.5vw,72px)!important;line-height:.96!important}
.site-view[data-view="packages"]>.route-title p{margin:0!important;font-size:13px!important}
.shop-categories{display:flex;gap:10px;max-width:1740px;margin:0 auto 18px;padding:0 clamp(16px,2.7vw,48px)}
.shop-categories button{min-height:46px;padding:11px 22px;border:1px solid rgba(23,20,15,.18);border-radius:999px;background:rgba(255,255,255,.48);color:#17140f;font:inherit;font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);cursor:pointer}
.shop-categories button.active{border-color:#17140f;background:#17140f;color:#fff}
.shop-category-panel[hidden]{display:none!important}
.shop-essentials{padding:12px clamp(16px,2.7vw,48px) clamp(70px,7vw,110px)}
.shop-products-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(14px,2vw,28px);width:100%;max-width:1320px;margin:auto}
.shop-product-card{display:flex;min-width:0;flex-direction:column;padding:clamp(16px,2vw,24px);border:1px solid rgba(255,255,255,.8);border-radius:28px;background:rgba(255,255,255,.55);box-shadow:inset 0 1px 0 #fff,0 18px 48px rgba(48,37,14,.09);-webkit-backdrop-filter:blur(28px) saturate(1.14);backdrop-filter:blur(28px) saturate(1.14)}
.shop-product-image{aspect-ratio:1;overflow:hidden;border-radius:20px;background:#fff}.shop-product-image img{width:100%;height:100%;object-fit:contain}
.shop-product-card>span{margin-top:18px;color:#8c6600;font-size:9px;font-weight:900;letter-spacing:.14em}.shop-product-card h2{margin:8px 0 5px;font-size:clamp(27px,2.4vw,40px);line-height:1;letter-spacing:-.045em}.shop-product-card>p{margin:0;color:#675f54;font-size:12px;font-weight:650}.shop-product-card>strong{margin-top:auto;padding-top:18px;font-size:clamp(32px,2.8vw,46px);line-height:1}.shop-product-card>div:last-child{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:16px}.shop-product-card .button{min-height:42px;padding:9px 8px;font-size:8px}
.route-packages{position:relative;padding:12px clamp(16px,2.7vw,48px) clamp(48px,5vw,80px)!important;background:transparent!important}
.route-packages .compact-package-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:clamp(10px,1vw,18px)!important;width:100%;max-width:1740px;margin-inline:auto}
.route-packages .deal-grid>.compact-package-card{
  display:grid!important;
  grid-template-rows:auto 190px 1fr auto;
  min-width:0;
  min-height:0!important;
  padding:0!important;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.78)!important;
  border-radius:25px!important;
  color:#17140f!important;
  background:rgba(255,255,255,.56)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.95),0 18px 48px rgba(48,37,14,.09)!important;
  -webkit-backdrop-filter:blur(28px) saturate(1.16);
  backdrop-filter:blur(28px) saturate(1.16);
  transform:none!important;
  isolation:isolate;
  transition:transform .3s cubic-bezier(.2,.7,.2,1),box-shadow .3s ease!important;
}
.route-packages .compact-package-card::before{content:"";position:absolute;inset:0;z-index:0;padding:2px;border-radius:inherit;background:conic-gradient(from var(--package-glow-angle,0deg),transparent 0 68%,rgba(252,194,38,.18) 73%,#fff6be 78%,#fcc226 82%,rgba(252,194,38,.2) 88%,transparent 94%);opacity:0;pointer-events:none;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;transition:opacity .25s ease}
.route-packages .compact-package-card:hover::before,.route-packages .compact-package-card:focus-within::before{opacity:1;animation:packageBorderFlow 1.8s linear infinite}
@property --package-glow-angle{syntax:"<angle>";initial-value:0deg;inherits:false}
@keyframes packageBorderFlow{to{--package-glow-angle:360deg}}
.route-packages .compact-package-card>*:not(.package-card-open){position:relative;z-index:2}
.route-packages .compact-package-card>header,.route-packages .compact-package-card>.package-visual,.route-packages .compact-package-card>.compact-package-copy{pointer-events:none}
.route-packages .package-card-open{position:absolute;inset:0;z-index:1;border-radius:inherit}
.route-packages .package-card-open:focus-visible{outline:3px solid #17140f;outline-offset:-6px}
.route-packages .compact-package-card::after{display:none}
.route-packages .compact-package-card .package-card-actions{z-index:3}
.route-packages .deal-grid>.compact-package-card:hover{transform:translateY(-5px)!important;box-shadow:inset 0 1px 0 #fff,0 24px 58px rgba(48,37,14,.13)!important}
.route-packages .compact-package-card>header{display:flex;min-height:66px;align-items:flex-end;padding:18px 20px 12px}
.route-packages .compact-package-card h3{margin:0!important;font-size:clamp(25px,2vw,36px)!important;line-height:.98!important;letter-spacing:-.045em!important;text-transform:uppercase}
.route-packages .compact-package-card .package-visual{order:initial;display:grid!important;grid-template-rows:minmax(0,1fr) auto;gap:6px;width:100%;height:190px!important;min-height:190px!important;margin:0!important;padding:7px 7px 2px;overflow:hidden;border:0!important;border-radius:0!important;background:transparent!important}
.route-packages .compact-package-card .package-visual::before{display:none!important}
.route-packages .compact-package-card .package-visual::after{content:"VIEW MORE";position:absolute;left:50%;top:46%;z-index:3;display:grid;min-width:126px;min-height:46px;place-items:center;padding:10px 20px;border:1px solid rgba(255,255,255,.72);border-radius:999px;background:linear-gradient(105deg,#e5a900 0%,#fcc226 36%,#fff0a0 50%,#fcc226 64%,#e5a900 100%);background-size:230% 100%;box-shadow:0 14px 36px rgba(123,85,0,.22),inset 0 1px 0 rgba(255,255,255,.72);color:#17140f;font-size:9px;font-weight:900;letter-spacing:.13em;opacity:0;transform:translate(-50%,-30%) scale(.76);transition:opacity .2s ease,transform .42s cubic-bezier(.16,1,.3,1);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}
.route-packages .compact-package-card:hover .package-visual::after,.route-packages .compact-package-card:focus-within .package-visual::after{opacity:1;transform:translate(-50%,-50%) scale(1);animation:packageViewMoreSweep 1.15s .08s ease-out both,packageViewMorePulse 1.8s 1.15s ease-in-out infinite}
@keyframes packageViewMoreSweep{from{background-position:100% 0}to{background-position:0 0}}
@keyframes packageViewMorePulse{0%,100%{box-shadow:0 14px 36px rgba(123,85,0,.22),0 0 0 0 rgba(252,194,38,.22),inset 0 1px 0 rgba(255,255,255,.72)}50%{box-shadow:0 16px 42px rgba(123,85,0,.28),0 0 0 7px rgba(252,194,38,0),inset 0 1px 0 rgba(255,255,255,.8)}}
.route-packages .package-view-hint{display:block;min-height:13px;color:rgba(23,20,15,.44);font-size:8px;font-weight:650;line-height:1.2;letter-spacing:.045em;text-align:center;transition:color .25s ease,transform .3s ease}
.route-packages .compact-package-card:hover .package-view-hint,.route-packages .compact-package-card:focus-within .package-view-hint{color:rgba(23,20,15,.68);transform:translateY(-1px)}
.route-packages .compact-package-card .package-visual img,.route-packages .compact-package-card .package-visual img:first-child{position:static!important;display:block!important;width:100%!important;height:100%!important;min-height:0;object-fit:contain!important;border-radius:16px;filter:none!important;transform:scale(1)!important;transition:transform .5s cubic-bezier(.16,1,.3,1),filter .3s ease!important}
.route-packages .compact-package-card:hover .package-visual img,.route-packages .compact-package-card:focus-within .package-visual img{filter:brightness(.72)!important;transform:scale(1.045)!important}
.route-packages .compact-package-copy{display:flex;min-width:0;flex-direction:column;padding:13px 20px 12px}
.route-packages .package-pricing{display:grid;gap:1px}
.route-packages .package-was{color:#625a4f;font-size:14px;font-weight:700;line-height:1.35}
.route-packages .package-was s{font-size:16px;font-weight:750;text-decoration-thickness:2.5px;text-decoration-color:#17140f}
.route-packages .package-now{display:flex;align-items:baseline;gap:7px}
.route-packages .package-now>span{font-size:9px;font-weight:900;letter-spacing:.12em}
.route-packages .package-now strong{font-size:clamp(34px,2.65vw,48px);line-height:1;letter-spacing:-.055em}
.route-packages .package-average{min-height:16px;color:#5f584e;font-size:10px;font-weight:650}
.route-packages .package-includes{display:grid;gap:4px;margin:10px 0 0}
.route-packages .package-includes>div{display:grid;grid-template-columns:34px 1fr;gap:5px;align-items:start}
.route-packages .package-includes dt{font-size:8px;font-weight:900;letter-spacing:.09em;text-transform:uppercase}
.route-packages .package-includes dt::after{content:":"}
.route-packages .package-includes dd{margin:0;font-size:10px;font-weight:650;line-height:1.35}
.route-packages .package-includes .is-free dt{color:#956300}
.route-packages .compact-package-card .package-card-actions{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:0!important;padding:0 20px 18px}
.route-packages .compact-package-card .package-card-actions .button{min-height:38px;padding:8px 6px;font-size:8px;white-space:nowrap}
@media(max-width:1050px){
  .shop-products-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-width:820px}
  .route-packages .compact-package-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;max-width:760px}
  .route-packages .deal-grid>.compact-package-card{grid-template-columns:155px minmax(0,1fr);grid-template-rows:auto 1fr auto}
  .route-packages .compact-package-card>header{grid-column:2;grid-row:1;padding-left:16px}
  .route-packages .compact-package-card .package-visual{grid-column:1;grid-row:1/4;width:100%;height:100%!important;min-height:292px!important;padding:10px}
  .route-packages .compact-package-copy{grid-column:2;grid-row:2;padding:8px 16px 10px}
  .route-packages .compact-package-card .package-card-actions{grid-column:2;grid-row:3;padding:0 16px 16px}
}
@media(max-width:700px){
  .site-view[data-view="packages"]>.route-title{padding:36px 18px 20px!important}
  .site-view[data-view="packages"]>.route-title h1{font-size:clamp(38px,11vw,52px)!important}
  .route-packages{padding:8px 0 54px!important}
  .shop-categories{padding:0 16px;overflow-x:auto;scrollbar-width:none}.shop-categories::-webkit-scrollbar{display:none}.shop-categories button{white-space:nowrap}
  .shop-essentials{padding:8px 16px 58px}.shop-products-grid{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}.shop-products-grid::-webkit-scrollbar{display:none}.shop-product-card{width:82vw;min-width:82vw;scroll-snap-align:start}
  .route-packages .compact-package-grid{display:flex!important;max-width:none;gap:12px!important;padding:0 16px 14px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}
  .route-packages .compact-package-grid::-webkit-scrollbar{display:none}
  .route-packages .deal-grid>.compact-package-card{display:grid!important;grid-template-columns:118px minmax(0,1fr);grid-template-rows:auto 1fr auto;width:min(88vw,360px);min-width:min(88vw,360px);scroll-snap-align:center}
  .route-packages .compact-package-card:first-child{scroll-snap-align:start}
  .route-packages .compact-package-card>header{grid-column:2;grid-row:1;min-height:60px;padding:16px 14px 8px}
  .route-packages .compact-package-card h3{font-size:27px!important}
  .route-packages .compact-package-card .package-visual{grid-column:1;grid-row:1/4;width:100%;height:100%!important;min-height:278px!important;padding:8px}
  .route-packages .compact-package-copy{grid-column:2;grid-row:2;padding:7px 14px 9px}
  .route-packages .package-now strong{font-size:37px}
  .route-packages .compact-package-card .package-card-actions{grid-column:2;grid-row:3;padding:0 14px 14px}
  .route-packages .compact-package-card .package-card-actions .button{min-height:36px;font-size:7px}
}
@media(max-width:380px){
  .route-packages .deal-grid>.compact-package-card{grid-template-columns:104px minmax(0,1fr);width:90vw;min-width:90vw}
  .route-packages .compact-package-card .package-card-actions{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){.route-packages .deal-grid>.compact-package-card{transition:none!important}.route-packages .compact-package-card:hover::before,.route-packages .compact-package-card:focus-within::before,.route-packages .compact-package-card:hover .package-visual::after,.route-packages .compact-package-card:focus-within .package-visual::after{animation:none}.route-packages .compact-package-card .package-visual::after,.route-packages .compact-package-card .package-visual img,.route-packages .package-view-hint{transition:none!important}}

/* Final compact pass: keep the existing design, fit the four desktop cards in one normal viewport. */
@media(min-width:1051px){
  .site-view[data-view="packages"]>.route-title{padding:20px clamp(20px,5vw,86px) 10px!important}
  .site-view[data-view="packages"]>.route-title h1{margin:4px 0!important;font-size:clamp(38px,4vw,58px)!important;line-height:1!important}
  .shop-categories{margin-bottom:10px}
  .route-packages{padding-top:4px!important}
  .route-packages .deal-grid>.compact-package-card{grid-template-rows:auto 170px 1fr auto}
  .route-packages .compact-package-card>header{min-height:52px;padding:14px 18px 8px}
  .route-packages .compact-package-card h3{font-size:clamp(23px,1.8vw,32px)!important}
  .route-packages .compact-package-card .package-visual{height:170px!important;min-height:170px!important;padding-top:4px}
  .route-packages .compact-package-copy{padding:9px 18px 8px}
  .route-packages .package-includes{margin-top:6px}
  .route-packages .compact-package-card .package-card-actions{padding:0 18px 12px}
}

/* 2026-08-28 — compact colour-sweep View More interaction */
.route-packages .compact-package-card .package-visual::before{content:""!important;position:absolute!important;z-index:2!important;inset:auto!important;left:50%!important;top:46%!important;display:block!important;width:132px!important;height:48px!important;border:1px solid rgba(255,255,255,.66)!important;border-radius:999px!important;background:linear-gradient(90deg,#fcc226 0 50%,#17140f 50% 100%)!important;background-size:200% 100%!important;background-position:100% 0!important;box-shadow:0 12px 30px rgba(23,20,15,.22)!important;opacity:0!important;transform:translate(-50%,-50%)!important;transition:opacity .16s ease,background-position .48s cubic-bezier(.16,1,.3,1)!important;pointer-events:none!important}
.route-packages .compact-package-card:hover .package-visual::before,.route-packages .compact-package-card:focus-within .package-visual::before{opacity:1!important;background-position:0 0!important}
.route-packages .compact-package-card .package-visual::after{top:46%!important;min-width:0!important;min-height:0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;color:#fff!important;font-size:9px!important;opacity:0!important;transform:translate(-50%,-50%)!important;transition:opacity .16s ease .05s,color .18s ease .2s!important;animation:none!important;backdrop-filter:none!important}
.route-packages .compact-package-card:hover .package-visual::after,.route-packages .compact-package-card:focus-within .package-visual::after{color:#17140f!important;opacity:1!important;transform:translate(-50%,-50%)!important;animation:none!important}
.route-packages .compact-package-card:hover .package-visual img,.route-packages .compact-package-card:focus-within .package-visual img{filter:brightness(.66) saturate(.6)!important;transform:scale(1.025)!important}

/* 2026-09 monthly/normal catalogue */
.home-bundle-catalog{padding:0!important}
.bundle-mode-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,260px));justify-content:center;gap:10px;margin:0 auto 18px;padding:0 16px}
.bundle-mode-tabs button{display:grid;gap:2px;min-height:58px;padding:10px 20px;border:1px solid rgba(23,20,15,.18);border-radius:18px;background:rgba(255,255,255,.72);color:#17140f;font:inherit;text-align:left;box-shadow:0 10px 28px rgba(48,37,14,.06);cursor:pointer;transition:transform .2s ease,background .2s ease,color .2s ease}
.bundle-mode-tabs button:hover{transform:translateY(-2px)}
.bundle-mode-tabs button.active{border-color:#17140f;background:#17140f;color:#fff}
.bundle-mode-tabs span{font-size:12px;font-weight:900;letter-spacing:.06em}
.bundle-mode-tabs small{font-size:8px;font-weight:700;letter-spacing:.1em;opacity:.65}
.monthly-promotion-heading{display:flex;max-width:1280px;align-items:center;gap:16px;margin:0 auto 18px;padding:14px 20px;border:1px solid rgba(255,255,255,.85);border-radius:18px;background:linear-gradient(110deg,#f4b915,#ffdf78 55%,#fff1b8);box-shadow:0 14px 34px rgba(127,88,0,.12)}
.monthly-promotion-heading>span{padding:6px 10px;border-radius:999px;background:#17140f;color:#fff;font-size:9px;font-weight:900;letter-spacing:.08em}
.monthly-promotion-heading>strong{font-size:14px}.monthly-promotion-heading>small{margin-left:auto;color:#574a31;font-size:9px;font-weight:700}
.route-packages .bundle-package-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;max-width:1280px}
.route-packages .bundle-package-card>header{position:relative;display:flex;align-items:flex-start;justify-content:flex-end;flex-direction:column;gap:7px}
.monthly-deal-line strong{display:block;color:#956300;font-size:clamp(17px,1.55vw,24px)!important;font-weight:900;line-height:1.05;letter-spacing:-.025em;white-space:nowrap}
.normal-package-line{color:#956300;font-size:9px;font-weight:900;letter-spacing:.08em}
.featured-bundle-tag{position:absolute;top:10px;right:12px;padding:5px 8px;border-radius:999px;background:#17140f;color:#fff;font-size:7px;font-weight:900;letter-spacing:.08em}
.route-packages .featured-bundle{background:linear-gradient(145deg,rgba(255,238,166,.88),rgba(255,255,255,.62))!important;box-shadow:inset 0 1px 0 #fff,0 22px 54px rgba(174,119,0,.16)!important}
.package-visual-count{position:absolute;right:19px;bottom:25px;z-index:2;display:grid;min-width:42px;height:42px;place-items:center;border:1px solid rgba(255,255,255,.9);border-radius:50%;background:#17140f;color:#fff;font-size:15px;box-shadow:0 8px 20px rgba(0,0,0,.18)}
.route-packages .package-save{width:max-content;margin:4px 0 2px;padding:4px 8px;border-radius:999px;background:#d71920;color:#fff;font-size:8px;font-weight:900;letter-spacing:.07em}
.route-packages .normal-package-price{align-content:start;gap:4px;padding-top:3px}
.route-packages .normal-package-price>span{color:#625a4f;font-size:9px;font-weight:900;letter-spacing:.12em}
.route-packages .normal-package-price>strong{font-size:clamp(38px,3vw,54px);line-height:1;letter-spacing:-.055em}
.route-packages .normal-package-price>small{color:#5f584e;font-size:10px;font-weight:650}
@media(max-width:1050px){.route-packages .bundle-package-grid{grid-template-columns:1fr!important;max-width:760px}.monthly-promotion-heading{max-width:760px}.featured-bundle-tag{top:8px}.route-packages .bundle-package-card>header{justify-content:center}}
@media(max-width:700px){.bundle-mode-tabs{grid-template-columns:1fr 1fr;gap:7px;margin-bottom:12px}.bundle-mode-tabs button{min-height:54px;padding:9px 11px}.bundle-mode-tabs span{font-size:9px}.bundle-mode-tabs small{font-size:6px}.monthly-promotion-heading{display:grid;gap:6px;margin:0 16px 12px;padding:12px 14px}.monthly-promotion-heading>small{margin-left:0}.route-packages .bundle-package-grid{display:flex!important}.featured-bundle-tag{position:static;align-self:flex-start}.monthly-deal-line strong{font-size:13px!important;letter-spacing:-.02em}.normal-package-line{font-size:7px}.package-visual-count{right:10px;bottom:22px;min-width:34px;height:34px;font-size:12px}}
