
        /* Modal animations */
        @keyframes pkgModalIn {
          from { opacity:0; transform:scale(0.88) translateY(16px); }
          to   { opacity:1; transform:scale(1) translateY(0); }
        }
        @keyframes pkgCheckPop {
          from { opacity:0; transform:scale(0.5); }
          to   { opacity:1; transform:scale(1); }
        }
        .pkg-modal-close:hover { color:#C65D3A !important; background:rgba(198,93,58,0.08) !important; }
        .pkg-ok-btn:hover { transform:translateY(-2px) !important; box-shadow:0 16px 34px rgba(198,93,58,0.38) !important; }

        /* Promo animations */
        .pkg-wallet-grid { display:grid; grid-template-columns:repeat(3,1fr); }
        @media(max-width:600px){ .pkg-wallet-grid{ grid-template-columns:repeat(2,1fr) !important; } }
        @media(max-width:400px){ .pkg-wallet-grid{ grid-template-columns:1fr !important; } }
        .pkg-pay-row:hover   { background:#fff8f5 !important; }
        .pkg-wallet-card:hover { background:#fff8f5 !important; }

        /* Fade-in */
        .pkg-fade-in { animation: pkgFadeIn 280ms ease-out both; }
        @keyframes pkgFadeIn { from{opacity:0;transform:translateY(10px)} to{opacity:1;transform:translateY(0)} }

        /* Page layout — same canvas and page gap as portal dashboard */
        .pkg-page {
          background:transparent;
          width:100%;
          max-width:none;
          margin:0;
          padding:0 0 24px;
          min-height:0;
          box-sizing:border-box;
        }
        .pkg-page-header {
          box-sizing:border-box;
          position:relative;
          width:100%;
          max-width:none;
          height:auto;
          margin:0 0 16px;
        }
        .pkg-page-title {
          position:static;
          left:auto;
          top:auto;
          width:auto;
          min-width:119px;
          height:auto;
          margin:0;
          font-family:'Nunito Sans',Helvetica,sans-serif;
          font-style:normal;
          font-weight:700;
          font-size:16px;
          line-height:22px;
          color:#3E5569;
          display:inline-flex;
          align-items:center;
          gap:8px;
        }
        .pkg-page-title svg {
          color:#C65D3A;
          width:18px;
          height:18px;
        }
        .pkg-content {
          width:100%;
          max-width:100%;
          margin:0;
          padding:0;
          box-sizing:border-box;
          overflow-x:clip;
        }
        .pkg-content--detail {
          width:100%;
          max-width:100%;
          margin:0;
          padding:0;
          box-sizing:border-box;
        }

        .pkg-plans-shell {
          width:100%;
          max-width:none;
          margin:0;
          box-sizing:border-box;
        }

        /* Upgrade Package header bar — Frame 9 */
        .pkg-header-bar {
          box-sizing:border-box;
          display:flex;
          align-items:center;
          justify-content:space-between;
          gap:16px;
          width:100%;
          min-height:53px;
          padding:14px 16px;
          margin-bottom:24px;
          background:#FFFFFF;
          border:1px solid #e8ddd6;
          border-radius:12px;
          box-shadow:0 4px 18px rgba(165, 75, 51, 0.08);
        }
        .pkg-header-label {
          font-family:'Nunito Sans',Helvetica,sans-serif;
          font-size:14px;
          font-weight:500;
          line-height:19px;
          color:#455A64;
          display:inline-flex;
          align-items:center;
          gap:8px;
        }
        .pkg-header-label svg {
          color:#C65D3A;
          width:18px;
          height:18px;
        }
        .pkg-header-actions {
          display:flex;
          align-items:center;
          gap:16px;
        }
        .pkg-billing-toggle {
          display:flex;
          align-items:center;
          min-width:148px;
          height:28px;
          padding:4px;
          background:#f2f3f8;
          border-radius:5px;
          box-sizing:border-box;
          gap:2px;
        }
        .pkg-billing-opt {
          flex:1;
          height:20px;
          border:none;
          border-radius:3px;
          background:transparent;
          font-family:'Nunito Sans',Helvetica,sans-serif;
          font-size:11px;
          font-weight:500;
          line-height:14px;
          color:#3E5569;
          cursor:pointer;
          padding:0 6px;
          white-space:nowrap;
        }
        .pkg-billing-opt.is-active {
          background:#FFFFFF;
          font-weight:700;
        }
        .pkg-cart-btn {
          position:relative;
          border:none;
          background:transparent;
          color:#C65D3A;
          font-size:26px;
          line-height:1;
          display:inline-flex;
          align-items:center;
          justify-content:center;
          cursor:pointer;
          padding:0;
          width:30px;
          height:30px;
        }
        .pkg-cart-btn:disabled {
          opacity:0.45;
          cursor:not-allowed;
        }
        .pkg-cart-icon-img {
          display:block;
          width:30px;
          height:30px;
          object-fit:contain;
        }
        .pkg-cart-badge {
          position:absolute;
          top:-6px;
          right:-8px;
          min-width:16px;
          height:16px;
          border-radius:999px;
          background:#fff;
          color:#C65D3A;
          border:1px solid #C65D3A;
          font-size:10px;
          font-weight:700;
          display:inline-flex;
          align-items:center;
          justify-content:center;
        }

        /* Plan grid — responsive cards, max 4 listing / 3 banner per row */
        .pkg-grid {
          display:grid;
          grid-template-columns:repeat(auto-fit,minmax(min(276px,100%),1fr));
          column-gap:24px;
          row-gap:24px;
          justify-content:stretch;
          width:100%;
          align-items:stretch;
          overflow:visible;
          padding-block:0;
          box-sizing:border-box;
        }
        .pkg-grid-3 { width:100%; }
        .pkg-grid-listing {
          margin-bottom:0;
          grid-template-columns:repeat(4,minmax(0,1fr));
          column-gap:24px;
        }
        .pkg-plans-headings {
          display:grid;
          grid-template-columns:repeat(4,minmax(0,1fr));
          column-gap:24px;
          margin-bottom:16px;
          align-items:end;
        }
        .pkg-plans-headings .pkg-section-heading {
          margin:0;
          justify-self:start;
        }
        .pkg-plans-headings .pkg-section-heading-listing {
          grid-column:1 / 4;
        }
        .pkg-plans-headings .pkg-section-heading-ads {
          grid-column:4;
        }
        .pkg-grid-ads {
          margin-top:24px;
          grid-template-columns:repeat(auto-fit,minmax(min(276px,100%),1fr));
        }
        .pkg-ads-section {
          margin-top:24px;
        }

        .pkg-header-bar-left {
          display:flex;
          align-items:center;
          gap:14px;
          flex-wrap:wrap;
        }
        .pkg-current-plan-pill {
          display:inline-flex;
          align-items:center;
          gap:6px;
          padding:6px 12px;
          border-radius:999px;
          background:#fff6f1;
          border:1px solid rgba(227,94,34,0.22);
          font-size:12px;
          font-weight:600;
          color:#526878;
          line-height:1.3;
        }
        .pkg-current-plan-pill strong {
          color:#C65D3A;
          font-weight:700;
        }

        /* Hover — zoom + orange top border + orange shadow (Figma Group 289) */
        .pkg-plan-card-wrap {
          position:relative;
          width:100%;
          max-width:none;
          height:100%;
          align-self:stretch;
          justify-self:stretch;
          flex-shrink:0;
          z-index:1;
          overflow:visible;
          transform-origin:center center;
          transition:transform 0.28s cubic-bezier(0.34,1.2,0.64,1), z-index 0s;
        }
        .pkg-plan-card-wrap:hover {
          transform:scale(1.05) translateY(-5px);
          z-index:10;
        }
        .pkg-plan-card-shadow {
          position:absolute;
          left:0;
          top:0;
          width:100%;
          height:100%;
          background:#C65D3A;
          border-radius:12px;
          box-shadow:0 4px 18px rgba(165, 75, 51, 0.08);
          z-index:0;
          opacity:0;
          pointer-events:none;
          transition:opacity 0.28s ease;
        }
        .pkg-plan-card-wrap:hover .pkg-plan-card-shadow {
          opacity:1;
        }
        .pkg-plan-card-wrap .pkg-plan-card {
          position:relative;
          z-index:1;
          margin:0;
          border:1px solid #e8ddd6;
          transition:margin 0.28s ease, box-shadow 0.28s ease, border-color 0.28s ease, border-width 0.28s ease;
        }
        .pkg-plan-card-wrap:hover .pkg-plan-card {
          margin-top:3px;
          margin-left:0;
          border-top:3px solid #C65D3A;
          border-right:1px solid #e8ddd6;
          border-bottom:1px solid #e8ddd6;
          border-left:1px solid #e8ddd6;
          box-shadow:0 12px 24px rgba(0,0,0,0.14), 0 4px 10px rgba(227,94,34,0.18);
        }

        /* Plan card — grow with feature content (do not clip lists) */
        .pkg-plan-card {
          box-sizing:border-box;
          width:100%;
          height:100%;
          min-height:0;
          padding:16px 20px 20px;
          background:#FFFFFF;
          box-shadow:0 4px 18px rgba(165, 75, 51, 0.08);
          border-radius:12px;
          font-family:'Nunito Sans',Helvetica,sans-serif;
          cursor:pointer;
          display:flex;
          flex-direction:column;
          flex-shrink:0;
          overflow:visible;
        }
        .pkg-plan-card--active {
          box-shadow:0 6px 12px rgba(227,94,34,0.22);
        }
        .pkg-plan-card--disabled {
          cursor:default;
        }
        .pkg-plan-card-wrap:hover .pkg-plan-card--disabled {
          margin-top:0;
          border-top:1px solid #e8ddd6;
          box-shadow:0 4px 18px rgba(165, 75, 51, 0.08);
        }
        .pkg-plan-card-wrap:hover .pkg-plan-card--disabled + .pkg-plan-card-shadow,
        .pkg-plan-card-wrap:has(.pkg-plan-card--disabled):hover {
          transform:none;
        }
        .pkg-plan-card-wrap:has(.pkg-plan-card--disabled):hover .pkg-plan-card-shadow {
          opacity:0;
        }
        .pkg-plan-ribbon {
          position:absolute;
          top:8px;
          right:2px;
          background:#C65D3A;
          color:#fff;
          padding:3px 10px;
          font-size:6px;
          font-weight:700;
          line-height:8px;
          letter-spacing:0.4px;
          text-transform:uppercase;
          border-radius:20px;
          transform:rotate(17deg);
          z-index:2;
        }
        .pkg-plan-icon {
          display:flex;
          align-items:center;
          justify-content:flex-start;
          margin:0 0 2px;
          flex-shrink:0;
          background:transparent;
          transition:transform 0.25s ease;
        }
        .pkg-plan-icon svg {
          display:block;
        }
        .pkg-plan-icon--ad {
          width:25px;
          height:25px;
          margin-bottom:8px;
        }
        .pkg-plan-icon--ad svg {
          width:25px;
          height:25px;
        }
        .pkg-plan-card-wrap:hover .pkg-plan-icon {
          transform:scale(1.06);
        }
        .pkg-plan-card-wrap:hover .pkg-plan-icon--ad {
          width:25px;
          height:25px;
          margin-bottom:8px;
        }
        .pkg-plan-name {
          margin:0;
          font-size:16px;
          font-weight:800;
          line-height:22px;
          color:#455A64;
        }
        .pkg-plan-tagline {
          margin:0 0 14px;
          font-size:12px;
          font-weight:600;
          line-height:16px;
          color:#67757C;
        }
        .pkg-plan-tagline--empty {
          visibility:hidden;
        }
        .pkg-plan-price-wrap {
          display:flex;
          flex-direction:column;
          align-items:center;
          text-align:center;
          margin:0 0 14px;
        }
        .pkg-plan-price {
          font-size:30px;
          font-weight:800;
          line-height:41px;
          color:#455A64;
        }
        .pkg-plan-period {
          display:block;
          font-size:12px;
          font-weight:500;
          line-height:16px;
          color:#67757C;
          visibility:visible;
          opacity:1;
        }
        .pkg-plan-cta {
          box-sizing:border-box;
          display:flex;
          flex-direction:row;
          justify-content:center;
          align-items:center;
          width:100%;
          max-width:221px;
          height:35px;
          margin:0 auto 18px;
          padding:10px;
          border-radius:10px;
          font-size:12px;
          font-weight:500;
          line-height:16px;
          flex-shrink:0;
          transition:background 0.25s ease, color 0.25s ease, width 0.25s ease, font-weight 0.25s ease;
        }
        .pkg-plan-cta--ghost {
          background:#EFEFEF;
          color:#67757C;
        }
        .pkg-plan-cta--plus {
          background:#F7CFBD;
          color:#C65D3A;
          font-weight:700;
        }
        .pkg-plan-cta--ad {
          background:#F7CFBD;
          color:#C65D3A;
          font-weight:700;
          text-align:center;
        }
        .pkg-plan-card-wrap:hover .pkg-plan-cta:not(.pkg-plan-cta--ghost) {
          width:100%;
          background:#C65D3A;
          color:#fff;
          font-weight:700;
        }
        .pkg-plan-features-label {
          margin:0 0 8px;
          padding-left:9px;
          font-size:12px;
          font-weight:700;
          line-height:16px;
          color:#455A64;
        }
        .pkg-plan-features {
          list-style:none;
          margin:0;
          padding:0 0 0 5px;
          display:flex;
          flex-direction:column;
          gap:6px;
          flex:1 1 auto;
        }
        .pkg-section-heading {
          margin:0 0 16px;
          font-family:'Nunito Sans',Helvetica,sans-serif;
          font-size:14px;
          font-weight:700;
          line-height:19px;
          color:#455A64;
        }
        .pkg-plan-feature {
          display:flex;
          align-items:flex-start;
          gap:10px;
          font-size:12px;
          font-weight:500;
          line-height:16px;
          color:#67757C;
        }
        .pkg-plan-feature--excluded {
          color:#B8C5CE;
        }
        .pkg-plan-feature--excluded span {
          color:#B8C5CE;
        }
        .pkg-plan-check {
          width:14px;
          height:14px;
          border-radius:50%;
          background:#C65D3A;
          color:#fff;
          display:inline-flex;
          align-items:center;
          justify-content:center;
          flex-shrink:0;
          font-size:8px;
          line-height:1;
        }
        .pkg-plan-specs {
          margin-top:12px;
        }
        .pkg-plan-specs .pkg-plan-features-label {
          margin-top:0;
        }

        /* Detail view — Figma Frame 9 */
        .pkg-detail-card {
          box-sizing:border-box;
          position:relative;
          width:100%;
          max-width:none;
          min-height:289px;
          margin:0;
          padding:20px 20px 20px;
          background:#FFFFFF;
          border:1px solid #e8ddd6;
          border-radius:12px;
          box-shadow:0 4px 18px rgba(165, 75, 51, 0.08);
          font-family:'Nunito Sans',Helvetica,sans-serif;
        }
        .pkg-detail-title {
          margin:0;
          font-size:20px;
          font-weight:700;
          line-height:27px;
          color:#455A64;
        }
        .pkg-detail-section {
          margin-top:19px;
          padding-left:12px;
        }
        .pkg-detail-label {
          font-size:14px;
          font-weight:700;
          line-height:19px;
          color:#455A64;
        }
        .pkg-detail-helper {
          margin:0;
          font-size:14px;
          font-weight:500;
          line-height:19px;
          color:#455A64;
        }
        .pkg-detail-term-field {
          position:relative;
          width:100%;
          max-width:100%;
          margin:39px auto 0;
        }
        .pkg-detail-term-btn {
          box-sizing:border-box;
          width:100%;
          height:40px;
          display:flex;
          align-items:center;
          gap:12px;
          padding:0 14px;
          background:#FFFFFF;
          border:1px solid #D2D6DE;
          border-radius:2px;
          cursor:pointer;
          font-family:'Nunito Sans',Helvetica,sans-serif;
        }
        .pkg-detail-term-label {
          font-size:14px;
          font-weight:600;
          line-height:19px;
          color:#495057;
          white-space:nowrap;
        }
        .pkg-detail-term-price {
          flex:1;
          font-size:14px;
          font-weight:600;
          line-height:19px;
          text-align:right;
          color:#495057;
        }
        .pkg-detail-term-arrow {
          display:block;
          width:14px;
          height:9px;
          flex-shrink:0;
          object-fit:contain;
        }
        .pkg-detail-term-menu {
          position:absolute;
          left:0;
          right:0;
          top:calc(100% + 4px);
          background:#FFFFFF;
          border:1px solid #D2D6DE;
          border-radius:2px;
          box-shadow:0 4px 8px rgba(0,0,0,0.1);
          z-index:20;
          overflow:hidden;
        }
        .pkg-detail-term-menu-item {
          width:100%;
          display:flex;
          align-items:center;
          justify-content:space-between;
          gap:12px;
          padding:10px 14px;
          border:none;
          background:#FFFFFF;
          cursor:pointer;
          font-family:'Nunito Sans',Helvetica,sans-serif;
          font-size:14px;
          font-weight:600;
          line-height:19px;
          color:#495057;
          text-align:left;
        }
        .pkg-detail-term-menu-item:hover,
        .pkg-detail-term-menu-item.is-active {
          background:#FFF6F1;
        }
        .pkg-detail-actions {
          display:flex;
          justify-content:space-between;
          align-items:center;
          gap:12px;
          margin-top:68px;
          padding-right:0;
        }
        .pkg-flow-back-btn {
          box-sizing:border-box;
          display:inline-flex;
          align-items:center;
          justify-content:center;
          min-width:72px;
          height:26px;
          padding:0 12px;
          border:1px solid #C65D3A;
          border-radius:3px;
          background:#FFFFFF;
          font-family:'Nunito Sans',Helvetica,sans-serif;
          font-size:12px;
          font-weight:400;
          line-height:16px;
          color:#C65D3A;
          cursor:pointer;
        }
        .pkg-flow-back-btn:hover:not(:disabled) {
          background:#FFF6F1;
        }
        .pkg-flow-back-btn:disabled {
          opacity:0.65;
          cursor:not-allowed;
        }
        .pkg-detail-continue-btn {
          box-sizing:border-box;
          display:inline-flex;
          align-items:center;
          justify-content:center;
          min-width:126px;
          height:26px;
          padding:0 10px;
          border:none;
          border-radius:3px;
          background:#C65D3A;
          font-family:'Nunito Sans',Helvetica,sans-serif;
          font-size:12px;
          font-weight:400;
          line-height:16px;
          color:#FFFFFF;
          cursor:pointer;
        }

        /* Cart view — Figma */
        .pkg-cart-wrap {
          width:100%;
          max-width:none;
          margin:0;
          font-family:'Nunito Sans',Helvetica,sans-serif;
        }
        .pkg-cart-banner {
          box-sizing:border-box;
          width:100%;
          min-height:68px;
          padding:18px 16px;
          margin-bottom:24px;
          background:#FFFFFF;
          border:1px solid #e8ddd6;
          border-radius:12px;
          box-shadow:0 4px 18px rgba(165, 75, 51, 0.08);
        }
        .pkg-cart-banner-title {
          margin:0;
          font-size:14px;
          font-weight:700;
          line-height:19px;
          color:#455A64;
        }
        .pkg-cart-banner-top,
        .pkg-checkout-banner-top {
          display:flex;
          align-items:center;
          justify-content:space-between;
          gap:12px;
        }
        .pkg-cart-banner-sub {
          margin:3px 0 0;
          font-size:12px;
          font-weight:500;
          line-height:16px;
          color:#455A64;
        }
        .pkg-cart-layout {
          display:grid;
          grid-template-columns:minmax(0,1fr) 430px;
          gap:24px;
          align-items:start;
          justify-content:center;
        }
        .pkg-cart-items-col {
          display:flex;
          flex-direction:column;
          gap:24px;
        }
        .pkg-cart-item {
          box-sizing:border-box;
          display:flex;
          align-items:flex-start;
          gap:11px;
          width:100%;
          min-height:92px;
          padding:15px 13px 12px;
          background:#FFFFFF;
          border:1px solid #e8ddd6;
          border-radius:12px;
          box-shadow:0 4px 18px rgba(165, 75, 51, 0.08);
        }
        .pkg-cart-item-icon {
          flex-shrink:0;
          width:61px;
          height:61px;
          display:flex;
          align-items:center;
          justify-content:center;
          background:#C65D3A;
          border-radius:7px;
          color:#FFFFFF;
          line-height:1;
        }
        .pkg-cart-item-icon svg {
          display:block;
          flex-shrink:0;
        }
        .pkg-cart-item-icon--listing svg {
          width:30px;
          height:30px;
        }
        .pkg-cart-item-icon--ad svg {
          width:25px;
          height:25px;
        }
        .pkg-cart-item-body {
          flex:1;
          min-width:0;
          padding-top:0;
        }
        .pkg-cart-item-name {
          margin:0 0 5px;
          font-size:16px;
          font-weight:700;
          line-height:22px;
          color:#455A64;
        }
        .pkg-cart-item-name--ad {
          font-weight:800;
        }
        .pkg-cart-item-term-field {
          position:relative;
          display:inline-block;
        }
        .pkg-cart-item-term {
          box-sizing:border-box;
          display:flex;
          align-items:center;
          justify-content:space-between;
          gap:8px;
          width:142px;
          height:33px;
          padding:0 10px;
          background:#FFFFFF;
          border:1px solid #C65D3A;
          border-radius:2px;
          cursor:pointer;
          font-family:'Nunito Sans',Helvetica,sans-serif;
          font-size:14px;
          font-weight:600;
          line-height:19px;
          color:#495057;
        }
        .pkg-cart-item-term--static {
          cursor:default;
        }
        .pkg-cart-item-term-arrow {
          display:block;
          width:14px;
          height:9px;
          margin-left:auto;
          flex-shrink:0;
          object-fit:contain;
        }
        .pkg-cart-item-term-menu {
          position:absolute;
          left:0;
          top:calc(100% + 4px);
          z-index:20;
          min-width:142px;
          background:#FFFFFF;
          border:1px solid #C65D3A;
          border-radius:2px;
          box-shadow:0 4px 8px rgba(0,0,0,0.1);
          overflow:hidden;
        }
        .pkg-cart-item-term-menu-item {
          width:100%;
          padding:8px 10px;
          border:none;
          background:#FFFFFF;
          text-align:left;
          font-family:'Nunito Sans',Helvetica,sans-serif;
          font-size:14px;
          font-weight:600;
          color:#495057;
          cursor:pointer;
        }
        .pkg-cart-item-term-menu-item:hover,
        .pkg-cart-item-term-menu-item.is-active {
          background:#FFF6F1;
        }
        .pkg-cart-item-right {
          display:flex;
          flex-direction:column;
          align-items:flex-end;
          justify-content:space-between;
          align-self:stretch;
          flex-shrink:0;
          min-width:78px;
          padding-top:4px;
        }
        .pkg-cart-item-price {
          font-size:20px;
          font-weight:800;
          line-height:27px;
          text-align:right;
          color:#455A64;
          white-space:nowrap;
        }
        .pkg-cart-item-delete {
          border:none;
          background:transparent;
          color:#3E5569;
          cursor:pointer;
          font-size:17px;
          line-height:1;
          padding:0;
          margin-top:auto;
        }
        .pkg-cart-summary {
          box-sizing:border-box;
          width:100%;
          max-width:430px;
          min-height:267px;
          padding:18px 16px 16px;
          background:#FFFFFF;
          border:1px solid #e8ddd6;
          border-radius:12px;
          box-shadow:0 4px 18px rgba(165, 75, 51, 0.08);
          position:sticky;
          top:14px;
          justify-self:end;
        }
        .pkg-cart-summary-title {
          margin:0;
          font-size:16px;
          font-weight:700;
          line-height:22px;
          color:#455A64;
        }
        .pkg-cart-summary-count {
          margin:0;
          padding-top:0;
          font-size:14px;
          font-weight:500;
          line-height:19px;
          color:#455A64;
        }
        .pkg-cart-summary-divider {
          height:0;
          border-top:1px solid #e8ddd6;
          margin:16px 0 14px;
        }
        .pkg-cart-summary-subtotal {
          display:grid;
          grid-template-columns:minmax(0,1fr) auto;
          column-gap:12px;
          row-gap:8px;
          align-items:baseline;
          margin-bottom:18px;
        }
        .pkg-cart-summary-subtotal-label {
          grid-column:1;
          grid-row:1;
          display:flex;
          align-items:baseline;
          gap:4px;
          min-width:0;
          font-size:16px;
          font-weight:700;
          line-height:22px;
          color:#455A64;
        }
        .pkg-cart-summary-subtotal-price {
          grid-column:2;
          grid-row:1;
          justify-self:end;
          flex-shrink:0;
          white-space:nowrap;
        }
        .pkg-cart-summary-promo-row {
          grid-column:1;
          grid-row:2;
          display:flex;
          align-items:center;
          gap:8px;
        }
        .pkg-cart-summary-subtotal-meta {
          grid-column:2;
          grid-row:2;
          display:flex;
          flex-direction:column;
          align-items:flex-end;
          gap:2px;
        }
        .pkg-cart-summary-inr {
          font-size:12px;
          font-weight:500;
          line-height:16px;
        }
        .pkg-cart-summary-price-current {
          font-size:20px;
          font-weight:800;
          line-height:27px;
          color:#455A64;
        }
        .pkg-cart-summary-price-old {
          font-size:13px;
          font-weight:700;
          color:#FF0000;
          text-decoration:line-through;
          line-height:1.2;
        }
        .pkg-cart-summary-discount {
          font-size:10px;
          font-weight:500;
          line-height:14px;
          color:#8FA5B6;
          white-space:nowrap;
        }
        .pkg-cart-summary-meta {
          display:flex;
          flex-direction:column;
          gap:6px;
          margin:0 0 14px;
          padding:10px 12px;
          background:#F7F9FB;
          border:1px solid #E8EEF3;
        }
        .pkg-cart-summary-meta-row {
          display:flex;
          align-items:baseline;
          justify-content:space-between;
          gap:12px;
          font-size:12px;
          line-height:16px;
          color:#5B6F82;
        }
        .pkg-cart-summary-meta-row span:last-child {
          font-weight:700;
          color:#455A64;
          text-align:right;
        }
        .pkg-cart-summary-total-row {
          display:flex;
          align-items:baseline;
          justify-content:space-between;
          gap:12px;
          margin:0 0 14px;
          font-size:14px;
          font-weight:700;
          line-height:20px;
          color:#455A64;
        }
        .pkg-cart-summary-total-row strong {
          font-size:18px;
          font-weight:800;
        }
        .pkg-cart-item-meta {
          margin:6px 0 0;
          font-size:12px;
          font-weight:500;
          line-height:16px;
          color:#8FA5B6;
        }
        .pkg-cart-promo-link {
          display:inline;
          margin:0;
          padding:0;
          border:none;
          background:transparent;
          font-family:'Nunito Sans',Helvetica,sans-serif;
          font-size:12px;
          font-weight:700;
          line-height:16px;
          text-decoration:underline;
          color:#455A64;
          cursor:pointer;
          text-align:left;
        }
        .pkg-cart-promo-trash {
          display:inline-flex;
          align-items:center;
          justify-content:center;
          flex-shrink:0;
          width:12px;
          height:13px;
          padding:0;
          border:none;
          background:transparent;
          cursor:pointer;
        }
        .pkg-cart-promo-trash:hover svg path {
          fill:#C65D3A;
        }
        .pkg-promo-modal-backdrop {
          position:fixed;
          inset:0;
          z-index:10000;
          display:flex;
          align-items:center;
          justify-content:center;
          background:rgba(244,245,250,0.28);
          padding:16px;
        }
        .pkg-promo-modal {
          box-sizing:border-box;
          width:min(92vw, 520px);
          max-width:100%;
          min-height:309px;
          background:#FFFFFF;
          box-shadow:0px 4px 4px rgba(0,0,0,0.25);
          border-radius:3px;
          display:flex;
          flex-direction:column;
          align-items:center;
          padding:14px 43px 24px;
          font-family:'Nunito Sans',Helvetica,sans-serif;
          text-align:center;
        }
        .pkg-promo-modal-icon-wrap {
          box-sizing:border-box;
          width:75px;
          height:75px;
          border-radius:50%;
          border:3px solid rgba(165,220,134,0.2);
          display:flex;
          align-items:center;
          justify-content:center;
          flex-shrink:0;
          margin-bottom:15px;
        }
        .pkg-promo-modal-icon-wrap i {
          font-size:36px;
          line-height:1;
          color:#C65D3A;
        }
        .pkg-promo-modal-title {
          margin:0 0 15px;
          font-size:20px;
          font-weight:600;
          line-height:27px;
          color:#575757;
        }
        .pkg-promo-modal-desc {
          margin:0 0 18px;
          max-width:379px;
          font-size:14px;
          font-weight:600;
          line-height:19px;
          color:#797979;
        }
        .pkg-promo-modal-input {
          box-sizing:border-box;
          width:221px;
          max-width:100%;
          height:28px;
          padding:0 8px;
          border:1px solid #D2D6DE;
          border-radius:2px;
          background:#FFFFFF;
          font-family:'Nunito Sans',Helvetica,sans-serif;
          font-size:12px;
          font-weight:300;
          line-height:14px;
          color:#495057;
          outline:none;
          margin-bottom:8px;
        }
        .pkg-promo-modal-input::placeholder {
          color:#495057;
          font-weight:300;
          font-size:10px;
        }
        .pkg-promo-modal-input:focus {
          border-color:#C65D3A;
        }
        .pkg-promo-modal-error {
          margin:0 0 8px;
          font-size:11px;
          font-weight:600;
          color:#d63b1f;
          line-height:1.3;
        }
        .pkg-promo-modal-apply {
          display:flex;
          flex-direction:row;
          justify-content:center;
          align-items:center;
          padding:10px 32px;
          gap:10px;
          width:119px;
          height:37px;
          margin-top:auto;
          border:none;
          border-radius:3px;
          background:#C65D3A;
          font-family:'Nunito Sans',Helvetica,sans-serif;
          font-size:14px;
          font-weight:600;
          line-height:1;
          color:#FFFFFF;
          cursor:pointer;
          transition:background 0.2s ease;
        }
        .pkg-promo-modal-apply:hover {
          background:#A84C2E;
        }
        .pkg-promo-success-modal {
          box-sizing:border-box;
          width:min(92vw, 520px);
          max-width:100%;
          min-height:263px;
          background:#FFFFFF;
          box-shadow:0px 4px 4px rgba(0,0,0,0.25);
          border-radius:3px;
          display:flex;
          flex-direction:column;
          align-items:center;
          padding:14px 22px 24px;
          font-family:'Nunito Sans',Helvetica,sans-serif;
          text-align:center;
        }
        .pkg-promo-success-icon-wrap {
          box-sizing:border-box;
          width:75px;
          height:75px;
          border-radius:50%;
          border:3px solid rgba(165,220,134,0.2);
          display:flex;
          align-items:center;
          justify-content:center;
          flex-shrink:0;
          margin-bottom:15px;
        }
        .pkg-promo-success-icon-wrap i {
          font-size:40px;
          line-height:1;
          color:#4CB113;
        }
        .pkg-promo-success-title {
          margin:0 0 16px;
          font-size:20px;
          font-weight:600;
          line-height:27px;
          color:#575757;
        }
        .pkg-promo-success-desc {
          margin:0 0 24px;
          max-width:422px;
          font-size:16px;
          font-weight:600;
          line-height:22px;
          color:#797979;
        }
        .pkg-promo-success-ok {
          display:flex;
          flex-direction:row;
          justify-content:center;
          align-items:center;
          padding:10px 32px;
          gap:10px;
          width:93px;
          height:37px;
          margin-top:auto;
          border:none;
          border-radius:3px;
          background:#C65D3A;
          font-family:'Nunito Sans',Helvetica,sans-serif;
          font-size:14px;
          font-weight:600;
          line-height:1;
          color:#FFFFFF;
          cursor:pointer;
          transition:background 0.2s ease;
        }
        .pkg-promo-success-ok:hover {
          background:#A84C2E;
        }
        .pkg-delete-confirm-modal {
          box-sizing:border-box;
          width:min(92vw, 400px);
          background:#FFFFFF;
          box-shadow:0px 4px 4px rgba(0,0,0,0.25);
          border-radius:3px;
          display:flex;
          flex-direction:column;
          align-items:center;
          padding:24px 22px 22px;
          font-family:'Nunito Sans',Helvetica,sans-serif;
          text-align:center;
        }
        .pkg-delete-confirm-icon {
          width:75px;
          height:75px;
          margin:0 0 16px;
          display:block;
          object-fit:contain;
        }
        .pkg-delete-confirm-title {
          margin:0 0 12px;
          font-size:20px;
          font-weight:600;
          line-height:27px;
          color:#575757;
        }
        .pkg-delete-confirm-desc {
          margin:0 0 22px;
          max-width:320px;
          font-size:14px;
          font-weight:600;
          line-height:19px;
          color:#797979;
        }
        .pkg-delete-confirm-actions {
          display:flex;
          justify-content:center;
          align-items:center;
          gap:10px;
          width:100%;
          flex-wrap:wrap;
        }
        .pkg-delete-confirm-cancel,
        .pkg-delete-confirm-btn {
          display:inline-flex;
          justify-content:center;
          align-items:center;
          min-width:120px;
          height:37px;
          padding:0 18px;
          border-radius:3px;
          font-family:'Nunito Sans',Helvetica,sans-serif;
          font-size:14px;
          font-weight:600;
          line-height:1;
          cursor:pointer;
          transition:background 0.2s ease, color 0.2s ease, border-color 0.2s ease;
        }
        .pkg-delete-confirm-cancel {
          border:1px solid #D2D6DE;
          background:#FFFFFF;
          color:#575757;
        }
        .pkg-delete-confirm-cancel:hover:not(:disabled) {
          border-color:#C65D3A;
          color:#C65D3A;
        }
        .pkg-delete-confirm-btn {
          border:none;
          background:#C65D3A;
          color:#FFFFFF;
        }
        .pkg-delete-confirm-btn:hover:not(:disabled) {
          background:#A84C2E;
        }
        .pkg-delete-confirm-cancel:disabled,
        .pkg-delete-confirm-btn:disabled {
          opacity:0.65;
          cursor:not-allowed;
        }
        .pkg-pay-success-modal {
          box-sizing:border-box;
          width:min(92vw, 520px);
          max-width:100%;
          height:auto;
          max-height:calc(100vh - 32px);
          overflow:auto;
          background:#FFFFFF;
          box-shadow:0px 4px 4px rgba(0,0,0,0.25);
          border-radius:3px;
          display:flex;
          flex-direction:column;
          align-items:center;
          justify-content:flex-start;
          padding:14px 20px 24px;
          font-family:'Nunito Sans',Helvetica,sans-serif;
          text-align:center;
        }
        .pkg-pay-success-icon-wrap {
          box-sizing:border-box;
          width:75px;
          height:75px;
          border-radius:50%;
          border:3px solid rgba(165,220,134,0.2);
          display:flex;
          align-items:center;
          justify-content:center;
          flex-shrink:0;
          margin-bottom:15px;
        }
        .pkg-pay-success-icon-wrap i {
          font-size:40px;
          line-height:1;
          color:#4CB113;
        }
        .pkg-pay-success-title {
          margin:0 0 15px;
          font-size:20px;
          font-weight:600;
          line-height:27px;
          color:#575757;
        }
        .pkg-pay-success-desc {
          margin:0 0 16px;
          max-width:425px;
          font-size:14px;
          font-weight:600;
          line-height:19px;
          color:#797979;
        }
        .pkg-pay-success-details {
          width:100%;
          margin:0 0 12px;
          padding:12px 14px;
          border:1px solid #eceff3;
          border-radius:4px;
          background:#fafbfc;
          text-align:left;
        }
        .pkg-pay-success-detail-row {
          display:flex;
          justify-content:space-between;
          gap:12px;
          padding:4px 0;
        }
        .pkg-pay-success-detail-row dt {
          margin:0;
          font-size:13px;
          font-weight:500;
          color:#797979;
        }
        .pkg-pay-success-detail-row dd {
          margin:0;
          font-size:13px;
          font-weight:700;
          color:#575757;
          text-align:right;
        }
        .pkg-pay-success-lines {
          width:100%;
          margin:0 0 12px;
          padding:0;
          list-style:none;
          text-align:left;
        }
        .pkg-pay-success-line {
          display:flex;
          justify-content:space-between;
          gap:12px;
          padding:8px 0;
          border-bottom:1px solid #f0f2f5;
        }
        .pkg-pay-success-line:last-child {
          border-bottom:none;
        }
        .pkg-pay-success-line-name {
          font-size:13px;
          font-weight:600;
          color:#575757;
        }
        .pkg-pay-success-line-price {
          font-size:13px;
          font-weight:700;
          color:#C65D3A;
          white-space:nowrap;
        }
        .pkg-pay-success-next {
          width:100%;
          margin:0 0 16px;
          padding:8px 12px;
          border-radius:4px;
          background:#fff6f1;
          font-size:13px;
          font-weight:600;
          line-height:18px;
          color:#C65D3A;
          text-align:left;
        }
        .pkg-pay-success-ok {
          display:flex;
          flex-direction:row;
          justify-content:center;
          align-items:center;
          padding:10px 32px;
          gap:10px;
          width:93px;
          height:37px;
          border:none;
          border-radius:3px;
          background:#C65D3A;
          font-family:'Nunito Sans',Helvetica,sans-serif;
          font-size:20px;
          font-weight:600;
          line-height:27px;
          color:#FFFFFF;
          cursor:pointer;
          margin-top:8px;
        }
        .pkg-upi-qr-modal {
          box-sizing:border-box;
          position:relative;
          width:min(92vw, 460px);
          max-width:100%;
          height:auto;
          max-height:calc(100vh - 32px);
          margin:0;
          padding:22px 22px 0;
          background:#FFFFFF;
          box-shadow:0 18px 44px rgba(46,33,26,0.22);
          border-radius:12px;
          overflow:auto;
          display:flex;
          flex-direction:column;
          align-items:center;
          justify-content:flex-start;
          gap:14px;
          font-family:'Nunito Sans',Helvetica,sans-serif;
          text-align:center;
        }
        .pkg-upi-qr-logo {
          position:static;
          display:block;
          width:180px;
          max-width:100%;
          height:auto;
          object-fit:contain;
        }
        .pkg-upi-qr-title {
          position:static;
          width:auto;
          height:auto;
          margin:0;
          font-size:18px;
          font-weight:700;
          line-height:24px;
          color:#2c3d4f;
        }
        .pkg-upi-qr-image {
          position:static;
          display:block;
          width:220px;
          max-width:100%;
          height:auto;
          padding:10px;
          border:1px solid #eef0f3;
          border-radius:10px;
          background:#fff;
          object-fit:contain;
          cursor:pointer;
        }
        .pkg-upi-qr-hint {
          margin:0;
          font-size:13px;
          font-weight:500;
          line-height:18px;
          color:#6b7c8f;
        }
        .pkg-upi-qr-placeholder {
          box-sizing:border-box;
          width:220px;
          max-width:100%;
          min-height:140px;
          padding:18px 16px;
          border:1px dashed #e3d9d2;
          border-radius:10px;
          background:#fdfaf8;
          display:flex;
          flex-direction:column;
          align-items:center;
          justify-content:center;
          gap:10px;
          color:#6b7c8f;
          font-size:13px;
          font-weight:500;
          line-height:1.4;
          text-align:center;
        }
        .pkg-upi-qr-placeholder i {
          font-size:36px;
          color:#9aa8b5;
        }
        .pkg-upi-qr-details {
          box-sizing:border-box;
          width:100%;
          max-width:360px;
          margin:0;
          padding:12px 14px;
          border:1px solid #eef0f3;
          border-radius:8px;
          background:#fafbfc;
          text-align:left;
          display:flex;
          flex-direction:column;
          gap:8px;
        }
        .pkg-upi-qr-detail-row {
          display:grid;
          grid-template-columns:120px 1fr;
          gap:8px;
          align-items:start;
        }
        .pkg-upi-qr-detail-row dt {
          margin:0;
          font-size:12px;
          font-weight:600;
          line-height:1.4;
          color:#6b7c8f;
        }
        .pkg-upi-qr-detail-row dd {
          margin:0;
          font-size:13px;
          font-weight:600;
          line-height:1.4;
          color:#2c3d4f;
          word-break:break-word;
        }
        /* Sticky so Cancel / Pay stay reachable when the details list scrolls. */
        .pkg-upi-qr-actions {
          position:sticky;
          bottom:0;
          z-index:1;
          display:flex;
          justify-content:center;
          align-items:center;
          gap:10px;
          width:calc(100% + 44px);
          margin:0 -22px;
          padding:14px 22px 18px;
          flex-wrap:wrap;
          background:#FFFFFF;
          border-top:1px solid #eef0f3;
        }
        .pkg-upi-qr-cancel,
        .pkg-upi-qr-continue {
          display:inline-flex;
          justify-content:center;
          align-items:center;
          min-width:120px;
          height:37px;
          padding:0 18px;
          border-radius:3px;
          font-family:'Nunito Sans',Helvetica,sans-serif;
          font-size:14px;
          font-weight:600;
          line-height:1;
          cursor:pointer;
          transition:background 0.2s ease, color 0.2s ease, border-color 0.2s ease;
        }
        .pkg-upi-qr-cancel {
          border:1px solid #D2D6DE;
          background:#FFFFFF;
          color:#575757;
        }
        .pkg-upi-qr-cancel:hover:not(:disabled) {
          border-color:#C65D3A;
          color:#C65D3A;
        }
        .pkg-upi-qr-continue {
          border:none;
          background:#C65D3A;
          color:#FFFFFF;
        }
        .pkg-upi-qr-continue:hover:not(:disabled) {
          background:#A84C2E;
        }
        .pkg-upi-qr-cancel:disabled,
        .pkg-upi-qr-continue:disabled {
          opacity:0.65;
          cursor:not-allowed;
        }
        .pkg-cart-checkout-btn {
          display:flex;
          align-items:center;
          justify-content:center;
          width:100%;
          max-width:248px;
          height:35px;
          margin:0 auto 18px;
          padding:10px;
          border:none;
          border-radius:5px;
          background:#C65D3A;
          font-family:'Nunito Sans',Helvetica,sans-serif;
          font-size:12px;
          font-weight:600;
          line-height:16px;
          color:#FFFFFF;
          cursor:pointer;
        }
        .pkg-cart-secure {
          display:flex;
          align-items:center;
          justify-content:space-between;
          /* flex-wrap:wrap; */
          gap:10px 8px;
          padding-top:10px;
        }
        .pkg-cart-secure-label {
          display:inline-flex;
          align-items:center;
          gap:6px;
          font-size:12px;
          font-weight:700;
          line-height:16px;
          text-decoration:underline;
          color:#455A64;
          white-space:nowrap;
          flex-shrink:0;
          min-width:0;
        }
        .pkg-cart-secure-label span {
          white-space:nowrap;
        }
        .pkg-cart-secure-label i {
          color:#C65D3A;
          font-size:14px;
          text-decoration:none;
        }
        .pkg-cart-payment-badges {
          display:flex;
          align-items:center;
          justify-content:flex-end;
          gap:6px;
          flex:1 1 100%;
          flex-wrap:nowrap;
          min-width:0;
        }
        .pkg-cart-payment-badge {
          box-sizing:border-box;
          display:inline-flex;
          align-items:center;
          justify-content:center;
          width:56px;
          height:30px;
          padding:2px 3px;
          background:#FFFFFF;
          border:1px solid #e8ddd6;
          border-radius:2px;
          flex-shrink:0;
        }
        .pkg-cart-payment-badge-img {
          display:block;
          width:100%;
          height:100%;
          object-fit:contain;
        }
        @media(max-width:900px){
          .pkg-cart-layout {
            grid-template-columns:1fr;
          }
          .pkg-cart-summary {
            position:static;
            max-width:100%;
          }
        }

        @media(max-width:1280px){
          .pkg-grid-listing {
            grid-template-columns:repeat(2,minmax(0,1fr));
            row-gap:16px;
            column-gap:16px;
          }
          .pkg-grid {
            column-gap:16px;
            row-gap:16px;
          }
          .pkg-plans-headings {
            grid-template-columns:3fr 1fr;
            margin-bottom:12px;
            column-gap:16px;
          }
          .pkg-plans-headings .pkg-section-heading-listing {
            grid-column:1;
          }
          .pkg-plans-headings .pkg-section-heading-ads {
            grid-column:2;
          }
        }

        @media(max-width:980px){
          .pkg-page { width:100%; margin:0; padding:0 0 24px; }
          .pkg-content { width:100%; max-width:100%; margin-left:0; padding-left:0; padding-right:0; }
          .pkg-content--detail { width:100%; margin-left:0; padding-left:0; padding-right:0; }
          .pkg-detail-card { width:100%; max-width:100%; min-height:auto; padding:16px 14px 20px; }
          .pkg-detail-term-field { max-width:100%; margin-top:24px; }
          .pkg-detail-actions { margin-top:32px; }
          .pkg-grid {
            grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));
            justify-content:stretch;
            column-gap:16px;
            row-gap:16px;
          }
        }
        @media(max-width:680px){
          .pkg-plan-card,
          .pkg-plan-card-wrap { width:100%; max-width:none; height:100%; justify-self:stretch; }
          .pkg-plan-card-shadow { width:100%; height:100%; max-width:none; }
          .pkg-header-bar { flex-wrap:wrap; margin-bottom:16px; }
          .pkg-grid-listing {
            grid-template-columns:minmax(0,1fr);
            row-gap:12px;
          }
          .pkg-grid,
          .pkg-grid-ads {
            grid-template-columns:1fr;
            column-gap:12px;
            row-gap:12px;
          }
          .pkg-plans-headings {
            grid-template-columns:1fr;
            gap:4px;
          }
          .pkg-plans-headings .pkg-section-heading-listing,
          .pkg-plans-headings .pkg-section-heading-ads {
            grid-column:1;
          }
        }

        /* Checkout (payment step) */
        .pkg-checkout-wrap {
          width:100%;
          max-width:none;
          margin:0;
        }
        .pkg-checkout-banner {
          box-sizing:border-box;
          width:100%;
          min-height:68px;
          margin-bottom:24px;
          padding:18px 16px;
          background:#FFFFFF;
          border:1px solid #e8ddd6;
          border-radius:12px;
          box-shadow:0 4px 18px rgba(165, 75, 51, 0.08);
        }
        .pkg-checkout-banner-title {
          margin:0;
          font-family:'Nunito Sans',Helvetica,sans-serif;
          font-size:14px;
          font-weight:700;
          line-height:19px;
          color:#455A64;
        }
        .pkg-checkout-banner-sub {
          margin:3px 0 0;
          font-family:'Nunito Sans',Helvetica,sans-serif;
          font-size:12px;
          font-weight:500;
          line-height:16px;
          color:#455A64;
        }
        .pkg-checkout-layout {
          display:grid;
          grid-template-columns:minmax(0,1fr) 430px;
          gap:24px;
          align-items:start;
          justify-content:center;
        }
        .pkg-checkout-payment-col {
          min-width:0;
        }
        .pkg-checkout-pay-methods {
          display:flex;
          flex-direction:column;
          gap:12px;
        }
        .pkg-checkout-pay-row {
          box-sizing:border-box;
          display:flex;
          align-items:center;
          gap:15px;
          width:100%;
          height:57px;
          padding:0 14px;
          background:#FFFFFF;
          border:1px solid #e8ddd6;
          border-radius:12px;
          box-shadow:0 4px 18px rgba(165, 75, 51, 0.08);
          cursor:pointer;
          user-select:none;
        }
        .pkg-checkout-pay-label {
          font-family:'Nunito Sans',Helvetica,sans-serif;
          font-size:16px;
          font-weight:700;
          line-height:22px;
          color:#455A64;
        }
        .pkg-checkout-radio {
          box-sizing:border-box;
          flex-shrink:0;
          width:24px;
          height:24px;
          border-radius:50%;
          border:2px solid #C0C0C0;
          background:#FFFFFF;
          position:relative;
        }
        .pkg-checkout-radio.is-active {
          border-color:#C65D3A;
        }
        .pkg-checkout-radio.is-active::after {
          content:'';
          position:absolute;
          left:50%;
          top:50%;
          width:12px;
          height:12px;
          border-radius:50%;
          background:#C65D3A;
          transform:translate(-50%,-50%);
        }
        .pkg-checkout-wallet-divider {
          height:0;
          border-top:1px solid #C0C0C0;
          margin:18px 0;
        }
        .pkg-checkout-wallet-grid {
          display:grid;
          grid-template-columns:repeat(3,minmax(0,1fr));
          gap:12px;
        }
        .pkg-checkout-wallet-card {
          box-sizing:border-box;
          display:flex;
          align-items:center;
          gap:15px;
          height:57px;
          padding:0 16px 0 14px;
          background:#FFFFFF;
          border:1px solid #e8ddd6;
          border-radius:12px;
          box-shadow:0 4px 18px rgba(165, 75, 51, 0.08);
          cursor:pointer;
          user-select:none;
        }
        .pkg-checkout-wallet-brand {
          display:block;
          flex-shrink:0;
          width:122px;
          height:36px;
          max-width:none;
          max-height:none;
          object-fit:contain;
        }
        .pkg-checkout-summary {
          width:100%;
          max-width:430px;
          min-height:269px;
          justify-self:end;
        }
        .pkg-checkout-subtotal {
          margin-bottom:18px;
        }
        .pkg-checkout-pay-btn {
          max-width:280px;
          margin:0 auto 18px;
        }
        @media(max-width:1100px){
          .pkg-checkout-layout {
            grid-template-columns:1fr;
            max-width:100%;
            margin:0;
          }
          .pkg-checkout-summary {
            width:100%;
            max-width:100%;
            justify-self:stretch;
          }
        }
        @media(max-width:720px){
          .pkg-checkout-wallet-grid {
            grid-template-columns:1fr;
          }
          .pkg-checkout-wallet-logo {
            max-width:100%;
          }
        }

        /* Legacy checkout grid alias */
        .pkg-cart-grid { display:grid; grid-template-columns:minmax(0,1.3fr) 320px; gap:16px; align-items:start; }
        @media(max-width:860px){ .pkg-cart-grid{grid-template-columns:1fr !important;} }
        @media(max-width:860px){ .pkg-summary-col{position:static !important;} }

        /* Promo animations */
        .pkg-promo-applied { animation:promoIn 220ms ease-out both; }
        .pkg-promo-field   { animation:promoIn 180ms ease-out both; }
        @keyframes promoIn { from{opacity:0;transform:translateY(-5px)} to{opacity:1;transform:translateY(0)} }

        /* Hover states */
        .pkg-promo-apply-btn:hover { background:#c94d18 !important; }
        .pkg-promo-cancel:hover    { color:#C65D3A !important; }
        .pkg-promo-x:hover         { color:#d63b1f !important; }
        .pkg-delete-btn:hover      { color:#C65D3A !important; }
        .pkg-promo-input:focus     { outline:none; }

        /* Cart item term select */
        @media(max-width:520px){
          .pkg-cart-item { flex-wrap:wrap; }
          .pkg-cart-item-right {
            flex-direction:row;
            align-items:center;
            width:100%;
            justify-content:space-between;
            margin-top:8px;
          }
        }


        @media(max-width:980px){
          .pkg-page-header {
            height:auto;
            min-height:0;
            padding:0;
            margin:0 0 12px;
          }
          .pkg-page-title {
            position:static;
            width:auto;
            height:auto;
            padding-top:0;
            padding-bottom:0;
            font-size:16px;
            line-height:22px;
          }
          .pkg-content,
          .pkg-content--detail,
          .pkg-cart-wrap,
          .pkg-checkout-wrap {
            width:100%;
            max-width:100%;
            margin-left:0;
            margin-right:0;
            padding-left:0;
            padding-right:0;
            box-sizing:border-box;
          }
          .pkg-cart-banner,
          .pkg-checkout-banner,
          .pkg-detail-card,
          .pkg-header-bar,
          .pkg-cart-summary,
          .pkg-checkout-summary,
          .pkg-cart-item,
          .pkg-checkout-pay-row,
          .pkg-checkout-wallet-card {
            width:100%;
            max-width:100%;
            box-sizing:border-box;
          }
          .pkg-cart-layout,
          .pkg-checkout-layout {
            grid-template-columns:1fr;
            gap:16px;
          }
          .pkg-cart-summary,
          .pkg-checkout-summary {
            position:static;
            justify-self:stretch;
          }
        }

        @media(max-width:640px){
          .pkg-page {
            padding:0 0 24px;
          }
          .pkg-page-header,
          .pkg-content,
          .pkg-content--detail,
          .pkg-cart-wrap,
          .pkg-checkout-wrap {
            padding-left:0;
            padding-right:0;
          }
          .pkg-header-bar {
            margin-bottom:12px;
            gap:10px;
            padding:12px 12px;
            border-radius:12px;
          }
          .pkg-header-actions {
            width:100%;
            justify-content:space-between;
          }
          .pkg-billing-toggle {
            height:32px;
            min-width:168px;
            padding:4px;
          }
          .pkg-billing-opt {
            height:24px;
            font-size:12px;
          }
          .pkg-plan-card {
            padding:16px 16px 18px;
            border-radius:12px;
            box-shadow:0 4px 18px rgba(165, 75, 51, 0.08);
          }
          .pkg-plan-cta {
            max-width:100%;
            height:42px;
            font-size:13px;
            font-weight:700;
            border-radius:10px;
          }
          .pkg-plan-price {
            font-size:28px;
            line-height:36px;
          }
          .pkg-section-heading {
            margin:4px 0 10px;
          }
          .pkg-cart-banner,
          .pkg-checkout-banner {
            padding:14px 12px;
            margin-bottom:12px;
          }
          .pkg-cart-items-col {
            gap:12px;
          }
          .pkg-cart-item {
            padding:14px 12px;
            gap:10px;
          }
          .pkg-cart-item-name,
          .pkg-checkout-pay-label {
            font-size:14px;
            line-height:20px;
          }
          .pkg-cart-item-price,
          .pkg-cart-summary-price-current {
            font-size:16px;
            line-height:22px;
          }
          .pkg-cart-item-term,
          .pkg-cart-item-term-menu,
          .pkg-cart-checkout-btn {
            width:100%;
            max-width:100%;
          }
          .pkg-cart-summary,
          .pkg-checkout-summary {
            padding:16px 12px;
            min-height:auto;
          }
          .pkg-cart-summary-subtotal {
            grid-template-columns:minmax(0,1fr) auto;
            column-gap:8px;
            row-gap:6px;
            align-items:baseline;
          }
          .pkg-cart-summary-subtotal-label {
            grid-column:1;
            grid-row:1;
            min-width:0;
          }
          .pkg-cart-summary-subtotal-price {
            grid-column:2;
            grid-row:1;
            justify-self:end;
          }
          .pkg-cart-summary-promo-row {
            grid-column:1 / -1;
            grid-row:2;
          }
          .pkg-cart-summary-subtotal-meta {
            grid-column:1 / -1;
            grid-row:3;
            align-items:flex-start;
          }
          .pkg-cart-secure {
            flex-wrap:wrap;
            justify-content:flex-start;
          }
          .pkg-cart-payment-badges {
            width:100%;
            justify-content:flex-start;
            flex-wrap:wrap;
          }
          .pkg-checkout-pay-row,
          .pkg-checkout-wallet-card {
            padding:0 12px;
            gap:12px;
            min-height:57px;
            height:auto;
          }
          .pkg-checkout-wallet-grid {
            grid-template-columns:1fr;
            gap:8px;
          }
          .pkg-checkout-wallet-brand {
            width:min(122px, 100%);
            height:auto;
          }
          .pkg-upi-qr-modal {
            width:min(465px, calc(100vw - 24px));
            max-width:calc(100vw - 24px);
            padding:18px 14px 0;
            gap:12px;
          }
          .pkg-upi-qr-logo {
            width:min(180px, 100%);
          }
          .pkg-upi-qr-title {
            font-size:17px;
            line-height:23px;
          }
          .pkg-upi-qr-image {
            width:min(220px, calc(100vw - 72px));
          }
          .pkg-upi-qr-placeholder {
            width:min(220px, calc(100vw - 72px));
            min-height:130px;
          }
          .pkg-upi-qr-actions {
            width:calc(100% + 28px);
            margin:0 -14px;
            padding:12px 14px 14px;
          }
          .pkg-upi-qr-detail-row {
            grid-template-columns:1fr;
            gap:2px;
          }
          .pkg-promo-modal-backdrop {
            padding:12px;
            align-items:center;
            justify-content:center;
          }
        }

        @media (hover: none) {
          .pkg-plan-card-wrap:hover {
            transform:none;
            z-index:1;
          }
          .pkg-plan-card-wrap:hover .pkg-plan-card-shadow {
            opacity:0;
          }
          .pkg-plan-card-wrap:hover .pkg-plan-card {
            margin-top:0;
            border-top:1px solid #e8ddd6;
            box-shadow:0 4px 18px rgba(165, 75, 51, 0.08);
          }
          .pkg-plan-card-wrap:hover .pkg-plan-icon {
            transform:none;
          }
        }
