:root{
    --ink:#14161a;
    --ink-soft:#20242b;
    --steel:#3a3f47;
    --paper:#eeeef0;
    --paper-2:#ffffff;
    --flame:#ff5a1f;
    --flame-dark:#d8430f;
    --amber:#ffc93c;
    --line: rgba(255,255,255,.12);
}

*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
    font-family:'Inter',sans-serif;
    color:var(--ink);
    background:var(--paper);
    overflow-x:hidden;
}
h1,h2,h3,h4,.brand,.display{
    font-family:'Oswald',sans-serif;
    letter-spacing:.01em;
}
.eyebrow{
    font-family:'Inter',sans-serif;
    font-size:.82rem;
    font-weight:600;
    color:var(--flame);
    letter-spacing:.02em;
    margin-bottom:.5rem;
    display:flex;
    align-items:center;
    gap:.6rem;
}
.eyebrow::before{
    content:"";
    width:26px;height:2px;
    background:var(--flame);
    display:inline-block;
}
.section{padding:5.5rem 0;}
@media(max-width:767px){.section{padding:3.5rem 0;}}

/* NAV */
.navbar{
    padding:.9rem 0;
    background:var(--ink);
}
.navbar .brand{
    color:#fff;
    font-size:1.35rem;
    font-weight:700;
    text-transform:uppercase;
}
.navbar .brand span{color:var(--flame);}
.navbar-nav .nav-link{
    color:#cfd2d8;
    font-weight:500;
    font-size:.95rem;
    margin:0 .7rem;
    position:relative;
}
.navbar-nav .nav-link:hover{color:#fff;}
.navbar-nav .nav-link::after{
    content:"";
    position:absolute;left:0;bottom:-4px;
    width:0; height:2px;
    background:var(--flame);
    transition:width .25s ease;
}
.navbar-nav .nav-link:hover::after{width:100%;}
.navbar-toggler{border-color:var(--line);}

/* HERO */
.hero{
    background:linear-gradient(160deg,var(--ink) 55%,var(--ink-soft) 100%);
    color:#fff;
    position:relative;
    padding:5rem 0 0;
    overflow:hidden;
}
.hero::after{
    content:"";
    position:absolute;
    right:-10%; top:-20%;
    width:600px;height:600px;
    background:radial-gradient(circle,rgba(255,90,31,.25) 0%,rgba(255,90,31,0) 70%);
    pointer-events:none;
}
.hero h1{
    font-size:clamp(2.4rem,5vw,3.9rem);
    font-weight:700;
    line-height:1.08;
    text-transform:uppercase;
}
.hero p.lead{
    color:#c7cad0;
    font-size:1.1rem;
    max-width:480px;
}
.hero .btn-flame{
    background:var(--flame);
    border:none;
    color:#fff;
    font-weight:600;
    padding:.85rem 1.8rem;
    border-radius:2px;
    text-transform:uppercase;
    font-size:.88rem;
    letter-spacing:.03em;
    transition:background .2s ease, transform .2s ease;
}
.hero .btn-flame:hover{background:var(--flame-dark); transform:translateY(-2px); color:#fff;}
.hero .btn-outline-line{
    border:1px solid rgba(255,255,255,.35);
    color:#fff;
    padding:.85rem 1.8rem;
    border-radius:2px;
    text-transform:uppercase;
    font-size:.88rem;
    letter-spacing:.03em;
    font-weight:600;
    transition:all .2s ease;
}
.hero .btn-outline-line:hover{background:#fff;color:var(--flame);}

.modal .btn-flame{
    border:none;
    color:#000000;
    font-weight:600;
    padding:.70rem 1rem;
    font-size:.8rem;
    letter-spacing:.03em;
    transition: all .2s ease-in-out;
}
.modal .btn-flame:hover{ color:var(--flame);}

.modal .btn-outline-line{
    color:#000000;
    padding:.70rem 1rem;
    font-size:.8rem;
    letter-spacing:.03em;
    font-weight:600;
    transition: all .2s ease-in-out;
}

.modal .btn-outline-line:hover{ color:var(--flame);}

.hero-badge{
    display:inline-flex;
    align-items:center;
    gap:.6rem;
    background:rgba(255,255,255,.06);
    border:1px solid var(--line);
    padding:.5rem 1rem;
    border-radius:2px;
    font-size:.85rem;
    color:#dfe1e5;
    margin-bottom:1.4rem;
}
.hero-badge i{color:var(--flame);}
.hero-img-wrap{
    position:relative;
    text-align:center;
    padding-top:1rem;
}
.hero-img-wrap img{
    max-width:100%;
    filter:drop-shadow(0 30px 40px rgba(0,0,0,.5));
    position:relative;
    z-index:2;
}
.spec-chip{
    position:absolute;
    background:var(--paper-2);
    color:var(--ink);
    padding:.9rem 1.2rem;
    border-radius:3px;
    box-shadow:0 15px 30px rgba(0,0,0,.35);
    font-size:.85rem;
    z-index:3;
}
.spec-chip strong{
    display:block;
    font-family:'Oswald',sans-serif;
    font-size:1.05rem;
    color:var(--flame);
}
.spec-chip.chip-1{top:10%; left:2%;}
.spec-chip.chip-2{bottom:6%; right:0%;}
@media(max-width:991px){.spec-chip{position:static; display:inline-block; margin:.4rem;}}

.hero-strip{
    border-top:1px solid var(--line);
    margin-top:4rem;
    padding:1.1rem 0;
    font-size:.82rem;
    color:#9ba0a8;
    text-transform:uppercase;
    letter-spacing:.06em;
}

/* ABOUT */
.about-media{
    position:relative;
    border-radius:2px;
    overflow:hidden;
}
.about-media img{width:100%; display:block;}
.about-media .tag{
    position:absolute; bottom:0; left:0;
    background:var(--flame);
    color:#fff;
    font-weight:600;
    font-size:.85rem;
    padding:.7rem 1.3rem;
    text-transform:uppercase;
    letter-spacing:.03em;
}
.about-copy h2{
    font-size:2.2rem;
    text-transform:uppercase;
    font-weight:700;
    margin-bottom:1.2rem;
}
.about-copy p{color:var(--steel); font-size:1.02rem; line-height:1.7;}
.stat-row{
    display:flex;
    gap:2.2rem;
    margin-top:2rem;
    border-top:1px solid #dcdcdf;
    padding-top:1.6rem;
}
.stat-row .stat strong{
    display:block;
    font-family:'Oswald',sans-serif;
    font-size:1.7rem;
    color:var(--ink);
}
.stat-row .stat span{
    font-size:.8rem;
    color:var(--steel);
    text-transform:uppercase;
    letter-spacing:.03em;
}

/* PRODUCTS */
.section-dark{background:var(--ink); color:#fff;}
.section-dark .eyebrow{color:var(--flame);}
.section-dark h2{color:#fff;}
.section-title{
    font-size:2.2rem;
    text-transform:uppercase;
    font-weight:700;
    margin-bottom:.6rem;
}
.section-sub{color:#9ba0a8; max-width:560px;}
.section-dark .section-sub{color:#a9adb4;}

.product-card{
    background:var(--ink-soft);
    border:1px solid var(--line);
    border-radius:2px;
    overflow:hidden;
    height:100%;
    transition:border-color .2s ease, transform .2s ease;
}
.product-card:hover{border-color:var(--flame); transform:translateY(-4px);}
.product-card .img-wrap{
    background:#0e1013;
    height:220px;
    display:flex;
    align-items:center;
    justify-content:center;
    position:relative;
}
.product-card .img-wrap img{max-height:170px; object-fit:contain;}
.product-card .ribbon{
    position:absolute; top:.8rem; left:.8rem;
    background:var(--flame);
    color:#fff;
    font-size:.7rem;
    text-transform:uppercase;
    font-weight:700;
    padding:.3rem .6rem;
    letter-spacing:.04em;
}
.product-card .ribbon.soon{background:var(--steel);}
.product-card .body{padding:1.4rem 1.4rem 1.6rem;}
.product-card .app-tag, .modal .app-tag{
    font-size:.75rem;
    color:var(--flame);
    text-transform:uppercase;
    letter-spacing:.05em;
    font-weight:600;
}
.product-card h3{
    font-size:1.35rem;
    margin:.4rem 0 .5rem;
    text-transform:uppercase;
}
.product-card .meta{
    color:#9ba0a8;
    font-size:.88rem;
    margin-bottom:1rem;
}
.product-card .meta span{margin-right:.8rem;}
.product-card a.btn-link{
    color:#fff;
    font-size:.86rem;
    font-weight:600;
    text-decoration:none;
    border-bottom:1px solid var(--flame);
    padding-bottom:2px;
}
.product-card a.btn-link:hover{color:var(--flame);}
.product-card p.muted-note{color:#787d85; font-size:.88rem; margin:0;}

/* WHY FIZAR */
.why-grid .why-item{
    padding:2rem 1.6rem;
    border-left:2px solid var(--flame);
    background:var(--paper-2);
    height:100%;
}
.why-item i{
    font-size:1.6rem;
    color:var(--flame);
    margin-bottom:1rem;
    display:block;
}
.why-item h3{
    font-size:1.15rem;
    text-transform:uppercase;
    margin-bottom:.6rem;
}
.why-item p{color:var(--steel); font-size:.95rem; margin:0;}

/* REVIEWS */
.review-card{
    background:var(--paper-2);
    border:1px solid #e2e2e5;
    padding:1.8rem;
    height:100%;
    position:relative;
}
.review-card .stars{color:var(--amber); font-size:.85rem; margin-bottom:.8rem;}
.review-card blockquote{
    font-size:1rem;
    color:var(--ink);
    margin:0 0 1.2rem;
    line-height:1.6;
}
.review-card .who{
    display:flex; align-items:center; gap:.8rem;
    border-top:1px solid #e6e6e9;
    padding-top:1rem;
}
.review-card .avatar{
    width:42px;height:42px;
    border-radius:50%;
    background:var(--ink);
    color:var(--flame);
    display:flex;align-items:center;justify-content:center;
    font-weight:700;
    font-family:'Oswald',sans-serif;
}
.review-card .who strong{display:block; font-size:.92rem;}
.review-card .who span{font-size:.8rem; color:var(--steel);}

/* REVIEWS SLIDER */
.reviews-slider{position:relative;}
.slider-viewport{overflow:hidden;}
.slider-track{
    display:flex;
    transition:transform .45s cubic-bezier(.25,.8,.3,1);
}
.review-slide{
    flex:0 0 33.3333%;
    padding:0 .75rem;
    box-sizing:border-box;
}
.review-slide .review-card{height:100%;}
@media(max-width:991px){.review-slide{flex-basis:50%;}}
@media(max-width:575px){.review-slide{flex-basis:100%;}}

.slider-controls{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:1.4rem;
    margin-top:2.2rem;
}
.slider-arrow{
    width:44px;height:44px;
    border-radius:50%;
    border:1px solid #dcdcdf;
    background:var(--paper-2);
    color:var(--ink);
    display:flex;
    align-items:center;
    justify-content:center;
    transition:background .2s ease, color .2s ease, border-color .2s ease;
}
.slider-arrow:hover{background:var(--flame); border-color:var(--flame); color:#fff;}
.slider-arrow:disabled{opacity:.35; cursor:default;}
.slider-arrow:disabled:hover{background:var(--paper-2); color:var(--ink); border-color:#dcdcdf;}
.slider-dots{display:flex; align-items:center; gap:.5rem;}
.slider-dots .dot{
    width:8px;height:8px;
    border-radius:50%;
    background:#dcdcdf;
    border:none;
    padding:0;
    cursor:pointer;
    transition:background .2s ease, transform .2s ease;
}
.slider-dots .dot.active{background:var(--flame); transform:scale(1.3);}

/* MOTORCYCLE BAND */
.moto-band{
    position:relative;
    background:var(--ink);
    color:#fff;
    min-height:420px;
    display:flex;
    align-items:center;
    background-size:cover;
    background-position:center;
}
.moto-band::before{
    content:"";
    position:absolute; inset:0;
    background:linear-gradient(90deg, rgba(20,22,26,.96) 30%, rgba(20,22,26,.55) 100%);
}
.moto-band .content{position:relative; z-index:2; max-width:560px;}
.moto-band h2{font-size:2.1rem; text-transform:uppercase; font-weight:700;}
.moto-band p{color:#c7cad0;}

/* DEALER */
.dealer-section{
    background:linear-gradient(120deg, var(--flame) 0%, var(--flame-dark) 100%);
    color:#fff;
}
.dealer-section h2{
    font-size:2.2rem; text-transform:uppercase; font-weight:700;
}
.dealer-list{list-style:none; padding:0; margin:1.6rem 0;}
.dealer-list li{
    padding:.55rem 0;
    border-bottom:1px solid rgba(255,255,255,.25);
    font-weight:500;
}
.dealer-list li i{margin-right:.7rem;}
.dealer-section .btn-dark-cta{
    background:var(--ink);
    color:#fff;
    border:none;
    padding:.9rem 2rem;
    text-transform:uppercase;
    font-weight:600;
    font-size:.88rem;
    letter-spacing:.03em;
    border-radius:2px;
}
.dealer-section .btn-dark-cta:hover{background:#000;color:#fff;}
.dealer-side{
    background:rgba(0,0,0,.18);
    border:1px solid rgba(255,255,255,.25);
    padding:2rem;
    border-radius:2px;
}
.dealer-side .phone{
    font-family:'Oswald',sans-serif;
    font-size:1.6rem;
    font-weight:600;
}

/* FAQ */
.accordion-item{
    background:transparent;
    border:none;
    border-bottom:1px solid #dcdcdf;
    border-radius:0 !important;
}
.accordion-button{
    background:transparent;
    font-family:'Oswald',sans-serif;
    font-weight:500;
    font-size:1.05rem;
    color:var(--ink);
    padding:1.3rem 0;
    box-shadow:none !important;
}
.accordion-button:not(.collapsed){color:var(--flame); background:transparent;}
.accordion-button::after{filter:none;}
.accordion-body{color:var(--steel); padding:0 0 1.5rem; font-size:.96rem; line-height:1.7;}

/* CONTACT */
.contact-info-item{
    display:flex; gap:1rem;
    padding:1.2rem 0;
    border-bottom:1px solid var(--line);
}
.contact-info-item i{
    width:42px;height:42px;
    background:rgba(255,90,31,.12);
    color:var(--flame);
    border-radius:50%;
    display:flex;align-items:center;justify-content:center;
    flex-shrink:0;
}
.contact-info-item strong{display:block; font-size:.85rem; color:#9ba0a8; text-transform:uppercase; letter-spacing:.03em;}

.contact-info-item span{
    color:#fff;
}

.contact-info-item span a{
    color:#fff;
    text-decoration: none;
}

.form-control{
    background:#fff;
    border:1px solid #dcdcdf;
    border-radius:2px;
    padding:.75rem 1rem;
    font-size:.95rem;
}
.form-control:focus{
    border-color:var(--flame);
    box-shadow:0 0 0 3px rgba(255,90,31,.15);
}
.contact-card{
    background:var(--paper-2);
    padding:2.2rem;
    border-radius:2px;
}
.btn-send{
    background:var(--ink);
    color:#fff;
    border:none;
    padding:.85rem 2.2rem;
    text-transform:uppercase;
    font-weight:600;
    font-size:.88rem;
    letter-spacing:.03em;
    border-radius:2px;
}
.btn-send:hover{background:var(--flame); color:#fff;}

/* FOOTER */
footer{
    background:#0e1013;
    color:#9ba0a8;
    padding:3.5rem 0 1.5rem;
    font-size:.92rem;
}
footer .brand{color:#fff; font-size:1.3rem; font-weight:700; text-transform:uppercase;}
footer .brand span{color:var(--flame);}
footer h5{
    color:#fff;
    font-family:'Oswald',sans-serif;
    font-size:.95rem;
    text-transform:uppercase;
    letter-spacing:.04em;
    margin-bottom:1.1rem;
}
footer a{color:#9ba0a8; text-decoration:none; display:block; margin-bottom:.6rem;}
footer a:hover{color:var(--flame);}
.footer-social a{
    display:inline-flex; width:38px;height:38px;
    border:1px solid var(--line);
    border-radius:50%;
    align-items:center;justify-content:center;
    margin-right:.6rem;
}
.footer-bottom{
    border-top:1px solid var(--line);
    margin-top:2.2rem;
    padding-top:1.4rem;
    font-size:.82rem;
}

/* back to top */
#backToTop{
    position:fixed; bottom:24px; right:24px;
    width:46px;height:46px;
    background:var(--flame);
    color:#fff;
    border:none;
    border-radius:50%;
    display:none;
    align-items:center;justify-content:center;
    z-index:999;
    box-shadow:0 8px 20px rgba(0,0,0,.3);
}

::selection{background:var(--flame); color:#fff;}

/* PRODUCT MODAL */
.product-card button.btn-link{
    background:none;
    border:none;
    padding:0;
}
#productModal-20w50 .modal-content{
    background:var(--paper-2);
    border:none;
    border-radius:2px;
}
#productModal-20w50 .modal-header{
    border-bottom:1px solid #e6e6e9;
    padding:1.4rem 1.6rem;
    align-items:center;
}
#productModal-20w50 .modal-header .app-tag{
    font-size:.75rem;
    color:var(--flame);
    text-transform:uppercase;
    letter-spacing:.05em;
    font-weight:600;
}
#productModal-20w50 .modal-body{padding:2rem 1.6rem;}
#productModal-20w50 .modal-img-wrap{
    background:var(--ink);
    border-radius:2px;
    padding:1.5rem;
    display:flex;
    align-items:center;
    justify-content:center;
}
#productModal-20w50 h3{
    font-size:1.8rem;
    text-transform:uppercase;
    margin-bottom:1.2rem;
}
.modal-spec-row{
    display:flex;
    flex-wrap:wrap;
    gap:1.6rem;
    border-top:1px solid #e6e6e9;
    border-bottom:1px solid #e6e6e9;
    padding:1rem 0;
    margin-bottom:1.4rem;
}
.modal-spec{display:flex; flex-direction:column;}
.modal-spec span{
    font-size:.75rem;
    color:var(--steel);
    text-transform:uppercase;
    letter-spacing:.03em;
}
.modal-spec strong{
    font-family:'Oswald',sans-serif;
    font-size:1.05rem;
    color:var(--ink);
}
.modal-desc{color:var(--steel); line-height:1.7; margin-bottom:1.2rem;}
.modal-points{list-style:none; padding:0; margin:0;}
.modal-points li{
    padding:.4rem 0;
    color:var(--ink);
    font-size:.95rem;
}
.modal-points li i{color:var(--flame); margin-right:.7rem;}