/* =========================================================
   صفحهٔ اصلی (طرح جدید) — فقط روی front-page بارگذاری می‌شود.
   همهٔ قواعد زیر .fp یا با پیشوند fp-/hc- هستند تا با بقیهٔ سایت تداخل نکنند.
========================================================= */

.fp{
    --fp-deep:#2e1650;
    --fp-purple:#6a37a6;
    --fp-purple-d:#4a2275;
    --fp-gold:#c9a24f;
    --fp-gold-l:#ecd699;
    --fp-line:#efe6f6;
    --fp-card-shadow:0 12px 36px rgba(88,40,140,.09);
    background:
        radial-gradient(1100px 520px at 85% 14%, rgba(203,170,235,.20), transparent 70%),
        radial-gradient(900px 480px at 8% 48%, rgba(203,170,235,.16), transparent 70%),
        radial-gradient(1000px 520px at 60% 82%, rgba(236,214,153,.14), transparent 70%),
        #faf6fd;
    color:var(--fp-deep);
    overflow-x:clip; /* بنر پایانی روی فوتر می‌نشیند، پس عمودی نباید بریده شود */
}

.fp svg.tl-i{ flex:none; }

.fp-wrap{
    width:100%;
    max-width:1280px;
    margin:0 auto;
    padding:0 20px;
}

/* ---------------- هیرو ---------------- */

.fp-hero{
    position:relative;
    isolation:isolate;
    min-height:620px;
    padding:calc(var(--hdr, 76px) + 44px) 0 104px;
    color:#fff;
    background:#2a1248;
    display:flex;
    align-items:center;
}

.fp-hero-bg{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center;
    z-index:-2;
}

.fp-hero-bg.is-default{ transform:scaleX(-1); }

.fp-hero::before{
    content:"";
    position:absolute;
    inset:0;
    z-index:-1;
    background:linear-gradient(to left,
        rgba(44,18,76,.95) 0%,
        rgba(56,26,94,.88) 28%,
        rgba(74,36,116,.58) 52%,
        rgba(86,44,134,.20) 76%,
        rgba(86,44,134,.03) 100%);
}

.fp-hero-grid{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:44px;
}

.fp-hero-main{ flex:0 1 660px; min-width:0; }

.fp-hero-badge{
    display:inline-flex;
    align-items:center;
    gap:10px;
    padding:9px 20px;
    border-radius:999px;
    background:rgba(255,255,255,.10);
    border:1px solid rgba(255,255,255,.20);
    backdrop-filter:blur(8px);
    font-size:14px;
    color:#f6eefc;
}

.fp-hero-badge svg{ width:22px; height:22px; color:#f2c65a; }

.fp-hero h1{
    margin:22px 0 18px;
    font-size:clamp(34px, 4.4vw, 62px);
    line-height:1.38;
    font-weight:700;
    color:#fff;
    text-shadow:0 4px 22px rgba(20,6,40,.35);
}

.fp-hero h1 span{ display:block; color:#f2c65a; }

.fp-hero-lead{
    max-width:600px;
    font-size:17px;
    line-height:2.1;
    color:rgba(255,255,255,.92);
}

.fp-tiles{
    display:grid;
    grid-template-columns:repeat(var(--n, 4), minmax(0, 1fr));
    gap:16px;
    margin-top:30px;
}

.fp-tile{
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:12px;
    height:118px;
    padding:10px;
    border-radius:20px;
    background:rgba(255,255,255,.97);
    color:var(--fp-deep);
    font-size:15px;
    font-weight:700;
    text-align:center;
    line-height:1.5;
    box-shadow:0 16px 36px rgba(24,8,48,.30);
    transition:transform .25s, box-shadow .25s;
}

.fp-tile svg{ width:40px; height:40px; color:var(--fp-gold); }

.fp-tile:hover{
    transform:translateY(-4px);
    box-shadow:0 22px 44px rgba(24,8,48,.36);
}

/* کارت جستجو */

.fp-search{
    flex:0 0 410px;
    width:410px;
    padding:26px 26px 28px;
    border-radius:26px;
    background:rgba(255,255,255,.96);
    box-shadow:0 26px 60px rgba(24,8,48,.34);
    color:var(--fp-deep);
}

.fp-search-title{
    margin-bottom:18px;
    font-size:19px;
    font-weight:700;
    color:var(--fp-deep);
}

.fp-field{
    position:relative;
    display:block;
    margin-bottom:12px;
}

.fp-field select{
    appearance:none;
    -webkit-appearance:none;
    width:100%;
    height:52px;
    padding:0 46px 0 40px;
    border:1px solid var(--fp-line);
    border-radius:14px;
    background:#fff;
    color:#6b5d82;
    font-family:inherit;
    font-size:14px;
    cursor:pointer;
    box-shadow:0 2px 8px rgba(88,40,140,.04);
    transition:border-color .2s, box-shadow .2s;
}

.fp-field select:hover{ border-color:#dcc9ee; }

.fp-field select:focus-visible{
    outline:none;
    border-color:var(--fp-purple);
    box-shadow:0 0 0 3px rgba(106,55,166,.18);
}

.fp-field-ico{
    position:absolute;
    inset-inline-start:15px;
    top:50%;
    width:20px;
    height:20px;
    margin-top:-10px;
    color:var(--fp-purple);
    pointer-events:none;
}

.fp-field-chev{
    position:absolute;
    inset-inline-end:14px;
    top:50%;
    width:16px;
    height:16px;
    margin-top:-8px;
    color:#9a8cb0;
    pointer-events:none;
}

.fp-search-btn{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    width:100%;
    height:54px;
    margin-top:6px;
    border:0;
    border-radius:14px;
    background:linear-gradient(180deg,#7d49b2,#5a2d8a);
    color:#fff;
    font-family:inherit;
    font-size:16px;
    font-weight:700;
    cursor:pointer;
    box-shadow:0 12px 26px rgba(90,45,138,.34), inset 0 1px 0 rgba(255,255,255,.22);
    transition:transform .2s, box-shadow .2s;
}

.fp-search-btn svg{ width:20px; height:20px; }

.fp-search-btn:hover{
    transform:translateY(-2px);
    box-shadow:0 16px 30px rgba(90,45,138,.4), inset 0 1px 0 rgba(255,255,255,.22);
}

/* ---------------- نوار آمار ---------------- */

.fp-stats{
    position:relative;
    z-index:3;
    margin-top:-60px;
}

.fp-stats-card{
    list-style:none;
    display:grid;
    grid-template-columns:repeat(var(--n, 6), minmax(0, 1fr));
    padding:22px 8px;
    border-radius:26px;
    background:rgba(255,255,255,.97);
    border:1px solid #f3eaf9;
    box-shadow:0 20px 54px rgba(70,30,110,.15);
}

.fp-stat{
    display:flex;
    align-items:center;
    gap:14px;
    padding:6px 22px;
    border-inline-start:1px solid var(--fp-line);
}

.fp-stat:first-child{ border-inline-start:0; }

.fp-stat svg{ width:36px; height:36px; color:var(--fp-gold); }

.fp-stat-text{ display:flex; flex-direction:column; gap:2px; min-width:0; }

.fp-stat-text strong{
    font-size:26px;
    line-height:1.4;
    font-weight:700;
    color:var(--fp-deep);
}

.fp-stat-text small{
    font-size:12.5px;
    line-height:1.7;
    color:#8a7ea1;
}

.fp-stat-feature .fp-stat-text strong{ font-size:15px; }

/* ---------------- عنوان بخش‌ها ---------------- */

.fp-sec{ padding:72px 0 0; }

.fp-head{ text-align:center; margin-bottom:36px; }

.fp-badge{
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:6px 16px;
    border-radius:999px;
    background:#f8efd9;
    border:1px solid #f0e2bf;
    color:#8a6420;
    font-size:13px;
    font-weight:700;
}

.fp-badge svg{ width:18px; height:18px; color:var(--fp-gold); }

.fp-title{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:24px;
    margin:14px auto 8px;
    font-size:clamp(24px, 3vw, 34px);
    line-height:1.6;
    font-weight:700;
    color:var(--fp-deep);
    text-wrap:balance;
}

.fp-title::before,
.fp-title::after{
    content:"";
    flex:0 1 110px;
    height:2px;
    border-radius:2px;
    background:linear-gradient(to left, var(--fp-gold), rgba(201,162,79,0));
}

.fp-title::after{ transform:scaleX(-1); }

.fp-sub{
    max-width:640px;
    margin:0 auto;
    font-size:15px;
    line-height:2;
    color:#7d6f96;
}

.fp-more{ text-align:center; margin-top:30px; }

.fp-link{
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:11px 22px;
    border-radius:999px;
    border:1px solid #e3d3f1;
    background:#fff;
    color:var(--fp-purple);
    font-weight:700;
    font-size:14px;
    transition:border-color .2s, transform .2s;
}

.fp-link svg{ width:18px; height:18px; }
.fp-link:hover{ border-color:var(--fp-purple); transform:translateY(-2px); }

/* ---------------- کارت تالار ---------------- */

.fp-grid{
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
    gap:26px;
}

.fp-grid > .hc{ flex:0 0 calc((100% - 52px) / 3); max-width:calc((100% - 52px) / 3); }

.hc{
    display:flex;
    flex-direction:column;
    background:#fff;
    border:1px solid #f1e8f8;
    border-radius:22px;
    box-shadow:var(--fp-card-shadow, 0 12px 36px rgba(88,40,140,.09));
    transition:transform .25s, box-shadow .25s;
}

.hc:hover{
    transform:translateY(-4px);
    box-shadow:0 20px 44px rgba(88,40,140,.15);
}

.hc-thumb{
    position:relative;
    display:block;
    margin:10px 10px 0;
    border-radius:16px;
    overflow:hidden;
    background:linear-gradient(135deg,#efe6f7,#f8f1fb);
    aspect-ratio:16 / 10;
}

.hc-compact .hc-thumb{ aspect-ratio:16 / 8.4; }

.hc-thumb img{
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .5s;
}

.hc:hover .hc-thumb img{ transform:scale(1.04); }

.hc-thumb-empty{
    position:absolute;
    inset:0;
    display:flex;
    align-items:center;
    justify-content:center;
    color:#c9b5e0;
}

.hc-thumb-empty svg{ width:54px; height:54px; }

.hc-badge{
    position:absolute;
    inset-block-start:12px;
    inset-inline-start:12px;
    display:inline-flex;
    align-items:center;
    gap:6px;
    padding:6px 12px;
    border-radius:999px;
    background:rgba(250,238,206,.96);
    color:#7a5518;
    font-size:12px;
    font-weight:700;
    box-shadow:0 4px 12px rgba(60,30,100,.18);
}

.hc-badge svg{ width:16px; height:16px; color:#c9962f; }

.hc-discount{
    position:absolute;
    inset-block-start:12px;
    inset-inline-end:12px;
    padding:6px 12px;
    border-radius:999px;
    background:#e5484d;
    color:#fff;
    font-size:12px;
    font-weight:700;
    box-shadow:0 4px 12px rgba(120,20,30,.25);
}

.hc-body{
    display:flex;
    flex-direction:column;
    flex:1;
    padding:16px 18px 18px;
}

.hc-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:12px;
}

.hc-title{
    font-size:18px;
    line-height:1.7;
    font-weight:700;
    color:var(--fp-deep);
}

.hc-compact .hc-title{ font-size:16px; }

.hc-title a:hover{ color:var(--fp-purple); }

.hc-rating{
    display:inline-flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:flex-end;
    gap:3px 4px;
    flex:none;
    max-width:96px;
    font-size:15px;
    color:var(--fp-deep);
}

.hc-rating svg{ width:17px; height:17px; color:#f0b429; }
.hc-rating strong{ font-weight:700; }
.hc-rating small{ flex-basis:100%; text-align:end; font-size:11.5px; color:#9a8cb0; }

.hc-line{
    display:flex;
    align-items:center;
    gap:8px;
    margin-top:6px;
    font-size:13.5px;
    line-height:1.8;
    color:#7d6f96;
}

.hc-line svg{ width:17px; height:17px; }
.hc-place svg{ color:var(--fp-purple); }
.hc-cap svg{ color:var(--fp-gold); }

.hc-feature .hc-cap{
    margin-top:12px;
    padding-top:12px;
    border-top:1px solid #f1e8f8;
}

.hc-chips{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin:14px 0 4px;
    list-style:none;
}

.hc-chips li{
    padding:5px 14px;
    border-radius:999px;
    background:#f6f0fb;
    color:#5f4d7e;
    font-size:12px;
    line-height:1.8;
}

.hc-btn{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    height:46px;
    margin-top:auto;
    border-radius:12px;
    background:linear-gradient(180deg,#f0dca4,#cfa653);
    color:#3b2506;
    font-size:15px;
    font-weight:700;
    box-shadow:0 8px 18px rgba(201,162,79,.32), inset 0 1px 0 rgba(255,255,255,.55);
    transition:filter .2s, transform .2s;
}

.hc-feature .hc-btn{ margin-top:16px; }
.hc-compact .hc-btn{ height:40px; margin-top:14px; font-size:14px; }

.hc-btn svg{ width:18px; height:18px; }
.hc-btn:hover{ filter:brightness(1.05); transform:translateY(-1px); }

/* ---------------- چرا تالارستان ---------------- */

.fp-why-grid{
    list-style:none;
    display:grid;
    grid-template-columns:repeat(5, minmax(0, 1fr));
    gap:18px;
}

.fp-why-card{
    padding:26px 18px 24px;
    border-radius:22px;
    background:rgba(255,255,255,.88);
    border:1px solid #f1e8f8;
    box-shadow:0 10px 30px rgba(88,40,140,.07);
    text-align:center;
}

.fp-why-card svg{ width:46px; height:46px; margin:0 auto 14px; color:var(--fp-gold); }

.fp-why-card h3{
    margin-bottom:8px;
    font-size:16px;
    font-weight:700;
    color:var(--fp-deep);
}

.fp-why-card p{
    font-size:13.5px;
    line-height:2;
    color:#85789d;
}

/* ---------------- دسته‌بندی‌ها ---------------- */

.fp-cats{
    display:grid;
    grid-template-columns:repeat(var(--n, 4), minmax(0, 1fr));
    gap:22px;
}

.fp-cat{
    position:relative;
    display:block;
    aspect-ratio:1 / 1.02;
    border-radius:22px;
    overflow:hidden;
    background:linear-gradient(160deg,#7b46b5,#3d1a66);
    box-shadow:0 14px 34px rgba(60,26,100,.18);
    transition:transform .25s, box-shadow .25s;
}

.fp-cat:hover{ transform:translateY(-5px); box-shadow:0 22px 44px rgba(60,26,100,.26); }

.fp-cat img{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .6s;
}

.fp-cat:hover img{ transform:scale(1.06); }

.fp-cat-ico{
    position:absolute;
    inset:0 0 70px;
    display:flex;
    align-items:center;
    justify-content:center;
    color:rgba(255,255,255,.55);
}

.fp-cat-ico svg{ width:72px; height:72px; }

.fp-cat-label{
    position:absolute;
    inset-inline:0;
    inset-block-end:0;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    padding:30px 20px 18px;
    background:linear-gradient(to top, rgba(58,22,98,.97) 0%, rgba(74,34,117,.92) 55%, rgba(74,34,117,0) 100%);
    color:#fff;
}

.fp-cat-label strong{ font-size:18px; font-weight:700; }

.fp-cat-go{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:34px;
    height:34px;
    border-radius:50%;
    background:rgba(255,255,255,.16);
    border:1px solid rgba(255,255,255,.5);
    transition:background .2s, color .2s;
}

.fp-cat-go svg{ width:18px; height:18px; }
.fp-cat:hover .fp-cat-go{ background:#fff; color:var(--fp-purple-d); }

/* ---------------- اسلایدر مقالات ---------------- */

.fp-carousel{ position:relative; }

.fp-car-track{
    display:flex;
    gap:22px;
    overflow-x:auto;
    scroll-snap-type:x mandatory;
    scrollbar-width:none;
    padding:6px 4px 20px;
    -webkit-overflow-scrolling:touch;
}

.fp-car-track::-webkit-scrollbar{ display:none; }

.fp-car-track:focus-visible{ outline:2px solid rgba(106,55,166,.4); outline-offset:4px; border-radius:16px; }

.fp-car-item{
    flex:0 0 calc((100% - 44px) / 3);
    scroll-snap-align:start;
    min-width:0;
    display:flex;
}

.fp-car-item .pc{ width:100%; }

.fp-car-btn{
    position:absolute;
    top:36%;
    z-index:2;
    display:flex;
    align-items:center;
    justify-content:center;
    width:46px;
    height:46px;
    border:1px solid #efe6f6;
    border-radius:50%;
    background:#fff;
    color:var(--fp-purple);
    cursor:pointer;
    box-shadow:0 10px 24px rgba(70,30,110,.16);
    transition:transform .2s, opacity .2s;
}

.fp-car-btn svg{ width:20px; height:20px; }
.fp-car-btn:hover{ transform:scale(1.07); }
.fp-car-btn[hidden]{ display:none; }

.fp-car-prev{ inset-inline-start:-20px; }
.fp-car-next{ inset-inline-end:-20px; }

/* ---------------- نظر کاربران ---------------- */

.fp-rev-grid{
    display:grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap:22px;
}

.fp-rev{
    min-width:0;
    display:flex;
    flex-direction:column;
    gap:12px;
    padding:22px 22px 20px;
    border-radius:20px;
    background:#fff;
    border:1px solid #f1e8f8;
    box-shadow:var(--fp-card-shadow);
}

.fp-rev-stars{ display:flex; gap:3px; color:#f0b429; }
.fp-rev-stars svg{ width:18px; height:18px; }

.fp-rev blockquote{ margin:0; }

.fp-rev blockquote p{
    font-size:14.5px;
    line-height:2.1;
    color:#5c4d78;
}

.fp-rev figcaption{
    display:flex;
    align-items:center;
    gap:12px;
    margin-top:auto;
    padding-top:6px;
}

.fp-rev-av{
    display:flex;
    align-items:center;
    justify-content:center;
    width:42px;
    height:42px;
    border-radius:50%;
    background:linear-gradient(135deg,#f0dca4,#cfa653);
    color:#4b3208;
    font-weight:700;
    font-size:17px;
}

.fp-rev-who{ display:flex; flex-direction:column; min-width:0; }
.fp-rev-who strong{ font-size:14px; color:var(--fp-deep); }
.fp-rev-who a{ font-size:12.5px; color:#8a7ea1; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.fp-rev-who a:hover{ color:var(--fp-purple); }

/* ---------------- بنر پایانی ---------------- */

.fp-cta-sec{
    position:relative;
    z-index:3;
    padding-bottom:0;
    margin-bottom:-52px;
}

.fp-cta{
    position:relative;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;
    padding:44px 52px;
    border-radius:30px;
    overflow:hidden;
    color:#fff;
    background:linear-gradient(115deg,#4a2275 0%,#6a37a6 58%,#7f4bb8 100%);
    box-shadow:0 26px 60px rgba(60,26,100,.34);
}

.fp-cta::before{
    content:"";
    position:absolute;
    inset:-40% auto -40% -8%;
    width:520px;
    background:radial-gradient(circle, rgba(236,214,153,.28), transparent 68%);
    pointer-events:none;
}

.fp-cta-body{ position:relative; flex:1 1 auto; min-width:0; }

.fp-cta-art{
    position:relative;
    order:2;
    flex:0 0 auto;
    filter:drop-shadow(0 14px 22px rgba(20,6,40,.35));
}

.fp-cta h2{
    margin-bottom:8px;
    font-size:clamp(22px, 2.6vw, 30px);
    line-height:1.7;
    font-weight:700;
    color:#fff;
}

.fp-cta p{
    margin-bottom:22px;
    font-size:15px;
    line-height:2;
    color:rgba(255,255,255,.86);
}

.fp-cta-btns{ display:flex; flex-wrap:wrap; align-items:center; gap:14px; }
.fp-cta-btns .tl-cta{ display:inline-flex; }

.fp-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    min-height:50px;
    padding:0 26px;
    border-radius:14px;
    font-family:inherit;
    font-size:15px;
    font-weight:700;
    cursor:pointer;
    transition:transform .2s, filter .2s, background .2s;
}

.fp-btn svg{ width:19px; height:19px; }
.fp-btn:hover{ transform:translateY(-2px); }

.fp-btn-gold{
    border:0;
    background:linear-gradient(180deg,#f0dca4,#cfa653);
    color:#3b2506;
    box-shadow:0 10px 22px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.55);
}

.fp-btn-ghost{
    background:rgba(255,255,255,.06);
    border:1.5px solid rgba(255,255,255,.55);
    color:#fff;
}

.fp-btn-ghost:hover{ background:rgba(255,255,255,.16); }

/* کارت مقاله داخل صفحهٔ اصلی */

.fp-blog .pc{ border-radius:20px; }

/* =========================================================
   ریسپانسیو
========================================================= */

@media (max-width:1199px){

    .fp-hero-grid{ gap:28px; }
    .fp-search{ flex-basis:370px; width:370px; }
    .fp-stat{ padding:6px 14px; gap:10px; }
    .fp-stat svg{ width:30px; height:30px; }
    .fp-why-grid{ grid-template-columns:repeat(3, minmax(0, 1fr)); }
    .fp-why-card:nth-child(n+4){ grid-column:span 1; }
}

@media (max-width:1023px){

    .fp-hero{ min-height:0; padding:calc(var(--hdr, 76px) + 30px) 0 96px; }

    .fp-hero::before{
        background:linear-gradient(180deg,
            rgba(38,14,66,.95) 0%,
            rgba(52,22,88,.90) 55%,
            rgba(66,30,106,.80) 100%);
    }

    .fp-hero-grid{ flex-direction:column; align-items:stretch; gap:30px; }
    .fp-hero-main{ flex:none; }
    .fp-hero-lead{ max-width:none; }
    .fp-search{ flex:none; width:100%; max-width:520px; margin:0 auto; }

    .fp-stats-card{ grid-template-columns:repeat(3, minmax(0, 1fr)); row-gap:6px; padding:18px 8px; }
    .fp-stat:nth-child(3n+1){ border-inline-start:0; }

    .fp-grid > .hc{ flex-basis:calc((100% - 26px) / 2); max-width:calc((100% - 26px) / 2); }

    .fp-cats{ grid-template-columns:repeat(2, minmax(0, 1fr)); }

    .fp-car-item{ flex-basis:calc((100% - 22px) / 2); }
    .fp-car-prev{ inset-inline-start:-8px; }
    .fp-car-next{ inset-inline-end:-8px; }

    .fp-rev-grid{ grid-template-columns:repeat(2, minmax(0, 1fr)); }
    .fp-rev:nth-child(3){ grid-column:1 / -1; }

    .fp-cta{ padding:36px 32px; }
    .fp-cta-art{ display:none; }
}

@media (max-width:767px){

    .fp-sec{ padding-top:54px; }
    .fp-head{ margin-bottom:26px; }
    .fp-title{ gap:12px; }
    .fp-title::before,.fp-title::after{ flex-basis:40px; }

    .fp-hero h1{ font-size:clamp(30px, 8.4vw, 40px); margin:18px 0 14px; }
    .fp-hero-lead{ font-size:15px; line-height:2; }

    .fp-tiles{ grid-template-columns:repeat(var(--n, 4), minmax(0, 1fr)); gap:8px; margin-top:22px; }
    .fp-tile{ height:84px; gap:6px; padding:6px 4px; border-radius:16px; font-size:12px; line-height:1.5; }
    .fp-tile svg{ width:28px; height:28px; }

    .fp-search{ padding:22px 18px 22px; border-radius:22px; }

    .fp-stats{ margin-top:-52px; }
    .fp-stats-card{ grid-template-columns:repeat(2, minmax(0, 1fr)); }
    .fp-stat,
    .fp-stat:nth-child(3n+1){ border-inline-start:0; padding:10px 12px; }
    .fp-stat:nth-child(2n){ border-inline-start:1px solid var(--fp-line); }

    .fp-why-grid{ grid-template-columns:repeat(2, minmax(0, 1fr)); gap:12px; }
    .fp-why-card{ padding:20px 12px 18px; }
    .fp-why-card:last-child:nth-child(odd){ grid-column:1 / -1; }

    .fp-grid{ gap:18px; }

    .fp-car-btn{ display:none; }
    .fp-car-item{ flex-basis:84%; }
    .fp-car-track{ margin-inline:-20px; padding-inline:20px; scroll-padding-inline:20px; }

    .fp-rev-grid{ grid-template-columns:minmax(0, 1fr); }

    .fp-cta{ flex-direction:column; align-items:stretch; padding:30px 22px; border-radius:24px; text-align:center; }
    .fp-cta-btns{ flex-direction:column; align-items:stretch; }
    .fp-cta-btns .tl-cta{ display:flex; }
    .fp-cta-btns .tl-cta > *{ width:100%; }
    .fp-btn{ width:100%; }
}

@media (max-width:639px){

    .fp-grid > .hc{ flex-basis:100%; max-width:100%; }
    .fp-cats{ gap:14px; }
    .fp-cat-label{ padding:22px 14px 14px; }
    .fp-cat-label strong{ font-size:15px; }
    .fp-cat-go{ width:30px; height:30px; }
}

@media (prefers-reduced-motion:reduce){
    .fp *{ transition:none !important; scroll-behavior:auto; }
}
