/* =========================
   PUBLIC CATALOG UI
   نسخه ظاهری مرتب‌تر برای صفحه اصلی
========================= */

:root{
    --site-font: "IRANYekan", "IranYekan", "IRAN Yekan", "Yekan Bakh", "Vazirmatn", Tahoma, Arial, sans-serif;
    --page-max: 920px;
    --glass-bg: rgba(255,255,255,.10);
    --glass-bg-strong: rgba(255,255,255,.16);
    --glass-border: rgba(255,255,255,.24);
    --text-main: #ffffff;
    --text-soft: rgba(255,255,255,.76);
    --shadow-soft: 0 18px 45px rgba(0,0,0,.28);
    --radius-xl: 28px;
    --radius-lg: 20px;
    --radius-md: 14px;
}

*{
    box-sizing:border-box;
    margin:0;
    padding:0;
}

html{
    scroll-behavior:smooth;
}

body{
    min-height:100vh;
    font-family:var(--site-font, "IRANYekan", "IranYekan", "IRAN Yekan", "Yekan Bakh", "Vazirmatn", Tahoma, Arial, sans-serif);
    color:var(--text-main);
    padding:0 0 84px;
    overflow-x:hidden;
}

body > *{
    position:relative;
    z-index:1;
}

a{
    color:inherit;
}

img{
    max-width:100%;
}

/* =========================
   GLASS CONTAINERS
========================= */

.container{
    width:min(var(--page-max), calc(100% - 22px));
    margin:16px auto;
    padding:18px;
    border-radius:var(--radius-xl);
    background:linear-gradient(145deg, rgba(255,255,255,.18), rgba(255,255,255,.075));
    border:1px solid var(--glass-border);
    box-shadow:var(--shadow-soft);
    backdrop-filter:blur(16px);
    -webkit-backdrop-filter:blur(16px);
    overflow:visible;
}

.group{
    display:flex;
    flex-direction:column;
    gap:16px;
}

header.container{
    margin-top:10px;
    text-align:center;
    padding:24px 18px 22px;
}

.logo{
    display:block;
    width:96px;
    height:96px;
    object-fit:contain;
    margin:0 auto 12px;
    padding:10px;
    border-radius:26px;
    background:rgba(255,255,255,.88);
    box-shadow:0 12px 30px rgba(0,0,0,.22);
}

.title{
    font-size:clamp(20px, 4.5vw, 30px);
    line-height:1.5;
    font-weight:900;
    letter-spacing:-.4px;
    color:#fff;
    text-shadow:0 3px 14px rgba(0,0,0,.38);
}

/* =========================
   SLIDER + SEARCH
========================= */

.slider-group{
    position:relative;
    z-index:80;
    padding:14px;
    overflow:visible;
}

/* وقتی نتیجه جستجو باز می‌شود، باید روی کانتینرهای پایین قرار بگیرد */
.slider-group:focus-within{
    z-index:9990;
}

.css-slider{
    position:relative;
    height:clamp(190px, 46vw, 330px);
    overflow:hidden;
    border-radius:24px;
    background:rgba(0,0,0,.20);
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.18), 0 14px 35px rgba(0,0,0,.25);
}

.css-slider::after{
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    background:linear-gradient(to top, rgba(0,0,0,.35), transparent 45%);
}

.css-slider img{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    opacity:0;
    transform:scale(1.04);
    animation:sliderSwitch var(--slider-time) infinite;
}

@keyframes sliderSwitch{
    0%, 18%{ opacity:1; transform:scale(1); }
    23%, 100%{ opacity:0; transform:scale(1.04); }
}

.search{
    position:relative;
    z-index:9995;
}

.search input{
    width:100%;
    height:52px;
    padding:0 18px;
    border-radius:18px;
    border:1px solid rgba(255,255,255,.24);
    outline:none;
    font-size:15px;
    color:#111827 !important;
    background:rgba(255,255,255,.94) !important;
    box-shadow:0 10px 28px rgba(0,0,0,.18);
}

.search input::placeholder{
    color:#6b7280 !important;
}

.search-results{
    position:fixed !important;
    top:0;
    left:0;
    right:auto;
    width:auto;
    display:none;
    max-height:min(330px, calc(100vh - 90px));
    overflow-y:auto;
    border-radius:18px;
    background:rgba(255,255,255,.98);
    color:#111827;
    border:1px solid rgba(255,255,255,.50);
    box-shadow:0 24px 60px rgba(0,0,0,.36);
    z-index:2147483600 !important;
    isolation:isolate;
    pointer-events:none;
    backdrop-filter:blur(12px);
    -webkit-backdrop-filter:blur(12px);
}

.search-results.active{
    display:block;
    pointer-events:none;
}

.search-item{
    display:flex;
    pointer-events:auto;
    align-items:center;
    gap:12px;
    padding:10px 12px;
    cursor:pointer;
    border-bottom:1px solid #f1f5f9;
    position:relative;
    z-index:1;
}

.search-item:last-child{
    border-bottom:none;
}

.search-item img{
    width:50px;
    height:50px;
    border-radius:14px;
    object-fit:cover;
    background:#f1f5f9;
}

.search-item:hover{
    background:#f8fafc;
}

/* =========================
   CONTACT / SOCIAL / PAY
========================= */

.contact-group{
    align-items:center;
}

/* کانتینرهای بعدی نباید روی کرکره جستجو بیفتند */
.contact-group,
.category-group,
.about-group{
    position:relative;
    z-index:2;
}

.icons,
.socials{
    display:flex;
    justify-content:center;
    align-items:center;
    gap:12px;
    flex-wrap:wrap;
}

.icons a,
.social-icon{
    width:48px;
    height:48px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    background:rgba(255,255,255,.16);
    border:1px solid rgba(255,255,255,.22);
    box-shadow:0 10px 22px rgba(0,0,0,.18);
    transition:.25s ease;
}

.icons a:hover,
.social-icon:hover{
    transform:translateY(-3px) scale(1.04);
    background:rgba(255,255,255,.28);
}

.icons img,
.social-icon img{
    width:24px;
    height:24px;
    object-fit:contain;
}

.social-icon.disabled{
    opacity:.32;
    filter:grayscale(100%);
    pointer-events:none;
}

button.social-icon{
    padding:0;
    color:inherit;
    font-family:var(--site-font, "IRANYekan", "IranYekan", "IRAN Yekan", "Yekan Bakh", "Vazirmatn", Tahoma, Arial, sans-serif);
    border:1px solid rgba(255,255,255,.22);
}

.social-drawer-open.active{
    transform:translateY(-3px) scale(1.04);
    background:rgba(255,255,255,.28);
}

.pay-wrapper{
    width:100%;
    display:flex;
    justify-content:center;
}

.pay-box{
    width:min(100%, 420px);
    display:flex;
    align-items:center;
    gap:14px;
    padding:14px 16px;
    border-radius:22px;
    text-decoration:none;
    color:#fff;
    background:linear-gradient(145deg, rgba(255,255,255,.18), rgba(255,255,255,.08));
    border:1px solid rgba(255,255,255,.22);
    box-shadow:0 16px 35px rgba(0,0,0,.22);
    transition:.25s ease;
}

.pay-box:hover{
    transform:translateY(-3px);
    background:linear-gradient(145deg, rgba(255,255,255,.25), rgba(255,255,255,.12));
}

.pay-icon{
    width:56px;
    height:56px;
    object-fit:contain;
    border-radius:16px;
    background:rgba(255,255,255,.16);
    padding:6px;
}

.pay-text{
    display:flex;
    flex-direction:column;
    gap:4px;
}

.pay-title{
    font-size:16px;
    font-weight:900;
}

.pay-desc{
    font-size:12px;
    color:var(--text-soft);
}

/* =========================
   CATEGORIES
========================= */

.categories{
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:14px;
}

.cat{
    position:relative;
    display:block;
    min-height:178px;
    overflow:hidden;
    border-radius:24px;
    text-decoration:none;
    color:#fff;
    background:rgba(255,255,255,.10);
    border:1px solid rgba(255,255,255,.22);
    box-shadow:0 14px 32px rgba(0,0,0,.22);
    transition:.25s ease;
}

.cat::after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(to top, rgba(0,0,0,.78), rgba(0,0,0,.12) 58%, rgba(255,255,255,.08));
    pointer-events:none;
}

.cat:hover{
    transform:translateY(-4px);
    box-shadow:0 18px 42px rgba(0,0,0,.30);
}

.cat img{
    width:100%;
    height:100%;
    min-height:178px;
    object-fit:cover;
    display:block;
    transition:.35s ease;
}

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

.cat span{
    position:absolute;
    right:12px;
    left:12px;
    bottom:12px;
    z-index:2;
    padding:10px 12px;
    border-radius:16px;
    font-size:14px;
    font-weight:900;
    text-align:center;
    background:rgba(255,255,255,.16);
    border:1px solid rgba(255,255,255,.22);
    backdrop-filter:blur(10px);
    -webkit-backdrop-filter:blur(10px);
}

/* =========================
   TEXT SECTIONS / MAP / FOOTER
========================= */

.section{
    line-height:2;
    color:#1f2937 !important;
    background:rgba(255,255,255,.94) !important;
    border:1px solid rgba(255,255,255,.65) !important;
    border-radius:22px;
    padding:18px;
    box-shadow:0 12px 28px rgba(0,0,0,.16);
}

.section *{
    color:#1f2937 !important;
}

#map{
    width:100%;
    height:320px;
    border-radius:22px;
    overflow:hidden;
    border:1px solid rgba(255,255,255,.28);
    box-shadow:0 14px 32px rgba(0,0,0,.24);
}

footer{
    margin-top:10px;
    text-align:center;
    font-size:12px;
    color:rgba(255,255,255,.72);
}

.share-btn{
    position:fixed;
    right:12px;
    bottom:18px;
    z-index:999;
    max-width:128px;
    padding:10px 14px;
    border-radius:16px;
    border:1px solid rgba(255,255,255,.28);
    color:#fff;
    background:rgba(15,23,42,.58);
    backdrop-filter:blur(14px);
    -webkit-backdrop-filter:blur(14px);
    box-shadow:0 12px 32px rgba(0,0,0,.38);
    cursor:pointer;
    font-size:13px;
    white-space:nowrap;
    transition:.25s ease;
}

.share-btn:hover{
    transform:translateY(-2px);
    background:rgba(255,255,255,.24);
}

@media (min-width:720px){
    .categories{
        grid-template-columns:repeat(4, minmax(0, 1fr));
    }

    .cat,
    .cat img{
        min-height:190px;
    }
}

@media (max-width:480px){
    .container{
        width:calc(100% - 14px);
        margin:10px auto 16px;
        padding:12px;
        border-radius:22px;
    }

    header.container{
        padding:20px 12px;
    }

    .logo{
        width:82px;
        height:82px;
    }

    .categories{
        gap:10px;
    }

    .cat,
    .cat img{
        min-height:150px;
    }

    .cat span{
        font-size:12px;
        padding:8px;
    }

    .css-slider{
        border-radius:20px;
    }
}


/* =========================
   PHONE CONTACT RESULT DRAWER
   شبیه باز شدن کارت نتیجه فوتبال در جستجو
========================= */
.phone-contact-list{
    gap:10px;
}

.phone-slide{
    position:relative;
    min-width:48px;
    height:50px;
    display:flex;
    align-items:center;
    justify-content:center;
}

.phone-slide-open,
.phone-football-call,
.phone-football-close{
    width:48px;
    height:48px;
    min-width:48px;
    border-radius:50%;
    border:none;
    display:flex;
    align-items:center;
    justify-content:center;
    cursor:pointer;
    text-decoration:none;
    box-shadow:0 10px 22px rgba(0,0,0,.18);
    -webkit-tap-highlight-color:transparent;
}

/* دکمه اولیه تماس مثل حالت اول صفحه اصلی: شیشه‌ای و جمع‌وجور */
.phone-slide-open{
    background:rgba(255,255,255,.16) !important;
    border:1px solid rgba(255,255,255,.22) !important;
    transition:transform .2s ease, background .2s ease, box-shadow .2s ease;
}

.phone-slide-open:hover,
.phone-slide.active .phone-slide-open{
    transform:translateY(-3px) scale(1.04);
    background:rgba(255,255,255,.28) !important;
    box-shadow:0 14px 28px rgba(0,0,0,.22);
}

.phone-slide-open img,
.phone-football-call img{
    width:24px;
    height:24px;
    object-fit:contain;
}

/* کارت کشویی: داخل صفحه باز می‌شود، شبیه کارت نتیجه فوتبال */
.phone-football-drawer{
    width:100%;
    display:flex;
    justify-content:center;
    max-height:0;
    opacity:0;
    overflow:hidden;
    pointer-events:none;
    transform:translateY(-8px);
    transition:
        max-height .36s cubic-bezier(.2,.9,.2,1),
        opacity .18s ease,
        transform .28s cubic-bezier(.2,.9,.2,1),
        margin .28s ease;
    margin:0;
}

.phone-football-drawer.active{
    max-height:96px;
    opacity:1;
    pointer-events:auto;
    transform:translateY(0);
    margin:4px 0 8px;
}

.phone-football-card,
.social-football-card{
    position:relative;
    overflow:hidden;
    backdrop-filter:blur(18px);
    -webkit-backdrop-filter:blur(18px);
}

.phone-football-card::before,
.social-football-card::before{
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    background:
        radial-gradient(circle at 14% 16%, rgba(255,255,255,.82), rgba(255,255,255,.24) 24%, rgba(255,255,255,0) 44%),
        radial-gradient(circle at 88% 18%, rgba(230,236,240,.56), rgba(230,236,240,0) 28%),
        radial-gradient(circle at 56% 84%, rgba(215,223,228,.34), rgba(215,223,228,0) 30%),
        repeating-linear-gradient(118deg,
            rgba(118,134,146,.16) 0px,
            rgba(118,134,146,.16) 2px,
            rgba(255,255,255,0) 2px,
            rgba(255,255,255,0) 34px),
        repeating-linear-gradient(28deg,
            rgba(148,160,170,.12) 0px,
            rgba(148,160,170,.12) 1px,
            rgba(255,255,255,0) 1px,
            rgba(255,255,255,0) 24px),
        linear-gradient(135deg, rgba(255,255,255,.70), rgba(236,240,244,.82) 42%, rgba(210,218,224,.74) 72%, rgba(248,250,252,.88));
    opacity:.98;
}

.phone-football-card::after,
.social-football-card::after{
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    background:
        linear-gradient(180deg, rgba(255,255,255,.28), rgba(255,255,255,0) 34%),
        radial-gradient(circle at 22% 20%, rgba(255,255,255,.40), rgba(255,255,255,0) 26%);
    mix-blend-mode:screen;
    opacity:.88;
}

.phone-football-card{
    width:min(388px, calc(100% - 14px));
    min-height:72px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    padding:8px 9px;
    border-radius:24px;
    background:linear-gradient(145deg, rgba(250,251,252,.72), rgba(223,229,233,.42));
    color:#0f172a;
    border:1px solid rgba(255,255,255,.58);
    box-shadow:
        0 20px 42px rgba(0,0,0,.18),
        inset 0 1px 0 rgba(255,255,255,.80),
        inset 0 -1px 0 rgba(164,176,186,.12);
    transform:scaleX(.86);
    transform-origin:center center;
    transition:transform .34s cubic-bezier(.2,.9,.2,1), box-shadow .28s ease;
}

.phone-football-drawer.active .phone-football-card{
    transform:scaleX(1);
}

.phone-football-info{
    position:relative;
    z-index:1;
    flex:1;
    min-width:0;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    line-height:1.45;
    text-align:center;
    padding:4px 10px;
    background:rgba(255,255,255,.34);
    border:1px solid rgba(255,255,255,.30);
    border-radius:16px;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.26);
}

.phone-football-info strong{
    font-size:16px;
    font-weight:900;
    max-width:100%;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
    color:#08111f;
    text-shadow:0 1px 0 rgba(255,255,255,.42);
}

.phone-football-info small{
    font-size:14px;
    color:#111827;
    direction:ltr;
    font-weight:900;
    white-space:nowrap;
    letter-spacing:.2px;
    text-shadow:none;
}

/* دکمه‌های شیشه‌ای داخل کشو */
.phone-football-call,
.phone-football-close,
.social-option,
.social-football-close{
    position:relative;
    z-index:1;
    overflow:hidden;
    box-shadow:
        0 12px 24px rgba(0,0,0,.18),
        inset 0 1px 0 rgba(255,255,255,.32);
    transition:transform .22s ease, box-shadow .22s ease, filter .22s ease, background .22s ease;
}

.phone-football-call::before,
.phone-football-close::before,
.social-option::before,
.social-football-close::before{
    content:"";
    position:absolute;
    inset:0;
    border-radius:inherit;
    pointer-events:none;
    background:linear-gradient(180deg, rgba(255,255,255,.26), rgba(255,255,255,0));
}

/* دکمه سبز داخل کشو برای تماس مستقیم */
.phone-football-call{
    background:linear-gradient(180deg, #22c55e, #15803d) !important;
    border:1px solid rgba(34,197,94,.34) !important;
    color:#fff !important;
}

.phone-football-call:hover{
    filter:brightness(1.03);
    transform:translateY(-1px) scale(1.04);
    box-shadow:0 16px 28px rgba(21,128,61,.28), inset 0 1px 0 rgba(255,255,255,.34);
}

/* دکمه قرمز داخل کشو برای بستن */
.phone-football-close{
    background:linear-gradient(180deg, #ef4444, #b91c1c) !important;
    color:#fff !important;
    font-size:24px;
    font-weight:900;
    line-height:1;
    border:1px solid rgba(239,68,68,.34) !important;
}

.phone-football-close:hover{
    filter:brightness(1.03);
    transform:translateY(-1px) scale(1.04);
    box-shadow:0 16px 28px rgba(185,28,28,.28), inset 0 1px 0 rgba(255,255,255,.34);
}

@media(max-width:420px){
    .phone-football-card{
        width:calc(100% - 10px);
        min-height:64px;
        padding:6px;
        gap:6px;
        border-radius:22px;
    }

    .phone-football-call,
    .phone-football-close{
        width:44px;
        height:44px;
        min-width:44px;
    }

    .phone-football-info{
        padding:4px 8px;
    }

    .phone-football-info strong{
        font-size:14px;
    }

    .phone-football-info small{
        font-size:12px;
    }
}


/* =========================
   SOCIAL RESULT DRAWER
   مثل باز شدن نتیجه فوتبال، اما برای شبکه‌های اجتماعی
========================= */
.social-football-drawer{
    width:100%;
    display:flex;
    justify-content:center;
    max-height:0;
    opacity:0;
    overflow:hidden;
    pointer-events:none;
    transform:translateY(-8px);
    transition:
        max-height .36s cubic-bezier(.2,.9,.2,1),
        opacity .18s ease,
        transform .28s cubic-bezier(.2,.9,.2,1),
        margin .28s ease;
    margin:0;
}

.social-football-drawer.active{
    max-height:120px;
    opacity:1;
    pointer-events:auto;
    transform:translateY(0);
    margin:4px 0 8px;
}

.social-football-card{
    width:min(438px, calc(100% - 14px));
    min-height:74px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    padding:10px 11px;
    border-radius:24px;
    background:linear-gradient(145deg, rgba(250,251,252,.72), rgba(223,229,233,.42));
    color:#0f172a;
    border:1px solid rgba(255,255,255,.58);
    box-shadow:
        0 20px 42px rgba(0,0,0,.18),
        inset 0 1px 0 rgba(255,255,255,.80),
        inset 0 -1px 0 rgba(164,176,186,.12);
    transform:scaleX(.86);
    transform-origin:center center;
    transition:transform .34s cubic-bezier(.2,.9,.2,1), box-shadow .28s ease;
}

.social-football-drawer.active .social-football-card{
    transform:scaleX(1);
}

.social-football-info{
    position:relative;
    z-index:1;
    min-width:82px;
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    justify-content:center;
    line-height:1.45;
    text-align:right;
}

.social-football-info strong{
    font-size:13px;
    font-weight:900;
    color:#10233c;
    white-space:nowrap;
    text-shadow:0 1px 0 rgba(255,255,255,.24);
}

.social-football-info small{
    font-size:11px;
    color:#64748b;
    white-space:nowrap;
}

.social-football-actions{
    position:relative;
    z-index:1;
    flex:1;
    min-width:0;
    display:flex;
    justify-content:center;
    align-items:center;
    gap:8px;
    flex-wrap:wrap;
}

.social-option{
    min-height:40px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:8px 14px;
    border-radius:16px;
    text-decoration:none;
    font-size:12px;
    font-weight:900;
    white-space:nowrap;
    border:1px solid rgba(34,197,94,.30);
    color:#fff;
    background:linear-gradient(180deg, #22c55e, #15803d);
}

.social-option-direct,
.social-option-group{
    background:linear-gradient(180deg, #22c55e, #15803d);
    color:#fff;
    border:1px solid rgba(34,197,94,.30);
}

.social-option:hover{
    transform:translateY(-1px) scale(1.02);
    filter:brightness(1.03);
    box-shadow:0 16px 28px rgba(21,128,61,.28), inset 0 1px 0 rgba(255,255,255,.34);
}

.social-football-close{
    width:42px;
    height:42px;
    min-width:42px;
    border-radius:50%;
    border:1px solid rgba(239,68,68,.34);
    display:flex;
    align-items:center;
    justify-content:center;
    background:linear-gradient(180deg, #ef4444, #b91c1c);
    color:#fff;
    font-size:23px;
    font-weight:900;
    line-height:1;
    cursor:pointer;
}

.social-football-close:hover{
    filter:brightness(1.03);
    transform:translateY(-1px) scale(1.04);
    box-shadow:0 16px 28px rgba(185,28,28,.28), inset 0 1px 0 rgba(255,255,255,.34);
}

@media(max-width:420px){
    .social-football-card{
        width:calc(100% - 10px);
        padding:7px;
        gap:6px;
        border-radius:22px;
    }

    .social-football-info{
        min-width:62px;
    }

    .social-football-info strong{
        font-size:12px;
    }

    .social-football-info small{
        display:none;
    }

    .social-option{
        min-height:34px;
        padding:7px 10px;
        font-size:11px;
        border-radius:14px;
    }

    .social-football-close{
        width:38px;
        height:38px;
        min-width:38px;
    }
}


/* CATEGORY CLICK SAFEGUARD */
.category-group, .categories, .cat{
    pointer-events:auto;
}
.category-group{
    z-index:5;
}
.cat{
    z-index:1;
}


/* =========================
   LOGO SHOWCASE + PREMIUM CONTAINER ENTRANCE
   نمایش تشریفاتی لوگو + ورود نرم‌تر کانتینرها
========================= */
html.logo-splash-pending,
html.logo-splash-pending body{
    scroll-behavior:auto !important;
    overflow:hidden !important;
    height:100% !important;
    max-height:100% !important;
    overscroll-behavior:none !important;
}

html.logo-splash-pending body.site-showcase-playing{
    position:fixed !important;
    inset:0 !important;
    width:100% !important;
    min-height:100svh !important;
    padding-bottom:0 !important;
    touch-action:none !important;
}

body.site-showcase-playing{
    background-color:var(--theme-color, #0D47A1) !important;
}


.site-preloader{
    position:fixed !important;
    inset:0 !important;
    z-index:100000;
    display:flex;
    align-items:center;
    justify-content:center;
    width:100%;
    max-width:100vw;
    height:100vh;
    height:100svh;
    min-height:100svh;
    max-height:100svh;
    padding:0;
    overflow:hidden;
    overscroll-behavior:none;
    touch-action:none;
    background-color:var(--theme-color, #0D47A1);
    background:
        radial-gradient(46% 34% at 14% 12%, rgba(255,255,255,.28) 0%, rgba(255,255,255,.14) 32%, rgba(255,255,255,0) 74%),
        radial-gradient(38% 28% at 86% 12%, rgba(255,255,255,.18) 0%, rgba(255,255,255,.08) 30%, rgba(255,255,255,0) 74%),
        radial-gradient(58% 38% at 52% 78%, rgba(255,255,255,.15) 0%, rgba(255,255,255,.07) 32%, rgba(255,255,255,0) 76%),
        linear-gradient(160deg, rgba(255,255,255,.06) 0%, rgba(7,12,24,.08) 36%, rgba(4,7,15,.28) 100%),
        linear-gradient(160deg, var(--theme-color, #0D47A1) 0%, var(--theme-color, #0D47A1) 100%);
    backdrop-filter:blur(14px);
    -webkit-backdrop-filter:blur(14px);
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transform:translate3d(0,0,0);
    transition:
        opacity .86s cubic-bezier(.16,1,.3,1),
        visibility .86s cubic-bezier(.16,1,.3,1);
}

@supports (height: 100dvh){
    .site-preloader{
        height:100dvh;
        min-height:100dvh;
        max-height:100dvh;
    }
}

.site-preloader.is-hiding{
    opacity:0;
    visibility:hidden;
    pointer-events:none;
}
.site-preloader::before,
.site-preloader::after{
    content:"";
    position:absolute;
    inset:-8%;
    pointer-events:none;
}

.site-preloader::before{
    opacity:.86;
    background:
        radial-gradient(46% 34% at 12% 14%, rgba(255,255,255,.20) 0%, rgba(255,255,255,.12) 28%, rgba(255,255,255,0) 72%),
        radial-gradient(52% 36% at 54% 76%, rgba(255,255,255,.12) 0%, rgba(255,255,255,.06) 26%, rgba(255,255,255,0) 74%);
    filter:blur(28px);
}

.site-preloader::after{
    opacity:.72;
    background:
        radial-gradient(62% 40% at 28% 36%, rgba(255,255,255,.10) 0%, rgba(255,255,255,.05) 32%, rgba(255,255,255,0) 78%),
        linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,0) 30%, rgba(255,255,255,.05) 100%);
    filter:blur(48px);
}


.site-preloader-stage{
    position:relative;
    z-index:1;
    width:min(320px, 82vw);
    height:min(320px, 82vw);
    display:flex;
    align-items:center;
    justify-content:center;
    transform:translate3d(0,0,0);
    animation:showcaseStageIn .95s cubic-bezier(.16,1,.3,1) both;
}

.site-preloader-stage::before{
    content:"";
    position:absolute;
    inset:0;
    border-radius:48px;
    background:
        radial-gradient(circle at 34% 24%, rgba(255,255,255,.48), rgba(255,255,255,.14) 30%, rgba(255,255,255,0) 58%),
        linear-gradient(145deg, rgba(255,255,255,.20), rgba(255,255,255,.08));
    border:1px solid rgba(255,255,255,.30);
    box-shadow:
        0 42px 100px rgba(0,0,0,.40),
        inset 0 1px 0 rgba(255,255,255,.48),
        inset 0 -1px 0 rgba(255,255,255,.09);
    backdrop-filter:blur(14px);
    -webkit-backdrop-filter:blur(14px);
    transform:scale(.90);
    animation:showcaseGlassBreathe 3.3s cubic-bezier(.45,0,.25,1) both;
}

.site-preloader-stage::after{
    content:"";
    position:absolute;
    inset:28px;
    border-radius:42px;
    background:linear-gradient(135deg, rgba(255,255,255,.18), rgba(255,255,255,0) 48%, rgba(255,255,255,.12));
    opacity:.55;
    pointer-events:none;
}

.site-preloader-orbit{
    display:none !important;
}

.site-preloader-glow{
    position:absolute;
    left:50%;
    top:50%;
    width:170px;
    height:170px;
    border-radius:50%;
    background:rgba(255,255,255,.22);
    filter:blur(26px);
    transform:translate3d(-50%,-50%,0);
    animation:showcaseGlow 2.8s ease-in-out infinite alternate;
}

.site-preloader-logo-shell{
    position:relative;
    z-index:2;
    width:144px;
    height:144px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:38px;
    padding:16px;
    background:rgba(255,255,255,.97);
    box-shadow:
        0 28px 66px rgba(0,0,0,.36),
        0 0 0 1px rgba(255,255,255,.70),
        inset 0 1px 0 rgba(255,255,255,.92);
    overflow:hidden;
    transform-origin:center center;
    animation:showcaseLogoReveal 3.05s cubic-bezier(.16,1,.3,1) both;
}

.site-preloader-logo-shell::before{
    content:"";
    position:absolute;
    inset:-65%;
    background:linear-gradient(115deg, rgba(255,255,255,0) 37%, rgba(255,255,255,.85) 49%, rgba(255,255,255,0) 61%);
    transform:translateX(76%) rotate(8deg);
    animation:showcaseLogoShine 2.65s ease-in-out .62s both;
}

.site-preloader-logo{
    width:100%;
    height:100%;
    object-fit:contain;
    display:block;
    margin:auto;
    position:relative;
    z-index:1;
}

html.logo-splash-pending body:not(.site-ready) > .container,
html.logo-splash-pending body:not(.site-ready) > footer,
html.logo-splash-pending body:not(.site-ready) > .share-btn{
    opacity:0;
    transform:translate3d(46px,12px,0) scale(.985);
}

body.site-ready:not(.site-no-intro) > .container{
    will-change:transform, opacity;
    backface-visibility:hidden;
    transform-style:preserve-3d;
    animation:containerPremiumEnter 1.05s cubic-bezier(.16,1,.3,1) both;
    animation-delay:var(--enter-delay, .12s);
}

body.site-ready:not(.site-no-intro) > footer{
    will-change:transform, opacity;
    animation:containerPremiumEnter .95s cubic-bezier(.16,1,.3,1) both;
    animation-delay:1.12s;
}

body.site-ready:not(.site-no-intro) > .share-btn{
    will-change:transform, opacity;
    animation:containerPremiumEnter .9s cubic-bezier(.16,1,.3,1) both;
    animation-delay:1.22s;
}

@keyframes showcaseStageIn{
    0%{opacity:0; transform:translate3d(0,18px,0) scale(.90);}
    100%{opacity:1; transform:translate3d(0,0,0) scale(1);}
}

@keyframes showcaseGlassBreathe{
    0%{transform:scale(.74); opacity:0;}
    34%{transform:scale(1.01); opacity:1;}
    70%{transform:scale(.992); opacity:1;}
    100%{transform:scale(1.025); opacity:1;}
}

@keyframes showcaseRing{
    to{transform:rotate(360deg);}
}

@keyframes showcaseOrbit{
    0%{opacity:0; transform:scale(.82) rotate(-34deg);}
    42%{opacity:1; transform:scale(1) rotate(0deg);}
    100%{opacity:.84; transform:scale(1.035) rotate(118deg);}
}

@keyframes showcaseGlow{
    from{opacity:.58; transform:translate3d(-50%,-50%,0) scale(.88);}
    to{opacity:1; transform:translate3d(-50%,-50%,0) scale(1.16);}
}

@keyframes showcaseLogoReveal{
    0%{opacity:0; transform:translate3d(0,14px,0) scale(.72) rotate(-2deg);}
    30%{opacity:1; transform:translate3d(0,0,0) scale(1.06) rotate(0deg);}
    62%{opacity:1; transform:translate3d(0,-4px,0) scale(1.01);}
    100%{opacity:1; transform:translate3d(0,0,0) scale(1.02);}
}

@keyframes showcaseLogoShine{
    0%{transform:translateX(78%) rotate(8deg); opacity:0;}
    34%{opacity:1;}
    100%{transform:translateX(-78%) rotate(8deg); opacity:0;}
}

@keyframes containerPremiumEnter{
    0%{opacity:0; transform:translate3d(46px,12px,0) scale(.985);}
    58%{opacity:1; transform:translate3d(-4px,0,0) scale(1.002);}
    100%{opacity:1; transform:translate3d(0,0,0) scale(1);}
}

@media(max-width:520px){
    .site-preloader-stage{
        width:min(294px, 78vw);
        height:min(294px, 78vw);
    }

    .site-preloader-logo-shell{
        width:126px;
        height:126px;
        border-radius:34px;
    }

    html.logo-splash-pending body:not(.site-ready) > .container,
    html.logo-splash-pending body:not(.site-ready) > footer,
    html.logo-splash-pending body:not(.site-ready) > .share-btn{
        transform:translate3d(34px,10px,0) scale(.988);
    }

    @keyframes containerPremiumEnter{
        0%{opacity:0; transform:translate3d(34px,10px,0) scale(.988);}
        60%{opacity:1; transform:translate3d(-3px,0,0) scale(1.001);}
        100%{opacity:1; transform:translate3d(0,0,0) scale(1);}
    }
}

@media(prefers-reduced-motion: reduce){
    .site-preloader,
    .site-preloader-stage,
    .site-preloader-stage::before,
    .site-preloader-stage::after,
    .site-preloader-glow,
    .site-preloader-logo-shell,
    .site-preloader-logo-shell::before,
    body.site-ready:not(.site-no-intro) > .container,
    body.site-ready:not(.site-no-intro) > footer,
    body.site-ready:not(.site-no-intro) > .share-btn{
        animation:none !important;
        transition:none !important;
        transform:none !important;
    }
}

/* =========================
   HOME CATALOG SHOWCASE REDESIGN
   حس کاتالوگ حرفه‌ای برای صفحه اول
========================= */
body.home-catalog{
    --catalog-surface: rgba(15, 23, 42, .46);
    --catalog-surface-strong: rgba(15, 23, 42, .62);
    --catalog-line: rgba(255,255,255,.18);
    --catalog-white: rgba(255,255,255,.94);
    --catalog-dark: #0f172a;
    padding-top: max(8px, env(safe-area-inset-top));
}

body.home-catalog .container{
    width:min(940px, calc(100% - 18px));
    margin:12px auto;
    border-radius:30px;
    background:
        linear-gradient(145deg, rgba(255,255,255,.16), rgba(255,255,255,.055)),
        linear-gradient(180deg, rgba(15,23,42,.22), rgba(15,23,42,.10));
    border:1px solid rgba(255,255,255,.20);
    box-shadow:0 22px 55px rgba(0,0,0,.32);
}

body.home-catalog .catalog-hero{
    padding:14px;
    overflow:hidden;
}

body.home-catalog .catalog-hero-inner{
    position:relative;
    display:grid;
    grid-template-columns:auto 1fr;
    gap:16px;
    align-items:center;
    min-height:142px;
    padding:18px;
    border-radius:26px;
    background:
        radial-gradient(80% 120% at 100% 0%, rgba(255,255,255,.25), transparent 54%),
        linear-gradient(135deg, rgba(255,255,255,.18), rgba(15,23,42,.20));
    border:1px solid rgba(255,255,255,.22);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.16);
}

body.home-catalog .catalog-hero-inner::after{
    content:"";
    position:absolute;
    inset:auto -22% -62% -20%;
    height:96px;
    background:radial-gradient(circle, rgba(255,255,255,.20), transparent 68%);
    pointer-events:none;
}

body.home-catalog .hero-logo-card{
    width:108px;
    height:108px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:28px;
    background:rgba(255,255,255,.90);
    box-shadow:0 18px 38px rgba(0,0,0,.24);
    position:relative;
    z-index:1;
}

body.home-catalog .logo{
    width:88px;
    height:88px;
    margin:0;
    padding:8px;
    border-radius:22px;
    box-shadow:none;
    background:transparent;
}

body.home-catalog .hero-content{
    position:relative;
    z-index:1;
    text-align:right;
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    gap:7px;
}

body.home-catalog .hero-kicker,
body.home-catalog .slider-caption span,
body.home-catalog .home-section-head span{
    color:#fff !important;
    text-shadow:0 2px 12px rgba(0,0,0,.28);
}

body.home-catalog .hero-kicker{
    display:inline-flex;
    align-items:center;
    gap:7px;
    padding:6px 12px;
    border-radius:999px;
    font-size:12px;
    font-weight:900;
    background:rgba(255,255,255,.14);
    border:1px solid rgba(255,255,255,.22);
}

body.home-catalog .hero-kicker::before{
    content:"";
    width:8px;
    height:8px;
    border-radius:50%;
    background:#22c55e;
    box-shadow:0 0 0 5px rgba(34,197,94,.16);
}

body.home-catalog .title{
    margin:0;
    font-size:clamp(23px, 5vw, 34px);
    line-height:1.35;
    color:#fff !important;
}

body.home-catalog .hero-subtitle{
    margin:0;
    color:rgba(255,255,255,.78) !important;
    font-size:13px;
    line-height:1.9;
}

body.home-catalog .hero-cta{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    margin-top:4px;
    min-height:38px;
    padding:8px 14px;
    border-radius:14px;
    color:#0f172a !important;
    background:rgba(255,255,255,.92);
    text-decoration:none;
    font-weight:900;
    font-size:12px;
    box-shadow:0 10px 24px rgba(0,0,0,.18);
}

body.home-catalog .slider-group{
    padding:12px;
    gap:12px;
    background:rgba(255,255,255,.10);
}

body.home-catalog .css-slider{
    height:clamp(210px, 52vw, 360px);
    border-radius:26px;
    background:linear-gradient(135deg, rgba(255,255,255,.15), rgba(15,23,42,.35));
    border:1px solid rgba(255,255,255,.20);
    box-shadow:0 18px 44px rgba(0,0,0,.28);
}

body.home-catalog .css-slider::after{
    background:
        linear-gradient(to top, rgba(2,6,23,.72), rgba(2,6,23,.20) 48%, rgba(255,255,255,.08)),
        linear-gradient(to left, rgba(2,6,23,.28), transparent 48%);
}

body.home-catalog .slider-caption{
    position:absolute;
    right:16px;
    left:16px;
    bottom:16px;
    z-index:3;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    padding:12px 14px;
    border-radius:18px;
    background:rgba(15,23,42,.44);
    border:1px solid rgba(255,255,255,.18);
    backdrop-filter:blur(14px);
    -webkit-backdrop-filter:blur(14px);
}

body.home-catalog .slider-caption span{
    font-size:15px;
    font-weight:900;
}

body.home-catalog .slider-caption small{
    color:rgba(255,255,255,.74) !important;
    font-size:11px;
    white-space:nowrap;
}

body.home-catalog .catalog-empty-cover{
    position:absolute;
    inset:0;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:8px;
    z-index:1;
    color:#fff;
}

body.home-catalog .catalog-empty-cover strong{
    font-size:22px;
}

body.home-catalog .catalog-empty-cover small{
    color:rgba(255,255,255,.75);
}

body.home-catalog .search input{
    height:56px;
    border-radius:20px;
    padding:0 18px;
    font-size:15px;
    font-weight:700;
    border:1px solid rgba(255,255,255,.72);
    background:#fff !important;
    box-shadow:0 14px 35px rgba(0,0,0,.20);
}

body.home-catalog .home-section-head{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:10px;
    padding:2px 4px 4px;
}

body.home-catalog .home-section-head span{
    font-size:17px;
    font-weight:950;
}

body.home-catalog .home-section-head small{
    color:rgba(255,255,255,.72) !important;
    font-size:11px;
    line-height:1.8;
}

body.home-catalog .home-section-head.compact{
    width:100%;
    justify-content:center;
    text-align:center;
    flex-direction:column;
    align-items:center;
    gap:2px;
}

body.home-catalog .category-group{
    padding:14px;
}

body.home-catalog .categories{
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:12px;
}

body.home-catalog .cat{
    min-height:0;
    aspect-ratio:1 / 1.12;
    border-radius:24px;
    background:
        linear-gradient(180deg, rgba(255,255,255,.98) 0%, rgba(241,245,249,.96) 56%, rgba(15,23,42,.84) 100%);
    border:1px solid rgba(255,255,255,.30);
    box-shadow:0 18px 42px rgba(0,0,0,.28);
    overflow:hidden;
}

body.home-catalog .cat::before{
    content:"محصولات";
    position:absolute;
    top:10px;
    right:10px;
    z-index:2;
    padding:4px 9px;
    border-radius:999px;
    color:#0f172a;
    background:rgba(255,255,255,.86);
    font-size:10px;
    font-weight:900;
    box-shadow:0 8px 18px rgba(0,0,0,.12);
}

body.home-catalog .cat::after{
    background:
        linear-gradient(to top, rgba(2,6,23,.88), rgba(2,6,23,.52) 30%, rgba(255,255,255,0) 66%),
        radial-gradient(70% 42% at 50% 50%, rgba(255,255,255,.18), transparent 72%);
}

body.home-catalog .cat img{
    height:100%;
    min-height:0;
    object-fit:contain;
    padding:16px 12px 54px;
    filter:drop-shadow(0 18px 16px rgba(0,0,0,.20));
}

body.home-catalog .cat span{
    right:10px;
    left:10px;
    bottom:10px;
    min-height:44px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:16px;
    color:#fff !important;
    font-size:13px;
    font-weight:950;
    background:rgba(15,23,42,.58);
    border:1px solid rgba(255,255,255,.22);
    box-shadow:0 10px 24px rgba(0,0,0,.20);
}

body.home-catalog .cat:hover,
body.home-catalog .cat:focus-visible{
    transform:translateY(-3px);
}

body.home-catalog .cat:hover img{
    transform:scale(1.04) translateY(-3px);
}

body.home-catalog .contact-group{
    padding:14px 14px 16px;
    gap:14px;
}

body.home-catalog .icons,
body.home-catalog .socials{
    gap:10px;
}

body.home-catalog .icons a,
body.home-catalog .social-icon,
body.home-catalog .phone-slide-open{
    width:50px;
    height:50px;
    border-radius:18px;
    background:rgba(255,255,255,.14);
    border:1px solid rgba(255,255,255,.20);
}

body.home-catalog .pay-box{
    width:100%;
    max-width:560px;
    border-radius:22px;
    background:linear-gradient(135deg, rgba(255,255,255,.20), rgba(15,23,42,.20));
}

body.home-catalog .about-group{
    gap:12px;
}

body.home-catalog .section{
    border-radius:24px;
    font-size:15px;
    line-height:2.15;
}

@media (min-width:760px){
    body.home-catalog .categories{
        grid-template-columns:repeat(4, minmax(0, 1fr));
    }
}

@media (max-width:520px){
    body.home-catalog .container{
        width:calc(100% - 16px);
        margin:10px auto;
        padding:12px;
        border-radius:26px;
    }

    body.home-catalog .catalog-hero-inner{
        grid-template-columns:1fr;
        justify-items:center;
        text-align:center;
        padding:18px 14px;
    }

    body.home-catalog .hero-content{
        text-align:center;
        align-items:center;
    }

    body.home-catalog .hero-logo-card{
        width:96px;
        height:96px;
    }

    body.home-catalog .logo{
        width:78px;
        height:78px;
    }

    body.home-catalog .hero-subtitle{
        max-width:280px;
    }

    body.home-catalog .css-slider{
        height:210px;
        border-radius:22px;
    }

    body.home-catalog .slider-caption{
        align-items:flex-start;
        flex-direction:column;
        gap:3px;
        right:10px;
        left:10px;
        bottom:10px;
        padding:10px 12px;
    }

    body.home-catalog .slider-caption small{
        white-space:normal;
    }

    body.home-catalog .home-section-head{
        align-items:flex-start;
        flex-direction:column;
        gap:2px;
    }

    body.home-catalog .home-section-head.compact{
        align-items:center;
    }

    body.home-catalog .categories{
        gap:10px;
    }

    body.home-catalog .cat{
        border-radius:22px;
        aspect-ratio:1 / 1.18;
    }

    body.home-catalog .cat img{
        padding:12px 8px 50px;
    }

    body.home-catalog .cat span{
        min-height:42px;
        font-size:12px;
        padding:8px 7px;
    }
}

/* =========================
   GLOBAL FONT + CLEAN HOME TEXT
   یکدست‌سازی فونت و حذف متن‌های اضافه صفحه اول
========================= */
html, body, button, input, select, textarea, a, span, p, small, strong, h1, h2, h3, h4, h5, h6, label, table, th, td{
    font-family:var(--site-font, "IRANYekan", "IranYekan", "IRAN Yekan", "Yekan Bakh", "Vazirmatn", Tahoma, Arial, sans-serif) !important;
}

body.home-catalog .hero-kicker,
body.home-catalog .hero-subtitle,
body.home-catalog .hero-cta,
body.home-catalog .slider-caption{
    display:none !important;
}

body.home-catalog .catalog-hero-inner{
    min-height:118px;
}

body.home-catalog .clean-hero-content{
    gap:0;
}

body.home-catalog .css-slider::after{
    background:linear-gradient(to top, rgba(2,6,23,.18), rgba(2,6,23,.06) 45%, rgba(255,255,255,.04)) !important;
}

body.home-catalog .catalog-empty-cover{
    background:linear-gradient(135deg, rgba(255,255,255,.10), rgba(15,23,42,.30));
}

@media (max-width:520px){
    body.home-catalog .catalog-hero-inner{
        min-height:108px;
    }
}


/* =========================
   HOMEPAGE FLAT SIMPLIFY
========================= */
body.home-catalog .container{
    background:var(--theme-surface, rgba(255,255,255,.10)) !important;
    border:1px solid var(--theme-border, rgba(255,255,255,.18)) !important;
    box-shadow:var(--theme-shadow, 0 14px 32px rgba(0,0,0,.24)) !important;
}

body.home-catalog .catalog-hero,
body.home-catalog .slider-group,
body.home-catalog .category-group,
body.home-catalog .contact-group,
body.home-catalog .about-group{
    padding:14px !important;
}

body.home-catalog .catalog-hero-inner,
body.home-catalog .hero-logo-card,
body.home-catalog .clean-hero-content,
body.home-catalog .home-section-head,
body.home-catalog .home-section-head.compact{
    background:none !important;
    box-shadow:none !important;
    border:none !important;
}

body.home-catalog .title,
body.home-catalog .home-section-head span,
body.home-catalog .slider-title,
body.home-catalog .hero-title{
    color:var(--theme-text, #f8fafc) !important;
    text-shadow:none !important;
}

body.home-catalog .home-section-head small,
body.home-catalog .subtitle,
body.home-catalog .cat-meta{
    color:var(--theme-text-soft, rgba(248,250,252,.78)) !important;
}

body.home-catalog .categories{
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:12px;
}

body.home-catalog .cat{
    display:flex !important;
    flex-direction:column;
    justify-content:flex-start;
    gap:10px;
    padding:10px !important;
    aspect-ratio:1 / 1.04;
    border-radius:22px !important;
    background:rgba(255,255,255,.94) !important;
    border:1px solid rgba(15,23,42,.08) !important;
    box-shadow:0 12px 24px rgba(15,23,42,.10) !important;
    overflow:hidden;
}

body.home-catalog .cat::before,
body.home-catalog .cat::after{
    content:none !important;
    display:none !important;
}

body.home-catalog .cat img{
    flex:1 1 auto;
    width:100%;
    height:auto !important;
    min-height:0;
    object-fit:contain !important;
    padding:12px !important;
    margin:0;
    border-radius:18px;
    background:#ffffff;
    filter:none !important;
    box-shadow:0 8px 18px rgba(15,23,42,.08);
}

body.home-catalog .cat span{
    position:static !important;
    right:auto !important;
    left:auto !important;
    bottom:auto !important;
    min-height:auto !important;
    display:block !important;
    width:100%;
    padding:0 2px 4px !important;
    border:none !important;
    border-radius:0 !important;
    background:none !important;
    box-shadow:none !important;
    color:#0f172a !important;
    text-align:center;
    font-size:13px !important;
    font-weight:900 !important;
    line-height:1.7;
}

body.home-catalog .cat:hover,
body.home-catalog .cat:focus-visible{
    transform:none !important;
}

body.home-catalog .cat:hover img{
    transform:none !important;
}


/* ==== readability fixes requested ==== */
.phone-football-info strong,
.phone-football-info small{
    color:#111827 !important;
    text-shadow:none !important;
}

.search-results{
    background:#ffffff !important;
    border:1px solid rgba(148,163,184,.22) !important;
    box-shadow:0 20px 44px rgba(15,23,42,.16) !important;
}

.search-item{
    background:#ffffff !important;
    border-bottom:1px solid #e5e7eb !important;
}

.search-item:last-child{
    border-bottom:none !important;
}

.search-item:hover{
    background:#f8fafc !important;
}

/* ==== search text + bigger logo ==== */
.search-results,
.search-results *,
.search-item,
.search-item *{
    color:#111827 !important;
}

.search-results{
    background:#ffffff !important;
}

.search-item{
    background:#ffffff !important;
    border-bottom:1px solid #e5e7eb !important;
}

.search-item:last-child{
    border-bottom:none !important;
}

body.home-catalog .hero-logo-card{
    width:216px !important;
    height:216px !important;
    border-radius:42px !important;
}

body.home-catalog .logo{
    width:176px !important;
    height:176px !important;
    border-radius:34px !important;
}

@media(max-width:520px){
    body.home-catalog .hero-logo-card{
        width:192px !important;
        height:192px !important;
        border-radius:38px !important;
    }

    body.home-catalog .logo{
        width:156px !important;
        height:156px !important;
        border-radius:30px !important;
    }
}


/* ==== search go list behavior ==== */
.search-item-empty{
    cursor:default !important;
    justify-content:center;
    text-align:center;
    color:#111827 !important;
}
.search-item-empty:hover{
    background:#ffffff !important;
}


/* homepage social icons - one clean row */
body.home-catalog .socials{
    gap:6px !important;
    flex-wrap:nowrap !important;
    justify-content:center !important;
    width:100% !important;
}

body.home-catalog .socials .social-icon{
    width:54px !important;
    height:54px !important;
    min-width:54px !important;
    border-radius:17px !important;
}

body.home-catalog .socials .social-icon img{
    width:30px !important;
    height:30px !important;
}

@media(max-width:360px){
    body.home-catalog .socials{gap:5px !important;}
    body.home-catalog .socials .social-icon{
        width:50px !important;
        height:50px !important;
        min-width:50px !important;
    }
    body.home-catalog .socials .social-icon img{
        width:28px !important;
        height:28px !important;
    }
}


/* ==== final flat component cleanup ==== */
body.home-catalog :where(
    .container,.group,.section,.bank-card,.pay-box,.catalog-hero-inner,.hero-logo-card,.clean-hero-content,
    .home-section-head,.cat,.icons a,.social-icon,.phone-slide-open,.phone-football-card,.phone-football-info,
    .social-football-card,.social-football-info,.social-option,.phone-football-call,.phone-football-close,.social-football-close,
    .search-results,.search-item
){
    background-image:none !important;
}
body.home-catalog :where(.phone-football-card,.social-football-card,.phone-football-info,.social-football-info,.pay-box,.bank-card,.section){
    background-color:var(--theme-surface, rgba(255,255,255,.10)) !important;
}
body.home-catalog :where(.phone-football-call,.social-option-direct,.social-option-group){background:#16a34a !important;}
body.home-catalog :where(.phone-football-close,.social-football-close){background:#dc2626 !important;}
body.home-catalog :where(.phone-football-card,.social-football-card,.social-option,.phone-football-call,.phone-football-close,.social-football-close)::before,
body.home-catalog :where(.phone-football-card,.social-football-card,.social-option,.phone-football-call,.phone-football-close,.social-football-close)::after,
body.home-catalog :where(.pay-box,.bank-card,.section,.cat)::before,
body.home-catalog :where(.pay-box,.bank-card,.section,.cat)::after{
    background-image:none !important;
}


/* share buttons: black glass with white text */
.share-btn,
button.toolbar-btn[onclick*="share"]{
    background:rgba(15,23,42,.76) !important;
    color:#ffffff !important;
    border:1px solid rgba(255,255,255,.28) !important;
    box-shadow:0 12px 28px rgba(0,0,0,.28) !important;
    backdrop-filter:blur(14px) !important;
    -webkit-backdrop-filter:blur(14px) !important;
}
.share-btn:hover,
button.toolbar-btn[onclick*="share"]:hover{
    background:rgba(15,23,42,.88) !important;
}
.share-btn *,
button.toolbar-btn[onclick*="share"] *{
    color:#ffffff !important;
}

/* about and address sections: white readable background */
body.home-catalog .about-group .section{
    background:#ffffff !important;
    background-image:none !important;
    color:#111827 !important;
    border:1px solid rgba(148,163,184,.35) !important;
    box-shadow:0 12px 28px rgba(15,23,42,.10) !important;
}

body.home-catalog .about-group .section,
body.home-catalog .about-group .section *{
    color:#111827 !important;
}


/* ===== centered title boxes ===== */
body.home-catalog .title,
body.home-catalog .home-section-head span,
body.home-catalog .slider-title,
body.home-catalog .pay-title{
    display:table !important;
    margin:0 auto !important;
    padding:10px 18px !important;
    border-radius:16px !important;
    background:rgba(15,23,42,.78) !important;
    color:#ffffff !important;
    border:1px solid rgba(255,255,255,.14) !important;
    box-shadow:0 10px 24px rgba(15,23,42,.14) !important;
    text-align:center !important;
    line-height:1.7 !important;
}

body.home-catalog .home-section-head{
    text-align:center !important;
    gap:8px !important;
}

body.home-catalog .home-section-head small{
    display:block !important;
    text-align:center !important;
    margin-top:8px !important;
}

body.home-catalog .contact-group .home-section-head span,
body.home-catalog .about-group .home-section-head span,
body.home-catalog .address-group .home-section-head span,
body.home-catalog .pay-title{
    background:#f8fafc !important;
    color:#0f172a !important;
    border:1px solid #d1d5db !important;
    box-shadow:0 10px 22px rgba(15,23,42,.08) !important;
}

body.home-catalog .title{
    font-weight:900 !important;
}

@media (max-width: 768px){
    body.home-catalog .title,
    body.home-catalog .home-section-head span,
    body.home-catalog .slider-title,
    body.home-catalog .pay-title{
        padding:9px 14px !important;
        border-radius:14px !important;
        font-size:14px !important;
        max-width:calc(100% - 10px);
    }
}


/* ===== final refinements: bigger catalog name + clean payment title/icon ===== */
body.home-catalog .clean-hero-content .title{
    min-width:min(340px, 92vw) !important;
    padding:14px 28px !important;
    font-size:clamp(21px, 5vw, 34px) !important;
    border-radius:22px !important;
    line-height:1.65 !important;
}

body.home-catalog .pay-title{
    display:inline !important;
    margin:0 !important;
    padding:0 !important;
    min-width:0 !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    color:#0f172a !important;
    text-align:right !important;
    line-height:1.7 !important;
}

body.home-catalog .pay-desc{
    color:#475569 !important;
}

body.home-catalog .pay-box{
    background:#ffffff !important;
    border:1px solid rgba(148,163,184,.28) !important;
    box-shadow:0 14px 30px rgba(15,23,42,.10) !important;
    color:#0f172a !important;
}

body.home-catalog .pay-box:hover{
    background:#f8fafc !important;
}

body.home-catalog .pay-icon{
    display:none !important;
}

body.home-catalog .pay-fancy-icon{
    width:58px;
    height:58px;
    min-width:58px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:20px;
    background:#0f172a;
    color:#ffffff;
    box-shadow:0 12px 24px rgba(15,23,42,.18);
}

body.home-catalog .pay-fancy-icon svg{
    width:31px;
    height:31px;
    fill:currentColor;
}

@media (max-width:768px){
    body.home-catalog .clean-hero-content .title{
        min-width:min(290px, 90vw) !important;
        padding:12px 20px !important;
        font-size:22px !important;
        border-radius:18px !important;
    }
    body.home-catalog .pay-fancy-icon{
        width:52px;
        height:52px;
        min-width:52px;
        border-radius:18px;
    }
}


/* ===== payment section nicer dark glass ===== */
body.home-catalog .pay-box{
    background:rgba(15,23,42,.72) !important;
    color:#ffffff !important;
    border:1px solid rgba(255,255,255,.16) !important;
    box-shadow:0 16px 34px rgba(15,23,42,.20) !important;
    backdrop-filter:blur(12px);
    -webkit-backdrop-filter:blur(12px);
}
body.home-catalog .pay-box:hover{
    background:rgba(15,23,42,.82) !important;
}
body.home-catalog .pay-title,
body.home-catalog .pay-desc{
    color:#ffffff !important;
}
body.home-catalog .pay-fancy-icon{
    background:rgba(255,255,255,.14) !important;
    color:#ffffff !important;
    border:1px solid rgba(255,255,255,.18) !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.16), 0 10px 22px rgba(0,0,0,.20) !important;
}
