/* Container only arranges rows; no visual background */
                    .product-info-icons { display:flex; flex-direction:column; gap:12px; margin:0; padding:0; }
                    /* Row: plain for text alignment */
                    .product-icons { display:flex; align-items:center; gap:14px; padding:4px 0; line-height:1.25; }
                    /* Icon gets the background and subtle styling */
                    .product-icon-media { width:38px; height:38px; display:flex; align-items:center; justify-content:center; background:linear-gradient(135deg,#ffffff 0%, #f5f9ff 100%); border:1px solid rgba(0,0,0,.08); border-radius:12px; box-shadow:0 2px 4px rgba(0,0,0,.06); }
                    .product-icon-media img { width:70%; height:70%; object-fit:contain; }
                    .product-icon-content { display:flex; flex-wrap:wrap; gap:6px; font-family: 'Inter','Poppins',system-ui,-apple-system,sans-serif; font-size:clamp(18px,1.05rem + 0.65vw,23px); line-height:1.35; font-weight:500; color:#14213d; letter-spacing:.34px; }
                    @media (min-width:1201px){ .product-icon-content { font-size:26px !important; } }
                    .product-icon-content .label { font-weight:600; }
                    .product-icon-content .label::after { content:":"; }
                    /* "Theory + practical in one course" full-bleed value band (spans card edge-to-edge, padding-matched) */
                    .mh-combo-badge{ align-self:stretch; display:flex; align-items:center; gap:11px; margin:3px -28px; padding:12px 28px; border-radius:0; background:linear-gradient(90deg,#065f46 0%,#059669 52%,#10b981 100%); }
                    .mh-combo-badge__tag{ flex-shrink:0; font-family: 'Inter','Poppins',system-ui,-apple-system,sans-serif; font-size:14px; font-weight:800; letter-spacing:.06em; text-transform:uppercase; color:#064e3b; background:#ffffff; padding:5px 9px; border-radius:7px; box-shadow:0 1px 3px rgba(2,6,23,.14); }
                    .mh-combo-badge__txt{ flex:1 1 auto; min-width:0; white-space:normal; overflow:visible; text-overflow:clip; font-family: 'Inter','Poppins',system-ui,-apple-system,sans-serif; font-size:14.5px; font-weight:700; color:#ffffff; letter-spacing:.005em; line-height:1.3; }
                    .mh-combo-badge__short{ display:none; }
                    .mh-combo-badge__check{ flex-shrink:0; display:inline-flex; align-items:center; justify-content:center; width:24px; height:24px; border-radius:50%; background:rgba(255,255,255,.22); color:#ffffff; }
                    .mh-combo-badge__check svg{ width:14px; height:14px; }
                    @media (max-width:768px){ .mh-combo-badge{ margin:3px -22px; padding:12px 22px; } }
                    @media (max-width:520px){ .mh-combo-badge{ gap:9px; } .mh-combo-badge__tag{ font-size:14px; padding:4px 7px; } .mh-combo-badge__txt{ font-size:14px; } .mh-combo-badge__check{ width:22px; height:22px; } }
                    @media (max-width:360px){ .mh-combo-badge__full{ display:none; } .mh-combo-badge__short{ display:inline; } }
                    @media (max-width:420px){ .mh-combo-badge{ margin:3px -18px; padding:11px 18px; } }
                    .product-text .isa-accrow{ margin-top:7px; align-self:flex-start; }
                    .mh-card-divider{ border:0; border-top:1px solid rgba(2,6,23,.10); width:100%; margin:-2px 0 0; }
                    /* Price styling enlarged + vertical centering */
                    .product-icons--price { margin-bottom:10px; }
                    .product-icons--price .product-icon-content { display:flex; align-items:baseline; gap:10px; }
                    /* Compact "practical part included" reassurance beside the price (stays on one row) */
                    .price-incl{ display:inline-flex; flex-direction:column; justify-content:center; align-self:center; line-height:1.16; margin-left:1px; min-width:0; }
                    .price-incl__a{ font-family: 'Inter',system-ui,-apple-system,sans-serif; font-size:14px; font-weight:600; color:#64748b; letter-spacing:.02em; white-space:nowrap; }
                    .price-incl__b{ font-family: 'Inter',system-ui,-apple-system,sans-serif; font-size:14px; font-weight:800; color:#047857; letter-spacing:.02em; white-space:nowrap; }
                    @media (max-width:520px){ .price-incl__a{ font-size:14px; } .price-incl__b{ font-size:14px; } }
                    @media (max-width:360px){ .price-incl__a{ font-size:14px; } .price-incl__b{ font-size:14px; } }
                    .product-icons--price .before-price1 { display:inline-flex; align-items:center; position:relative; color:#475569; font-family: 'Inter',system-ui,-apple-system,sans-serif; font-weight:700; font-size:clamp(22px,1.25rem + 0.55vw,28px); line-height:1; text-decoration:none; letter-spacing:-.01em; font-variant-numeric:tabular-nums; }
                    .product-icons--price .before-price1::before { content:""; position:absolute; left:-10%; right:-10%; top:50%; width:auto; height:2px; background:#dc2626; background-color:#dc2626; transform:translateY(-50%) rotate(-8deg); border-radius:1.5px; box-shadow:0 0 3px rgba(220,38,38,.18); }
                    .product-icons--price .after-price1 { display:inline-flex; align-items:baseline; font-family: 'Inter',system-ui,-apple-system,sans-serif; font-weight:800; color:#ef4444; font-size:clamp(30px,1.35rem + 1.05vw,38px); letter-spacing:-.01em; line-height:1.1; font-variant-numeric:tabular-nums; }
                    @media (max-width:520px){ .product-icon-media { width:44px; height:44px; } .product-icon-content { font-size:16px; } }
                    /* Minimal white sparkle hover effect for sale-button (no color/shadow changes) */
                    .sale-button { position: relative; isolation: isolate; overflow:hidden; }
                    .sale-button::before, .sale-button::after { pointer-events:none; }
                    /* Diagonal shine sweep */
                    .sale-button::before { content:""; position:absolute; inset:0; background: linear-gradient(120deg, rgba(255,255,255,0) 20%, rgba(255,255,255,.85) 50%, rgba(255,255,255,0) 80%); transform: translateX(-130%) skewX(-14deg); opacity:0; }
                    .sale-button:hover::before { animation: sale_btn_shine 1.15s cubic-bezier(.25,.7,.3,1) forwards; }
                    @keyframes sale_btn_shine { 0% { transform: translateX(-130%) skewX(-14deg); opacity:0; } 15%{ opacity:1; } 55%{ opacity:1; } 100%{ transform: translateX(130%) skewX(-14deg); opacity:0; } }
                    /* Tiny sparkle points */
                    .sale-button::after { content:""; position:absolute; inset:0; background:
                        radial-gradient(circle at 22% 34%, rgba(255,255,255,.8) 0 2px, transparent 3px),
                        radial-gradient(circle at 74% 58%, rgba(255,255,255,.85) 0 2px, transparent 3px),
                        radial-gradient(circle at 48% 78%, rgba(255,255,255,.7) 0 1.5px, transparent 3px);
                        background-repeat:no-repeat; opacity:0; filter:blur(4px); }
                    .sale-button:hover::after { animation: sale_btn_sparkle 1.4s ease-out forwards; }
                    @keyframes sale_btn_sparkle { 0%{ opacity:0; filter:blur(4px); } 20%{ opacity:.95; filter:blur(1.2px); } 60%{ opacity:.85; } 85%{ opacity:.25; filter:blur(3px); } 100%{ opacity:0; filter:blur(5px); } }
                    @media (prefers-reduced-motion: reduce){ .sale-button::before, .sale-button::after { animation:none !important; opacity:0 !important; } }
                    /* Gentle blue gradient info button (keep shape & font; subtle hover) */
                    .buttonInfo {
                        position: relative;
                        background: linear-gradient(145deg,#ffffff,#f4f9ff) !important; /* soft white → faint blue */
                        color: #000000 !important;
                        border: 2px solid #fce001 !important; /* preserve existing yellow border */
                        transition: background .35s ease, filter .35s ease;
                        will-change: background;
                    }
                    .buttonInfo:hover {
                        background: linear-gradient(145deg,#eef7ff 0%, #e2f3ff 30%, #d4ecff 60%, #c6e4ff 100%) !important;
                        filter: saturate(1.04);
                    }
                    .buttonInfo:active { background: linear-gradient(145deg,#e7f2ff,#d1e8ff) !important; }
                    .buttonInfo:focus-visible { outline: none; box-shadow: 0 0 0 3px rgba(0,120,255,.25); }
                    @media (prefers-reduced-motion: reduce){ .buttonInfo { transition:none; } }
                    /* Remove underline on hover/focus for info button */
                    .buttonInfo, .buttonInfo:hover, .buttonInfo:focus, a:hover .buttonInfo, a:focus .buttonInfo { text-decoration:none !important; }
                    /* Mobile typography overrides */
                    @media (max-width:520px){
                        .product-icon-content { font-size:29px !important; }
                        .product-icons--price .after-price1 { font-size:42px !important; }
                        .product-icons--price .before-price1 { font-size:36px !important; }
                        .product-text h2 { font-size:41px !important; color:#14213d !important; padding-top:20px !important; }
                        .product-text h2 .title-full { display:none !important; }
                        /* Responsive single-line scaling for title-mobile: grows to 55px but shrinks on very narrow screens */
                        .product-text h2 .title-mobile { display:inline !important; font-size:clamp(32px, 11.5vw, 55px) !important; margin-top:0 !important; white-space:nowrap; line-height:1.05; }
                        .product-text { row-gap:10px !important; }
                        .product-info-icons { margin:0 !important; }
                    }
                    /* Very narrow screens: the single-line title no longer fits, let it wrap */
                    @media (max-width:389px){
                        .productSection .product-text h2 .title-mobile { white-space:normal !important; }
                    }
                    /* Override base h2 subtitle styling - make product title match original h1 styling */
                    .product-text h2 { padding-top:20px; font-size:34px; color:#474747; font-weight:700; text-transform:none; letter-spacing:normal; }
                    /* Default desktop/large screens: show full title, hide mobile variant */
                    .product-text h2 .title-mobile { display:none; }
                    .product-text h2 .title-full { display:inline; }
                    /* Overlay image position/size under 1200px */
                    @media (max-width:1200px){
                        #overImgDash { position:static; margin:0 auto !important; display:block; right:auto !important; left:auto !important; width:243px !important; height:80px !important; }
                    }
                    /* Desktop (PC) default width for overImgDash */
                    @media (min-width:1201px){
                        #overImgDash { width:250px !important; }
                    }
                    /* Desktop heading size */
                    @media (min-width:1201px){
                        .product-text h2 { font-size:35px !important; color:#14213d !important; padding-top:20px !important; }
                        .product-text { row-gap:10px !important; }
                    }
                    /* Sparkle shine overlay for #overImgDash (masked left→right sweep) */
                    .overImgShineOverlay{ position:absolute; pointer-events:none; background-image: linear-gradient(75deg, rgba(255,255,255,0) 0%, rgba(255,255,255,.75) 50%, rgba(255,255,255,0) 100%); background-repeat:no-repeat; background-size:40% 100%; background-position:-40% 0; filter:blur(2px); opacity:0; mix-blend-mode:screen; animation: overImgShine 4.5s ease-in-out infinite; -webkit-mask-repeat:no-repeat; mask-repeat:no-repeat; -webkit-mask-size:100% 100%; mask-size:100% 100%; -webkit-mask-position:center center; mask-position:center center; }
                    @keyframes overImgShine{ 0%,78%{ opacity:0; background-position:-40% 0; } 82%,86%{ opacity:.55; } 88%,100%{ opacity:0; background-position:140% 0; } }
                    @media (prefers-reduced-motion: reduce){ .overImgShineOverlay{ animation:none; } }
