/* V1.50 — logo-led storefront, two-row featured shelf, full plan explorer. */
.catalog-v149{overflow:hidden;padding:clamp(20px,3vw,38px)}
.company-logo-gallery{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))!important;gap:16px!important}
.company-logo-gallery .company-logo-card{min-height:205px;padding:18px 12px!important;border-radius:28px!important}
.company-logo-gallery .company-logo-frame{width:128px;height:112px;border-radius:25px}
.company-logo-frame img{width:100%!important;height:100%!important;padding:4px;object-fit:contain!important;border-radius:inherit}
.company-logo-card strong{margin-top:7px;font-size:16px}
.company-logo-card small{font-size:11px}
.company-logo-card>i{width:30px;height:30px;border-radius:10px}
.featured-shelf{margin-top:28px;padding:24px}
.featured-plans-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}
.open-catalog-explorer{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;margin-top:20px;padding:18px 20px;border:1px solid #dbe2ed;border-radius:22px;background:linear-gradient(135deg,#fff,#f5f8fd);color:#121d40;box-shadow:0 13px 30px rgba(19,30,66,.08);text-align:start;transition:.24s}
.open-catalog-explorer:hover{transform:translateY(-4px);border-color:#ffb13f;box-shadow:0 20px 40px rgba(19,30,66,.14)}
.open-catalog-explorer>span{display:grid;grid-template-columns:38px 1fr;column-gap:11px;align-items:center}
.open-catalog-explorer i{grid-row:1/3;display:grid;place-items:center;width:38px;height:38px;border-radius:13px;background:#fff0d8;color:#a75f00;font-style:normal;font-size:18px}
.open-catalog-explorer b,.open-catalog-explorer small{grid-column:2;display:block}.open-catalog-explorer b{font-size:16px}.open-catalog-explorer small{margin-top:3px;color:#7b8597;font-size:10px}
.open-catalog-explorer>svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}

.catalog-plan-card{min-height:505px;padding:19px;border-radius:27px}
.catalog-plan-card.featured-placement{border-color:rgba(255,255,255,.25);box-shadow:0 18px 38px rgba(0,0,0,.22)}
.catalog-plan-company .company-logo-frame{width:62px;height:62px;border-radius:18px;border-color:#e0e5ed}
.catalog-plan-company small{font-size:10px}.catalog-plan-company strong{margin-top:4px;font-size:18px;line-height:1.25;white-space:normal}
.catalog-featured-badge{padding:7px 9px;border-radius:11px}
.catalog-price-row{margin:23px 0 17px;padding:17px 15px;border:1px solid #edf0f5;border-radius:19px;background:linear-gradient(145deg,#fbfcff,#f4f7fb)}
.catalog-price strong{font-size:53px}.catalog-price sup{font-size:20px}.catalog-price span{font-size:11px}
.catalog-feature-list{display:grid;gap:7px}
.catalog-feature-list>div{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:42px;padding:8px 10px;border:1px solid #edf0f4;border-radius:13px;background:#fff}
.catalog-feature-list>div>span{display:flex;min-width:0;align-items:center;gap:8px;color:#727d8f}
.catalog-feature-list svg{flex:0 0 auto;width:21px;height:21px;fill:none;stroke:var(--plan-color,#f39a18);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.catalog-feature-list small{font-size:10px;font-weight:800}.catalog-feature-list b{flex:0 0 auto;color:#132042;font-size:11px}
.catalog-card-actions{display:grid;grid-template-columns:.72fr 1.28fr;gap:8px;margin-top:auto;padding-top:15px}
.catalog-details-button,.catalog-plan-select{min-height:46px!important;margin:0!important;border:0;border-radius:14px!important;font-weight:900}
.catalog-details-button{border:1px solid #dce2eb!important;background:#f5f7fa;color:#172342;font-size:11px}
.catalog-plan-select{font-size:11px}

.catalog-explorer-backdrop{z-index:145;padding:12px;place-items:center}
.catalog-explorer-sheet{position:relative;width:min(1280px,100%);height:min(94vh,980px);overflow:auto;padding:clamp(20px,3vw,36px);border:1px solid rgba(255,255,255,.7);border-radius:34px;background:radial-gradient(circle at 90% 0,rgba(255,169,45,.14),transparent 23%),#f5f7fb;box-shadow:0 40px 120px rgba(5,11,30,.45)}
.catalog-explorer-close{position:absolute;z-index:3;top:18px;inset-inline-end:18px;display:grid;place-items:center;width:42px;height:42px;border:0;border-radius:14px;background:#e9edf4;color:#142040;font-size:27px}
.catalog-explorer-head{padding-inline-end:54px}.catalog-explorer-head>span{display:inline-flex;padding:7px 10px;border-radius:999px;background:#fff0da;color:#a65e00;font-size:9px;font-weight:950;letter-spacing:.12em}
.catalog-explorer-head h2{margin:9px 0 5px;color:#111c3e;font-size:clamp(28px,4vw,46px)}.catalog-explorer-head p{margin:0;color:#747f91;line-height:1.7}
.catalog-explorer-filter{display:flex;gap:10px;overflow-x:auto;margin:22px 0 15px;padding:4px 2px 10px;scrollbar-width:none}.catalog-explorer-filter::-webkit-scrollbar{display:none}
.catalog-explorer-filter .company-logo-card{position:relative;flex:0 0 132px;display:flex;min-height:145px;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:11px;border:1px solid #dfe5ee;border-radius:22px;background:#fff;color:#152141;box-shadow:0 8px 22px rgba(19,30,67,.07)}
.catalog-explorer-filter .company-logo-frame{width:80px;height:70px;border-radius:18px}.catalog-explorer-filter .company-logo-card strong{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.catalog-explorer-filter .company-logo-card small{color:#8a94a5;font-size:9px}.catalog-explorer-filter .company-logo-card>i{display:none}
.catalog-explorer-filter .company-logo-card.active{border-color:#ffa82f;background:#fff7e9;box-shadow:0 0 0 4px rgba(255,164,35,.1)}
.catalog-explorer-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:6px 2px 13px}.catalog-explorer-summary strong{color:#121e40;font-size:21px}.catalog-explorer-summary span{padding:7px 10px;border-radius:999px;background:#e7ebf2;color:#707b8e;font-size:10px;font-weight:900}
.catalog-v149 .all-plans-grid,.catalog-explorer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:16px}
.catalog-explorer-empty{grid-column:1/-1;display:grid;place-items:center;min-height:260px;border:1px dashed #ccd4e0;border-radius:24px;color:#778295;background:#fff}

.plan-details-backdrop{z-index:165;padding:12px;place-items:center}
.plan-details-sheet{position:relative;width:min(680px,100%);max-height:92vh;overflow:auto;padding:30px;border-radius:32px;background:#fff;box-shadow:0 40px 120px rgba(6,12,31,.48)}
.plan-details-brand{display:flex;align-items:center;gap:14px;padding-inline-end:45px}.plan-details-brand .company-logo-frame{flex:0 0 auto;width:78px;height:72px;border-radius:20px}.plan-details-brand span{color:#8993a4;font-size:10px;font-weight:900}.plan-details-brand h2{margin:4px 0 0;color:#111d40;font-size:28px}
.plan-price-phases{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:21px 0}.plan-price-phases article{display:flex;min-height:145px;flex-direction:column;justify-content:center;padding:17px;border:1px solid #e3e8ef;border-radius:22px;background:#f7f9fc}.plan-price-phases article.current{border-color:#ffc46a;background:linear-gradient(145deg,#fff7e8,#fff)}.plan-price-phases small{color:#7d8799;font-size:10px;font-weight:900}.plan-price-phases strong{margin:8px 0 2px;color:#111d40;font-size:42px;line-height:1}.plan-price-phases sup{font-size:17px}.plan-price-phases span{color:#8b94a4;font-size:10px}
.plan-full-details{display:grid;gap:7px}.plan-full-details h3{margin:3px 0 6px;color:#142042}.plan-full-details>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 12px;border:1px solid #e8ecf2;border-radius:14px}.plan-full-details>div>span{display:flex;align-items:center;gap:9px;color:#778194}.plan-full-details svg{width:22px;height:22px;fill:none;stroke:#f09a1d;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.plan-full-details small{font-size:11px;font-weight:800}.plan-full-details b{color:#152141;font-size:12px}
.plan-details-description{margin:13px 0 0;padding:13px;border-radius:14px;background:#f6f8fb;color:#6e798c;font-size:11px;line-height:1.8}.plan-details-select{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:52px;margin-top:15px;padding:12px 16px;border:0;border-radius:16px;background:linear-gradient(135deg,#f29a1b,#ffbf59);color:#fff;font-weight:950;box-shadow:0 13px 25px rgba(242,154,27,.25)}

.floating-tracking-button{width:76px;height:76px;background:radial-gradient(circle at 30% 20%,#3e5e98,#111b3c 65%);box-shadow:0 18px 45px rgba(12,23,52,.38),inset 0 0 0 5px rgba(255,255,255,.07)}
.floating-tracking-button span{display:grid;place-items:center}.floating-tracking-button svg{width:28px;height:28px;fill:none;stroke:#ffbd57;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.floating-tracking-button b{font-size:9px;letter-spacing:.02em}

@media(max-width:719px){
  .company-logo-gallery{grid-auto-columns:155px!important}
  .company-logo-gallery .company-logo-card{min-height:185px}
  .company-logo-gallery .company-logo-frame{width:108px;height:94px}
  .featured-shelf{padding:17px 11px}
  .featured-plans-grid{display:grid;grid-template-rows:repeat(2,auto);grid-auto-flow:column;grid-auto-columns:min(86vw,335px);grid-template-columns:none;gap:11px;overflow-x:auto;padding:2px 2px 12px;scroll-snap-type:x mandatory;scrollbar-width:none}
  .featured-plans-grid::-webkit-scrollbar{display:none}.featured-plans-grid .catalog-plan-card{scroll-snap-align:start}
  .catalog-plan-card{min-height:500px}
  .catalog-explorer-backdrop{padding:0}.catalog-explorer-sheet{width:100%;height:100%;max-height:none;padding:22px 13px 90px;border-radius:0}
  .catalog-explorer-head h2{font-size:31px}.catalog-explorer-filter .company-logo-card{flex-basis:118px;min-height:132px}.catalog-explorer-filter .company-logo-frame{width:72px;height:62px}
  .catalog-explorer-grid{grid-template-columns:minmax(0,1fr)!important}
  .plan-details-backdrop{padding:0;place-items:end center}.plan-details-sheet{width:100%;max-height:94vh;padding:25px 16px 26px;border-radius:28px 28px 0 0}
  .plan-details-brand .company-logo-frame{width:68px;height:62px}.plan-details-brand h2{font-size:23px}
  .plan-price-phases{grid-template-columns:1fr 1fr}.plan-price-phases article{min-height:125px;padding:13px}.plan-price-phases strong{font-size:34px}
  .floating-tracking-button{width:68px;height:68px}.floating-tracking-button svg{width:25px;height:25px}
}
@media(min-width:720px) and (max-width:1099px){
  .company-logo-gallery{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .featured-plans-grid,.catalog-explorer-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
