/* =========================================================================
   AutoDrive landing page (product-led v2 design)
   Loaded only on / via ad_header() $extraHead. All classes prefixed `adlp-`
   to avoid collisions with the shared `ad-*` namespace in autodrive.css.
   ========================================================================= */

.adlp {
    /* Tokens scoped to landing page (extend autodrive.css --ad-* vars). */
    --adlp-cream-soft:  #FAF6EE;
    --adlp-slate-deep:  #2D2D32;
    --adlp-orange-soft: rgba(242,163,51,0.12);
    --adlp-text:        #38383D;
    --adlp-text-muted:  #6E6E78;
    --adlp-text-faint:  #9E9EA8;
    --adlp-border:      rgba(0,0,0,0.08);
    --adlp-border-strong: rgba(0,0,0,0.14);
    --adlp-shadow-sm: 0 1px 3px rgba(0,0,0,0.06), 0 1px 2px rgba(0,0,0,0.04);
    --adlp-shadow-md: 0 14px 32px rgba(0,0,0,0.10), 0 4px 8px rgba(0,0,0,0.05);
    --adlp-shadow-lg: 0 28px 72px rgba(0,0,0,0.14), 0 6px 14px rgba(0,0,0,0.06);
    --adlp-radius:    14px;
    --adlp-radius-lg: 22px;
    --adlp-radius-xl: 32px;
    --adlp-radius-full: 999px;
    --adlp-ease: 0.22s cubic-bezier(0.4,0,0.2,1);
    --adlp-max:  1200px;
    --adlp-pad:  clamp(16px, 4vw, 40px);
    --adlp-font-display: "Inter", -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", Roboto, sans-serif;
}

.adlp {
    background: var(--ad-cream, #F5F0E6); color: var(--adlp-text);
    /* autodrive.css's body stack uses "SF Pro Text" (wider for UI copy).
       The landing page needs the tighter "SF Pro Display" face so display
       headings track the same widths we used in the mockups. */
    font-family: -apple-system, BlinkMacSystemFont, "SF Pro Display",
                 "Inter", "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
}
.adlp h1, .adlp h2, .adlp h3, .adlp h4 {
    margin: 0; color: var(--ad-text-dark, #2D2D32);
    letter-spacing: -0.02em; line-height: 1.1;
    font-family: inherit;
}
.adlp p { margin: 0; }
.adlp a { color: inherit; text-decoration: none; }
.adlp img { display: block; max-width: 100%; }

/* ---------- landing-page top nav ---------- */
.adlp-nav {
    position: sticky; top: 0; z-index: 40;
    backdrop-filter: saturate(160%) blur(14px);
    -webkit-backdrop-filter: saturate(160%) blur(14px);
    background: rgba(245, 240, 230, 0.82);
    border-bottom: 1px solid rgba(0,0,0,0.06);
}
.adlp-nav-inner {
    display: flex; align-items: center; justify-content: space-between;
    height: 68px; gap: 24px;
}
.adlp-nav-brand { display: flex; align-items: center; gap: 10px; font-weight: 700; color: var(--ad-text-dark, #2D2D32); }
.adlp-nav-brand img { height: 28px; width: auto; }
.adlp-nav-links { display: flex; gap: 6px; align-items: center; }
.adlp-nav-links a {
    font-size: 15px; font-weight: 500; color: var(--adlp-text); opacity: 0.85;
    padding: 8px 14px; border-radius: var(--adlp-radius-full);
    transition: background-color var(--adlp-ease), opacity var(--adlp-ease), color var(--adlp-ease);
}
.adlp-nav-links a:hover { opacity: 1; background: rgba(0,0,0,0.06); }
.adlp-nav-links a.active { opacity: 1; background: rgba(0,0,0,0.08); color: var(--adlp-slate-deep); font-weight: 600; }
.adlp-nav-cta,
.adlp-nav-cta:visited,
.adlp-nav-cta:hover,
.adlp-nav-cta:focus,
.adlp-nav-cta:active { color: #fff; }
.adlp-nav-cta {
    display: inline-flex; align-items: center; gap: 6px;
    padding: 10px 18px; border-radius: var(--adlp-radius-full);
    background: var(--ad-orange, #F2A333); font-weight: 600; font-size: 14px;
    box-shadow: 0 6px 14px rgba(242,163,51,0.35);
    transition: transform var(--adlp-ease), box-shadow var(--adlp-ease);
}
.adlp-nav-cta:hover { transform: translateY(-1px); box-shadow: 0 10px 22px rgba(242,163,51,0.45); }
.adlp-nav-cta i { width: 16px; height: 16px; }
.adlp-nav-toggle {
    display: none; background: transparent; border: 0; padding: 8px;
    color: var(--ad-text-dark, #2D2D32);
}
@media (max-width: 960px) {
    .adlp-nav-links {
        display: none; position: absolute; top: 68px; left: 0; right: 0;
        flex-direction: column; padding: 16px var(--adlp-pad);
        background: rgba(245,240,230,0.96); backdrop-filter: blur(14px);
        gap: 16px; border-bottom: 1px solid rgba(0,0,0,0.08);
    }
    .adlp-nav-links.open { display: flex; }
    .adlp-nav-toggle { display: inline-flex; }
    .adlp-nav-cta { padding: 8px 14px; font-size: 13px; }
}

/* ---------- wrapper + section spacing ---------- */
.adlp-wrap { max-width: var(--adlp-max); margin: 0 auto; padding: 0 var(--adlp-pad); }
.adlp-section { padding: clamp(56px, 9vw, 112px) 0; }
.adlp-section-head { max-width: 720px; margin: 0 auto 48px; text-align: center; }
.adlp-eyebrow {
    display: inline-flex; align-items: center; gap: 8px;
    padding: 6px 14px; border-radius: var(--adlp-radius-full);
    background: var(--adlp-orange-soft); color: var(--ad-orange-dark, #D9851A);
    font-size: 13px; font-weight: 600; letter-spacing: 0.02em;
    margin-bottom: 18px;
}
.adlp-eyebrow i { width: 14px; height: 14px; }
.adlp-section-head h2 { font-size: clamp(32px, 4.8vw, 52px); font-weight: 700; }
.adlp-section-head p {
    margin-top: 14px; font-size: clamp(16px, 1.6vw, 19px); color: var(--adlp-text-muted);
}

/* ---------- buttons ---------- */
.adlp-btn {
    display: inline-flex; align-items: center; justify-content: center; gap: 8px;
    padding: 14px 22px; border-radius: var(--adlp-radius-full);
    font-weight: 600; font-size: 15px; line-height: 1;
    border: 1px solid transparent;
    transition: transform var(--adlp-ease), box-shadow var(--adlp-ease), background var(--adlp-ease);
    cursor: pointer; white-space: nowrap;
}
.adlp-btn i[data-lucide] { width: 18px; height: 18px; }
.adlp-btn-primary,
a.adlp-btn-primary,
button.adlp-btn-primary,
.adlp-btn-primary:visited,
.adlp-btn-primary:hover,
.adlp-btn-primary:focus,
.adlp-btn-primary:active { color: #fff; }
.adlp-btn-primary {
    background: var(--ad-orange, #F2A333);
    box-shadow: 0 10px 24px rgba(242,163,51,0.35);
}
.adlp-btn-primary:hover {
    background: var(--ad-orange-dark, #D9851A);
    transform: translateY(-2px);
    box-shadow: 0 16px 32px rgba(242,163,51,0.45);
}
.adlp-btn-ghost {
    background: transparent; color: var(--ad-text-dark, #2D2D32);
    border-color: var(--adlp-border-strong);
}
.adlp-btn-ghost:hover { background: rgba(0,0,0,0.04); }
.adlp-btn-wide { width: 100%; }

/* =========================================================================
   HERO
   ========================================================================= */
.adlp-hero {
    position: relative; overflow: hidden;
    padding: 72px 0 96px;
    background:
        radial-gradient(900px 500px at 100% -10%, rgba(242,163,51,0.18), transparent 60%),
        radial-gradient(700px 400px at 0% 100%, rgba(77,192,102,0.12), transparent 60%),
        linear-gradient(180deg, #FAF6EE 0%, #FFFFFF 100%);
}
.adlp-hero-grid {
    display: grid; grid-template-columns: 1.1fr 1fr; gap: 56px; align-items: center;
}
.adlp-hero h1 {
    font-size: clamp(40px, 6vw, 74px);
    font-weight: 700; letter-spacing: -0.03em; line-height: 1.02;
}
.adlp-hero h1 .accent {
    background: linear-gradient(135deg, var(--ad-orange, #F2A333) 0%, var(--ad-orange-dark, #D9851A) 100%);
    -webkit-background-clip: text; background-clip: text; color: transparent;
}
.adlp-hero-sub {
    margin-top: 20px; font-size: clamp(17px, 1.8vw, 20px);
    color: var(--adlp-text-muted); max-width: 540px;
}
.adlp-hero-actions { display: flex; gap: 14px; margin-top: 32px; flex-wrap: wrap; }
.adlp-hero-trust {
    margin-top: 36px; display: flex; align-items: center; gap: 20px;
    color: var(--adlp-text-muted); font-size: 14px; flex-wrap: wrap;
}
.adlp-hero-trust .stars { color: var(--ad-orange, #F2A333); letter-spacing: 2px; }
.adlp-hero-trust .strong { color: var(--ad-text-dark, #2D2D32); font-weight: 700; }
.adlp-hero-trust .dot { width: 4px; height: 4px; border-radius: 50%; background: var(--adlp-text-faint); }

.adlp-hero-phoneWrap {
    position: relative; display: flex; justify-content: center; align-items: center;
    min-height: 620px;
}
/* phone frame — base styles first so hero-phone-2's absolute positioning wins */
.adlp-phone {
    position: relative;
    width: 280px; height: 570px;
    border-radius: 44px;
    background: linear-gradient(145deg, #1c1c21 0%, #38383d 100%);
    padding: 12px;
    box-shadow:
        0 40px 100px rgba(0,0,0,0.28),
        0 10px 24px rgba(0,0,0,0.18),
        inset 0 0 0 2px rgba(255,255,255,0.08);
}
.adlp-hero-phone    { transform: rotate(-6deg); filter: drop-shadow(0 50px 90px rgba(45,45,50,0.25)); }
.adlp-hero-phone-2  {
    position: absolute; right: 6%; top: 6%;
    transform: rotate(8deg) scale(0.85); opacity: 0.96;
    filter: drop-shadow(0 40px 80px rgba(45,45,50,0.2));
}
.adlp-phone-screen {
    width: 100%; height: 100%;
    border-radius: 32px;
    background: linear-gradient(160deg, #cfe4f4 0%, #e8e0d1 100%);
    overflow: hidden; position: relative;
}
.adlp-phone-shot {
    position: absolute; inset: 0;
    width: 100%; height: 100%;
    object-fit: cover; object-position: top center;
}

/* floating stats chips */
.adlp-chip {
    position: absolute; background: #fff; border-radius: 16px; padding: 12px 16px;
    box-shadow: var(--adlp-shadow-md);
    display: flex; gap: 10px; align-items: center;
    font-size: 13px; font-weight: 600; color: var(--ad-text-dark, #2D2D32);
    white-space: nowrap;
    animation: adlp-float 5s ease-in-out infinite;
    z-index: 5;
}
.adlp-chip i {
    width: 22px; height: 22px; padding: 6px; border-radius: 10px;
    background: var(--adlp-orange-soft); color: var(--ad-orange-dark, #D9851A);
}
.adlp-chip-a { top: 4%;    left: 2%;   transform: rotate(-4deg); animation-delay: 0s;   animation-duration: 5.2s; }
.adlp-chip-b { bottom: 8%; left: 6%;   transform: rotate(3deg);  animation-delay: 1.4s; animation-duration: 4.6s; }
.adlp-chip-c { top: 34%;   right: 2%;  transform: rotate(5deg);  animation-delay: 2.3s; animation-duration: 5.4s; }
.adlp-chip-d { top: 62%;   left: -2%;  transform: rotate(-6deg); animation-delay: 0.8s; animation-duration: 4.8s; }
.adlp-chip-e { top: 8%;    right: 8%;  transform: rotate(4deg);  animation-delay: 1.9s; animation-duration: 5.0s; }
.adlp-chip-f { bottom: 14%; right: 4%; transform: rotate(-3deg); animation-delay: 2.8s; animation-duration: 4.4s; }
.adlp-chip-g { top: 36%;   left: -4%;  transform: rotate(-3deg); animation-delay: 3.4s; animation-duration: 5.6s; }

@keyframes adlp-float {
    0%   { translate: 0 0; }
    50%  { translate: 0 -18px; }
    100% { translate: 0 0; }
}

@media (max-width: 960px) {
    .adlp-hero-grid { grid-template-columns: 1fr; gap: 24px; }
    .adlp-hero-phoneWrap { min-height: 520px; }
    .adlp-hero-phone-2 { display: none; }
    .adlp-chip-a { left: 0; }
    .adlp-chip-b { left: 4%; }
    .adlp-chip-c { right: 2%; }
    .adlp-chip-d, .adlp-chip-e, .adlp-chip-f, .adlp-chip-g { display: none; }
}

/* =========================================================================
   HOW IT WORKS — 4-card filmstrip
   ========================================================================= */
.adlp-how { background: #fff; }
.adlp-filmstrip {
    display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px;
    padding: 12px 0 8px;
}
.adlp-film-card {
    background: var(--adlp-cream-soft); border-radius: var(--adlp-radius-lg);
    padding: 28px 24px; border: 1px solid var(--adlp-border);
    position: relative; overflow: hidden;
    transition: transform var(--adlp-ease), box-shadow var(--adlp-ease);
}
.adlp-film-card:hover { transform: translateY(-4px); box-shadow: var(--adlp-shadow-md); }
.adlp-film-card .num {
    position: absolute; top: 20px; right: 24px;
    font-size: 64px; font-weight: 800; color: rgba(242,163,51,0.18); line-height: 1;
    font-family: var(--adlp-font-display);
}
.adlp-film-card h4 { font-size: 20px; font-weight: 700; margin-bottom: 10px; }
.adlp-film-card p { color: var(--adlp-text-muted); font-size: 15px; }
.adlp-film-icon {
    width: 56px; height: 56px; border-radius: 16px;
    display: inline-flex; align-items: center; justify-content: center;
    background: var(--ad-orange, #F2A333); color: #fff; margin-bottom: 18px;
}
.adlp-film-icon i { width: 28px; height: 28px; }

@media (max-width: 960px) {
    .adlp-filmstrip {
        display: flex; grid-template-columns: none;
        overflow-x: auto; padding-bottom: 24px;
        scroll-snap-type: x mandatory;
    }
    .adlp-film-card { flex: 0 0 280px; scroll-snap-align: start; }
    .adlp-filmstrip::-webkit-scrollbar { height: 6px; }
    .adlp-filmstrip::-webkit-scrollbar-thumb { background: var(--adlp-border-strong); border-radius: 3px; }
}

/* =========================================================================
   FEATURES — bento grid
   ========================================================================= */
.adlp-features { background: var(--ad-cream, #F5F0E6); }
.adlp-bento {
    display: grid; grid-template-columns: repeat(6, 1fr); gap: 20px;
}
.adlp-bento .cell {
    background: #fff; border-radius: var(--adlp-radius-lg);
    padding: 28px; border: 1px solid var(--adlp-border);
    transition: transform var(--adlp-ease), box-shadow var(--adlp-ease);
    position: relative; overflow: hidden;
    min-height: 200px;
    display: flex; flex-direction: column;
}
.adlp-bento .cell:hover { transform: translateY(-4px); box-shadow: var(--adlp-shadow-md); }
.adlp-bento .cell h3 { font-size: 18px; font-weight: 700; margin-bottom: 8px; }
.adlp-bento .cell p { color: var(--adlp-text-muted); font-size: 14.5px; line-height: 1.55; }
.adlp-bento .cell .icon {
    width: 40px; height: 40px; border-radius: 12px;
    display: inline-flex; align-items: center; justify-content: center;
    background: var(--adlp-orange-soft); color: var(--ad-orange-dark, #D9851A);
    margin-bottom: 18px; flex-shrink: 0;
}
.adlp-bento .cell .icon i { width: 20px; height: 20px; }
.adlp-bento .cell.hero-cell {
    grid-column: span 3; grid-row: span 2;
    background: linear-gradient(140deg, #2D2D32 0%, #535c69 100%);
    color: #fff; padding: 36px;
    justify-content: flex-end;
}
.adlp-bento .cell.hero-cell h3 { color: #fff; font-size: 24px; }
.adlp-bento .cell.hero-cell p  { color: rgba(255,255,255,0.78); font-size: 15.5px; }
.adlp-bento .cell.hero-cell .icon {
    background: rgba(255,255,255,0.14); color: #fff;
    position: absolute; top: 28px; right: 28px; margin-bottom: 0;
}
.adlp-bento .cell.row-right { grid-column: span 3; }
.adlp-bento .cell.third     { grid-column: span 2; }
.adlp-bento .map-preview {
    position: absolute; inset: 0;
    background: radial-gradient(400px 200px at 20% 20%, rgba(242,163,51,0.2), transparent 70%);
    pointer-events: none;
}
.adlp-bento .map-preview svg { position: absolute; inset: 0; width: 100%; height: 100%; opacity: 0.55; }

@media (max-width: 960px) {
    .adlp-bento { grid-template-columns: repeat(2, 1fr); }
    .adlp-bento .cell.hero-cell { grid-column: span 2; grid-row: span 1; min-height: 260px; }
    .adlp-bento .cell.row-right { grid-column: span 2; }
    .adlp-bento .cell.third     { grid-column: span 1; }
}
@media (max-width: 560px) {
    .adlp-bento { grid-template-columns: 1fr; }
    .adlp-bento .cell.hero-cell,
    .adlp-bento .cell.row-right,
    .adlp-bento .cell.third { grid-column: span 1; }
}

/* =========================================================================
   PRICING
   ========================================================================= */
.adlp-pricing { background: var(--adlp-cream-soft); }
.adlp-pricing-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; align-items: stretch; }
.adlp-pricing-card {
    background: #fff; border-radius: var(--adlp-radius-lg);
    padding: 36px 32px; border: 1px solid var(--adlp-border);
    position: relative; transition: transform var(--adlp-ease), box-shadow var(--adlp-ease);
    display: flex; flex-direction: column;
}
.adlp-pricing-card:hover { transform: translateY(-4px); box-shadow: var(--adlp-shadow-md); }
.adlp-pricing-card.pop {
    background: linear-gradient(160deg, #fff 0%, #FDF6EA 100%);
    border: 2px solid var(--ad-orange, #F2A333);
    box-shadow: 0 24px 50px rgba(242,163,51,0.18);
    transform: scale(1.03);
}
.adlp-pricing-card.pop:hover { transform: scale(1.03) translateY(-4px); }
.adlp-pricing-badge {
    position: absolute; top: -14px; left: 50%; transform: translateX(-50%);
    background: var(--ad-orange, #F2A333); color: #fff; padding: 6px 14px;
    border-radius: 999px; font-size: 12px; font-weight: 700;
    letter-spacing: 0.06em; text-transform: uppercase;
    box-shadow: 0 8px 20px rgba(242,163,51,0.45);
}
.adlp-pricing-card h3 { font-size: 22px; font-weight: 700; }
.adlp-pricing-amt { margin: 18px 0 6px; display: flex; align-items: baseline; gap: 6px; flex-wrap: wrap; }
.adlp-pricing-amt .num { font-size: 54px; font-weight: 800; color: var(--ad-text-dark, #2D2D32); letter-spacing: -0.03em; line-height: 1; }
.adlp-pricing-amt .num--pending { font-size: 26px; color: var(--adlp-text-muted); font-weight: 700; }
.adlp-pricing-amt .per { color: var(--adlp-text-muted); font-size: 15px; }
.adlp-pricing-tag { color: var(--adlp-text-muted); font-size: 14px; margin-bottom: 20px; }
.adlp-pricing-feats { list-style: none; padding: 0; margin: 0 0 28px; flex: 1; }
.adlp-pricing-feats li {
    display: flex; gap: 10px; align-items: flex-start; padding: 8px 0;
    color: var(--adlp-text); font-size: 15px;
}
.adlp-pricing-feats li i { width: 18px; height: 18px; color: var(--ad-green, #4DC066); margin-top: 2px; flex-shrink: 0; }
.adlp-pricing-feats li.mute   { color: var(--adlp-text-faint); }
.adlp-pricing-feats li.mute i { color: var(--adlp-text-faint); }
.adlp-pricing-footnote { display: block; margin-top: 10px; font-size: 12px; color: var(--adlp-text-muted); text-align: center; }

.adlp-pricing-compare {
    text-align: center; margin-top: 28px;
}
.adlp-pricing-compare .linkbtn {
    display: inline-flex; align-items: center; gap: 8px; color: var(--ad-orange-dark, #D9851A);
    font-weight: 600; font-size: 15px; background: transparent; border: 0;
    padding: 8px 12px; cursor: pointer; border-bottom: 2px solid transparent;
    transition: border-color var(--adlp-ease);
}
.adlp-pricing-compare .linkbtn:hover { border-color: var(--ad-orange-dark, #D9851A); }
.adlp-pricing-compare .linkbtn i { width: 16px; height: 16px; }
/* Two-class selector so this wins the specificity fight against
   `.adlp p { margin: 0 }` — otherwise the auto side-margins get
   wiped and the 640px block sits flush-left instead of centered. */
.adlp p.adlp-pricing-fineprint { max-width: 640px; margin: 14px auto 0; text-align: center; font-size: 13px; color: var(--adlp-text-muted); }

/* pricing banners */
.adlp-pricing-banner {
    display: flex; align-items: center; gap: 10px;
    background: rgba(230,71,61,0.08); color: var(--ad-red, #E6473D);
    border: 1px solid rgba(230,71,61,0.25);
    border-radius: var(--adlp-radius); padding: 14px 18px;
    margin-bottom: 24px; font-size: 14px; font-weight: 500;
}
.adlp-pricing-banner--info {
    background: rgba(51,133,224,0.08); color: var(--ad-blue, #3385E0);
    border-color: rgba(51,133,224,0.25);
}
.adlp-pricing-banner i { width: 18px; height: 18px; flex-shrink: 0; }

@media (max-width: 960px) {
    .adlp-pricing-grid { grid-template-columns: 1fr; }
    .adlp-pricing-card.pop { transform: none; }
}

/* comparison modal — reuses the existing site's modal chrome but namespaced */
.adlp-modal { position: fixed; inset: 0; z-index: 1000; display: flex; align-items: center; justify-content: center; padding: 24px; }
.adlp-modal[hidden] { display: none; }
.adlp-modal-backdrop { position: absolute; inset: 0; background: rgba(0,0,0,0.5); backdrop-filter: blur(4px); }
.adlp-modal-card {
    position: relative; background: #fff; border-radius: var(--adlp-radius-lg);
    max-width: 860px; width: 100%; max-height: 90vh; overflow: hidden;
    box-shadow: var(--adlp-shadow-lg); padding: 32px;
    display: flex; flex-direction: column;
}
.adlp-modal-close {
    position: absolute; top: 16px; right: 16px; background: transparent; border: 0;
    font-size: 28px; color: var(--adlp-text-muted); cursor: pointer; line-height: 1;
}
.adlp-modal h3 { font-size: 22px; margin-bottom: 18px; padding-right: 32px; }
.adlp-pricing-compare-scroll { overflow: auto; flex: 1; }
.adlp-pricing-table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    font-size: 14px;
    border: 1px solid var(--adlp-border);
    border-radius: 8px;
    overflow: hidden;
}
.adlp-pricing-table th,
.adlp-pricing-table td {
    padding: 12px 16px;
    text-align: center;
    border-bottom: 1px solid var(--adlp-border);
    border-right: 1px solid var(--adlp-border);
}
/* Drop the trailing edges so the table's outer 1px border isn't
   doubled up on the right column / last row. */
.adlp-pricing-table th:last-child,
.adlp-pricing-table td:last-child { border-right: none; }
.adlp-pricing-table tbody tr:last-child td { border-bottom: none; }
/* Header row — solid cream fill, heavier divider underneath so the
   header reads as a distinct band from the body rows. */
.adlp-pricing-table thead th {
    font-weight: 700;
    color: var(--ad-text-dark, #2D2D32);
    background: var(--adlp-cream-soft);
    border-bottom: 2px solid var(--adlp-border);
    text-transform: uppercase;
    letter-spacing: 0.04em;
    font-size: 12px;
}
/* Feature-name column: left-aligned, slightly tinted so it reads as
   a row header instead of just the first data cell. */
.adlp-pricing-table td:first-child,
.adlp-pricing-table th:first-child {
    text-align: left;
    font-weight: 600;
    background: var(--adlp-cream-soft);
}
/* Zebra striping on the data columns — lifts row scanning without
   competing with the row-header column's fill. */
.adlp-pricing-table tbody tr:nth-child(even) td:not(:first-child) {
    background: rgba(0, 0, 0, 0.015);
}
/* Soft accent on the Fleet column so the most-featured plan reads
   as the recommended endpoint of the comparison. Targets the last
   column of every row (header + body). */
.adlp-pricing-table thead th:last-child,
.adlp-pricing-table tbody td:last-child {
    background: rgba(242, 163, 51, 0.06);
}
.adlp-pricing-table thead th:last-child {
    color: var(--ad-orange, #F2A333);
    background: rgba(242, 163, 51, 0.14);
}
/* Check / dash glyphs — orange check for "yes", muted dash for "no". */
.adlp-cell-yes { color: var(--ad-orange, #F2A333); font-weight: 700; font-size: 16px; }
.adlp-cell-no  { color: var(--adlp-text-muted, #6E6E78); }

/* =========================================================================
   TESTIMONIALS
   ========================================================================= */
.adlp-testimonials { background: var(--ad-cream, #F5F0E6); }
.adlp-testi-grid { column-count: 2; column-gap: 24px; }
.adlp-testi {
    break-inside: avoid; margin-bottom: 24px;
    background: #fff; border-radius: var(--adlp-radius-lg);
    padding: 28px; border: 1px solid var(--adlp-border);
    transition: transform var(--adlp-ease), box-shadow var(--adlp-ease);
}
.adlp-testi:hover { transform: translateY(-3px); box-shadow: var(--adlp-shadow-md); }
.adlp-testi .stars { color: var(--ad-orange, #F2A333); letter-spacing: 2px; font-size: 15px; }
.adlp-testi .quote { font-size: 16px; line-height: 1.6; margin: 14px 0 20px; color: var(--adlp-text); }
.adlp-testi .author { display: flex; gap: 12px; align-items: center; }
.adlp-testi .avatar {
    width: 42px; height: 42px; border-radius: 50%;
    background: linear-gradient(135deg, var(--ad-orange, #F2A333), var(--ad-orange-dark, #D9851A));
    color: #fff; display: inline-flex; align-items: center; justify-content: center;
    font-weight: 700; font-size: 14px;
}
.adlp-testi .name { font-weight: 600; color: var(--ad-text-dark, #2D2D32); font-size: 15px; }
.adlp-testi .role { font-size: 13px; color: var(--adlp-text-muted); }

@media (max-width: 760px) { .adlp-testi-grid { column-count: 1; } }

/* =========================================================================
   PLATFORMS / DOWNLOAD — dark card
   ========================================================================= */
.adlp-download { padding: 0 0 clamp(48px, 7vw, 80px); }
.adlp-plat {
    background: linear-gradient(160deg, #2D2D32 0%, #535c69 100%);
    color: #fff; border-radius: var(--adlp-radius-xl);
    padding: 72px 48px; margin: 0 var(--adlp-pad);
    position: relative; overflow: hidden;
}
.adlp-plat::before {
    content: ""; position: absolute; inset: 0;
    background: radial-gradient(600px 300px at 80% 20%, rgba(242,163,51,0.18), transparent 70%);
}
.adlp-plat-inner { max-width: var(--adlp-max); margin: 0 auto; position: relative; z-index: 2; text-align: center; }
.adlp-plat h2 { color: #fff; font-size: clamp(32px, 4.4vw, 48px); margin-bottom: 16px; }
.adlp-plat p {
    color: rgba(255,255,255,0.75); margin-bottom: 32px; max-width: 580px;
    margin-left: auto; margin-right: auto;
}
.adlp-plat .adlp-eyebrow { background: rgba(255,255,255,0.12); color: #fff; }
.adlp-plat-tiles { display: flex; justify-content: center; gap: 18px; flex-wrap: wrap; }
.adlp-plat-tile {
    background: rgba(255,255,255,0.06);
    border: 1px solid rgba(255,255,255,0.12);
    border-radius: var(--adlp-radius-lg);
    padding: 24px 28px; min-width: 200px;
    transition: all var(--adlp-ease);
    display: flex; flex-direction: column; align-items: center; text-align: center;
}
.adlp-plat-tile:hover {
    background: rgba(255,255,255,0.1);
    border-color: var(--ad-orange, #F2A333);
    transform: translateY(-3px);
}
.adlp-plat-tile i { width: 36px; height: 36px; margin-bottom: 14px; color: var(--ad-orange, #F2A333); }
.adlp-plat-tile .label { font-size: 11px; opacity: 0.7; text-transform: uppercase; letter-spacing: 0.08em; }
.adlp-plat-tile strong { display: block; margin-top: 4px; font-size: 18px; font-weight: 600; }

@media (max-width: 760px) {
    .adlp-plat { padding: 56px 24px; margin: 0; border-radius: 0; }
    .adlp-btn { padding: 12px 18px; font-size: 14px; }
}
