/* Subscribe DD Catalog Mobile Visual Master — consolidated strict implementation. */
@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@500;600;700;800&display=swap');

:root{
  --r:#FF1A2E;
  --sdd-red:#FF1A2E;
  --sdd-black:#0F0F10;
  --sdd-light:#E5E7EB;
  --sdd-muted:#6F7788;
  --sdd-green:#06BE68;
  --sdd-line:#06C755;
  --sdd-radius:22px;
}

*{box-sizing:border-box}
html{background:#F7F9FC;overflow-x:hidden}
body{
  margin:0;
  overflow-x:hidden;
  color:var(--sdd-black);
  background:radial-gradient(circle at 50% -10%,#fff 0,#fbfcfe 42%,#f6f8fb 100%);
}
button,input,select{font-family:inherit}
button{touch-action:manipulation}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.sdd-icon{display:block;width:1em;height:1em;flex:0 0 auto}

/* Approved mobile master starts at the branded header. */
.intro{display:none!important}
#qa-data-environment{display:none!important}

/* Header */
.sdd-header{
  position:sticky;
  top:0;
  z-index:40;
  height:74px;
  border:0!important;
  background:rgba(255,255,255,.96);
  -webkit-backdrop-filter:blur(14px);
  backdrop-filter:blur(14px);
}
.sdd-header__inner{
  width:min(1180px,calc(100% - 28px))!important;
  height:100%;
  margin:auto;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  position:relative;
}
.sdd-header__brand{display:flex;align-items:center;min-width:0}
.sdd-header__brand .logo{display:block;width:151px;height:auto;max-width:100%}
.sdd-header__actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;position:relative;min-width:0}
.sdd-login,.sdd-menu-button{
  border:0;
  background:transparent;
  color:#111827;
  min-height:44px;
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
}
.sdd-login{gap:8px;padding:0 4px;font-weight:700;font-size:15px;white-space:nowrap}
.sdd-login .sdd-icon{font-size:28px}
.sdd-menu-button{width:44px;padding:0}
.sdd-menu-button .sdd-icon{font-size:34px}
.sdd-header-menu{
  position:absolute;
  right:0;
  top:52px;
  min-width:172px;
  padding:8px;
  background:#fff;
  border:1px solid #E6E9EF;
  border-radius:14px;
  box-shadow:0 14px 38px rgba(15,23,42,.14);
  z-index:60;
}
.sdd-header-menu[hidden]{display:none}
.sdd-header-menu a{display:block;padding:10px 12px;border-radius:9px;font-weight:600}
.sdd-header-menu a:hover{background:#F5F6F8}

/* Search / filter / category strip */
.sdd-tools{
  position:sticky!important;
  top:var(--sdd-global-header-height)!important;
  z-index:35!important;
  padding:4px 0 11px!important;
  border:0!important;
  background:rgba(249,251,253,.96)!important;
  -webkit-backdrop-filter:blur(14px);
  backdrop-filter:blur(14px);
}
.sdd-tools__inner{
  width:min(1180px,calc(100% - 28px))!important;
  margin:auto!important;
  display:grid!important;
  gap:10px!important;
  position:relative;
}
.sdd-search-row{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:0!important;
  min-height:58px;
  border:1px solid #E1E5EC;
  border-radius:17px;
  background:#fff;
  overflow:hidden;
  box-shadow:0 7px 23px rgba(25,37,57,.08);
}
.sdd-search{position:relative;min-width:0;display:flex;align-items:center}
.sdd-search__icon{
  position:absolute;
  z-index:2;
  left:16px;
  top:50%;
  transform:translateY(-50%);
  color:#0E1930;
  pointer-events:none;
}
.sdd-search__icon .sdd-icon{font-size:28px}
.sdd-search #q{
  width:100%;
  min-width:0;
  height:58px;
  padding:9px 42px 9px 54px!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  outline:0;
  color:#101827;
  font-size:15px;
  font-weight:500;
  box-shadow:none!important;
}
.sdd-search #q::placeholder{color:#7D8798;opacity:1}
.v2-search-clear{
  position:absolute;
  right:7px;
  top:50%;
  transform:translateY(-50%);
  width:34px;
  height:34px;
  padding:0;
  border:0;
  border-radius:50%;
  background:#F1F3F6;
  color:#687285;
  font-size:22px;
  line-height:1;
  cursor:pointer;
}
.v2-search-clear[hidden]{display:none}
.sdd-filter-button{
  min-width:116px;
  height:58px;
  border:0!important;
  border-left:1px solid #DDE2E9!important;
  border-radius:0!important;
  padding:0 14px!important;
  background:#fff!important;
  color:#101827!important;
  display:flex!important;
  align-items:center;
  justify-content:center;
  gap:9px;
  font-size:15px;
  font-weight:700;
  white-space:nowrap;
}
.sdd-filter-button .sdd-icon{font-size:27px}
.sdd-filter-button #fc:empty{display:none}
.sdd-search-row>select,#sort{display:none!important}

.sdd-category-nav{
  position:relative;
  width:100%;
  min-width:0;
  display:block;
}
.sdd-category-strip{
  width:100%;
  min-width:0;
  display:flex;
  align-items:center;
  gap:0;
  overflow-x:auto;
  overscroll-behavior-inline:contain;
  padding:0 40px 2px;
  scroll-padding-inline:40px;
  scrollbar-width:none;
  -webkit-overflow-scrolling:touch;
}
.sdd-category-strip::-webkit-scrollbar{display:none}
.sdd-category-loop-group{
  flex:0 0 auto;
  display:flex;
  align-items:center;
  gap:8px;
  padding-right:8px;
}
.sdd-category-strip button{
  flex:0 0 auto;
  min-height:42px;
  padding:8px 16px;
  border:0!important;
  border-radius:999px!important;
  background:#F0F2F5!important;
  color:#1D2430!important;
  font-size:14px;
  font-weight:600;
  box-shadow:none!important;
  white-space:nowrap;
}
.sdd-category-strip button.on{
  color:#fff!important;
  background:var(--sdd-red)!important;
  box-shadow:0 6px 15px rgba(255,26,46,.20)!important;
}
.sdd-category-nav-button{
  position:absolute;
  top:50%;
  z-index:4;
  width:32px;
  height:32px;
  padding:0;
  border:1px solid #E0E4EB;
  border-radius:50%;
  background:#fff;
  color:#243047;
  display:grid;
  place-items:center;
  box-shadow:0 3px 12px rgba(25,37,57,.10);
  cursor:pointer;
  transform:translateY(-50%);
}
.sdd-category-prev{left:0}
.sdd-category-next{right:0}
.sdd-category-nav::before,
.sdd-category-nav::after{
  content:"";
  position:absolute;
  top:0;
  bottom:2px;
  z-index:3;
  width:44px;
  pointer-events:none;
}
.sdd-category-nav::before{left:0;background:linear-gradient(90deg,#fff 58%,rgba(255,255,255,0))}
.sdd-category-nav::after{right:0;background:linear-gradient(270deg,#fff 58%,rgba(255,255,255,0))}
.sdd-category-nav-button[hidden]{display:none!important}
.sdd-category-nav-button:disabled{cursor:default;opacity:.38}
.sdd-category-prev .sdd-icon{transform:rotate(180deg)}
.sdd-category-nav-button .sdd-icon{font-size:16px}

/* Catalog canvas */
main>.w:not(.intro){width:min(1180px,calc(100% - 28px));margin:auto}
.count{padding:4px 0 9px;color:#7B8494;font-size:12px}
.grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:18px!important;
  padding-bottom:136px!important;
}

/* Product decision card */
.sdd-card{
  position:relative;
  min-width:0;
  display:grid!important;
  grid-template-columns:minmax(0,45%) minmax(0,55%)!important;
  grid-template-rows:auto!important;
  align-items:stretch;
  border:1px solid rgba(225,229,237,.72)!important;
  border-radius:var(--sdd-radius)!important;
  overflow:hidden!important;
  background:#fff!important;
  box-shadow:0 9px 30px rgba(28,40,60,.075)!important;
  transition:none!important;
}
.sdd-card:hover{transform:none!important;border-color:rgba(225,229,237,.72)!important;box-shadow:0 9px 30px rgba(28,40,60,.075)!important}
.sdd-campaign-badge{
  position:absolute;
  left:12px;
  top:12px;
  z-index:7;
  min-height:34px;
  padding:6px 11px;
  border-radius:8px;
  display:flex;
  align-items:center;
  gap:5px;
  color:#fff;
  background:linear-gradient(135deg,#FF3150,#FF1A2E);
  font-size:13px;
  font-weight:800;
  box-shadow:0 5px 13px rgba(255,26,46,.15);
}
.sdd-campaign-badge .sdd-icon{font-size:19px}
.sdd-campaign-badge--new{color:#075EA8;background:#E6F2FF;box-shadow:none}
.sdd-campaign-badge--promo{background:#FF1A2E}

.sdd-card__media{
  position:relative!important;
  min-width:0;
  height:auto!important;
  padding:53px 10px 14px 12px!important;
  background:#fff!important;
  display:flex!important;
  flex-direction:column;
  gap:8px;
  overflow:visible!important;
}
.sdd-hero{
  display:flex!important;
  align-items:center;
  justify-content:center;
  width:100%!important;
  height:204px!important;
  min-height:0;
  padding:2px;
  background:#fff;
}
.sdd-hero .gallery-image{display:block;width:100%!important;height:100%!important;max-width:100%;object-fit:contain!important;object-position:center}
.sdd-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch;gap:5px;width:100%;min-height:40px}
.sdd-thumb{
  min-width:0;
  height:40px;
  padding:2px;
  border:1px solid #DDE2EA;
  border-radius:7px;
  background:#F7F8FA;
  overflow:hidden;
  cursor:pointer;
}
.sdd-thumb img{display:block;width:100%;height:100%;object-fit:contain}
.sdd-thumb.is-active{border:1.5px solid var(--sdd-red);background:#fff;box-shadow:0 0 0 1px rgba(255,26,46,.04)}
.sdd-thumb--more{display:grid;place-items:center;color:#6B7486;font:700 15px/1 Poppins,"Noto Sans Thai",sans-serif}
.sdd-gallery-step{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  overflow:hidden!important;
  clip:rect(0 0 0 0)!important;
  opacity:0!important;
  pointer-events:none!important;
  border:0!important;
}
.sdd-secondary-action{
  width:100%;
  min-height:44px;
  border:1px solid #D9DEE7;
  border-radius:10px;
  background:#fff;
  color:#111827;
  display:grid;
  grid-template-columns:26px 1fr 18px;
  align-items:center;
  gap:8px;
  padding:7px 9px;
  font-size:14px;
  font-weight:700;
  text-align:left;
  cursor:pointer;
}
button.sdd-secondary-action{font-family:inherit}
.sdd-secondary-action .sdd-icon:first-child{font-size:24px}
.sdd-secondary-action .sdd-icon:last-child{font-size:17px;justify-self:end}
.sdd-secondary-action.is-selected{border-color:#14161A;background:#14161A;color:#fff}

.sdd-card__info{
  min-width:0;
  padding:14px 13px 14px 5px;
  display:flex;
  flex-direction:column;
  align-items:stretch;
}
.sdd-card__tools{min-height:44px;display:flex;justify-content:flex-end;align-items:center;gap:6px;margin-bottom:6px}
.sdd-round-action{
  width:44px;
  height:44px;
  padding:0;
  border:1px solid #DEE3EB;
  border-radius:50%;
  background:#fff;
  color:#101827;
  display:grid;
  place-items:center;
  cursor:pointer;
}
.sdd-round-action .sdd-icon{font-size:24px}
.sdd-favorite.is-active{color:var(--sdd-red);border-color:#FFC8CF;background:#FFF4F5}
.sdd-favorite.is-active .sdd-icon path{fill:currentColor}
.sdd-brand-badge{
  height:44px;
  min-width:55px;
  padding:0 9px;
  border:1px solid #DEE3EB;
  border-radius:999px;
  background:#fff;
  color:#444B59;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:4px;
  font:700 13px/1 Poppins,"Noto Sans Thai",sans-serif;
}
.sdd-brand-badge--lg{
  width:80px;
  min-width:80px;
  padding-inline:8px;
  overflow:hidden;
}
.sdd-lg-logo{
  display:block;
  width:64px;
  max-width:none;
  height:auto;
  max-height:26px;
  object-fit:contain;
  object-position:center;
  transform:scale(1.18);
  transform-origin:center;
}
.sdd-category{margin-top:1px;color:#7B8496;font-size:12.5px;line-height:1.35;font-weight:500}
.sdd-model-link{display:block;min-width:0}
.sdd-model{margin:3px 0 0!important;color:#07090C;font:800 27px/1.06 Poppins,"Noto Sans Thai",sans-serif!important;letter-spacing:-.045em;overflow-wrap:anywhere}
.sdd-headline{
  margin-top:6px;
  color:#687287;
  font-size:13px;
  line-height:1.42;
  font-weight:700;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.sdd-card__specs{list-style:none;padding:0;margin:10px 0 8px;display:grid;gap:5px}
.sdd-card__specs li{
  display:grid;
  grid-template-columns:23px minmax(0,1fr);
  align-items:center;
  gap:7px;
  min-width:0;
  color:#1C2432;
  font-size:12.4px;
  line-height:1.3;
  font-weight:500;
}
.sdd-spec-check{width:23px;height:23px;border-radius:50%;display:grid;place-items:center;background:var(--sdd-green);color:#fff}
.sdd-spec-check .sdd-icon{font-size:17px}
.sdd-card__specs .sdd-spec-empty{grid-template-columns:1fr;color:#8A92A1;font-size:11.5px}
.sdd-card__divider{height:1px;background:#E2E6ED;margin:2px 0 8px}
.sdd-price__label{color:#7A8495;font-size:12px;line-height:1.2;font-weight:500}
.sdd-price__row{min-width:0;display:flex;align-items:flex-end;gap:5px;white-space:nowrap;margin-top:0}
.sdd-price__row strong{color:var(--sdd-red);font:800 35px/.98 Poppins,"Noto Sans Thai",sans-serif;letter-spacing:-.045em}
.sdd-price__row span{color:#121722;font-size:16px;line-height:1.3;font-weight:800;padding-bottom:2px}
.sdd-price-info{
  width:28px;
  height:28px;
  margin:0 0 -1px 1px;
  padding:0;
  border:0;
  border-radius:50%;
  background:transparent;
  color:#788397;
  display:grid;
  place-items:center;
  cursor:pointer;
}
.sdd-price-info:hover,.sdd-price-info:focus-visible{background:#F1F4F8;color:#4E596B;outline:none}
.sdd-price-info .sdd-icon{font-size:20px;margin:0}
.sdd-price__pending{margin-top:2px;color:#575F6C;font-size:17px;font-weight:700}
.sdd-signup-pill{
  width:max-content;
  max-width:100%;
  min-height:29px;
  margin-top:8px;
  padding:5px 10px;
  border-radius:999px;
  background:#FFF0F2;
  color:#E11931;
  display:flex;
  align-items:center;
  gap:7px;
  font-size:11.5px;
  line-height:1.3;
  font-weight:700;
}
.sdd-signup-pill strong{font-weight:800}
.sdd-signup-tag{font-size:15px;line-height:1;transform:rotate(45deg)}
.sdd-signup-pill--advance{background:#FFF5E8;color:#A95600}
.sdd-signup-pill--none{background:#F3F5F7;color:#596273}
.sdd-contract{margin-top:6px;color:#788296;font-size:11.5px;line-height:1.25;font-weight:500}
.sdd-package-cta{
  width:100%;
  min-height:67px;
  margin-top:auto;
  padding:8px 10px;
  border:0;
  border-radius:14px;
  background:linear-gradient(135deg,#FF0F2A,#FF1A2E);
  color:#fff;
  display:grid;
  grid-template-columns:44px minmax(0,1fr) 18px;
  align-items:center;
  gap:7px;
  text-align:left;
  box-shadow:0 9px 20px rgba(255,26,46,.16);
  cursor:pointer;
}
.sdd-package-cta:disabled{opacity:.48;cursor:not-allowed}
.sdd-package-cta__icon{display:grid;place-items:center}
.sdd-package-cta__icon .sdd-icon{font-size:38px}
.sdd-package-cta__copy{display:flex;min-width:0;flex-direction:column}
.sdd-package-cta__copy strong{font-size:17px;line-height:1.22;font-weight:800;white-space:nowrap}
.sdd-package-cta__copy small{margin-top:2px;font-size:10.5px;line-height:1.25;font-weight:500;opacity:.92;white-space:nowrap}
.sdd-package-cta__chevron{display:grid;place-items:center}
.sdd-package-cta__chevron .sdd-icon{font-size:18px}
.sdd-card__warn{margin-top:7px}

/* Sparse cards keep the truthful decision block together at every non-mobile width too. */
.sdd-card--sparse .sdd-card__divider{margin-top:auto}
.sdd-card--one-spec .sdd-card__specs{min-height:54px;align-content:start}

/* Empty state */
.v2-empty{grid-column:1/-1;border:1px dashed #D7DCE5;border-radius:20px;background:#fff;text-align:center;padding:42px 20px;margin:6px 0 30px}
.v2-empty-icon{width:56px;height:56px;border-radius:50%;display:grid;place-items:center;margin:0 auto 10px;background:#F5F6F8;color:#667084}
.v2-empty-icon .sdd-icon{font-size:28px}
.v2-empty h2{font-size:21px;margin:0 0 4px}
.v2-empty p{color:#697284;margin:0 auto 18px;max-width:520px}
.v2-empty>div:last-child{display:flex;justify-content:center;gap:8px;flex-wrap:wrap}

/* Locked service bar */
.sdd-service-bar{
  position:fixed;
  left:8px;
  right:8px;
  bottom:calc(7px + env(safe-area-inset-bottom));
  z-index:55;
  min-height:72px;
  padding:7px;
  border:1px solid rgba(222,226,233,.8);
  border-radius:18px;
  background:rgba(255,255,255,.97);
  box-shadow:0 -6px 28px rgba(20,30,48,.12);
  display:none;
  grid-template-columns:1.03fr .96fr 1.13fr;
  gap:7px;
  -webkit-backdrop-filter:blur(16px);
  backdrop-filter:blur(16px);
}
.sdd-service-bar__item{
  min-width:0;
  min-height:58px;
  padding:8px 9px;
  border:0;
  border-radius:13px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  text-decoration:none;
  cursor:pointer;
}
.sdd-service-bar__item>span:last-child{min-width:0;display:flex;flex-direction:column;text-align:left}
.sdd-service-bar__item strong{font-size:14px;line-height:1.25;font-weight:800;white-space:nowrap}
.sdd-service-bar__item small{font-size:9.8px;line-height:1.3;font-weight:500;white-space:nowrap}
.sdd-service-bar__line{background:var(--sdd-line);color:#fff}
.sdd-line-mark{
  width:40px;
  height:31px;
  border-radius:50%;
  background:#fff;
  color:var(--sdd-line);
  display:grid;
  place-items:center;
  font:800 10px/1 Poppins,sans-serif;
  position:relative;
  flex:0 0 auto;
}
.sdd-line-mark::after{
  content:"";
  position:absolute;
  left:9px;
  bottom:-5px;
  border-width:6px 6px 0 0;
  border-style:solid;
  border-color:#fff transparent transparent transparent;
}
.sdd-service-bar__contact{background:#fff;color:#0E1830;box-shadow:0 4px 14px rgba(23,33,52,.08)}
.sdd-service-bar__contact>.sdd-icon{font-size:35px}
.sdd-service-bar__advisor{background:var(--sdd-red);color:#fff}
.sdd-service-bar__advisor>.sdd-icon{font-size:36px}
.sdd-toast{
  position:fixed;
  z-index:70;
  left:50%;
  bottom:calc(91px + env(safe-area-inset-bottom));
  transform:translate(-50%,12px);
  width:max-content;
  max-width:calc(100% - 32px);
  padding:10px 13px;
  border-radius:11px;
  background:#15171B;
  color:#fff;
  box-shadow:0 10px 30px rgba(0,0,0,.22);
  font-size:12px;
  opacity:0;
  pointer-events:none;
  transition:opacity .16s,transform .16s;
}
.sdd-toast.is-visible{opacity:1;transform:translate(-50%,0)}
.sdd-price-sheet h2{margin:0 0 10px;font-size:22px}
.sdd-price-sheet h3{margin:16px 0 8px;font-size:15px}
.sdd-price-sheet__hero{
  margin:4px 0 10px;
  padding:13px 14px;
  border-radius:14px;
  background:#FFF5F6;
  border:1px solid #FFD9DE;
}
.sdd-price-sheet__hero small{display:block;color:#747D8D;font-size:11px;font-weight:600}
.sdd-price-sheet__hero strong{display:block;margin-top:2px;color:var(--sdd-red);font-size:24px;line-height:1.2}
.sdd-price-sheet__hero p{margin:5px 0 0;color:#616B7B;font-size:11.5px;line-height:1.45}
.sdd-price-sheet__facts{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.sdd-price-sheet__facts>div{padding:10px 11px;border:1px solid #E1E5EC;border-radius:12px;background:#fff}
.sdd-price-sheet__facts small{display:block;color:#7A8495;font-size:10.5px}
.sdd-price-sheet__facts strong{display:block;margin-top:3px;color:#161C27;font-size:12.5px;line-height:1.35}
.sdd-price-sheet__schedule{margin:0;padding:0;list-style:none;display:grid;gap:7px}
.sdd-price-sheet__schedule li{padding:8px 10px;border-radius:10px;background:#F7F8FA;color:#3F4857;font-size:12px;line-height:1.4}
.sdd-price-sheet__note{margin:12px 0;color:#747D8D;font-size:10.8px;line-height:1.45}

.tray{bottom:0!important;z-index:51!important}
.compare-notice{max-width:1240px;margin:0 auto 5px;padding:0 16px;color:#9b1c2b;font-size:12px;text-align:center}
.sdd-has-tray .grid{padding-bottom:150px!important}

/* Overlay ownership: filter/package flows must sit above sticky catalog chrome. */
body.sdd-overlay-open{overflow:hidden}
.sheet-backdrop,.filter-backdrop{z-index:79!important}
.sheet,.filter-drawer{z-index:80!important}
.sdd-service-bar{transition:opacity .16s ease,transform .16s ease}
body.sdd-overlay-open .sdd-service-bar{
  opacity:0;
  pointer-events:none;
  transform:translateY(12px);
}

/* Tablet */
@media(max-width:900px){
  .grid{grid-template-columns:1fr!important}
  .sdd-card{max-width:720px;margin-inline:auto}
  .sdd-card__media{padding-left:18px!important;padding-right:16px!important}
  .sdd-hero{height:250px!important}
  .sdd-card__info{padding-right:18px}
  .sdd-model{font-size:31px!important}
  .sdd-card__specs li{font-size:13.5px}
  .sdd-price__row strong{font-size:39px}
  .sdd-package-cta__copy strong{font-size:19px}
}

/* Tablet canvas: mobile service bar stays mobile-only. */
@media(max-width:768px){
  main>.w:not(.intro){width:calc(100% - 24px)}
  .count{display:none}
  .grid{gap:14px!important;padding-top:1px!important;padding-bottom:72px!important}
}

/* Tablet / iPad portrait: one deliberate decision card, not a stretched phone card. */
@media(min-width:641px) and (max-width:900px){
  .sdd-header__inner,
  .sdd-tools__inner,
  main>.w:not(.intro){width:min(860px,calc(100% - 32px))!important}
  .grid{grid-template-columns:1fr!important;gap:18px!important;padding-bottom:64px!important}
  .sdd-card{
    width:100%;
    max-width:860px;
    grid-template-columns:minmax(0,42.5%) minmax(0,57.5%)!important;
    border-radius:22px!important;
  }
  .sdd-card__media{padding:38px 14px 14px 16px!important;gap:7px}
  .sdd-hero{height:clamp(222px,31vw,270px)!important}
  .sdd-gallery{gap:6px}
  .sdd-thumb{height:44px}
  .sdd-secondary-action{min-height:40px;font-size:13.5px}
  .sdd-card__info{padding:14px 16px 14px 11px}
  .sdd-card__tools{min-height:40px;margin-bottom:4px}
  .sdd-round-action{width:40px;height:40px}
  .sdd-brand-badge{height:40px}
  .sdd-brand-badge--lg{width:72px;min-width:72px;padding-inline:8px;overflow:hidden}
  .sdd-lg-logo{width:56px;max-width:none;max-height:23px;transform:scale(1.16);transform-origin:center}
  .sdd-model{font-size:28px!important}
  .sdd-headline{font-size:12.4px}
  .sdd-card__specs{margin:8px 0 7px}
  .sdd-card__specs li{font-size:12.2px}
  .sdd-price__row strong{font-size:36px}
  .sdd-package-cta{min-height:60px}
  .sdd-package-cta__copy strong{font-size:17px}
  .sdd-card--type-bundle .sdd-hero .gallery-image{transform:scale(1.12)}
  .sdd-card--type-tv .sdd-hero .gallery-image{transform:scale(1.04)}
}

/* iPad landscape / compact desktop: two cards with an independent compact profile. */
@media(min-width:901px) and (max-width:1199px){
  .sdd-header__inner,
  .sdd-tools__inner,
  main>.w:not(.intro){width:calc(100% - 24px)!important}
  .grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important;padding-bottom:72px!important}
  .sdd-card{grid-template-columns:minmax(0,44%) minmax(0,56%)!important;border-radius:20px!important}
  .sdd-card__media{padding:38px 9px 11px 11px!important;gap:6px}
  .sdd-hero{height:188px!important}
  .sdd-gallery{gap:4px;min-height:36px}
  .sdd-thumb{height:36px}
  .sdd-secondary-action{min-height:34px;grid-template-columns:22px 1fr 14px;gap:6px;padding:4px 7px;font-size:12.3px;border-radius:8px}
  .sdd-secondary-action .sdd-icon:first-child{font-size:19px}
  .sdd-secondary-action .sdd-icon:last-child{font-size:14px}
  .sdd-card__info{padding:10px 10px 11px 9px}
  .sdd-card__tools{min-height:38px;gap:5px;margin-bottom:2px}
  .sdd-round-action{width:38px;height:38px}
  .sdd-round-action .sdd-icon{font-size:21px}
  .sdd-brand-badge{height:38px;min-width:50px;padding-inline:7px}
  .sdd-brand-badge--lg{width:70px;min-width:70px;padding-inline:8px;overflow:hidden}
  .sdd-lg-logo{width:54px;max-width:none;max-height:22px;transform:scale(1.16);transform-origin:center}
  .sdd-category{font-size:11.3px}
  .sdd-model{font-size:23.5px!important;line-height:1.03!important}
  .sdd-headline{font-size:10.9px;line-height:1.3;margin-top:4px}
  .sdd-card__specs{margin:6px 0 6px;gap:4px}
  .sdd-card__specs li{grid-template-columns:20px minmax(0,1fr);gap:5px;font-size:10.8px;line-height:1.22}
  .sdd-spec-check{width:20px;height:20px}
  .sdd-price__label{font-size:10.8px}
  .sdd-price__row strong{font-size:31px}
  .sdd-price__row span{font-size:13px}
  .sdd-signup-pill{font-size:9.6px;padding:4px 7px}
  .sdd-contract{font-size:10px}
  .sdd-package-cta{min-height:56px;padding:6px 8px;grid-template-columns:36px minmax(0,1fr) 15px;gap:5px;border-radius:12px}
  .sdd-package-cta__icon .sdd-icon{font-size:31px}
  .sdd-package-cta__copy strong{font-size:14px}
  .sdd-package-cta__copy small{font-size:8.9px}
  .sdd-card--type-bundle .sdd-hero .gallery-image{transform:scale(1.10)}
  .sdd-card--type-tv .sdd-hero .gallery-image{transform:scale(1.04)}
}

/* Large desktop: retain two high-information decision cards and use the available width. */
@media(min-width:1200px){
  .sdd-header__inner,
  .sdd-tools__inner,
  main>.w:not(.intro){width:min(1320px,calc(100% - 40px))!important}
  .grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:20px!important;padding-bottom:80px!important}
  .sdd-card{grid-template-columns:minmax(0,43%) minmax(0,57%)!important}
  .sdd-hero{height:220px!important}
  .sdd-card--type-bundle .sdd-hero .gallery-image{transform:scale(1.08)}
  .sdd-card--type-tv .sdd-hero .gallery-image{transform:scale(1.03)}
}

/* Approved mobile master: 414–430 px and down. */
@media(max-width:640px){
  body{padding-bottom:calc(76px + env(safe-area-inset-bottom))}
  .sdd-service-bar{display:grid}
  .grid{padding-bottom:118px!important}
  .sdd-header{height:42px}
  .sdd-header__inner{width:calc(100% - 24px)!important}
  .sdd-header__brand .logo{width:124px}
  .sdd-header__actions{gap:4px}
  .sdd-login{min-height:34px;padding:0 2px;font-size:11.5px;gap:5px}
  .sdd-login .sdd-icon{font-size:22px}
  .sdd-menu-button{width:36px;min-height:34px}
  .sdd-menu-button .sdd-icon{font-size:26px}

  /* Match master vertical rhythm: 30px search → 8px gap → 26px chips → 10px card gap. */
  .sdd-tools{top:var(--sdd-global-header-height)!important;padding:2px 0 10px!important}
  .sdd-tools__inner{width:calc(100% - 24px)!important;gap:8px!important}
  .sdd-search-row{min-height:30px;border-radius:12px}
  .sdd-search #q{height:30px;font-size:11.8px;padding:5px 34px 5px 38px!important}
  .sdd-search__icon{left:11px}
  .sdd-search__icon .sdd-icon{font-size:19px}
  .v2-search-clear{width:24px;height:24px;right:5px;font-size:17px}
  .sdd-filter-button{height:30px;min-width:76px;padding:0 7px!important;font-size:11.5px;gap:5px}
  .sdd-filter-button .sdd-icon{font-size:19px}
  .sdd-category-nav{width:100%}
  .sdd-category-strip{gap:0;padding:0 32px 1px;scroll-padding-inline:32px}
  .sdd-category-loop-group{gap:6px;padding-right:6px}
  .sdd-category-strip button{min-height:26px;padding:3px 10px;font-size:10.8px}
  .sdd-category-nav-button{width:26px;height:26px}
  .sdd-category-nav::before,.sdd-category-nav::after{width:34px}
  .sdd-category-nav-button .sdd-icon{font-size:13px}

  .sdd-card{
    grid-template-columns:minmax(0,46.5%) minmax(0,53.5%)!important;
    border-radius:20px!important;
    box-shadow:0 8px 27px rgba(28,40,60,.07)!important;
  }
  .sdd-campaign-badge{left:9px;top:7px;min-height:22px;padding:2px 6px;font-size:10px}
  .sdd-campaign-badge .sdd-icon{font-size:14px}

  .sdd-card__media{padding:26px 8px 9px 10px!important;gap:5px}
  .sdd-hero{height:174px!important;padding:0;overflow:hidden}
  .sdd-card--type-bundle .sdd-hero .gallery-image{transform:scale(1.16)}
  .sdd-card--type-tv .sdd-hero .gallery-image{transform:scale(1.06)}
  .sdd-gallery{gap:4px;min-height:34px}
  .sdd-thumb{height:34px;border-radius:6px}
  .sdd-thumb--more{font-size:13px}
  .sdd-secondary-action{min-height:31px;grid-template-columns:20px 1fr 13px;gap:5px;padding:3px 7px;font-size:12.4px;border-radius:8px}
  .sdd-secondary-action .sdd-icon:first-child{font-size:17px}
  .sdd-secondary-action .sdd-icon:last-child{font-size:13px}

  .sdd-card__info{padding:9px 10px 10px 13px}
  .sdd-card__tools{min-height:30px;gap:4px;margin-bottom:0}
  .sdd-round-action{width:30px;height:30px}
  .sdd-round-action .sdd-icon{font-size:18px}
  .sdd-brand-badge{height:30px;min-width:43px;padding-inline:5px;font-size:10.5px}
  .sdd-brand-badge--lg{width:68px;min-width:68px;padding-inline:6px;overflow:hidden}
  .sdd-lg-logo{width:56px;max-width:none;max-height:21px;transform:scale(1.20);transform-origin:center}
  .sdd-card--sparse .sdd-brand-badge--lg,
  .sdd-card--type-tv .sdd-brand-badge--lg,
  .sdd-card--type-bundle .sdd-brand-badge--lg{width:70px;min-width:70px}
  .sdd-card--sparse .sdd-lg-logo,
  .sdd-card--type-tv .sdd-lg-logo,
  .sdd-card--type-bundle .sdd-lg-logo{width:58px;transform:scale(1.20);transform-origin:center}
  .sdd-category{margin-top:0;font-size:10.8px;line-height:1.2}
  .sdd-model{font-size:23.5px!important;line-height:1.02!important;margin-top:2px!important}
  .sdd-headline{font-size:10.7px;line-height:1.28;margin-top:3px}

  .sdd-card__specs{margin:4px 0 4px;gap:3px}
  .sdd-card__specs li{grid-template-columns:18px minmax(0,1fr);gap:5px;font-size:10.5px;line-height:1.18}
  .sdd-spec-check{width:18px;height:18px}
  .sdd-spec-check .sdd-icon{font-size:13px}
  .sdd-card__divider{margin:0 0 4px}

  .sdd-price__label{font-size:10px}
  .sdd-price__row{gap:4px}
  .sdd-price__row strong{font-size:30px}
  .sdd-price__row span{font-size:12px;padding-bottom:1px}
  .sdd-price-info{width:24px;height:24px;margin-left:0}
  .sdd-price-info .sdd-icon{font-size:16px}
  .sdd-signup-pill{min-height:23px;margin-top:4px;padding:3px 7px;font-size:9.2px;gap:5px}
  .sdd-contract{font-size:9.6px;margin-top:3px}

  .sdd-package-cta{min-height:50px;margin-top:auto;padding:5px 7px;grid-template-columns:33px minmax(0,1fr) 14px;gap:5px;border-radius:11px}
  .sdd-package-cta__icon .sdd-icon{font-size:29px}
  .sdd-package-cta__copy strong{font-size:14px}
  .sdd-package-cta__copy small{font-size:8.6px}
  .sdd-package-cta__chevron .sdd-icon{font-size:14px}

  /* Sparse-data products stay truthful, but price + CTA remain visually grouped. */
  .sdd-card--sparse .sdd-card__divider{margin-top:auto}
  .sdd-card--sparse .sdd-package-cta{margin-top:8px}
  .sdd-card--one-spec .sdd-card__specs{min-height:40px;align-content:start}

  /* Master bar spans the viewport; actions remain inset and safe-area aware. */
  .tray{bottom:calc(60px + env(safe-area-inset-bottom))!important}
  .sdd-has-tray .grid{padding-bottom:205px!important}

  .sdd-service-bar{
    left:0;
    right:0;
    bottom:0;
    min-height:52px;
    padding:6px 10px calc(6px + env(safe-area-inset-bottom));
    gap:6px;
    border-radius:18px 18px 0 0;
    border-inline:0;
  }
  .sdd-service-bar__item{min-height:40px;padding:4px 6px;gap:5px;border-radius:10px}
  .sdd-service-bar__item strong{font-size:11px}
  .sdd-service-bar__item small{font-size:7.3px}
  .sdd-line-mark{width:29px;height:23px;font-size:7px}
  .sdd-service-bar__contact>.sdd-icon,.sdd-service-bar__advisor>.sdd-icon{font-size:25px}
  .sdd-toast{bottom:calc(66px + env(safe-area-inset-bottom))}
}

/* 414 / 430 optical refinement */
@media(max-width:430px){
  .sdd-card{grid-template-columns:minmax(0,46%) minmax(0,54%)!important}
  .sdd-card__media{padding-left:9px!important;padding-right:7px!important}
  .sdd-hero{height:177px!important}
  .sdd-model{font-size:23px!important}
  .sdd-headline{font-size:10.5px}
  .sdd-card__specs li{font-size:10.2px}
  .sdd-price__row strong{font-size:29px}
  .sdd-package-cta__copy strong{font-size:13.8px}
}

/* 390 / 402 optical refinement */
@media(max-width:402px){
  .sdd-header__brand .logo{width:118px}
  .sdd-login span{font-size:11px}
  .sdd-tools__inner{width:calc(100% - 20px)!important}
  .sdd-search #q{font-size:11.4px}
  .sdd-filter-button{min-width:72px;font-size:11.2px}
  main>.w:not(.intro){width:calc(100% - 20px)}
  .sdd-card{grid-template-columns:minmax(0,45.7%) minmax(0,54.3%)!important}
  .sdd-card__media{padding-left:8px!important;padding-right:6px!important}
  .sdd-hero{height:166px!important}
  .sdd-card__info{padding-right:8px}
  .sdd-model{font-size:21px!important}
  .sdd-headline{font-size:10.1px}
  .sdd-card__specs li{font-size:9.8px}
  .sdd-price__row strong{font-size:28px}
  .sdd-signup-pill{font-size:8.8px}
  .sdd-package-cta__copy strong{font-size:13px}
  .sdd-service-bar__item strong{font-size:10.6px}
  .sdd-service-bar__item small{font-size:7px}
}

@media(max-width:390px){
  .sdd-brand-badge--lg{width:66px;min-width:66px;padding-inline:6px;overflow:hidden}
  .sdd-lg-logo{width:54px;max-width:none;transform:scale(1.18);transform-origin:center}
  .sdd-card--sparse .sdd-brand-badge--lg,
  .sdd-card--type-tv .sdd-brand-badge--lg,
  .sdd-card--type-bundle .sdd-brand-badge--lg{width:68px;min-width:68px}
  .sdd-card--sparse .sdd-lg-logo,
  .sdd-card--type-tv .sdd-lg-logo,
  .sdd-card--type-bundle .sdd-lg-logo{width:56px;transform:scale(1.18);transform-origin:center}
  .sdd-model{font-size:20.2px!important;letter-spacing:-.055em}
  .sdd-headline{font-size:9.8px}
  .sdd-card__specs li{font-size:9.45px}
  .sdd-price__row strong{font-size:27px}
  .sdd-price__row span{font-size:11.4px}
  .sdd-signup-pill{padding-inline:6px;font-size:8.45px}
  .sdd-package-cta__copy strong{font-size:12.5px}
  .sdd-package-cta__copy small{font-size:8px}
  .sdd-service-bar__item{padding-inline:4px}
  .sdd-service-bar__item strong{font-size:10.2px}
  .sdd-service-bar__item small{font-size:6.8px}
}

@media(min-width:641px){
  .tray{bottom:0!important}
  .sdd-has-tray .grid{padding-bottom:150px!important}
  .sdd-toast{bottom:24px}
}

@media(min-width:901px){
  .sdd-service-bar{display:none}
  body{padding-bottom:0}
}

@media(prefers-reduced-motion:reduce){
  .sdd-toast{transition:none}
}
