
*, *::before, *::after { padding: 0; margin: 0; outline: 0; }

body { font-family: sans-serif; overflow-x: visible; box-sizing: border-box; }

h1, h2, h3, h4, h5, h6, ul, ol, p { margin: 0; cursor: default; }

.cl { font-size: 0; line-height: 0; clear: both; display: block; height: 0; }

img { max-width: 100%; }

/* ___ Generic text baseline ___
   Desktop sizes for bare H1-H6/P (e.g. the "Основни" blocks) and as a
   fallback for anything not already covered by a more specific selector
   below — those more specific rules (.promo_reviews h2, .desc-title h4,
   etc.) still win via specificity regardless of order. */
h1 { font-size: 40px; }
h2 { font-size: 30px; }
h3 { font-size: 24px; }
h4 { font-size: 20px; }
h5 { font-size: 18px; }
h6 { font-size: 16px; }
p { font-size: 16px; }

/* ___ Header ___ */
.promo_header {
    background: #fff;
    color: #000;
    font-family: "Gotham-Medium", sans-serif;
    overflow: hidden;
}
.promo_header .header_info { padding: 100px 0 0 0; }
.promo_header .header_info h1 { text-transform: uppercase; font-size: 40px; line-height: normal; }
.promo_header .header_info p { font-size: 22px; line-height: normal; padding: 10px 0 0 0; }
.promo_header .header_img { padding: 20px 0; margin: auto; display: block; }
@media (min-width: 992px) {
    .promo_header .header_img { padding: 0; }
}

/* ___ Content sections ___ */
.promo_reviews {
    background: #fff;
    color: #000;
    font-family: "Gotham-Medium", sans-serif;
    overflow: hidden;
}
.promo_reviews .desc { padding: 20px 0; }
.promo_reviews img { max-width: fit-content; width: 100%; margin: auto; }
.promo_reviews h2 { font-size: 30px; padding: 0 0 20px 0; line-height: normal; font-weight: bold; }
.promo_reviews h4 { text-align: center; font-size: 30px; padding: 30px 0 20px 0; }
.promo_reviews p { font-size: 18px; line-height: 1.5; padding: 0 0 20px 0; }
.promo_reviews .text-center p { max-width: 900px; margin: auto; }

/* Split feature card (two columns, rounded panel) */
@media (min-width: 992px) {
    .desktop-active-card {
        background-color: #f5f5f7;
        border-radius: 30px;
        overflow: hidden;
        max-width: 1050px;
        margin: 20px auto;
    }
}

/* Brand / category link block (heading strip + CTA row) */
.desc-title {
    background-color: #111;
    color: #fff;
    font-family: "Gotham-Bold", sans-serif;
    text-align: center;
    padding: 30px 0;
}
.desc-title h4 { font-size: 34px; text-transform: uppercase; padding: 0; }
.desc-btn {
    background-color: #f5f5f7;
    text-align: center;
    padding: 30px 0;
}
.desc-btn a {
    color: #111;
    text-decoration: none;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    font-size: 22px;
    font-family: "Gotham-Medium", sans-serif;
}
.desc-btn a img { padding: 10px 0 0 0; max-height: 60px; width: auto; }

/* ___ Product / spec cards ___ */
.cont .upgrades-table,
.cont .upgrades-table tr:first-child td,
.cont .upgrades-table tr:last-child td:first-child,
.cont .upgrades-table tr:last-child td:last-child {
    border-radius: 0;
    line-height: normal;
}
.cont .upgrades-table { border-color: #000; width: 100%; border-collapse: collapse; }
.cont .upgrades-table th { background: #000; color: #fff; border-color: #000; padding: 10px; }
.cont .upgrades-table td, .cont .upgrades-table th { border: 1px solid #000; padding: 10px; }

.out-cont { padding: 20px 0; background: #fff; }
.cont a.img img { max-width: fit-content; width: 100%; height: auto; object-fit: contain; }
.cont .title a { font-family: "Gotham-Medium", sans-serif; color: #000; text-decoration: none; }
.cont ul { list-style: none; }
.cont ul li { font-family: "Gotham-Medium", sans-serif; line-height: normal; padding: 4px 0 4px 16px; position: relative; }
.cont ul li::before {
    content: '';
    width: 8px; height: 8px;
    background-color: #000;
    border-radius: 50%;
    position: absolute; left: 0; top: 8px;
}
.cont span.old-price { font-family: "Gotham-Medium", sans-serif; color: #888; text-decoration: line-through; }
.cont span.price { font-family: "Gotham-Medium", sans-serif; color: #000; font-size: 24px; font-weight: bold; }
.cont a.here {
    font-family: "Gotham-Medium", sans-serif;
    background-color: #000;
    border: 2px solid #000;
    color: #fff;
    text-decoration: none;
    display: inline-block;
    padding: 10px 30px;
    transition: all .3s ease-in-out;
}
.cont a.here:hover { color: #000; background-color: transparent; transform: translateY(-4px); }

/* ___ CTA separator ___ */
a.promo_seperator {
    display: block;
    margin: auto;
    background-color: #000;
    text-decoration: none;
    color: #fff;
    text-align: center;
    font-family: "Gotham-Medium", sans-serif;
    font-size: 35px;
    line-height: normal;
    padding: 20px 0;
}
a.promo_seperator span { font-family: "Gotham-Bold", sans-serif; color: #fff; text-decoration: underline; }

/* ___ BNP financing banner ___ */
.bnp { background: #000; }
.bnp img { display: block; margin: auto; max-width: fit-content; width: 100%; }

/* ___ Footer ___ */
p.promo_footer {
    padding: 20px 0;
    text-align: center;
    font-family: "Gotham-Medium", sans-serif;
    font-size: 35px;
    line-height: normal;
    background-color: #000;
    color: #fff;
}

/* ___ Fifth column (Bootstrap's 12-part grid can't do 5 equal columns) ___
   Same mechanics as Bootstrap 5's own col-lg-*: full width stacked on
   mobile, exactly 20% per column from the lg breakpoint up. */
@media (min-width: 992px) {
    .col-lg-fifth { flex: 0 0 auto; width: 20%; }
}

/* ___ Icon / feature grid (4-up) ___ */
.icon-grid { text-align: center; }
.icon-grid .icon-item { padding: 20px 10px; }
.icon-grid .icon-item img { max-height: 220px; width: 100%; object-fit: cover; border-radius: 12px; }
.icon-grid .icon-item h5 { font-family: "Gotham-Medium", sans-serif; font-size: 20px; padding: 15px 0 0 0; }

/* ___ Infinite image slider ___ */
.abg-slider-wrapper { width: 100%; max-width: 1050px; margin: 40px auto; display: flex; flex-direction: column; align-items: center; position: relative; user-select: none; }
.abg-slider-viewport { width: 100%; overflow: hidden; position: relative; border-radius: 20px; box-shadow: 0 4px 20px rgba(0,0,0,.05); }
.abg-slider-track { display: flex; width: 100%; will-change: transform; }
.abg-slide { flex: 0 0 100%; width: 100%; display: flex; align-items: center; justify-content: center; }
.abg-slide img { width: 100%; height: auto; display: block; object-fit: cover; pointer-events: none; }
.abg-slider-controls { margin-top: 30px; margin-bottom: 20px; display: flex; align-items: center; justify-content: center; gap: 16px; background: #eee; padding: 8px 18px; border-radius: 50px; box-shadow: 0 8px 30px rgba(0,0,0,.06); border: 1px solid rgba(0,0,0,.03); z-index: 10; }
.abg-slider-prev, .abg-slider-next { background: transparent; border: none; cursor: pointer; display: flex; align-items: center; justify-content: center; padding: 6px; border-radius: 50%; transition: transform .2s ease, opacity .2s ease; }
.abg-slider-prev svg path, .abg-slider-next svg path { fill: #333; transition: fill .2s ease; }
.abg-slider-prev:hover, .abg-slider-next:hover { transform: scale(1.15); }
.abg-slider-bullets { display: flex; align-items: center; gap: 12px; }
.abg-bullet { width: 8px; height: 8px; border-radius: 50%; background-color: #ccc; cursor: pointer; transition: all .3s cubic-bezier(.4,0,.2,1); }
.abg-bullet.active { background-color: #333; transform: scale(1.25); }
@media (max-width: 991px) {
    .abg-slider-wrapper { margin: 20px auto; padding: 0 15px; }
    .abg-slider-viewport { border-radius: 12px; }
}

/* ___ Responsive ___
   Every text size below is exactly 4px less than its desktop counterpart
   above, and every text element is centered — both by default, so a
   product page reads consistently on a phone without extra manual work. */
@media (max-width: 991px) {
    h1, h2, h3, h4, h5, h6, p, .desc-btn a { text-align: center; margin-left: auto; margin-right: auto; }

    h1 { font-size: 36px; }
    h2 { font-size: 26px; }
    h3 { font-size: 20px; }
    h4 { font-size: 16px; }
    h5 { font-size: 14px; }
    h6 { font-size: 12px; }
    p { font-size: 12px; }

    .promo_header, .promo_reviews { text-align: center; }
    .promo_header .header_info { padding: 40px 0 0 0; }
    .promo_header .header_info h1 { font-size: 36px; padding: 10px; }
    .promo_header .header_info p { font-size: 18px; }
    .promo_reviews h2 { font-size: 26px; }
    .promo_reviews h4 { font-size: 26px; }
    .promo_reviews p { font-size: 14px; }
    .desc-title h4 { font-size: 30px; }
    .desc-btn a { font-size: 18px; }
    .cont span.price { font-size: 20px; }
    a.promo_seperator, p.promo_footer { font-size: 31px; padding: 15px 5px; }
    .icon-grid .icon-item h5 { font-size: 16px; }
}
@media (max-width: 478px) {
    .promo_header .header_info { padding: 20px 0 0 0; }
}


body { background-color: #cdcdcd; }
* { box-sizing: border-box; } body {margin: 0;}#ig9e{background-color:#cdcdcd;}#ivp21b{font-family:'Gilroy', sans-serif;font-weight:700;font-size:35px;padding:20px 0 0 0;}#ilht9k{font-family:'Gilroy', sans-serif;font-size:24px;padding:20px 0 0 0;}#ive1sx{font-family:'Gilroy', sans-serif;font-weight:700;font-size:35px;}#iulfj5{font-family:'Gilroy', sans-serif;font-weight:700;font-size:35px;}#i0qm0c{font-family:'Gilroy', sans-serif;font-size:24px;padding:20px 0 0 0;}#iejcqk{font-family:'Gilroy', sans-serif;font-weight:700;font-size:35px;}#i886p6{font-family:'Gilroy', sans-serif;padding:20px 0 0 0;}#i0uh0l{font-family:'Gilroy', sans-serif;font-size:35px;font-weight:700;}#izhxb8{font-family:'Gilroy', sans-serif;padding:20px 0 0 0;font-size:22px;}#ixdncf{background-color:rgb(205, 205, 205);display:flex;justify-content:center;align-items:center;text-align:center;}#iaz94k-2{font-size:35px;font-family:'Gilroy', sans-serif;font-weight:700;}#ilccjf{font-size:24px;font-family:'Gilroy', sans-serif;padding:20px 0 0 0;}#iq3wq9{font-family:'Gilroy', sans-serif;font-weight:700;font-size:35px;}#injky4{display:flex;justify-content:center;align-items:center;flex-direction:column;text-align:center;}#ir568d{font-weight:700;font-size:35px;text-align:center;display:flex;justify-content:center;align-items:center;}#iih53h{display:flex;justify-content:center;align-items:center;flex-direction:column;text-align:center;}#i0vywe{display:flex;justify-content:center;align-items:center;flex-direction:column;text-align:center;}#i7knpb{text-align:center;display:flex;justify-content:center;align-items:center;flex-direction:column;}#isaurt{text-align:center;padding:10px 0px 10px 0px;font-weight:700;color:white;}#i5d2un{background-color:#000000;}#idyjok{background-color:#000000;}#i2y6qd{display:flex;justify-content:center;align-items:center;text-align:center;font-weight:700;}@media (max-width: 992px){#iaz94k-2{font-size:29px;}#ilccjf{font-size:60px;}#ivp21b{font-size:31px;}#ilht9k{font-size:20px;}#ir568d{font-size:31px;}#ive1sx{font-size:31px;}#iulfj5{font-size:31px;}#i0qm0c{font-size:20px;}#iejcqk{font-size:31px;}#i0uh0l{font-size:31px;}#izhxb8{font-size:20px;}#iaz94k-2{font-size:29px;}#iq3wq9{font-size:31px;}}@media (max-width: 480px){#i0uh0l{font-size:24px;}#iejcqk{font-size:24px;}#iulfj5{font-size:24px;}#ive1sx{font-size:24px;}#ilccjf{font-size:18px;}#iaz94k-2{font-size:24px;}#isaurt{font-size:24px;}#izhxb8{font-size:18px;}#i886p6{font-size:18px;}#i0qm0c{font-size:18px;}#i2y6qd{font-size:24px;padding:20px 0px 20px 0px;}}