/* v4.4 simplified price finder popup */
.th-price-popup[hidden] { display: none !important; }
.th-price-popup { position: fixed; inset: 0; z-index: 9999; display: grid; place-items: center; padding: clamp(1rem, 3vw, 2rem); }
.th-price-popup__backdrop { position: absolute; inset: 0; background: rgba(2,8,23,.68); backdrop-filter: blur(9px); }
.th-price-popup__dialog { position: relative; width: min(680px, 100%); max-height: min(86vh, 760px); overflow: auto; border: 1px solid rgba(191,219,254,.34); border-radius: 28px; background: linear-gradient(180deg,#fff,#f8fbff); box-shadow: 0 34px 100px rgba(2,8,23,.38); padding: clamp(1rem,2.2vw,1.35rem); }
.th-price-popup__close { position:absolute; top:.72rem; right:.72rem; display:grid; place-items:center; width:2.35rem; height:2.35rem; border:1px solid #dbe7f2; border-radius:999px; background:#fff; color:#0f172a; font-size:1.55rem; line-height:1; cursor:pointer; z-index:2; box-shadow:0 10px 24px rgba(15,23,42,.1); }
.th-price-popup__head { display:grid; grid-template-columns:auto minmax(0,1fr); gap:.8rem; align-items:center; padding:.2rem 2.6rem .9rem .2rem; }
.th-price-popup__icon { display:grid; place-items:center; width:2.9rem; height:2.9rem; border-radius:1rem; background:linear-gradient(135deg,#dbeafe,#f3e8ff); }
.th-price-popup__head p { margin:0 0 .18rem; color:#2563eb; font-size:.72rem; font-weight:950; letter-spacing:.1em; text-transform:uppercase; }
.th-price-popup h2 { margin:0; color:#071126; font-size:clamp(1.55rem,3vw,2.05rem); line-height:1.02; letter-spacing:-.05em; }
.th-price-popup__tool { padding:.75rem; border:1px solid #dfe8f5; border-radius:21px; background:#fff; }
.th-price-popup__tool :where(form,select,input,textarea,button,.device-price-calculator,.price-calculator,.calculator) { max-width:100%; }
.th-price-popup__fallback { display:grid; gap:.25rem; padding:.85rem; border-radius:16px; background:#f8fafc; color:#64748b; }
.th-price-popup__fallback strong { color:#0f172a; }
.th-price-popup__tiny-help { margin:.9rem 0 0; color:#64748b; text-align:center; font-size:.88rem; line-height:1.45; }
.th-price-popup__tiny-help a { color:#2563eb; font-weight:900; text-decoration:none; }
body.th-price-popup-open { overflow:hidden; }
@media (max-width:767px){ .th-price-popup { align-items:end; padding:0; } .th-price-popup__dialog { width:100%; max-height:88vh; border-radius:26px 26px 0 0; padding:.95rem; animation: thPricePopupSheet .22s ease-out; } .th-price-popup__head { padding-right:2.55rem; } .th-price-popup__tool { padding:.55rem; } }
@keyframes thPricePopupSheet { from { transform:translateY(18px); opacity:.75; } to { transform:none; opacity:1; } }

/* compact hidden fallback pricing page */
.repair-pricing-page--compact { background:linear-gradient(180deg,#f8fbff 0%,#fff 100%); }
.repair-pricing-utility { padding:clamp(2rem,5vw,4rem) 0; }
.repair-pricing-utility__card { width:min(760px,100%); margin-inline:auto; padding:clamp(1rem,2.4vw,1.65rem); border:1px solid #dbe7f2; border-radius:28px; background:#fff; box-shadow:0 26px 80px rgba(15,23,42,.09); }
.repair-pricing-utility__head h1 { margin:.8rem 0 .6rem; font-size:clamp(2rem,5vw,3.2rem); line-height:.98; letter-spacing:-.06em; color:#071126; }
.repair-pricing-utility__head p,.repair-pricing-utility__note span,.repair-pricing-utility__fallback span { color:#64748b; line-height:1.6; }
.repair-pricing-utility__calculator { margin-top:1rem; padding:.8rem; border:1px solid #e0e9f5; border-radius:22px; background:#f8fbff; overflow:hidden; }
.repair-pricing-utility__calculator :where(form,select,input,textarea,button,.device-price-calculator) { max-width:100%; }
.repair-pricing-utility__fallback,.repair-pricing-utility__note { display:grid; gap:.35rem; margin-top:.9rem; padding:.95rem 1rem; border:1px solid #e2eaf6; border-radius:18px; background:#fff; }
.repair-pricing-utility__note { border-color:#bfdbfe; background:#eff6ff; }
.repair-pricing-utility__actions { display:flex; flex-wrap:wrap; gap:.75rem; margin-top:1rem; }
@media (max-width:767px){ .repair-pricing-utility { padding:1.25rem 0 1.8rem; } .repair-pricing-utility__card { border-radius:22px; padding:.9rem; } .repair-pricing-utility__actions { display:grid; grid-template-columns:1fr; } .repair-pricing-utility__actions .btn { width:100%; } }

/* v5.0 lazy-loaded iframe price finder */
.th-price-popup__tool--iframe { position: relative; min-height: 430px; padding: 0; overflow: hidden; }
.th-price-popup__iframe { display:block; width:100%; height:min(70vh, 610px); min-height:430px; border:0; background:#fff; }
.th-price-popup__iframe[src] + .th-price-popup__fallback { display:none; }
.repair-pricing-page--popup { padding:0 !important; background:#fff; }
.repair-pricing-page--popup .repair-pricing-utility { padding:0 !important; }
.repair-pricing-page--popup .container { width:100% !important; max-width:none !important; padding:0 !important; }
.repair-pricing-page--popup .repair-pricing-utility__card { width:100% !important; margin:0 !important; border:0 !important; border-radius:0 !important; box-shadow:none !important; padding:.75rem !important; }
.repair-pricing-page--popup .repair-pricing-utility__head { display:none !important; }
@media (max-width:767px){ .th-price-popup__tool--iframe { min-height: 520px; } .th-price-popup__iframe { height:78vh; min-height:520px; } }
.repair-pricing-page--popup .repair-pricing-utility__note,
.repair-pricing-page--popup .repair-pricing-utility__actions {
	display: none !important;
}
