.ab{ background:var(--v2-bg, #f4f2eb); padding-bottom:72px; }
.ab-hero__pills{ display:flex; flex-wrap:wrap; gap:8px; margin-top:22px; }
.ab-hero__pills span{ display:inline-flex; align-items:center; gap:8px; height:34px; padding:0 13px; border:1px solid var(--v2-border); border-radius:999px; background:rgba(255,253,248,.75); backdrop-filter:blur(4px); color:#3f3d36; font-size:.84rem; font-weight:500; }
.ab-hero__pills i{ color:var(--v2-primary); font-size:.8rem; }

.ab-eyebrow{ display:inline-block; margin-bottom:8px; color:var(--v2-primary); font:600 .74rem 'Inter', sans-serif; letter-spacing:.09em; text-transform:uppercase; }
.ab h2{ margin:0; font:700 clamp(1.4rem, 2.2vw, 1.85rem)/1.2 'Inter', sans-serif; letter-spacing:-.028em; color:var(--v2-fg); }
.ab-section{ margin-top:80px; }
.ab-head{ max-width:640px; margin-bottom:22px; }
.ab-head--row{ max-width:none; display:flex; align-items:flex-end; justify-content:space-between; gap:16px; }
.ab-actions{ display:flex; flex-wrap:wrap; gap:10px; margin-top:24px; }

.ab-stats-wrap{ position:relative; z-index:2; margin-top:-56px; }
.ab-stats{ display:grid; grid-template-columns:repeat(auto-fit, minmax(0, 1fr)); grid-auto-flow:column; padding:6px; }
.ab-stat{ display:flex; align-items:center; gap:14px; padding:18px 20px; }
.ab-stat + .ab-stat{ border-left:1px solid var(--v2-muted-bg); }
.ab-stat strong{ display:flex; align-items:baseline; gap:6px; font:800 1.65rem/1 'Inter', sans-serif; letter-spacing:-.035em; color:var(--v2-fg); font-variant-numeric:tabular-nums; }
.ab-stat strong em{ font:600 .9rem 'Inter', sans-serif; font-style:normal; letter-spacing:-.01em; color:#3f3d36; }
.ab-stat small{ display:block; margin-top:5px; color:var(--v2-muted); font-size:.8rem; }

.ab-story{ display:grid; grid-template-columns:minmax(0,1.05fr) minmax(0,1fr); gap:52px; align-items:center; margin-top:72px; }
.ab-story__media{ position:relative; margin:0; overflow:hidden; padding:0; background:#f6f1e3; }
.ab-story__media img{ display:block; width:100%; height:auto; }
.ab-story__media figcaption{ position:absolute; left:14px; bottom:14px; display:inline-flex; align-items:center; gap:7px; height:30px; padding:0 12px; border:1px solid var(--v2-border); border-radius:999px; background:rgba(255,253,248,.92); backdrop-filter:blur(4px); color:#3f3d36; font-size:.8rem; font-weight:500; }
.ab-story__media figcaption i{ color:var(--v2-primary); font-size:.74rem; }
.ab-story__text h2{ margin-bottom:16px; }
.ab-story__text p{ margin:0 0 14px; color:#57534a; font-size:1rem; line-height:1.75; }

.ab-why{ display:grid; grid-template-columns:minmax(280px, .9fr) minmax(0, 2fr); gap:16px; align-items:stretch; }
.ab-why__intro{ display:flex; flex-direction:column; align-items:flex-start; padding:30px; border-radius:16px; background:#2f3a1f; color:rgba(255,255,255,.76); }
.ab-why__intro .ab-eyebrow{ color:#c9d6a3; }
.ab-why__intro h2{ color:#fff; margin-bottom:12px; }
.ab-why__intro p{ margin:0 0 20px; line-height:1.7; font-size:.95rem; }
.ab-why__checks{ list-style:none; margin:0 0 26px; padding:0; display:flex; flex-direction:column; gap:10px; }
.ab-why__checks li{ display:flex; align-items:center; gap:10px; color:#fff; font-size:.92rem; font-weight:500; }
.ab-why__checks i{ width:22px; height:22px; flex:0 0 22px; display:inline-flex; align-items:center; justify-content:center; border-radius:999px; background:rgba(201,214,163,.18); color:#c9d6a3; font-size:.66rem; }
.ab-why__btn{ margin-top:auto; background:#fff; color:#2f3a1f; }
.ab-why__btn i{ color:#25a55a; }
.ab-why__btn:hover{ background:#eef3e3; }
.ab-why__grid{ display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:12px; }
.ab-value{ display:flex; align-items:flex-start; gap:14px; padding:18px; transition:border-color .2s, box-shadow .25s, transform .25s cubic-bezier(.16,1,.3,1); }
.ab-value:hover{ border-color:var(--v2-border-strong); box-shadow:var(--v2-shadow-lg); transform:translateY(-2px); }
.ab-value h3{ margin:2px 0 5px; font:650 .98rem 'Inter', sans-serif; letter-spacing:-.012em; color:var(--v2-fg); }
.ab-value p{ margin:0; color:#6b675c; font-size:.87rem; line-height:1.58; }

.ab-steps{ list-style:none; margin:0; padding:8px; display:grid; grid-template-columns:repeat(4, minmax(0,1fr)); }
.ab-step{ position:relative; padding:20px 22px 22px; }
.ab-step + .ab-step{ border-left:1px solid var(--v2-muted-bg); }
.ab-step__num{ display:inline-flex; align-items:center; justify-content:center; width:34px; height:34px; margin-bottom:14px; border-radius:10px; background:var(--v2-fg); color:#fff; font:700 .78rem 'Inter', sans-serif; letter-spacing:.04em; }
.ab-step:first-child .ab-step__num{ background:var(--v2-primary); }
.ab-step h3{ margin:0 0 6px; font:650 .98rem 'Inter', sans-serif; color:var(--v2-fg); }
.ab-step p{ margin:0; color:#6b675c; font-size:.88rem; line-height:1.6; }

.ab-brands{ display:grid; grid-template-columns:repeat(6, minmax(0,1fr)); overflow:hidden; background:var(--v2-card); }
.ab-brand{ display:flex; align-items:center; justify-content:center; height:108px; padding:16px; box-shadow:inset -1px 0 0 var(--v2-muted-bg), inset 0 -1px 0 var(--v2-muted-bg); transition:background .2s; }
.ab-brand img{ display:block; max-width:100%; width:auto; object-fit:contain; mix-blend-mode:multiply; opacity:.82; filter:saturate(.85); transition:opacity .25s, filter .25s, transform .3s cubic-bezier(.16,1,.3,1); }
.ab-brand:hover{ background:#fff; }
.ab-brand:hover img{ opacity:1; filter:none; transform:scale(1.05); }

.ab-visit{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); overflow:hidden; }
.ab-visit__body{ padding:36px; }
.ab-visit__body h2{ margin:16px 0 10px; }
.ab-visit__body > p{ margin:0 0 22px; color:#57534a; line-height:1.7; max-width:460px; }
.ab-status{ display:inline-flex; align-items:center; gap:8px; height:28px; padding:0 11px; border-radius:999px; background:var(--v2-muted-bg); color:#57534a; font-size:.78rem; font-weight:600; }
.ab-status i{ width:7px; height:7px; border-radius:999px; background:#a8a395; }
.ab-status.is-open{ background:#e8f3e2; color:#2f5a1f; }
.ab-status.is-open i{ background:#3d9a4a; box-shadow:0 0 0 3px rgba(61,154,74,.18); }
.ab-visit__list{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:14px; }
.ab-visit__list li{ display:flex; align-items:center; gap:12px; color:var(--v2-fg); font-size:.94rem; font-weight:500; }
.ab-visit__list small{ display:block; color:var(--v2-muted); font-size:.76rem; font-weight:400; }
.ab-visit__list a{ color:var(--v2-fg); }
.ab-visit__list a:hover{ color:var(--v2-primary); }
.ab-visit__map{ min-height:420px; background:var(--v2-muted-bg); border-left:1px solid var(--v2-border); }
.ab-visit__map iframe{ display:block; width:100%; height:100%; filter:saturate(.8) sepia(.06); }

.ab-dealer{ display:flex; align-items:center; gap:18px; margin-top:16px; padding:20px 24px; border-radius:14px; background:#2f3a1f; color:rgba(255,255,255,.76); }
.ab-dealer .v2-tile__icon{ background:rgba(201,214,163,.16); color:#c9d6a3; }
.ab-dealer__text{ flex:1; min-width:0; }
.ab-dealer h3{ margin:0 0 3px; color:#fff; font:650 1.02rem 'Inter', sans-serif; }
.ab-dealer p{ margin:0; font-size:.88rem; line-height:1.55; }
.ab-dealer__btn{ background:#fff; color:#2f3a1f; flex:0 0 auto; }
.ab-dealer__btn:hover{ background:#eef3e3; }

.ab-modal{ background:rgba(31,30,26,.45); backdrop-filter:blur(4px); -webkit-backdrop-filter:blur(4px); }
.ab-modal .modal{ max-width:560px; padding:0; border:1px solid var(--v2-border); border-radius:18px; background:var(--v2-surface); box-shadow:0 30px 80px -24px rgba(31,30,26,.45); font-family:'Inter', sans-serif; }
.ab-modal__head{ display:flex; align-items:flex-start; justify-content:space-between; gap:12px; padding:22px 24px 16px; border-bottom:1px solid var(--v2-border); }
.ab-modal__head h3{ margin:0 0 4px; font:700 1.15rem 'Inter', sans-serif; color:var(--v2-fg); }
.ab-modal__head p{ margin:0; color:var(--v2-muted); font-size:.88rem; }
.ab-modal__close{ width:36px; height:36px; flex:0 0 36px; display:inline-flex; align-items:center; justify-content:center; border:1px solid var(--v2-border); border-radius:10px; background:var(--v2-card); color:#57534a; cursor:pointer; }
.ab-modal__close:hover{ background:var(--v2-muted-bg); }
.ab-modal .dealer-form__generic-error{ margin:16px 24px 0; }
.ab-modal__success{ display:flex; align-items:center; gap:12px; margin:20px 24px 24px; padding:14px; border-radius:12px; background:#f3f8ec; border:1px solid #d5e5bf; color:#30451a; }
.ab-modal__success[hidden]{ display:none; }
.ab-modal__success p{ margin:0; }
.ab-form{ display:flex; flex-direction:column; gap:14px; padding:20px 24px 24px; }
.ab-form[hidden]{ display:none; }
.ab-form__grid{ display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.ab-field{ display:flex; flex-direction:column; gap:6px; }
.ab-modal .ab-field label{ display:flex; justify-content:space-between; font:500 .85rem 'Inter', sans-serif; color:var(--v2-fg); }
.ab-modal .ab-field .ab-input::placeholder{ color:#a8a395; }
.ab-modal .dealer-form__generic-error{ border:1px solid #fecaca; background:#fef2f2; color:#991b1b; border-radius:10px; font-family:'Inter', sans-serif; }
.ab-modal .modal{ transform:translateY(12px) scale(.98); transition:transform .3s cubic-bezier(.16,1,.3,1); }
.ab-modal.is-open .modal{ transform:none; }
.ab-modal .modal::-webkit-scrollbar{ width:6px; }
.ab-modal .modal::-webkit-scrollbar-thumb{ background:var(--v2-border-strong); border-radius:999px; }
.ab-modal .ab-field label em{ font-style:normal; font-weight:400; font-size:.76rem; color:#a8a395; }
.ab-modal .ab-field .ab-input{ width:100%; height:42px; padding:0 12px; box-sizing:border-box; border:1px solid var(--v2-border); border-radius:9px; box-shadow:var(--v2-shadow-sm); background:var(--v2-card); color:var(--v2-fg); font:400 .93rem 'Inter', sans-serif; outline:0; transition:border-color .15s, box-shadow .15s; }
.ab-modal .ab-field .ab-input:focus{ border-color:var(--v2-primary); box-shadow:0 0 0 3px var(--v2-ring); }
.ab-modal .ab-field .ab-textarea{ height:auto; min-height:84px; padding:10px 12px; resize:vertical; line-height:1.55; }
.ab-modal .ab-field.has-error .ab-input{ border-color:#dc2626; box-shadow:0 0 0 3px rgba(220,38,38,.12); }
.ab-field .form-error{ color:#b91c1c; font-size:.78rem; }
.ab-field .form-error:empty{ display:none; }
.ab-form__submit{ align-self:flex-end; height:44px; padding:0 22px; }

@media (max-width: 1080px){
    .ab-stats{ grid-auto-flow:row; grid-template-columns:repeat(2, minmax(0,1fr)); }
    .ab-stat:nth-child(3){ border-left:0; }
    .ab-stat:nth-child(n+3){ border-top:1px solid var(--v2-muted-bg); }
    .ab-why{ grid-template-columns:minmax(0,1fr); }
    .ab-brands{ grid-template-columns:repeat(4, minmax(0,1fr)); }
    .ab-steps{ grid-template-columns:repeat(2, minmax(0,1fr)); }
    .ab-step:nth-child(3){ border-left:0; }
    .ab-step:nth-child(n+3){ border-top:1px solid var(--v2-muted-bg); }
}
@media (max-width: 860px){
    .ab-story{ grid-template-columns:minmax(0,1fr); gap:24px; }
    .ab-visit{ grid-template-columns:minmax(0,1fr); }
    .ab-visit__map{ min-height:260px; border-left:0; border-top:1px solid var(--v2-border); }
}
@media (max-width: 760px){
    .ab-stats-wrap{ margin-top:-48px; }
    .ab-stats{ padding:2px; }
    .ab-stat{ flex-direction:column; align-items:flex-start; gap:10px; padding:14px; }
    .ab-stat .v2-tile__icon{ width:32px; height:32px; flex-basis:32px; font-size:.85rem; }
    .ab-stat strong{ font-size:1.4rem; flex-wrap:wrap; }
    .ab-section{ margin-top:56px; }
    .ab-why__intro{ padding:24px; }
    .ab-why__grid{ grid-template-columns:minmax(0,1fr); gap:10px; }
    .ab-value{ padding:15px; }
    .ab-steps{ grid-template-columns:minmax(0,1fr); }
    .ab-step + .ab-step{ border-left:0; border-top:1px solid var(--v2-muted-bg); }
    .ab-brands{ grid-template-columns:repeat(3, minmax(0,1fr)); }
    .ab-brand{ height:84px; padding:12px; }
    .ab-brand img{ transform:scale(.82); }
    .ab-head--row{ flex-direction:column; align-items:flex-start; }
    .ab-visit__body{ padding:22px; }
    .ab-dealer{ flex-direction:column; align-items:flex-start; padding:20px; }
    .ab-dealer__btn{ width:100%; }
    .ab-form__grid{ grid-template-columns:minmax(0,1fr); }
    .ab-form__submit{ width:100%; }
}
@media (prefers-reduced-motion: reduce){ .ab *{ transition:none !important; } }
.ab-modal .form-row{ margin:0; gap:6px; }
