/* ============================================================
   AutoHaus Parts — Main Stylesheet
   Dark, premium automotive design
   ============================================================ */

:root {
    /* Brand */
    --red:#e63946;--red-dark:#b71c2c;--red-light:#fde8ea;
    --bmw:#1C69D4;--bmw-dark:#0a2d6e;
    --merc:#2D2D2D;--merc-dark:#111;
    /* Neutrals */
    --black:#0a0a0a;--near-black:#111214;--dark:#1a1d21;--dark-mid:#22262b;
    --dark-border:#2c3038;--dark-card:#1e2228;
    --gray-800:#2d3748;--gray-600:#4a5568;--gray-400:#718096;--gray-200:#e2e8f0;--gray-100:#f7f8fa;
    --white:#ffffff;--off-white:#f9fafb;
    /* Accents */
    --gold:#c9a227;--gold-light:#fdf3d7;
    --green:#16a34a;--green-light:#dcfce7;
    --blue:#1C69D4;
    /* UI */
    --border-dark:1px solid #2c3038;
    --border-light:1px solid #e2e8f0;
    --radius:6px;--radius-md:10px;--radius-lg:16px;
    --shadow-sm:0 1px 3px rgba(0,0,0,.12);
    --shadow:0 4px 6px rgba(0,0,0,.1);
    --shadow-md:0 8px 16px rgba(0,0,0,.12);
    --shadow-lg:0 20px 40px rgba(0,0,0,.15);
    --shadow-dark:0 4px 24px rgba(0,0,0,.4);
    --transition:all .22s ease;
    --font-main:'Inter',sans-serif;
    --font-display:'Barlow Condensed',sans-serif;
}

/* ── RESET ─────────────────────────────────────────────────── */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;overflow-x:hidden}
body{background:var(--off-white);color:var(--dark);font-family:var(--font-main);line-height:1.6;overflow-x:hidden}
a{color:var(--red);text-decoration:none;transition:var(--transition)}
img{max-width:100%;height:auto;display:block}
ul{list-style:none}
button{cursor:pointer;font-family:var(--font-main)}

/* ── TYPOGRAPHY ──────────────────────────────────────────── */
h1{font-size:clamp(1.8rem,4vw,3.2rem);font-weight:800;line-height:1.1;color:var(--near-black)}
h2{font-size:clamp(1.4rem,3vw,2.2rem);font-weight:700;line-height:1.2;color:var(--near-black)}
h3{font-size:1.2rem;font-weight:700;color:var(--near-black)}
h4{font-size:1rem;font-weight:600;color:var(--dark)}
p{color:var(--gray-600);line-height:1.75}
.display-heading{font-family:var(--font-display);font-weight:800;text-transform:uppercase;letter-spacing:1px}

/* ── LAYOUT ──────────────────────────────────────────────── */
.container{max-width:1280px;margin:0 auto;padding:0 24px}
.ah-section{padding:80px 0}
.ah-section-sm{padding:48px 0}
.ah-section-header{margin-bottom:48px}
.ah-section-label{display:inline-flex;align-items:center;gap:8px;background:var(--red-light);color:var(--red-dark);font-size:.75rem;font-weight:700;letter-spacing:2px;text-transform:uppercase;padding:5px 12px;border-radius:100px;margin-bottom:12px}
.ah-section-label i{font-size:.65rem}
/* Grid utilities */
.ah-2col{display:grid;grid-template-columns:1fr 1fr;gap:32px}
.ah-3col{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.ah-4col{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}

/* ── BUTTONS ─────────────────────────────────────────────── */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:11px 24px;border-radius:var(--radius);font-weight:700;font-size:.9rem;border:2px solid transparent;transition:var(--transition);cursor:pointer;text-decoration:none;letter-spacing:.3px}
.btn-red{background:var(--red);color:#fff;border-color:var(--red)}
.btn-red:hover{background:var(--red-dark);color:#fff;transform:translateY(-1px);box-shadow:0 6px 20px rgba(230,57,70,.3)}
.btn-dark{background:var(--near-black);color:#fff;border-color:var(--near-black)}
.btn-dark:hover{background:var(--dark);color:#fff}
.btn-outline-red{background:transparent;color:var(--red);border-color:var(--red)}
.btn-outline-red:hover{background:var(--red);color:#fff}
.btn-outline-white{background:transparent;color:#fff;border-color:rgba(255,255,255,.5)}
.btn-outline-white:hover{background:rgba(255,255,255,.1);color:#fff;border-color:#fff}
.btn-white{background:#fff;color:var(--near-black)}
.btn-white:hover{background:var(--gray-100);color:var(--near-black)}
.btn-bmw{background:var(--bmw);color:#fff;border-color:var(--bmw)}
.btn-bmw:hover{background:var(--bmw-dark);color:#fff}
.btn-merc{background:var(--merc);color:#fff;border-color:var(--merc)}
.btn-merc:hover{background:var(--merc-dark);color:#fff}
.btn-lg{padding:14px 32px;font-size:1rem}
.btn-sm{padding:6px 14px;font-size:.82rem}
.btn-xs{padding:4px 10px;font-size:.75rem}
.btn-full{width:100%}
.btn-icon{padding:10px;width:40px;height:40px}

/* ── FORMS ───────────────────────────────────────────────── */
.ah-form-group{margin-bottom:18px}
.ah-form-group label{display:block;font-weight:600;font-size:.87rem;color:var(--dark);margin-bottom:5px}
.ah-input{width:100%;padding:11px 14px;border:var(--border-light);border-radius:var(--radius);font-size:.9rem;color:var(--dark);background:#fff;transition:var(--transition);font-family:var(--font-main)}
.ah-input:focus{outline:none;border-color:var(--red);box-shadow:0 0 0 3px rgba(230,57,70,.1)}
textarea.ah-input{min-height:120px;resize:vertical}
.ah-form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.ah-select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23666' stroke-width='1.5' fill='none'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center}

/* ── BADGES ──────────────────────────────────────────────── */
.ah-badge{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border-radius:var(--radius);font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px}
.badge-red{background:var(--red-light);color:var(--red-dark)}
.badge-bmw{background:#dbeafe;color:var(--bmw-dark)}
.badge-merc{background:#f3f4f6;color:var(--merc-dark)}
.badge-green{background:var(--green-light);color:var(--green)}
.badge-gold{background:var(--gold-light);color:#92400e}
.badge-dark{background:var(--near-black);color:#fff}
.badge-oem{background:#f0fdf4;color:var(--green)}
.badge-new{background:#eff6ff;color:#1d4ed8}
.badge-sale{background:var(--red);color:#fff}

/* ── ALERTS ──────────────────────────────────────────────── */
.ah-alert{padding:12px 16px;border-radius:var(--radius);margin-bottom:16px;display:flex;align-items:flex-start;gap:10px;font-size:.9rem}
.ah-alert-success{background:var(--green-light);border:1px solid #86efac;color:#166534}
.ah-alert-error{background:var(--red-light);border:1px solid #fca5a5;color:#991b1b}
.ah-alert-info{background:#eff6ff;border:1px solid #bfdbfe;color:#1e40af}
.ah-alert-warning{background:var(--gold-light);border:1px solid #fde68a;color:#92400e}

/* ── TOPBAR ──────────────────────────────────────────────── */
#ah-topbar{background:var(--near-black);padding:8px 0;font-size:.8rem;color:rgba(255,255,255,.65)}
.ah-topbar-inner{display:flex;justify-content:space-between;align-items:center;gap:16px}
.ah-topbar-left{display:flex;gap:24px;flex-wrap:wrap}
.ah-topbar-left span{display:flex;align-items:center;gap:6px}
.ah-topbar-left i{color:var(--red)}
.ah-topbar-right{display:flex;gap:16px}
.ah-topbar-right a{color:rgba(255,255,255,.65);font-size:.8rem;transition:var(--transition)}
.ah-topbar-right a:hover{color:#fff}
.ah-topbar-right i{margin-right:4px}

/* ── MAIN HEADER ─────────────────────────────────────────── */
#ah-header{background:#fff;border-bottom:var(--border-light);position:sticky;top:0;z-index:1000;box-shadow:var(--shadow)}
.ah-header-main{background:#fff}
.ah-inner{display:flex;align-items:center;gap:20px;height:68px}

/* Logo */
#ah-logo,
.ah-footer-logo{display:flex;align-items:center;gap:10px;text-decoration:none;flex-shrink:0}
.ah-logo-icon{width:38px;height:38px;background:var(--red);border-radius:var(--radius);display:flex;align-items:center;justify-content:center;color:#fff;font-size:.95rem;flex-shrink:0}
.ah-logo-icon.sm{width:32px;height:32px;font-size:.82rem}
.ah-logo-text{font-family:var(--font-display);font-size:1.4rem;font-weight:800;color:var(--near-black);letter-spacing:-.5px;line-height:1}
.ah-logo-text span{color:var(--red)}
.ah-logo-sub{font-size:.6rem;font-weight:700;letter-spacing:3px;color:var(--gray-400);line-height:1}

/* Search */
#ah-search{flex:1;display:flex;border:2px solid var(--gray-200);border-radius:var(--radius);overflow:hidden;transition:var(--transition)}
#ah-search:focus-within{border-color:var(--red);box-shadow:0 0 0 3px rgba(230,57,70,.1)}
.ah-search-brand{padding:0 12px;border:none;border-right:var(--border-light);background:var(--gray-100);color:var(--dark);font-size:.85rem;font-weight:600;font-family:var(--font-main);outline:none;cursor:pointer;flex-shrink:0}
#ah-search input{flex:1;border:none;padding:0 14px;font-size:.9rem;color:var(--dark);font-family:var(--font-main);outline:none}
#ah-search button{background:var(--red);color:#fff;border:none;padding:0 18px;font-size:1rem;cursor:pointer;transition:var(--transition);flex-shrink:0}
#ah-search button:hover{background:var(--red-dark)}

/* Header actions */
#ah-header-actions{display:flex;align-items:center;gap:4px;flex-shrink:0}
.ah-action-btn{display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 12px;border-radius:var(--radius);color:var(--dark);text-decoration:none;transition:var(--transition);position:relative;font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}
.ah-action-btn i{font-size:1.1rem;color:var(--dark)}
.ah-action-btn:hover{background:var(--gray-100);color:var(--dark)}
.ah-action-btn:hover i{color:var(--red)}
.ah-cart-count{position:absolute;top:2px;right:6px;width:18px;height:18px;background:var(--red);color:#fff;border-radius:50%;font-size:.6rem;font-weight:800;display:flex;align-items:center;justify-content:center}
.ah-cart-btn .ah-cart-count{top:2px;right:4px}

/* Hamburger */
#ah-hambtn{display:none;flex-direction:column;gap:5px;width:40px;height:40px;align-items:center;justify-content:center;background:none;border:none;cursor:pointer;padding:0;margin-left:4px}
#ah-hambtn span{display:block;width:20px;height:2px;background:var(--dark);border-radius:2px;transition:var(--transition)}

/* ── DESKTOP NAV ─────────────────────────────────────────── */
#ah-desknav{background:var(--near-black);border-top:1px solid var(--dark-border)}
.ah-desknav-inner{display:flex;justify-content:space-between;align-items:center;height:44px}
.ah-desknav-left{display:flex;align-items:center;gap:4px;height:100%}
.ah-desknav-right{display:flex;gap:16px}
.ah-trust-badge{font-size:.75rem;color:rgba(255,255,255,.5);display:flex;align-items:center;gap:5px}
.ah-trust-badge i{color:var(--gold)}
.ah-nav-link{display:flex;align-items:center;gap:6px;padding:0 14px;height:44px;color:rgba(255,255,255,.8);font-size:.87rem;font-weight:500;transition:var(--transition);position:relative;text-decoration:none}
.ah-nav-link:hover,.ah-nav-link.active{color:#fff;background:rgba(255,255,255,.08)}
.ah-nav-link.active::after{content:'';position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--red)}

/* Dropdowns */
.ah-dropdown{position:relative;height:100%;display:flex;align-items:center}
.ah-dropdown-menu{position:absolute;top:100%;left:0;background:#fff;border:var(--border-light);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);min-width:220px;padding:8px 0;opacity:0;visibility:hidden;transform:translateY(-8px);transition:all .2s ease;z-index:500}
.ah-dropdown:hover .ah-dropdown-menu{opacity:1;visibility:visible;transform:translateY(0)}
.ah-dropdown-header{padding:8px 16px 4px;font-size:.7rem;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--gray-400)}
.ah-dropdown-menu a{display:flex;justify-content:space-between;align-items:center;padding:9px 16px;font-size:.88rem;color:var(--dark);transition:var(--transition);text-decoration:none}
.ah-dropdown-menu a:hover{background:var(--gray-100);color:var(--red);padding-left:20px}
.ah-dropdown-menu a span{font-size:.75rem;color:var(--gray-400)}

/* ── MOBILE OVERLAY ──────────────────────────────────────── */
#ah-overlay{position:fixed;inset:0;background:rgba(0,0,0,.75);z-index:9000;display:flex;align-items:stretch;opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s ease}
#ah-overlay.open{opacity:1;visibility:visible}
#ah-mob-panel{background:var(--near-black);width:300px;max-width:85vw;display:flex;flex-direction:column;transform:translateX(-100%);transition:transform .3s ease;overflow-y:auto}
#ah-overlay.open #ah-mob-panel{transform:translateX(0)}
#ah-mob-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:var(--border-dark)}
#ah-mob-close{background:rgba(255,255,255,.1);border:none;color:#fff;width:36px;height:36px;border-radius:50%;font-size:1rem;cursor:pointer}
#ah-mob-nav{display:flex;flex-direction:column;padding:16px 0}
#ah-mob-nav a{padding:12px 20px;font-size:.95rem;font-weight:500;color:rgba(255,255,255,.8);transition:var(--transition);text-decoration:none}
#ah-mob-nav a:hover{color:#fff;background:rgba(255,255,255,.06);padding-left:24px}
.mob-nav-label{padding:8px 20px 4px;font-size:.65rem;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:rgba(255,255,255,.3)}
.mob-nav-divider{height:1px;background:var(--dark-border);margin:10px 0}
.mob-cart-badge{background:var(--red);color:#fff;border-radius:100px;padding:1px 7px;font-size:.65rem;font-weight:700;margin-left:6px}

/* ── HERO — HOMEPAGE ─────────────────────────────────────── */
.main-hero{background:var(--near-black);position:relative;overflow:hidden;min-height:580px;display:flex;align-items:center}
.main-hero::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(230,57,70,.15) 0%,transparent 50%);pointer-events:none}
.hero-split{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;position:relative;z-index:2}
.hero-eyebrow{display:inline-flex;align-items:center;gap:8px;background:rgba(230,57,70,.15);border:1px solid rgba(230,57,70,.3);color:var(--red);font-size:.78rem;font-weight:700;letter-spacing:2px;text-transform:uppercase;padding:5px 12px;border-radius:100px;margin-bottom:20px}
.main-hero h1{color:#fff;font-size:clamp(2rem,4.5vw,3.6rem);line-height:1.05;font-weight:900}
.main-hero h1 .accent{color:var(--red)}
.main-hero h1 .brand-accent{color:#60a5fa}
.hero-desc{color:rgba(255,255,255,.65);font-size:1.05rem;margin:20px 0 32px;max-width:480px}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap}
.hero-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:48px;padding-top:32px;border-top:1px solid rgba(255,255,255,.1)}
.hero-stat strong{display:block;font-size:2rem;font-weight:900;color:#fff;font-family:var(--font-display)}
.hero-stat span{font-size:.78rem;color:rgba(255,255,255,.5);text-transform:uppercase;letter-spacing:1px}
.hero-visual-side{position:relative}
.hero-brand-cards{display:flex;flex-direction:column;gap:16px}
.hero-brand-card{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-lg);padding:24px;transition:var(--transition);text-decoration:none;display:block}
.hero-brand-card:hover{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.2);transform:translateX(4px)}
.hero-brand-card__top{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}
.hero-brand-card__name{font-size:1.3rem;font-weight:800;color:#fff;font-family:var(--font-display);text-transform:uppercase;letter-spacing:1px}
.hero-brand-card__models{font-size:.8rem;color:rgba(255,255,255,.5);margin-bottom:6px}
.hero-brand-card__count{font-size:.78rem;color:var(--red);font-weight:600}
.hero-brand-card.bmw-card{border-left:3px solid var(--bmw)}
.hero-brand-card.merc-card{border-left:3px solid #888}

/* ── BRAND HERO ──────────────────────────────────────────── */
.brand-hero{min-height:400px;display:flex;align-items:center;position:relative;overflow:hidden;padding:80px 0}
.brand-hero.bmw-hero{background:linear-gradient(135deg,var(--bmw-dark) 0%,#0d3b8e 60%,#1C69D4 100%)}
.brand-hero.merc-hero{background:linear-gradient(135deg,#0a0a0a 0%,#1a1a1a 60%,#2d2d2d 100%)}
.brand-hero::after{content:'';position:absolute;right:0;top:0;bottom:0;width:50%;background:linear-gradient(to left,rgba(255,255,255,.03),transparent);pointer-events:none}
.brand-hero-content{position:relative;z-index:2}
.brand-hero-badge{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);color:rgba(255,255,255,.9);font-size:.78rem;font-weight:700;letter-spacing:2px;text-transform:uppercase;padding:5px 14px;border-radius:100px;margin-bottom:16px}
.brand-hero h1{color:#fff;font-size:clamp(2.2rem,5vw,4rem);font-weight:900;font-family:var(--font-display);text-transform:uppercase;letter-spacing:2px;margin-bottom:12px}
.brand-hero h1 span{color:rgba(255,255,255,.35)}
.brand-hero p{color:rgba(255,255,255,.7);font-size:1.05rem;max-width:480px;margin-bottom:28px}
.brand-hero-actions{display:flex;gap:12px;flex-wrap:wrap}
.brand-hero-model-count{display:flex;gap:24px;margin-top:40px;padding-top:28px;border-top:1px solid rgba(255,255,255,.1)}
.brand-count-item strong{display:block;font-size:1.8rem;font-weight:900;color:#fff;font-family:var(--font-display);line-height:1}
.brand-count-item span{font-size:.75rem;color:rgba(255,255,255,.5);text-transform:uppercase;letter-spacing:1px}

/* ── PAGE HERO ───────────────────────────────────────────── */
.page-hero{background:var(--near-black);padding:56px 0 36px;position:relative}
.page-hero::before{content:'';position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--red)}
.page-hero-label{font-size:.75rem;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--red);margin-bottom:8px;display:flex;align-items:center;gap:8px}
.page-hero h1{color:#fff;margin-bottom:10px}
.page-hero p{color:rgba(255,255,255,.6);font-size:1rem}
.ah-breadcrumb{display:flex;align-items:center;gap:8px;font-size:.82rem;color:rgba(255,255,255,.4);margin-bottom:16px;flex-wrap:wrap}
.ah-breadcrumb a{color:rgba(255,255,255,.6)}.ah-breadcrumb a:hover{color:#fff}
.ah-breadcrumb .sep{color:rgba(255,255,255,.2)}

/* ── MODEL CARDS ─────────────────────────────────────────── */
.models-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.model-card{background:var(--dark-card);border:var(--border-dark);border-radius:var(--radius-md);overflow:hidden;transition:var(--transition);text-decoration:none;display:block;position:relative}
.model-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-dark);border-color:var(--red)}
.model-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:var(--red);transform:scaleX(0);transition:transform .3s ease;transform-origin:left}
.model-card:hover::before{transform:scaleX(1)}
.model-card__img{height:180px;background:var(--dark);display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}
.model-card__img img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}
.model-card:hover .model-card__img img{transform:scale(1.06)}
.model-card__img-placeholder{font-size:3rem;color:rgba(255,255,255,.15)}
.model-card__brand-dot{position:absolute;top:10px;right:10px;width:10px;height:10px;border-radius:50%}
.model-card__content{padding:18px}
.model-card__name{font-size:1.1rem;font-weight:800;color:#fff;font-family:var(--font-display);text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px}
.model-card__code{font-size:.75rem;color:rgba(255,255,255,.4);margin-bottom:8px}
.model-card__years{font-size:.8rem;color:var(--red);font-weight:600;margin-bottom:8px}
.model-card__parts{font-size:.78rem;color:rgba(255,255,255,.5)}
.model-card__arrow{position:absolute;bottom:16px;right:16px;width:30px;height:30px;background:var(--red);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:.75rem;opacity:0;transform:scale(.7);transition:var(--transition)}
.model-card:hover .model-card__arrow{opacity:1;transform:scale(1)}

/* ── PART CARDS ──────────────────────────────────────────── */
.parts-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.part-card{background:#fff;border:var(--border-light);border-radius:var(--radius-md);overflow:hidden;transition:var(--transition);display:flex;flex-direction:column;text-decoration:none;color:inherit}
.part-card:hover{box-shadow:var(--shadow-md);transform:translateY(-3px);border-color:var(--gray-200)}
.part-card__img{height:200px;background:var(--gray-100);display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;flex-shrink:0}
.part-card__img img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}
.part-card:hover .part-card__img img{transform:scale(1.05)}
.part-card__img-placeholder{font-size:3rem;color:var(--gray-200)}
.part-card__badges{position:absolute;top:10px;left:10px;display:flex;flex-direction:column;gap:4px}
.part-card__brand{position:absolute;top:10px;right:10px;width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center}
.part-card__body{padding:16px;display:flex;flex-direction:column;flex:1}
.part-card__cat{font-size:.7rem;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--red);margin-bottom:4px}
.part-card__name{font-size:.95rem;font-weight:700;color:var(--near-black);margin-bottom:4px;line-height:1.3}
.part-card__number{font-size:.75rem;color:var(--gray-400);margin-bottom:8px;font-family:monospace}
.part-card__desc{font-size:.82rem;color:var(--gray-600);margin-bottom:12px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;flex:1}
.part-card__footer{margin-top:auto;display:flex;flex-direction:column;gap:8px}
.part-card__price{font-size:1.15rem;font-weight:800;color:var(--near-black)}
.part-card__price s{font-size:.85rem;color:var(--gray-400);font-weight:400;margin-right:4px}
.part-card__price .save{font-size:.75rem;color:var(--red);font-weight:700}
.part-card__stock{font-size:.75rem;display:flex;align-items:center;gap:4px}
.stock-in{color:var(--green)}.stock-low{color:var(--gold)}.stock-out{color:var(--red)}
.part-card__btn{background:var(--near-black);color:#fff;border:none;border-radius:var(--radius);padding:9px;font-size:.85rem;font-weight:700;cursor:pointer;transition:var(--transition);display:flex;align-items:center;justify-content:center;gap:6px}
.part-card__btn:hover{background:var(--red)}

/* ── PART DETAIL PAGE ─────────────────────────────────────── */
.part-detail-grid{display:grid;grid-template-columns:1fr 380px;gap:40px;align-items:start}
.part-gallery{position:sticky;top:80px}
.part-gallery-main{height:380px;background:var(--gray-100);border-radius:var(--radius-md);overflow:hidden;display:flex;align-items:center;justify-content:center;margin-bottom:12px;border:var(--border-light)}
.part-gallery-main img{width:100%;height:100%;object-fit:contain;padding:20px}
.part-gallery-main-placeholder{font-size:5rem;color:var(--gray-200)}
.part-gallery-thumbs{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.part-gallery-thumb{height:80px;background:var(--gray-100);border-radius:var(--radius);overflow:hidden;cursor:pointer;border:2px solid transparent;transition:var(--transition)}
.part-gallery-thumb:hover,.part-gallery-thumb.active{border-color:var(--red)}
.part-gallery-thumb img{width:100%;height:100%;object-fit:cover}
/* Part info sidebar */
.part-info-card{background:#fff;border:var(--border-light);border-radius:var(--radius-lg);padding:24px;box-shadow:var(--shadow)}
.part-price-block{padding:16px 0;border-bottom:var(--border-light);margin-bottom:16px}
.part-price-main{font-size:2rem;font-weight:900;color:var(--near-black);font-family:var(--font-display)}
.part-price-old{font-size:1rem;color:var(--gray-400);text-decoration:line-through;margin-right:8px}
.part-price-save{font-size:.82rem;color:var(--red);font-weight:700}
.part-stock-badge{display:inline-flex;align-items:center;gap:6px;font-size:.85rem;font-weight:600;margin-top:8px}
.part-qty-control{display:flex;align-items:center;border:var(--border-light);border-radius:var(--radius);overflow:hidden;height:44px;width:fit-content}
.part-qty-control button{width:44px;height:44px;background:var(--gray-100);border:none;font-size:1.1rem;cursor:pointer;transition:var(--transition)}
.part-qty-control button:hover{background:var(--red);color:#fff}
.part-qty-control input{width:52px;height:44px;border:none;border-left:var(--border-light);border-right:var(--border-light);text-align:center;font-size:1rem;font-weight:700}
/* Specs table */
.specs-table{width:100%;border-collapse:collapse}
.specs-table tr:nth-child(even){background:var(--gray-100)}
.specs-table td{padding:10px 14px;font-size:.88rem;vertical-align:top}
.specs-table td:first-child{font-weight:600;color:var(--dark);width:45%;white-space:nowrap}
.specs-table td:last-child{color:var(--gray-600)}
/* Installation accordion */
.ah-accordion-item{border:var(--border-light);border-radius:var(--radius-md);overflow:hidden;margin-bottom:10px}
.ah-accordion-trigger{width:100%;display:flex;justify-content:space-between;align-items:center;padding:14px 18px;background:#fff;border:none;font-weight:700;font-size:.95rem;cursor:pointer;color:var(--dark);text-align:left;transition:var(--transition)}
.ah-accordion-trigger:hover,.ah-accordion-item.open .ah-accordion-trigger{background:var(--near-black);color:#fff}
.ah-accordion-trigger i{transition:transform .3s ease;color:var(--red);font-size:.85rem}
.ah-accordion-item.open .ah-accordion-trigger i{transform:rotate(180deg)}
.ah-accordion-body{max-height:0;overflow:hidden;transition:max-height .4s ease}
.ah-accordion-item.open .ah-accordion-body{max-height:800px}
.ah-accordion-body-inner{padding:16px 18px;font-size:.9rem;color:var(--gray-600);line-height:1.8}
/* Compatibility */
.compat-tags{display:flex;flex-wrap:wrap;gap:8px}
.compat-tag{background:var(--gray-100);border:var(--border-light);border-radius:var(--radius);padding:5px 12px;font-size:.8rem;font-weight:600;color:var(--dark)}

/* ── STORE LAYOUT ─────────────────────────────────────────── */
.store-grid-layout{display:grid;grid-template-columns:260px 1fr;gap:28px;align-items:start}
.store-sidebar{background:#fff;border:var(--border-light);border-radius:var(--radius-md);padding:20px;position:sticky;top:88px}
.store-sidebar h4{font-size:.75rem;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--gray-400);margin-bottom:10px;padding-bottom:8px;border-bottom:var(--border-light)}
.store-filter-item{display:flex;align-items:center;gap:8px;padding:6px 0;cursor:pointer;font-size:.88rem;color:var(--dark);transition:var(--transition)}
.store-filter-item:hover{color:var(--red)}
.store-filter-item input{accent-color:var(--red)}
.store-filter-count{margin-left:auto;font-size:.75rem;color:var(--gray-400)}

/* ── CART ─────────────────────────────────────────────────── */
.cart-layout-grid{display:grid;grid-template-columns:1fr 360px;gap:28px;align-items:start}
.cart-table{width:100%;border-collapse:collapse}
.cart-table th{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--gray-400);text-align:left;padding:12px 0;border-bottom:var(--border-light)}
.cart-table td{padding:16px 0;border-bottom:var(--border-light);vertical-align:middle}
.cart-item-img{width:64px;height:64px;background:var(--gray-100);border-radius:var(--radius);object-fit:cover;border:var(--border-light)}
.cart-summary-box{background:#fff;border:var(--border-light);border-radius:var(--radius-md);padding:24px;position:sticky;top:88px}
.cart-summary-row{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:var(--border-light);font-size:.9rem;color:var(--gray-600)}
.cart-summary-row.total{border:none;font-size:1.1rem;font-weight:700;color:var(--near-black);padding-top:14px}
.cart-summary-row.total strong{font-size:1.4rem;color:var(--red)}
.qty-input-group{display:flex;align-items:center;border:var(--border-light);border-radius:var(--radius);overflow:hidden;width:fit-content}
.qty-input-group button{width:32px;height:32px;background:var(--gray-100);border:none;cursor:pointer;font-size:.9rem;transition:var(--transition)}
.qty-input-group button:hover{background:var(--red);color:#fff}
.qty-input-group input{width:40px;height:32px;border:none;border-left:var(--border-light);border-right:var(--border-light);text-align:center;font-size:.88rem;font-weight:700}

/* ── CHECKOUT ─────────────────────────────────────────────── */
.checkout-grid{display:grid;grid-template-columns:1fr 360px;gap:28px;align-items:start}
.checkout-section{background:#fff;border:var(--border-light);border-radius:var(--radius-md);padding:24px;margin-bottom:20px}
.checkout-section h3{font-size:1rem;font-weight:700;margin-bottom:20px;padding-bottom:12px;border-bottom:var(--border-light);display:flex;align-items:center;gap:8px}
.checkout-section h3 i{color:var(--red);font-size:.9rem}

/* ── AUTH ─────────────────────────────────────────────────── */
.ah-auth-page{min-height:80vh;display:flex;align-items:center;justify-content:center;padding:60px 24px;background:var(--gray-100)}
.ah-auth-card{background:#fff;border:var(--border-light);border-radius:var(--radius-lg);padding:40px;width:100%;max-width:440px;box-shadow:var(--shadow-md)}
.ah-auth-tabs{display:flex;border:var(--border-light);border-radius:var(--radius);overflow:hidden;margin-bottom:24px}
.ah-auth-tab{flex:1;padding:10px;text-align:center;font-weight:700;font-size:.88rem;cursor:pointer;background:#fff;border:none;color:var(--gray-600);transition:var(--transition);font-family:var(--font-main)}
.ah-auth-tab.active{background:var(--near-black);color:#fff}

/* ── ACCOUNT ─────────────────────────────────────────────────*/
.ah-account-layout{display:grid;grid-template-columns:220px 1fr;gap:24px;align-items:start}
.ah-account-nav{background:#fff;border:var(--border-light);border-radius:var(--radius-md);overflow:hidden;position:sticky;top:88px}
.ah-account-nav a{display:flex;align-items:center;gap:10px;padding:12px 18px;font-size:.88rem;font-weight:600;color:var(--gray-600);border-left:3px solid transparent;transition:var(--transition);text-decoration:none}
.ah-account-nav a:hover,.ah-account-nav a.active{color:var(--red);background:var(--red-light);border-left-color:var(--red)}
.ah-account-nav a i{width:14px;text-align:center}

/* ── TOAST ───────────────────────────────────────────────── */
#ah-toast{position:fixed;bottom:24px;right:24px;z-index:9999;display:flex;flex-direction:column;gap:8px;pointer-events:none}
.ah-toast-item{background:var(--near-black);color:#fff;border-radius:var(--radius-md);padding:12px 18px;font-size:.88rem;display:flex;align-items:center;gap:10px;transform:translateX(110%);opacity:0;transition:all .35s ease;max-width:320px;box-shadow:var(--shadow-lg);pointer-events:auto}
.ah-toast-item.show{transform:translateX(0);opacity:1}
.ah-toast-item.success{border-left:3px solid var(--green)}
.ah-toast-item.error{border-left:3px solid var(--red)}
.ah-toast-item.info{border-left:3px solid var(--bmw)}

/* ── TRUST STRIP ─────────────────────────────────────────── */
.trust-strip{background:var(--near-black);border-top:1px solid var(--dark-border);border-bottom:1px solid var(--dark-border);padding:20px 0}
.trust-strip-inner{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;align-items:start}
.trust-item{display:flex;align-items:center;gap:12px;color:rgba(255,255,255,.75)}
.trust-item i{font-size:1.3rem;color:var(--red)}
.trust-item strong{display:block;font-size:.88rem;font-weight:700;color:#fff}
.trust-item span{font-size:.75rem;color:rgba(255,255,255,.5)}

/* ── SPECS GRID ──────────────────────────────────────────── */
.specs-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.spec-card{background:var(--dark-card);border:var(--border-dark);border-radius:var(--radius-md);padding:20px;text-align:center}
.spec-card i{font-size:1.5rem;color:var(--red);margin-bottom:10px;display:block}
.spec-card h4{color:#fff;font-size:.95rem;margin-bottom:4px}
.spec-card p{font-size:.82rem;color:rgba(255,255,255,.5)}
.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}

/* ── FOOTER ──────────────────────────────────────────────── */
#ah-footer{background:var(--near-black)}
.ah-footer-main{padding:60px 0 40px}
.ah-footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1fr;gap:40px}
.ah-footer-brand p{font-size:.86rem;color:rgba(255,255,255,.45);margin:14px 0 18px;max-width:280px;line-height:1.7}
.ah-footer-contact{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}
.ah-footer-contact a{font-size:.84rem;color:rgba(255,255,255,.55);display:flex;align-items:center;gap:8px;transition:var(--transition)}
.ah-footer-contact a:hover{color:#fff}
.ah-footer-contact i{color:var(--red);width:14px}
.ah-footer-social{display:flex;gap:8px}
.ah-footer-social a{width:34px;height:34px;background:rgba(255,255,255,.07);border-radius:var(--radius);display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.5);transition:var(--transition);font-size:.88rem}
.ah-footer-social a:hover{background:var(--red);color:#fff}
.ah-footer-col h4{font-size:.72rem;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:rgba(255,255,255,.35);margin-bottom:16px}
.ah-footer-col ul{display:flex;flex-direction:column;gap:8px}
.ah-footer-col ul li a{font-size:.86rem;color:rgba(255,255,255,.5);transition:var(--transition)}
.ah-footer-col ul li a:hover{color:#fff}
.ah-footer-trust{display:flex;flex-direction:column;gap:8px;margin-top:20px;padding-top:16px;border-top:var(--border-dark)}
.ah-footer-trust span{font-size:.78rem;color:rgba(255,255,255,.4);display:flex;align-items:center;gap:6px}
.ah-footer-trust i{color:var(--gold)}
.ah-footer-bottom{border-top:var(--border-dark);padding:18px 0}
.ah-footer-bottom-inner{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px}
.ah-footer-bottom p{font-size:.78rem;color:rgba(255,255,255,.3)}
.ah-footer-disclaimer{font-size:.72rem!important;color:rgba(255,255,255,.2)!important;max-width:600px;text-align:center}
.ah-footer-payment{display:flex;gap:8px;font-size:1.6rem;color:rgba(255,255,255,.3)}

/* ── RESPONSIVE ──────────────────────────────────────────── */
@media(max-width:1024px){
    #ah-desknav,#ah-topbar{display:none!important}
    #ah-hambtn{display:flex!important}
    .parts-grid{grid-template-columns:repeat(3,1fr)!important}
    .models-grid{grid-template-columns:repeat(3,1fr)!important}
    .hero-split,.brand-split{grid-template-columns:1fr!important}
    .hero-visual-side{display:none}
    .ah-footer-grid{grid-template-columns:1fr 1fr 1fr!important;gap:32px!important}
    .store-grid-layout{grid-template-columns:1fr!important}
    .part-detail-grid{grid-template-columns:1fr!important}
    .cart-layout-grid,.checkout-grid{grid-template-columns:1fr!important}
    .ah-account-layout{grid-template-columns:1fr!important}
}
@media(max-width:768px){
    .container{padding:0 16px!important}
    .ah-section{padding:48px 0!important}
    .parts-grid{grid-template-columns:repeat(2,1fr)!important;gap:12px!important}
    .models-grid{grid-template-columns:repeat(2,1fr)!important;gap:12px!important}
    .ah-3col,.ah-4col,.specs-grid,.gallery-grid{grid-template-columns:repeat(2,1fr)!important}
    .ah-2col,.ah-account-layout{grid-template-columns:1fr!important}
    .ah-form-row{grid-template-columns:1fr!important}
    .ah-footer-grid{grid-template-columns:1fr 1fr!important;gap:24px!important}
    .part-gallery-main{height:260px!important}
    .part-gallery-thumbs{grid-template-columns:repeat(4,1fr)!important}
    .hero-stats{gap:20px!important}
    .trust-strip-inner{gap:10px!important}
    .trust-item{gap:8px!important}
    .part-card__img{height:160px!important}
    .brand-hero{min-height:280px!important;padding:40px 0!important}
    .brand-hero h1{font-size:2.2rem!important}
}
@media(max-width:480px){
    .container{padding:0 12px!important}
    .parts-grid{grid-template-columns:repeat(2,1fr)!important;gap:8px!important}
    .models-grid{grid-template-columns:repeat(2,1fr)!important;gap:8px!important}
    .ah-3col,.ah-4col,.specs-grid,.gallery-grid{grid-template-columns:1fr!important}
    .ah-footer-grid{grid-template-columns:1fr!important}
    .hero-stats{flex-direction:column!important;gap:12px!important}
    h1{font-size:1.8rem!important}
    h2{font-size:1.4rem!important}
    .part-card__img{height:130px!important}
}


/* ============================================================
   AUTOHAUS — DEFINITIVE RESPONSIVE (end of file, always wins)
   ============================================================ */
@media(min-width:769px){
    .ah-footer-grid{display:grid!important;grid-template-columns:2fr 1fr 1fr 1fr 1fr!important;gap:40px!important}
    .hero-stats{display:grid!important;grid-template-columns:repeat(4,1fr)!important;gap:20px!important}
    .trust-strip-inner{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:16px!important}
    #ah-search{display:flex!important}
}
@media(max-width:1024px){
    #ah-search{display:none!important}
    .ah-footer-grid{grid-template-columns:1fr 1fr!important;gap:24px!important}
}
@media(max-width:768px){
    .ah-footer-grid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:20px!important}
    .ah-footer-brand{grid-column:1/-1!important}
    .hero-stats{display:grid!important;grid-template-columns:repeat(2,1fr)!important;gap:10px!important;flex-wrap:unset!important}
    .hero-stat{text-align:center!important;background:rgba(255,255,255,.07)!important;border-radius:8px!important;padding:12px!important}
    .trust-strip-inner{display:grid!important;grid-template-columns:repeat(2,1fr)!important;gap:12px!important}
    .trust-item{align-items:flex-start!important}
    .hero-actions{flex-direction:column!important;gap:10px!important}
    .hero-actions .btn{width:100%!important;justify-content:center!important}
    .ah-footer-logo .ah-logo-text{color:#fff!important;font-size:1.2rem!important}
    .ah-footer-logo .ah-logo-text span{color:#e63946!important}
}
@media(max-width:480px){
    .ah-footer-grid{display:grid!important;grid-template-columns:1fr!important}
    .hero-stats{grid-template-columns:repeat(2,1fr)!important}
    .trust-strip-inner{grid-template-columns:repeat(2,1fr)!important}
}
