:root{
  --brand-blue:#1677ff;
  --tabby-green:#00B67A;
  --site-header-h:50px;
  --rp-accent:var(--brand-blue);
  --rp-border:rgba(0,0,0,.08);
  --rp-text:#0b0b0b;
  --rp-muted:rgba(0,0,0,.65);
  --rp-soft:rgba(22,119,255,.06);
}

@keyframes softPulse{
  0%{box-shadow:0 6px 14px rgba(0,0,0,.18);}
  50%{box-shadow:0 6px 18px rgba(22,119,255,.28);}
  100%{box-shadow:0 6px 14px rgba(0,0,0,.18);}
}

@keyframes fadeError{
  from{opacity:0;transform:translateY(-2px);}
  to{opacity:1;transform:translateY(0);}
}

/* =========================
   GLOBAL SAFETY
========================= */
html,body{
  overflow-x:hidden;
}

.top-model-detail-price,
.top-model-detail-price *{
  box-sizing:border-box;
}

/* =========================
   TOP STICKY BAR
========================= */
.top-model-detail-price{
  position:sticky;
  top:calc(var(--site-header-h) - 1px);
  z-index:1200;
  width:100%;
  left:0;
  right:0;
  min-height:68px;
  display:flex;
  align-items:center;
  border-bottom:1px solid rgba(0,0,0,.06);
  background:#f5f8ff !important;
  transform:translateZ(0);
  -webkit-transform:translateZ(0);
  backface-visibility:hidden;
  -webkit-backface-visibility:hidden;
  will-change:transform;
}

.top-model-detail-price .container{
  width:100%;
  max-width:1240px;
  margin:0 auto;
  padding-top:8px !important;
  padding-bottom:8px !important;
  padding-left:16px !important;
  padding-right:16px !important;
}

.top-model-detail-price,
.top-model-detail-price *{
  font-family:inherit !important;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  text-rendering:optimizeLegibility;
  font-style:normal !important;
  letter-spacing:.2px;
}

.top-model-detail-price .row.v-align{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  flex-wrap:nowrap !important;
  min-height:52px;
  margin-left:0 !important;
  margin-right:0 !important;
}

.top-model-detail-price .row.v-align > [class*="col-"]{
  float:none !important;
  padding-left:8px !important;
  padding-right:8px !important;
}

.top-model-detail-price .row.v-align > .col-lg-3,
.top-model-detail-price .row.v-align > .col-xl-3{
  flex:0 0 29% !important;
  max-width:29% !important;
}

.top-model-detail-price .row.v-align > .col-lg-6,
.top-model-detail-price .row.v-align > .col-xl-6{
  flex:0 0 42% !important;
  max-width:42% !important;
}

.top-model-detail-price .l-tpdp-inner,
.top-model-detail-price .new-tpdp-inner,
.top-model-detail-price .r-tpdp-inner{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
  padding:0 !important;
  overflow:visible;
  height:100%;
  min-height:44px;
  display:flex !important;
  align-items:center !important;
}

.top-model-detail-price .l-tpdp-inner:before,
.top-model-detail-price .new-tpdp-inner:before,
.top-model-detail-price .r-tpdp-inner:before{
  display:none !important;
}

.top-model-detail-price .tpdp-section ul,
.top-model-detail-price .new-tpdp-inner ul{
  margin:0 !important;
  padding:0 !important;
  list-style:none !important;
}

.top-inline-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  white-space:nowrap;
}

.top-inline-rt{
  display:flex;
  align-items:center;
  gap:6px;
  min-width:0;
  font-weight:800;
  font-size:13px;
  line-height:1.2 !important;
  color:#0b0b0b;
}

.top-inline-total{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  text-align:center;
  line-height:1.2 !important;
}

.top-inline-total .tt-label{
  font-weight:800;
  font-size:12px;
  opacity:.75;
  color:#2b2b2b;
}

#total_minutes{
  font-weight:900 !important;
  line-height:1.2 !important;
}

#total_amt{
  font-weight:900 !important;
  font-size:16px;
  line-height:1.2 !important;
  color:#0b0b0b !important;
}

.rt-ico{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:22px;
  height:22px;
  border-radius:999px;
  background:rgba(255,255,255,.8);
  border:1px solid rgba(0,0,0,.06);
  font-size:13px;
}

/* CENTER PRICE + TABBY */
.top-model-detail-price .new-tpdp-inner{
  justify-content:center;
  width:100%;
}

.top-model-detail-price .new-tpdp-inner ul{
  width:100%;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
}

.top-model-detail-price #showhide_total_row,
.top-model-detail-price #showhide_tabby_row,
.top-model-detail-price #showhide_installment_amount{
  width:100%;
  display:flex;
  justify-content:center;
  align-items:center;
}

#showhide_tabby_row{
  margin-top:6px;
  gap:6px;
  text-align:center;
}

#tabby_text{
  color:var(--tabby-green);
  font-weight:900;
}

/* =========================
   TOP RIGHT PHONE + NEXT
========================= */
.top-model-detail-price .r-tpdp-inner{
  width:100%;
  min-height:44px;
  display:flex;
  align-items:center;
  justify-content:flex-end !important;
}

.phone-action-row{
  width:100%;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:10px;
  min-height:44px;
  flex-wrap:nowrap !important;
}

.phone-field{
  flex:1 1 auto !important;
  min-width:0 !important;
  width:100%;
  max-width:100% !important;
  display:flex;
  flex-direction:column;
  justify-content:center;
  position:relative;
}

.top-model-detail-price .phone-field input{
  width:100% !important;
  height:44px !important;
  min-height:44px !important;
  line-height:44px !important;
  border-radius:22px !important;
  box-sizing:border-box !important;
  padding:0 18px !important;
  margin:0 !important;
  display:block !important;
  position:relative;
  top:0 !important;
}

.top-model-detail-price #get-price-btn.phone-action-btn{
  width:44px !important;
  height:44px !important;
  min-width:44px !important;
  min-height:44px !important;
  flex:0 0 44px !important;
  border-radius:50% !important;
  padding:0 !important;
  margin:0 !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  align-self:center !important;
  position:static !important;
  top:auto !important;
  transform:none !important;
}

.top-model-detail-price #get-price-btn.phone-action-btn:hover{
  transform:none !important;
}

#get-price-btn .btn-arrow{
  width:100%;
  height:100%;
  display:flex;
  align-items:center;
  justify-content:center;
}

#get-price-btn .btn-arrow svg{
  display:block;
  width:18px;
  height:18px;
}

/* =========================
   MOBILE STICKY SUBMIT
========================= */
#mobileStickyCheckout{
  display:none;
  position:fixed;
  right:12px;
  bottom:16px;
  z-index:9999;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  padding:0 !important;
}

#mobileStickyCheckout button{
  width:56px !important;
  height:56px !important;
  min-width:56px !important;
  min-height:56px !important;
  border-radius:50% !important;
  padding:0 !important;
  margin:0 !important;
  border:1px solid rgba(0,0,0,.12) !important;
  background:linear-gradient(180deg, rgba(20,20,20,.98), rgba(5,5,5,1)) !important;
  box-shadow:0 18px 40px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.12) !important;
  position:relative;
  overflow:hidden;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  appearance:none;
  -webkit-appearance:none;
}

#mobileStickyCheckout button:disabled{
  opacity:.5;
  filter:grayscale(1);
  box-shadow:none !important;
}

#mobileStickyCheckout button.pulse-ready{
  animation:softPulse 1.6s ease-in-out infinite;
}

#mobileStickyCheckout .btn-arrow{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:22px !important;
  height:22px !important;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.55);
  background:rgba(255,255,255,.08);
  box-shadow:0 0 0 2px rgba(255,255,255,.08);
  margin:0 !important;
}

#mobileStickyCheckout .btn-arrow svg{
  display:block;
  width:14px;
  height:14px;
}

/* spacing */
.top-model-detail-price + #content,
.top-model-detail-price + section{
  margin-top:0 !important;
  padding-top:10px !important;
}

#content.mobile-device-space{
  margin-top:0 !important;
  padding-top:0 !important;
}

.md-left-section h1,
#category_title{
  margin-top:0 !important;
}

#content .container.topmargin-sm{
  margin-top:8px !important;
}

/* layers */
#header,
#header-wrap{
  position:relative;
  z-index:3000 !important;
}

#header .dropdown-menu,
#header .sub-menu-container,
#header .menu-container{
  z-index:3500 !important;
}

.modal{z-index:20040 !important;}
.modal-backdrop{z-index:20030 !important;}
.select2-container--open,
.select2-dropdown{
  z-index:20060 !important;
}

/* LEFT blocks */
.model_color_details{
  margin-top:15px;
  border-radius:10px;
  box-shadow:0 0 10px rgba(0,0,0,.09);
  border:1px solid #ececec !important;
  padding:10px 5px 10px;
  background:#fff;
}

.color-validation-msg.text-danger{color:#8a0000 !important;}

.cart-box{
  margin-top:12px;
  border:1px solid #ececec;
  border-radius:14px;
  background:#fff;
  padding:12px;
  box-shadow:0 6px 18px rgba(0,0,0,.05);
}

.cart-box h4{margin:0 0 10px;font-size:14px;}
.cart-items{display:flex;flex-direction:column;gap:8px;}

.cart-item{
  display:flex;
  justify-content:space-between;
  gap:10px;
  padding:8px 10px;
  border:1px solid #f0f0f0;
  border-radius:12px;
  background:#fafafa;
}

.ci-name{font-size:12px;color:#111;font-weight:700;}
.ci-sub{font-size:11px;color:#666;margin-top:2px;}
.ci-right{text-align:right;font-size:12px;font-weight:900;color:#111;white-space:nowrap;}
.cart-empty{font-size:12px;color:#666;}

/* CMS content bottom */
#content-bottom .container{
  background:#fff;
  border:1px solid rgba(0,0,0,.06);
  border-radius:18px;
  padding:18px;
  box-shadow:0 14px 34px rgba(0,0,0,.07);
}

#content-bottom h1,
#content-bottom h2,
#content-bottom h3{
  font-weight:950;
}

#content-bottom p{
  color:rgba(0,0,0,.72);
  line-height:1.7;
}

/* model card */
.fx-model-card{
  background:#fff;
  border:1px solid rgba(0,0,0,.08);
  border-radius:18px;
  padding:14px;
  box-shadow:0 14px 34px rgba(0,0,0,.06);
}

.fx-model-imgwrap{
  border-radius:16px;
  overflow:hidden;
  background:linear-gradient(180deg,#f6f8ff 0%, #ffffff 100%);
  border:1px solid rgba(0,0,0,.06);
  padding:10px;
  display:flex;
  align-items:center;
  justify-content:center;
}

.fx-model-img{
  width:100%;
  height:auto;
  max-height:320px;
  object-fit:contain;
  display:block;
}

.fx-model-actions{
  margin-top:12px;
  display:flex;
  flex-direction:column;
  gap:10px;
}

.fx-model-btn{
  display:flex;
  align-items:center;
  justify-content:center;
  text-decoration:none !important;
  font-weight:900;
  border-radius:14px;
  padding:12px 14px;
  border:1px solid rgba(0,0,0,.10);
  background:#fff;
  box-shadow:0 10px 22px rgba(0,0,0,.06);
  color:#0b0b0b !important;
  transition:transform .15s ease, box-shadow .15s ease, border-color .15s ease;
}

.fx-model-btn:hover{
  transform:translateY(-1px);
  border-color:rgba(22,119,255,.35);
  box-shadow:0 14px 28px rgba(0,0,0,.08);
}

.fx-model-help{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  text-decoration:none !important;
  font-weight:800;
  font-size:13px;
  color:rgba(0,0,0,.70) !important;
  padding:10px 12px;
  border-radius:12px;
  border:1px dashed rgba(0,0,0,.16);
  background:rgba(22,119,255,.05);
}

.fx-model-help:before{
  content:"?";
  width:22px;
  height:22px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-weight:1000;
  border:1px solid rgba(22,119,255,.35);
  color:var(--brand-blue);
  background:#fff;
}

/* picker */
.repair-ismash{
  background:#fff;
  border:1px solid var(--rp-border);
  border-radius:16px;
  box-shadow:0 10px 30px rgba(0,0,0,.06);
  overflow:hidden;
  contain:layout paint;
}

.repair-ismash-head{
  padding:14px 14px 10px;
  border-bottom:1px solid rgba(0,0,0,.06);
}

.repair-ismash-head h3{
  margin:0;
  font-size:18px;
  line-height:1.2;
  font-weight:950;
  color:var(--rp-text);
}

.repair-ismash-head p{
  margin:6px 0 0;
  font-size:13px;
  color:var(--rp-muted);
}

.rp-tabs{padding:0 12px 12px;}

.rp-tabs-row{
  display:flex;
  gap:10px;
  overflow:auto;
  padding:4px 2px;
  scroll-snap-type:x mandatory;
  -webkit-overflow-scrolling:touch;
}

.rp-tabs-row::-webkit-scrollbar{height:8px;}
.rp-tabs-row::-webkit-scrollbar-thumb{background:rgba(0,0,0,.12);border-radius:999px;}

.rp-tab{
  scroll-snap-align:start;
  flex:0 0 auto;
  min-width:120px;
  border:1px solid rgba(0,0,0,.10);
  background:var(--rp-soft);
  border-radius:14px;
  padding:10px;
  cursor:pointer;
  text-align:center;
  transition:transform .15s ease, box-shadow .15s ease, background .15s ease, border-color .15s ease;
}

.rp-tab:hover{
  transform:translateY(-1px);
  box-shadow:0 10px 22px rgba(0,0,0,.08);
}

.rp-tab.active{
  border-color:var(--rp-accent);
  background:#fff;
  box-shadow:0 14px 30px rgba(22,119,255,.16);
}

.rp-tab .rp-ico{
  width:34px;
  height:34px;
  margin:0 auto 8px;
  border-radius:12px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#fff;
  border:1px solid rgba(0,0,0,.08);
}

.rp-tab .rp-ico svg{width:18px;height:18px;}

.rp-tab .rp-label{
  font-size:13px;
  font-weight:900;
  color:var(--rp-text);
  line-height:1.15;
}

.rp-body{padding:0 14px 14px;}

.rp-detail{
  margin-top:12px;
  margin-bottom:14px;
  border:2px solid rgba(22,119,255,.55);
  border-radius:18px;
  background:#fff;
  padding:14px;
  display:none;
  box-shadow:0 14px 34px rgba(22,119,255,.14), 0 10px 28px rgba(0,0,0,.06);
}

.rp-detail.previewing{border-color:rgba(22,119,255,.65);}

.rp-detail-grid{
  display:grid;
  grid-template-columns:120px 1fr;
  gap:14px;
  align-items:start;
}

.rp-detail-ico{
  width:120px;
  height:120px;
  border-radius:18px;
  border:1px solid rgba(0,0,0,.10);
  background:linear-gradient(180deg,#f8fbff 0%, #fff 100%);
  display:flex;
  align-items:center;
  justify-content:center;
}

.rp-detail-ico svg{width:46px;height:46px;}

.rp-detail h4{
  margin:0 0 8px;
  font-size:18px;
  font-weight:1000;
  color:var(--rp-text);
}

.rp-desc{
  color:var(--rp-muted);
  font-size:13px;
  line-height:1.6;
  margin:0 0 10px;
}

.rp-detail-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:8px;
}

.rp-detail-rows{
  display:flex;
  flex-direction:column;
  gap:8px;
  margin-top:6px;
}

.rp-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding-top:8px;
  border-top:1px solid rgba(0,0,0,.08);
}

.rp-row:first-child{border-top:0;padding-top:0;}
.rp-row b{font-weight:1000;}
.rp-warranty{color:var(--rp-accent);font-weight:1000;}
#rpDetailAddBtn{min-width:110px;text-align:center;}

.rp-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}

.rp-card{
  border:1px solid rgba(0,0,0,.08);
  border-radius:14px;
  background:#fff;
  padding:12px;
  transition:transform .15s ease, box-shadow .15s ease, border-color .15s ease, background .15s ease;
  cursor:pointer;
  position:relative;
  
}

.rp-card:hover{
  transform:translateY(-1px);
  box-shadow:0 10px 22px rgba(0,0,0,.08);
}

.rp-card.active{
  border-color:var(--rp-accent);
  box-shadow:0 16px 38px rgba(22,119,255,.16), 0 10px 24px rgba(0,0,0,.06);
  transform:translateY(-1px);
}

.rp-card.current{
  border-color:rgba(22,119,255,.55);
  background:rgba(22,119,255,.06);
  box-shadow:0 10px 26px rgba(22,119,255,.14);
}

.rp-title{
  margin:0 0 6px;
  font-size:14px;
  font-weight:950;
  color:var(--rp-text);
}

.rp-meta{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:center;
}

.rp-pill{
  font-size:12px;
  padding:6px 10px;
  border-radius:999px;
  border:1px solid rgba(0,0,0,.10);
  background:#fff;
  white-space:nowrap;
}

.rp-pill strong{font-weight:950;}

.rp-footer{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-top:10px;
}

.rp-hint{font-size:12px;color:var(--rp-muted);}

.rp-add{
  border:1px solid #111;
  background:#111;
  color:#fff;
  border-radius:999px;
  padding:9px 12px;
  cursor:pointer;
  font-size:12px;
  line-height:1;
  white-space:nowrap;
}

.rp-add.added{
  background:#fff;
  color:#111;
  border-color:#111;
}

.repair-hidden-inputs{display:none !important;}

/* FAQ + review */
.faq_page{padding:42px 0;}
.faq_page .container{max-width:1100px;}

.faq_page h2,
.faq_page h3{
  font-weight:1000;
  letter-spacing:-.3px;
}

.faq-modern{
  margin-top:18px;
  display:grid;
  gap:12px;
}

.faq-modern .faq-item{
  border:1px solid rgba(0,0,0,.08);
  background:#fff;
  border-radius:16px;
  box-shadow:0 14px 34px rgba(0,0,0,.06);
  overflow:hidden;
}

.faq-modern .faq-q{
  width:100%;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:14px 16px;
  background:linear-gradient(180deg,#fff 0%, #fbfcff 100%);
  border:0;
  cursor:pointer;
  text-align:left;
}

.faq-modern .faq-q .faq-qtext,
.faq-modern .faq-q strong{
  font-size:15px;
  font-weight:950;
  color:#0b0b0b;
}

.faq-modern .faq-ico{
  flex:0 0 auto;
  width:34px;
  height:34px;
  border-radius:12px;
  display:flex;
  align-items:center;
  justify-content:center;
  border:1px solid rgba(0,0,0,.10);
  background:#fff;
  position:relative;
}

.faq-modern .faq-ico:before,
.faq-modern .faq-ico:after{
  content:"";
  position:absolute;
  background:var(--brand-blue);
  border-radius:2px;
}

.faq-modern .faq-ico:before{width:14px;height:2px;}
.faq-modern .faq-ico:after{width:2px;height:14px;transition:transform .15s ease;}
.faq-modern .faq-q[aria-expanded="true"] .faq-ico:after{transform:scaleY(0);}

.faq-modern .faq-a{
  padding:0 16px 14px;
  color:rgba(0,0,0,.72);
  line-height:1.7;
  font-size:13.5px;
}

.faq-modern .faq-a p{margin:10px 0 0;}

.faq-modern .faq-q:focus{
  outline:none;
  box-shadow:0 0 0 3px rgba(22,119,255,.20);
}

.get_review_section .button.rounded-pill{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:12px !important;
  min-height:50px !important;
  padding:8px 18px !important;
  border-radius:999px !important;
  font-weight:950 !important;
  letter-spacing:.2px !important;
  text-transform:none !important;
  background:linear-gradient(180deg, rgba(255,255,255,.92), rgba(248,249,252,.96)) !important;
  border:1px solid rgba(0,0,0,.12) !important;
  color:#0b0b0b !important;
  box-shadow:0 12px 28px rgba(0,0,0,.08), inset 0 1px 0 rgba(255,255,255,.90) !important;
  text-shadow:none !important;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease !important;
  line-height:1.2 !important;
}

.get_review_section .button.rounded-pill i{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:34px !important;
  height:34px !important;
  min-width:34px !important;
  min-height:34px !important;
  border-radius:50% !important;
  background:rgba(22,119,255,.12) !important;
  border:1px solid rgba(22,119,255,.28) !important;
  color:var(--brand-blue) !important;
  font-size:14px !important;
  line-height:1 !important;
  margin:0 !important;
  vertical-align:middle !important;
}

.get_review_section .button.rounded-pill:hover{
  transform:translateY(-1px) !important;
  border-color:rgba(22,119,255,.35) !important;
  box-shadow:0 18px 36px rgba(0,0,0,.12), 0 0 0 4px rgba(22,119,255,.10) !important;
}

/* contrast fix */
.seo-internal-links,
.seo-links-iphone,
.seo-links-phone,
.seo-links-laptop,
.seo-links-macbook,
.seo-links-data,
.seo-links-watch,
.seo-links-ipad{
  background:#ffffff !important;
  color:#111827 !important;
}

.seo-internal-links h2,
.seo-internal-links h3,
.seo-internal-links h4,
.seo-links-iphone h2,
.seo-links-phone h2,
.seo-links-laptop h2,
.seo-links-macbook h2{
  color:#0f172a !important;
  font-weight:700 !important;
}

.seo-internal-links p,
.seo-internal-links li,
.seo-internal-links span,
.seo-internal-links small{
  color:#1f2937 !important;
  font-size:14px !important;
  line-height:1.65 !important;
}

.seo-internal-links a,
.seo-links-iphone a,
.seo-links-phone a,
.seo-links-laptop a,
.seo-links-macbook a{
  color:#0b57d0 !important;
  font-weight:700 !important;
  text-decoration:none !important;
}

.seo-internal-links a:hover{
  text-decoration:underline !important;
  color:#0842a0 !important;
}

.seo-internal-links .link-card,
.seo-internal-links .area-card,
.seo-internal-links .internal-link-item{
  background:#ffffff !important;
  border:1px solid #dbe2ea !important;
  border-radius:10px !important;
  padding:10px !important;
}

@media (max-width:991px){
  .top-model-detail-price .row.v-align{
    flex-wrap:wrap !important;
  }

@media (max-width:767px){
  .top-model-detail-price .container{
    padding-top:8px !important;
    padding-bottom:8px !important;
  }

  body{padding-bottom:74px;}

  .top-inline-row{gap:8px;}
  .top-inline-total .tt-label{display:none;}
  #total_amt{font-size:15px !important;}
  #total_minutes{font-size:12px !important;}

  .phone-action-row{
    gap:8px;
    min-height:42px;
  }

  .top-model-detail-price .phone-field input{
    height:42px !important;
    min-height:42px !important;
    line-height:42px !important;
    border-radius:21px !important;
    padding:0 16px !important;
    font-size:15px !important;
  }

  .top-model-detail-price #get-price-btn.phone-action-btn{
    width:42px !important;
    height:42px !important;
    min-width:42px !important;
    min-height:42px !important;
    flex:0 0 42px !important;
  }

  #get-price-btn .btn-arrow svg{
    width:16px;
    height:16px;
  }

  .top-model-detail-price{display:none !important;}
  body.tpdp-show-topbar .top-model-detail-price{display:block !important;}

  .fx-model-card{padding:12px;border-radius:16px;}
  .fx-model-img{max-height:380px;}
  .fx-model-btn{padding:12px 12px;}
  .fx-model-help{padding:10px 10px;font-size:13px;}

  .rp-detail-grid{grid-template-columns:1fr;}
  .rp-grid{grid-template-columns:1fr;}

  #content-bottom .container{
    padding:14px;
    border-radius:16px;
  }

  .faq_page{padding:28px 0;}
  .faq-modern .faq-q{padding:13px 14px;}
  .faq-modern .faq-a{padding:0 14px 14px;}

  .get_review_section .button.rounded-pill{
    width:100% !important;
    padding:8px 16px !important;
  }
}

.top-model-detail-price .phone-error{
  display:none !important;
}
/* =========================================
   FINAL LOCK — STOP TOP BAR SHIFTING
========================================= */
.top-model-detail-price{
  position: sticky;
  top: calc(var(--site-header-h) - 1px);
  z-index: 1200;
  width: 100%;
  left: 0;
  right: 0;
  background: #f5f8ff !important;
  transform: translate3d(0,0,0);
  -webkit-transform: translate3d(0,0,0);
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  will-change: transform;
}

.top-model-detail-price .container{
  width: 100%;
  max-width: 1240px;
  margin: 0 auto !important;
  padding-left: 16px !important;
  padding-right: 16px !important;
}

/* kill bootstrap row behavior in sticky bar */
.top-model-detail-price .row.v-align{
  display: grid !important;
  grid-template-columns: minmax(220px, 1fr) minmax(260px, 1.1fr) minmax(260px, 320px) !important;
  align-items: center !important;
  column-gap: 16px !important;
  row-gap: 0 !important;
  margin: 0 !important;
  min-height: 52px !important;
  width: 100% !important;
}

/* remove bootstrap column sizing only inside top sticky bar */
.top-model-detail-price .row.v-align > [class*="col-"]{
  width: auto !important;
  max-width: none !important;
  flex: none !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  margin: 0 !important;
}

/* left */
.top-model-detail-price .l-tpdp-inner{
  justify-content: flex-start !important;
  width: 100%;
  min-width: 0;
}

/* center */
.top-model-detail-price .new-tpdp-inner{
  justify-content: center !important;
  width: 100%;
  min-width: 0;
}

.top-model-detail-price .new-tpdp-inner ul{
  width: 100%;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

/* right */
.top-model-detail-price .r-tpdp-inner{
  justify-content: flex-end !important;
  width: 100%;
  min-width: 0;
}

.phone-action-row{
  width: 100%;
  display: grid !important;
  grid-template-columns: minmax(0,1fr) 44px;
  align-items: center !important;
  gap: 10px !important;
  min-width: 0;
}

.phone-field{
  min-width: 0 !important;
  width: 100%;
}

.top-model-detail-price .phone-field input{
  width: 100% !important;
  margin: 0 !important;
}

.top-model-detail-price #get-price-btn.phone-action-btn{
  width: 44px !important;
  height: 44px !important;
  min-width: 44px !important;
  min-height: 44px !important;
  margin: 0 !important;
  position: static !important;
  transform: none !important;
}

/* keep text from pushing layout */
.top-inline-rt,
.top-inline-total,
#showhide_tabby_row,
#showhide_installment_amount{
  min-width: 0;
  white-space: nowrap;
}

/* desktop only */
@media (min-width: 768px){
  .top-model-detail-price{
    overflow: hidden;
  }
}

/* mobile fallback */
@media (max-width: 767px){
  .top-model-detail-price .row.v-align{
    display: block !important;
  }
}