/* Product CSS. Moved from app.css; shared public sources stay in app.css. */

#price-history.card{box-shadow:none;}

.view-product{margin-bottom:0;}
.view-product > .section:last-of-type{margin-bottom:0;}

.view-product .product-hero{
      display:grid;
      grid-template-columns:minmax(0,1fr) minmax(0,360px) 40px minmax(0,540px) minmax(0,1fr);
      gap:0;
      align-items:center;
      padding:0;
      overflow:hidden;
      background:var(--surface-bg);
      border:1px solid var(--surface-border);
      border-radius:var(--surface-radius-primary);
      box-shadow:var(--surface-shadow);
    }

.view-product .product-hero > .hosted-ad-placement{
      grid-column:1 / -1;
      --hosted-ad-placement-background:var(--surface-soft-bg);
      --hosted-ad-placement-border:1px solid var(--surface-border-soft);
      --hosted-ad-placement-padding:24px var(--surface-pad-section) 28px;
      --hosted-ad-label-gap:8px;
      --hosted-ad-bottom-gap:0px;
    }

.view-product .product-hero:has(> .hosted-ad-placement){--product-related-gap:0px;}

.view-product .product-hero-media{
      position:relative;
      grid-column:2;
      padding:0;
      border-radius:18px;
      background:transparent;
      border:0;
      box-shadow:none;
    }

.view-product .product-hero-frame{
      position:relative;
      min-height:350px;
      display:flex;
      align-items:center;
      justify-content:center;
      border-radius:18px;
      background:transparent;
      border:0;
      box-shadow:none;
      padding:24px 38px;
      overflow:hidden;
    }

.view-product .product-hero-frame img{
      width:100%;
      height:auto;
      max-height:360px;
      object-fit:contain;
    }

.view-product .product-hero-placeholder{
      width:60%;
      max-width:240px;
      height:260px;
      border-radius:14px;
      background:linear-gradient(180deg,rgba(226,232,240,0.7),rgba(226,232,240,0.2));
      display:block;
    }

.view-product .product-hero-main{
      display:flex;
      flex-direction:column;
      gap:26px;
      grid-column:4;
      width:min(100%,540px);
      justify-self:stretch;
      padding:24px 24px 24px 0;
    }

.view-product .product-hero-heading{
      display:flex;
      flex-direction:column;
      grid-column:1 / -1;
      gap:8px;
      padding:20px clamp(18px,6.5vw,72px) 0;
      border-bottom:0;
    }

.view-product .product-hero-heading::after{
      content:"";
      display:block;
      width:100%;
      margin-top:10px;
      border-bottom:1px solid var(--surface-border-soft);
    }

.view-product .product-hero-flag{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      align-self:flex-start;
      width:max-content;
      min-height:30px;
      padding:0 15px;
      border:1px solid #f0b429;
      background:#fff4c1;
      color:#78350f;
      border-radius:999px;
      font-size:14px;
      font-weight:900;
      letter-spacing:0;
      line-height:1;
      text-transform:uppercase;
      white-space:nowrap;
      box-shadow:none;
    }

.view-product .product-hero-name{
      margin:0;
      font-size:28px;
      font-weight:900;
      font-family:var(--font-ui);
      line-height:1.08;
      color:#0f172a;
    }

.view-product .product-hero-subhead{
      margin:0;
      color:#315680;
      font-size:15px;
      line-height:1.55;
      display:flex;
      flex-wrap:wrap;
      align-items:center;
      column-gap:10px;
    }

.view-product .product-hero-subhead-size{
      white-space:nowrap;
    }

.view-product .product-hero-subhead-item{
      display:inline-flex;
      align-items:center;
      min-width:0;
    }

.view-product .product-hero-subhead-item + .product-hero-subhead-item::before{
      content:"•";
      margin-right:10px;
      color:#cbd5f5;
      font-size:13px;
      font-weight:400;
    }

.view-product .product-hero-price{
      display:flex;
      flex-direction:column;
      align-items:flex-start;
      gap:9px;
      margin:0 0 4px;
    }

.view-product .product-hero-price.is-regular{
      gap:7px;
    }

.view-product .product-hero-price-kicker{
      color:#315680;
      font-size:13px;
      font-weight:900;
      letter-spacing:.02em;
      line-height:1;
      text-transform:uppercase;
    }

.view-product .product-hero-price-flags{
      display:flex;
      align-items:center;
      flex-wrap:wrap;
      gap:12px;
    }

.view-product .product-hero-price-mainline{
      display:flex;
      align-items:flex-end;
      flex-wrap:wrap;
      gap:9px 14px;
    }

.view-product .product-hero-price-stack{
      display:inline-grid;
      width:max-content;
      gap:6px;
    }

.view-product .product-hero-price-now{
      font-family:var(--font-ui);
      font-size:48px;
      font-weight:900;
      line-height:.94;
      color:#071225;
    }

.view-product .product-hero-price-was{
      margin-bottom:5px;
      font-size:19px;
      color:#64748b;
      text-decoration:line-through;
    }

.view-product .product-hero-price-badge{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      gap:6px;
      min-height:30px;
      padding:0 15px;
      border-radius:999px;
      background:#ef4444;
      color:#ffffff;
      font-weight:900;
      font-size:14px;
      line-height:1;
    }

.view-product .product-hero-price-meta{
      display:flex;
      align-items:center;
      flex-wrap:wrap;
      gap:8px;
      padding-left:48px;
      color:#315680;
      font-size:14px;
      font-weight:800;
      line-height:19px;
      min-height:19px;
    }

.view-product .product-hero-unit{
      display:inline;
      font-size:13px;
      font-weight:600;
      line-height:19px;
      color:#64748b;
      white-space:nowrap;
    }

.view-product .product-hero-unit--regular{
      display:block;
      justify-self:end;
      font-weight:800;
      line-height:1;
      color:#64748b;
    }

.view-product .product-hero-unit--regular::before{
      content:none;
    }

.view-product .product-hero-unit::before{
      content:"•";
      display:inline;
      margin:0 8px 0 0;
      color:transparent;
      font-size:12px;
      font-weight:900;
      line-height:19px;
    }

.view-product .product-hero-sale-window:not(.is-reserved) + .product-hero-unit::before,
    .view-product .product-hero-sale-window.is-reserved[data-sale-window-visible='1'] + .product-hero-unit::before{
      color:#b8c7dc;
    }

.view-product .product-hero-sale-window{
      display:flex;
      align-items:center;
      gap:8px;
      flex:0 0 auto;
      min-inline-size:18.8ch;
      height:19px;
    }

.view-product .product-hero-sale-window.is-reserved{
      visibility:hidden;
    }

.view-product .product-hero-sale-window.is-reserved[data-sale-window-visible='1']{
      visibility:visible;
    }

.view-product .product-hero-sale-window-pill{
      display:inline-flex;
      align-items:center;
      gap:8px;
      padding:0;
      border-radius:0;
      background:transparent;
      color:#315680;
      font-size:14px;
      font-weight:800;
      line-height:19px;
      min-height:19px;
      white-space:nowrap;
    }

.view-product .product-hero-sale-window-icon{
      width:15px;
      height:15px;
      display:inline-flex;
      align-items:center;
      align-self:center;
      color:#315680;
      flex:0 0 15px;
    }

.view-product .product-hero-sale-window-icon svg{
      width:15px;
      height:15px;
      display:block;
    }

.view-product .product-hero-actions{
      display:flex;
      flex-wrap:wrap;
      gap:12px;
      margin:2px 0 8px;
    }

.view-product .product-alert-toggle-form{
      margin:0;
    }

.view-product .product-alert-module{
      width:100%;
      max-width:560px;
      display:grid;
      grid-template-columns:auto minmax(0,1fr) auto;
      align-items:center;
      gap:16px;
      margin:2px 0 0;
      padding:18px;
      border:1px solid #dbe5f1;
      border-radius:18px;
      background:var(--surface-soft-bg);
      box-shadow:none;
    }

.view-product .product-alert-module[data-alerted='1']{
      border-color:#cbe7d3;
      background:#fbfffd;
    }

.view-product .product-alert-module.is-error{
      border-color:#fecaca;
      background:#fff7f7;
      box-shadow:0 0 0 3px rgba(220,38,38,.08);
    }

.view-product .product-alert-module.is-paused{
      border-color:#fed7aa;
      background:#fffaf2;
    }

.view-product .product-alert-module__icon{
      width:44px;
      height:44px;
      border-radius:50%;
      display:inline-flex;
      align-items:center;
      justify-content:center;
      flex:0 0 44px;
      color:#64748b;
      background:#f8fafc;
      border:1px solid #d8e1ee;
    }

.view-product .product-alert-module[data-alerted='1'] .product-alert-module__icon{
      color:#16a34a;
      background:#effdf4;
      border-color:#bbf7d0;
    }

.view-product .product-alert-module.is-paused .product-alert-module__icon{
      color:#d97706;
      background:#fff7ed;
      border-color:#fed7aa;
    }

.view-product .product-alert-module__icon svg{
      width:23px;
      height:23px;
      display:block;
      fill:currentColor;
    }

.view-product .product-alert-module__icon-on{
      display:none;
    }

.view-product .product-alert-module__icon-off{
      display:block;
    }

.view-product .product-alert-module[data-alerted='1'] .product-alert-module__icon-on{
      display:block;
    }

.view-product .product-alert-module[data-alerted='1'] .product-alert-module__icon-off{
      display:none;
    }

.view-product .product-alert-module__body{
      display:flex;
      flex-direction:column;
      gap:4px;
      min-width:0;
    }

.view-product .product-alert-module__title{
      color:#0f172a;
      font-size:17px;
      font-weight:900;
      line-height:1.15;
    }

.view-product .product-alert-module__copy{
      color:#536174;
      font-size:14px;
      line-height:1.4;
    }

.view-product .product-alert-toggle{
      appearance:none;
      border:0;
      position:relative;
      display:inline-flex;
      align-items:center;
      gap:8px;
      height:40px;
      padding:4px 13px 4px 5px;
      border-radius:999px;
      color:#475569;
      background:#e2e8f0;
      box-shadow:none;
      font-size:13px;
      font-weight:900;
      letter-spacing:.02em;
      white-space:nowrap;
      cursor:pointer;
      transition:transform .15s ease, box-shadow .15s ease, background .15s ease;
    }

.view-product .product-alert-toggle::before{
      content:"";
      width:30px;
      height:30px;
      border-radius:50%;
      background:#ffffff;
      box-shadow:0 0 0 1px rgba(15,23,42,.08);
    }

.view-product .product-alert-toggle.is-active{
      padding:4px 5px 4px 13px;
      color:#ffffff;
      background:#16b951;
      box-shadow:none;
    }

.view-product .product-alert-toggle.is-active::before{
      order:2;
      box-shadow:0 0 0 1px rgba(15,23,42,.08);
    }

.view-product .product-alert-toggle:active{
      transform:translateY(0);
    }

.view-product .product-alert-toggle:focus-visible{
      outline:2px solid #3b82f6;
      outline-offset:3px;
    }

.view-product .product-alert-toggle.is-loading{
      cursor:progress;
      transform:none;
      box-shadow:0 0 0 3px rgba(37,99,235,.18);
    }

.view-product .product-alert-toggle.is-loading::after{
      content:"";
      width:var(--ajax-spinner-size-compact);
      height:var(--ajax-spinner-size-compact);
      flex:0 0 var(--ajax-spinner-size-compact);
      order:3;
      box-sizing:border-box;
      border-radius:999px;
      border:var(--ajax-spinner-border-width) solid var(--ajax-spinner-track-color);
      border-top-color:var(--ajax-spinner-color);
      animation:public-ajax-spin var(--ajax-spinner-speed) linear infinite;
    }

.view-product .product-alert-toggle:not(.is-active).is-loading::after{
      --ajax-spinner-track-color:rgba(71,85,105,.25);
    }

.view-product .product-alert-toggle.is-error{
      color:#991b1b;
      background:#fee2e2;
      box-shadow:0 0 0 3px rgba(220,38,38,.16);
    }

.view-product .product-alert-toggle.is-paused,
    .view-product .product-alert-toggle[aria-disabled='true']{
      color:#9a5a10;
      background:#ffedd5;
      cursor:not-allowed;
      transform:none;
      box-shadow:none;
    }

.view-product .product-alert-signin{
      justify-self:end;
      white-space:nowrap;
    }

.view-product .product-hero-divider{
      width:100%;
      height:1px;
      background:#d7dce8;
      margin:8px 0 20px;
    }

.view-product .product-hero-details{
      display:flex;
      flex-direction:column;
      grid-column:1 / -1;
      gap:0;
      max-width:none;
      padding:0 clamp(18px,6.5vw,72px) 24px;
      border-top:0;
      border-radius:0;
      background:#fff;
      box-shadow:none;
    }

.view-product .product-hero-details::before{
      content:"";
      display:block;
      margin:0 0 24px;
      border-top:1px solid var(--surface-border-soft);
    }

.view-product .product-hero-specs{
      display:grid;
      grid-template-columns:150px 1fr;
      row-gap:14px;
      column-gap:24px;
      margin:0;
    }

.view-product .product-hero-specs dt{
      margin:0;
      color:#64748b;
      font-size:14px;
    }

.view-product .product-hero-specs dd{
      margin:0;
      font-size:15px;
      font-weight:600;
      color:#0f172a;
    }

.view-product .product-hero-notes h3{
      margin:0 0 8px;
      font-size:18px;
      font-weight:800;
      color:#315680;
    }

.view-product .product-hero-notes p{
      margin:0;
      font-size:15px;
      line-height:1.6;
      color:#315680;
    }

@media(max-width:1080px) {
.view-product .product-hero{
        grid-template-columns:minmax(0,1fr) minmax(0,320px) 32px minmax(0,520px) minmax(0,1fr);
      }
}

@media(max-width:920px) {
.view-product .product-hero{
        grid-template-columns:1fr;
      }

.view-product .product-hero-heading{
        align-items:center;
        text-align:center;
      }

.view-product .product-hero-subhead{
        justify-content:center;
      }

.view-product .product-hero-media{
        grid-column:1;
        max-width:520px;
        justify-self:center;
      }

.view-product .product-hero-main{
        align-items:center;
        grid-column:1;
        width:100%;
        justify-self:stretch;
        padding:0 24px 24px;
      }

.view-product .product-hero-price{
        align-items:flex-start;
        text-align:left;
      }

.view-product .product-hero-price-flags,
      .view-product .product-hero-price-mainline,
      .view-product .product-hero-price-meta{
        justify-content:flex-start;
      }

.view-product .product-hero-actions{
        justify-content:center;
      }

.view-product .product-hero-price-meta{
        padding-left:0;
      }

.view-product .product-hero-price:not(.is-regular) .product-hero-price-meta{
        padding-left:12px;
      }
}

@media(max-width:640px) {
.view-product .product-hero{
        border-radius:14px;
        gap:0;
      }

.view-product .product-hero-heading{
        padding:18px 18px 0;
      }

.view-product .product-hero-heading::after{
        margin-top:8px;
      }

.view-product .product-hero-media{
        padding:0;
      }

.view-product .product-hero-frame{
        min-height:290px;
        padding:14px;
      }

.view-product .product-hero-frame img{
        width:auto;
        max-width:100%;
        max-height:260px;
      }

.view-product .product-hero-flag{
        font-size:13px;
        padding:7px 14px;
      }

.view-product .product-hero-name{
        font-size:24px;
        line-height:1.12;
      }

.view-product .product-hero-subhead{
        column-gap:12px;
        row-gap:2px;
      }

.view-product .product-hero-details{
        padding:0 18px 20px;
      }

.view-product .product-hero-details::before{
        margin-bottom:20px;
      }

.view-product .product-hero-main{
        padding:0 18px 20px;
      }

.view-product .product-hero-price-now{
        font-size:44px;
      }

.view-product .product-hero-price-was{
        font-size:17px;
      }

.view-product .product-alert-module{
        gap:12px;
        padding:14px;
        border-radius:16px;
      }

.view-product .product-alert-module__icon{
        width:40px;
        height:40px;
        flex-basis:40px;
      }

.view-product .product-alert-module__icon svg{
        width:21px;
        height:21px;
      }

.view-product .product-alert-module__title{
        font-size:16px;
      }

.view-product .product-alert-module__copy{
        font-size:13px;
      }

.view-product .product-hero-specs{
        grid-template-columns:1fr;
        row-gap:12px;
      }

.view-product .product-hero-actions .public-action{
        min-height:42px;
        padding:0 13px;
        border-radius:11px;
        font-size:14px;
      }

.view-product .product-hero-actions .public-action--primary{
        min-width:148px;
      }

.view-product .product-hero-actions.is-signed-in{
        gap:8px;
      }

.view-product .product-hero-actions.is-signed-in .public-action--primary{
        min-width:129px;
      }
}

.view-product .product-related-deals{grid-column:1 / -1;display:block;margin:var(--product-related-gap,18px) 0 0;padding:26px 24px 22px;border-top:1px solid #ecddbf;border-bottom:1px solid #e5ca83;background:#fffaf2}

.view-product .product-related-deals .public-group-header{display:flex;align-items:center;justify-content:flex-start;gap:14px;padding:0;border:0;margin:0}

.view-product .product-related-deals .public-group-title{display:flex;align-items:center;gap:14px;margin:0;font-size:24px;font-weight:900;line-height:1.1;color:#071832}

.view-product .product-related-title-icon{width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;color:#071832}

.view-product .product-related-title-icon svg{width:30px;height:30px;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}

.view-product .product-related-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;align-items:stretch;margin-top:20px;padding:20px 0 0;border-top:1px solid #e7ce8f;background:transparent;border-radius:0}

.price-history-card{grid-column:1 / -1;display:flex;flex-direction:column;padding:28px var(--surface-pad-primary) 26px;gap:18px;border-top:1px solid var(--surface-border-soft);background:transparent}

.view-product .product-related-deals + .price-history-card{margin-top:22px;border-top:0}

.price-history-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding-bottom:12px;border-bottom:0;margin-bottom:4px}

.price-history-title{display:flex;align-items:center;gap:12px}

.price-history-icon{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:12px;background:rgba(59,130,246,.12);color:#1d4ed8;box-shadow:none}

.price-history-text::before{content:"INSIGHTS";display:block;font-size:12px;font-weight:700;letter-spacing:.18em;color:#94a3b8;text-transform:uppercase;margin-bottom:4px}

.price-history-icon svg{width:22px;height:22px}

.price-history-text{display:flex;flex-direction:column;gap:2px}

.price-history-heading{font-size:var(--text-title-section-size);font-weight:var(--text-title-section-weight);color:#0f172a;line-height:1}

.price-history-subheading{font-size:var(--text-helper-compact-size);color:#475569;line-height:1.45}

.price-history-toolbar{margin:0}

.price-history-chart-shell{position:relative;width:100%;height:320px;border-radius:16px;background:#f8fbff;overflow:hidden}

.price-history-chart{width:100%;height:100%;background:#f8fbff}

.price-history-chart-loading{position:absolute;inset:0;z-index:2;display:flex;align-items:center;justify-content:center;gap:10px;font-size:13px;font-weight:500;color:#334155;background:#f8fbff}

.price-history-chart-loading[hidden]{display:none}

.price-history-chart-loading-spinner{width:var(--ajax-spinner-size-content);height:var(--ajax-spinner-size-content);box-sizing:border-box;border-radius:999px;border:var(--ajax-spinner-border-width-strong) solid rgba(37,99,235,.18);border-top-color:#2563eb;animation:public-ajax-spin var(--ajax-spinner-speed) linear infinite}

.price-history-chart-loading.is-error{color:#b45309}

.price-history-chart-loading.is-empty .price-history-chart-loading-spinner,
.price-history-chart-loading.is-error .price-history-chart-loading-spinner{display:none}

.price-history-tooltip-float{position:absolute;left:0;top:0;pointer-events:none;z-index:20}

.price-history-window{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:35px;margin-top:10px;padding:0 4px}

.price-history-window-label{flex:1;text-align:center;font-size:12px;font-weight:600;color:#475569;letter-spacing:.01em}

.price-history-window .btn{min-width:72px}

.price-history-window .btn:disabled{opacity:.45;cursor:not-allowed;background:#f1f5f9;color:#94a3b8;border-color:#e2e8f0}

.price-history-window.is-pending .price-history-window-btn,
.price-history-window.is-empty .price-history-window-btn,
.price-history-window.is-error .price-history-window-btn{visibility:hidden;pointer-events:none}

.price-history-window.is-pending .price-history-window-label,
.price-history-window.is-empty .price-history-window-label,
.price-history-window.is-error .price-history-window-label{font-weight:500;color:#64748b}

.price-history-window.is-error .price-history-window-label{color:#b45309}

.price-history-empty{margin-top:4px}

.price-history-tooltip{box-sizing:border-box;background:#ffffff;border:1px solid #e5e7eb;border-radius:10px;padding:10px 12px;box-shadow:0 14px 28px rgba(15,23,42,.18);min-width:min(220px,calc(100vw - 12px));max-width:calc(100vw - 12px);font-size:14px;white-space:normal;overflow-wrap:anywhere}

.price-history-tooltip-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:6px 10px;padding-bottom:6px;margin-bottom:6px;border-bottom:1px solid #e5e7eb}

.price-history-tooltip-title{font-weight:600;color:#0f172a;font-size:14px}

.price-history-tooltip-badge{display:inline-flex;align-items:center;justify-content:center;padding:3px 10px;border-radius:999px;font-size:13px;font-weight:600;background:#dc2626;color:#ffffff;white-space:nowrap}

.price-history-tooltip-badge.is-muted{background:#f3f4f6;color:#6b7280}

.price-history-tooltip-body{display:grid;gap:4px}

.price-history-tooltip-row{display:grid;grid-template-columns:72px 1fr;gap:8px;align-items:baseline}

.price-history-tooltip-key{color:#4b5563;font-size:14px;font-weight:600}

.price-history-tooltip-val{color:#111827;font-size:14px;font-weight:400}

.price-history-tooltip-val.is-num{text-align:left;font-variant-numeric:tabular-nums}

@media(max-width:640px) {
.view-product .product-related-deals{margin-top:var(--product-related-gap,14px);padding:22px 18px 20px}

.view-product .product-related-deals .public-group-title{font-size:22px}

.view-product .product-related-title-icon{width:28px;height:28px}

.view-product .product-related-title-icon svg{width:28px;height:28px}

.view-product .product-related-grid{margin-top:18px;padding-top:18px}

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

.price-history-card{padding:18px 0 20px}

.view-product .product-related-deals + .price-history-card{margin-top:18px}

.price-history-header{flex-direction:column;align-items:flex-start;padding:0 18px 10px}

.price-history-title{align-items:flex-start}

.price-history-heading{font-size:var(--text-title-section-mobile-size)}

.price-history-chart-shell{height:280px;border-radius:0}

.price-history-window{gap:8px;padding:0 18px}

.price-history-window .btn{min-width:64px;padding:6px 10px}

.price-history-tooltip{padding:8px 10px;min-width:min(200px,calc(100vw - 12px));font-size:15px}

.price-history-tooltip-row{grid-template-columns:68px 1fr}
}

@media(max-width:340px) {
.price-history-tooltip-row{grid-template-columns:54px minmax(0,1fr);gap:6px}
}

@media(max-width:360px) {
.view-product .product-related-grid{grid-template-columns:1fr}
}

@media(max-width:340px) {
.view-product .product-hero > *{
    min-width:0;
  }

.view-product .product-related-deals{
    padding:20px 4px 18px;
  }

.view-product .product-related-deals .public-group-header{
    padding:0 0 12px;
  }

.view-product .product-related-deals .public-group-title{
    gap:8px;
  }

.view-product .product-related-title-icon{
    width:26px;
    height:26px;
  }

.view-product .product-related-title-icon svg{
    width:26px;
    height:26px;
  }
}

body.screen-product .view-product > .section:first-child,
body.screen-product .view-product > .section:first-child > nav:first-child .breadcrumb{margin-top:0;}

@media(max-width:340px) {
.view-product .product-related-grid{--product-card-grid-gap-readable:10px;}
}

@media (max-width:360px) {
.view-product .product-hero-frame{
    min-height:clamp(210px,82vw,260px);
    padding:12px;
  }

.view-product .product-hero-frame img{
    max-height:clamp(180px,72vw,230px);
  }

.view-product .product-alert-module{
    grid-template-columns:minmax(0,1fr);
    justify-items:center;
    gap:10px;
    padding:12px;
    text-align:center;
  }

.view-product .product-alert-module__icon{
    width:36px;
    height:36px;
    flex-basis:36px;
  }

.view-product .product-alert-module__icon svg{
    width:19px;
    height:19px;
  }

.view-product .product-alert-module__body{
    align-items:center;
  }

.view-product .product-alert-toggle{
    justify-self:center;
  }
}

@media (max-width:340px) {
.view-product .product-hero-price-now{line-height:1.08;}
}
