/* =========================================================
   TERMINO.MK PUBLIC LIGHT THEME V2
   Dark theme remains original.
   ========================================================= */

html[data-public-theme="light"]{
    color-scheme:light;
}

html[data-public-theme="light"] body{
    background:#f5f7fb!important;
    color:#0f172a!important;
}

/* ---------- Generic public Tailwind surfaces ---------- */

html[data-public-theme="light"] .termino-public.bg-slate-950{
    background:
        radial-gradient(900px 500px at 92% 0%,rgba(14,165,233,.08),transparent 65%),
        #f5f7fb!important;
    color:#0f172a!important;
}

html[data-public-theme="light"] .termino-public .bg-slate-900{
    background:#fff!important;
}

html[data-public-theme="light"] .termino-public .bg-slate-950{
    background:#f8fafc!important;
}

html[data-public-theme="light"] .termino-public .text-white{
    color:#0f172a!important;
}

html[data-public-theme="light"] .termino-public .text-slate-100,
html[data-public-theme="light"] .termino-public .text-slate-200{
    color:#334155!important;
}

html[data-public-theme="light"] .termino-public .text-slate-400{
    color:#64748b!important;
}

html[data-public-theme="light"] .termino-public .text-slate-500{
    color:#64748b!important;
}

html[data-public-theme="light"] .termino-public .text-slate-600{
    color:#94a3b8!important;
}

html[data-public-theme="light"] .termino-public .text-slate-700{
    color:#94a3b8!important;
}

html[data-public-theme="light"] .termino-public .border-white\/10{
    border-color:#e2e8f0!important;
}

html[data-public-theme="light"] .termino-public .bg-white\/5,
html[data-public-theme="light"] .termino-public .bg-white\/\[\.04\]{
    background:#f8fafc!important;
}

/* ---------- Profile surfaces ---------- */

html[data-public-theme="light"] .termino-public section{
    transition:
        background-color .22s ease,
        border-color .22s ease,
        box-shadow .22s ease;
}

html[data-public-theme="light"] .termino-public section.bg-slate-900{
    border-color:#e2e8f0!important;
    box-shadow:
        0 1px 2px rgba(15,23,42,.025),
        0 16px 45px rgba(15,23,42,.055)!important;
}

/* Keep cover visually strong */

html[data-public-theme="light"] .termino-public section:first-child > .relative.bg-gradient-to-br{
    background:linear-gradient(135deg,#0891b2,#1e40af)!important;
}

html[data-public-theme="light"] .termino-public section:first-child .from-slate-950\/80{
    --tw-gradient-from:rgba(15,23,42,.72)!important;
}

html[data-public-theme="light"] .termino-public section:first-child .termino-business-identity h1.text-white{
    color:#0f172a!important;
    text-shadow:none!important;
}

/* logo border */

html[data-public-theme="light"] .termino-public .border-slate-900{
    border-color:#fff!important;
}

/* ---------- Inputs ---------- */

html[data-public-theme="light"] .termino-public select,
html[data-public-theme="light"] .termino-public textarea,
html[data-public-theme="light"] .termino-public input:not([type="hidden"]){
    background:#f8fafc!important;
    border-color:#dbe4ee!important;
    color:#0f172a!important;
    box-shadow:0 1px 2px rgba(15,23,42,.03);
}

html[data-public-theme="light"] .termino-public select:focus,
html[data-public-theme="light"] .termino-public textarea:focus,
html[data-public-theme="light"] .termino-public input:focus{
    border-color:#38bdf8!important;
    box-shadow:0 0 0 3px rgba(14,165,233,.10)!important;
}

html[data-public-theme="light"] .termino-public textarea::placeholder,
html[data-public-theme="light"] .termino-public input::placeholder{
    color:#94a3b8!important;
}

/* ---------- BOOKING ---------- */

html[data-public-theme="light"] #booking{
    background:
        radial-gradient(500px 220px at 100% 0%,rgba(34,211,238,.08),transparent 70%),
        #fff!important;

    border-color:#bae6fd!important;

    box-shadow:
        0 1px 2px rgba(15,23,42,.03),
        0 22px 60px rgba(15,23,42,.08)!important;
}

html[data-public-theme="light"] #booking h2{
    color:#0f172a!important;
}

html[data-public-theme="light"] #booking label,
html[data-public-theme="light"] #booking .text-slate-400{
    color:#64748b!important;
}

html[data-public-theme="light"] #calendar_prev,
html[data-public-theme="light"] #calendar_next{
    background:#f1f5f9!important;
    border:1px solid #e2e8f0!important;
    color:#334155!important;
}

html[data-public-theme="light"] #calendar_prev:hover,
html[data-public-theme="light"] #calendar_next:hover{
    background:#e0f2fe!important;
    border-color:#bae6fd!important;
    color:#0369a1!important;
}

/* JS-generated calendar buttons */

html[data-public-theme="light"] #booking_date_strip button:not(:disabled){
    background:#f8fafc!important;
    border-color:#e2e8f0!important;
    color:#334155!important;
}

html[data-public-theme="light"] #booking_date_strip button:not(:disabled):hover{
    background:#ecfeff!important;
    border-color:#67e8f9!important;
}

/* selected date has inline/runtime Tailwind classes */
html[data-public-theme="light"] #booking_date_strip button.bg-cyan-500{
    background:#06b6d4!important;
    border-color:#06b6d4!important;
    color:#042f3e!important;
}

/* slots */

html[data-public-theme="light"] #slot_grid button:not(:disabled){
    background:#f8fafc!important;
    border-color:#e2e8f0!important;
    color:#334155!important;
}

html[data-public-theme="light"] #slot_grid button:not(:disabled):hover{
    background:#ecfeff!important;
    border-color:#67e8f9!important;
}

html[data-public-theme="light"] #slot_grid button.bg-cyan-500{
    background:#06b6d4!important;
    border-color:#06b6d4!important;
    color:#042f3e!important;
}

/* ---------- Services / staff ---------- */

html[data-public-theme="light"] .termino-public .bg-white\/\[\.04\]{
    border:1px solid #eef2f7;
}

html[data-public-theme="light"] .termino-public .text-cyan-300{
    color:#0891b2!important;
}

/* ---------- Map ---------- */

html[data-public-theme="light"] #termino-profile-map{
    background:#e2e8f0!important;
}

/* ---------- Modal ---------- */

html[data-public-theme="light"] .termino-public [x-show="customer"] > div{
    background:#fff!important;
    border-color:#e2e8f0!important;
    color:#0f172a!important;
}

/* ---------- Shadows ---------- */

html[data-public-theme="light"] .termino-public .shadow-2xl{
    --tw-shadow:
        0 20px 50px rgba(15,23,42,.08)!important;
    --tw-shadow-colored:
        0 20px 50px var(--tw-shadow-color)!important;
}

/* Mobile bottom navigation intentionally NOT styled here.
   Its geometry and existing theme rules remain isolated. */


/* ==========================================================
   TERMINO BUSINESS PROFILE — DESKTOP V2
   Desktop ONLY. Mobile remains untouched.
   ========================================================== */

@media (min-width:981px){
/*
     * Business header
     */
    html[data-public-theme="light"] .termino-business-hero{
        background:#fff!important;
        border:1px solid #e2e8f0!important;
        box-shadow:
            0 1px 2px rgba(15,23,42,.03),
            0 18px 50px rgba(15,23,42,.07)!important;
    }

    html[data-public-theme="light"] .termino-business-identity{
        background:#fff!important;
    }

    /*
     * IMPORTANT:
     * Light profile must never inherit white text from Dark UI.
     */
    html[data-public-theme="light"] .termino-business-identity h1,
    html[data-public-theme="light"] .termino-business-identity .text-white{
        color:#0f172a!important;
        text-shadow:none!important;
    }

    html[data-public-theme="light"] .termino-business-identity p{
        color:#64748b!important;
    }

    /*
     * Logo overlaps cover/profile header like modern social profiles.
     */
    .termino-public .termino-business-identity > .flex{
        position:relative!important;
        z-index:3!important;
    }

    /*
     * Profile content width / proportions
     */
    .termino-public > main{
        max-width:1500px!important;
    }

    /*
     * Left information / right booking.
     * Booking receives slightly less width than content.
     */
    .termino-public main > .grid.lg\:grid-cols-\[\.85fr\,1\.15fr\]{
        grid-template-columns:minmax(0,1.25fr) minmax(390px,.75fr)!important;
        gap:22px!important;
    }

    /*
     * Premium light cards
     */
    html[data-public-theme="light"] .termino-public main section.bg-slate-900{
        background:#fff!important;
        border-color:#e2e8f0!important;
        box-shadow:
            0 1px 2px rgba(15,23,42,.025),
            0 12px 35px rgba(15,23,42,.045)!important;
    }

    /*
     * All remaining Dark headings on LIGHT profile.
     */
    html[data-public-theme="light"] .termino-public main h1,
    html[data-public-theme="light"] .termino-public main h2,
    html[data-public-theme="light"] .termino-public main h3,
    html[data-public-theme="light"] .termino-public main .text-white{
        color:#0f172a!important;
    }

    html[data-public-theme="light"] .termino-public main .text-slate-100,
    html[data-public-theme="light"] .termino-public main .text-slate-200{
        color:#334155!important;
    }

    html[data-public-theme="light"] .termino-public main .text-slate-400,
    html[data-public-theme="light"] .termino-public main .text-slate-500{
        color:#64748b!important;
    }

    /*
     * Service rows / staff cards
     */
    html[data-public-theme="light"] .termino-public main .bg-white\/\[\.04\],
    html[data-public-theme="light"] .termino-public main .bg-white\/5{
        background:#f8fafc!important;
        border-color:#e2e8f0!important;
    }

    /*
     * Booking card: cleaner SaaS/Figma appearance
     */
    html[data-public-theme="light"] #booking{
        background:#fff!important;
        border:1px solid #dbeafe!important;
        box-shadow:
            0 1px 2px rgba(15,23,42,.03),
            0 20px 55px rgba(15,23,42,.075)!important;
    }

    html[data-public-theme="light"] #booking select,
    html[data-public-theme="light"] #booking textarea{
        background:#f8fafc!important;
        color:#0f172a!important;
        border-color:#dbe4ee!important;
    }
}


/*
 * MOBILE:
 * No cover sizing override here.
 * Existing mobile profile stays as-is.
 */


/* ==========================================================
   TERMINO GLOBAL BUSINESS COVER — SINGLE SOURCE
   Applies to ALL business profiles.
   ========================================================== */

.termino-public .termino-business-cover{
    position:relative!important;
    display:block!important;
    width:100%!important;
    overflow:hidden!important;
    padding:0!important;
    margin:0!important;
    background:#e2e8f0!important;
}


.termino-public .termino-business-cover-bg{
    position:absolute!important;
    inset:-25px!important;

    background-size:cover!important;
    background-position:center center!important;
    background-repeat:no-repeat!important;

    filter:blur(22px) brightness(.72)!important;
    transform:scale(1.08)!important;

    z-index:0!important;
    pointer-events:none!important;
}

.termino-public .termino-business-cover > img.termino-business-cover-image{
    position:absolute!important;
    z-index:1!important;
    inset:0!important;
    display:block!important;

    width:100%!important;
    height:100%!important;

    min-width:100%!important;
    min-height:100%!important;
    max-width:none!important;
    max-height:none!important;

    margin:0!important;
    padding:0!important;

    object-fit:contain!important;
    object-position:center center!important;
}

.termino-public .termino-business-cover > .absolute.inset-0{
    position:absolute!important;
    inset:0!important;
    z-index:2!important;
    pointer-events:none!important;
}

/* Desktop */
@media (min-width:981px){
    .termino-public .termino-business-cover{
        height:320px!important;
        min-height:320px!important;
        max-height:320px!important;
    }
}

/* Tablet */
@media (min-width:641px) and (max-width:980px){
    .termino-public .termino-business-cover{
        height:240px!important;
        min-height:240px!important;
        max-height:240px!important;
    }
}

/* Mobile */
@media (max-width:640px){
    .termino-public .termino-business-cover{
        height:180px!important;
        min-height:180px!important;
        max-height:180px!important;
    }
}

/* END TERMINO GLOBAL BUSINESS COVER */


/* ==========================================================
   TERMINO PUBLIC LIGHT — FINAL CONSOLIDATED LAYER
   Dark theme untouched
   Mobile bottom navigation untouched
========================================================== */

html[data-public-theme="light"]{
    color-scheme:light;
}

html[data-public-theme="light"] body{
    background:
        radial-gradient(900px 520px at 88% -10%,rgba(14,165,233,.075),transparent 62%),
        radial-gradient(760px 480px at 4% 17%,rgba(99,102,241,.045),transparent 65%),
        #f6f8fc;
    color:#0f172a;
}

/* ==========================================================
   GLOBAL PUBLIC TYPOGRAPHY — LIGHT SURFACES ONLY
========================================================== */

html[data-public-theme="light"] .termino-public{
    color:#0f172a;
}

html[data-public-theme="light"] .termino-public .text-slate-100,
html[data-public-theme="light"] .termino-public .text-slate-200{
    color:#1e293b;
}

html[data-public-theme="light"] .termino-public .text-slate-300{
    color:#334155;
}

html[data-public-theme="light"] .termino-public .text-slate-400{
    color:#64748b;
}

html[data-public-theme="light"] .termino-public .text-slate-500{
    color:#64748b;
}

html[data-public-theme="light"] .termino-public .text-slate-600{
    color:#475569;
}

html[data-public-theme="light"] .termino-public .kicker{
    color:#64748b;
}

html[data-public-theme="light"] .termino-public .sectionHead h2{
    color:#0f172a;
}

html[data-public-theme="light"] .termino-public .sectionHead .see{
    color:#0284c7;
}

/* ==========================================================
   HOMEPAGE — NAV / HERO
========================================================== */

html[data-public-theme="light"] .nav{
    background:rgba(255,255,255,.88);
    border-bottom-color:#e2e8f0;
    box-shadow:0 8px 30px rgba(15,23,42,.035);
}

html[data-public-theme="light"] .logo{
    color:#0f172a;
}

html[data-public-theme="light"] .navlinks{
    color:#475569;
}

html[data-public-theme="light"] .navlinks a:hover{
    color:#0284c7;
}

html[data-public-theme="light"] .city,
html[data-public-theme="light"] .ghost{
    color:#334155;
    background:#fff;
    border-color:#e2e8f0;
}

html[data-public-theme="light"] .hero h1{
    color:#0f172a;
}

html[data-public-theme="light"] .hero .grad{
    background:linear-gradient(100deg,#0f172a 0%,#0284c7 48%,#06b6d4 100%);
    -webkit-background-clip:text;
    background-clip:text;
    color:transparent;
}

html[data-public-theme="light"] .hero p{
    color:#64748b;
}

html[data-public-theme="light"] .eyebrow{
    color:#0369a1;
    background:#ecfeff;
    border-color:#bae6fd;
}

html[data-public-theme="light"] .searchbox{
    background:rgba(255,255,255,.96);
    border-color:#dbe4ee;
    box-shadow:0 20px 55px rgba(15,23,42,.10);
}

html[data-public-theme="light"] .searchbox input,
html[data-public-theme="light"] .searchbox select{
    background:#f8fafc;
    color:#0f172a;
    border:1px solid #e2e8f0;
}

html[data-public-theme="light"] .searchbox input::placeholder{
    color:#94a3b8;
}

html[data-public-theme="light"] .quick{
    color:#64748b;
}

html[data-public-theme="light"] .quick span{
    background:rgba(255,255,255,.72);
    border-color:#e2e8f0;
}

/* Search results */

html[data-public-theme="light"] .liveResults{
    background:rgba(255,255,255,.98);
    border-color:#dbeafe;
    box-shadow:0 24px 65px rgba(15,23,42,.16);
}

html[data-public-theme="light"] .liveResult{
    color:#0f172a;
}

html[data-public-theme="light"] .liveResult:hover{
    background:#f1f5f9;
}

html[data-public-theme="light"] .liveResultText span{
    color:#64748b;
}

/* ==========================================================
   HERO DEMO PHONE
   Intentionally remains dark — product preview
========================================================== */

html[data-public-theme="light"] .heroVisual .phone{
    color:#f8fafc;
}

html[data-public-theme="light"] .heroVisual .phone .appSub,
html[data-public-theme="light"] .heroVisual .phone .meta{
    color:#94a3b8;
}

/* ==========================================================
   STATS
========================================================== */

html[data-public-theme="light"] .stats{
    background:#fff;
    border-color:#e2e8f0;
    box-shadow:0 12px 35px rgba(15,23,42,.045);
}

html[data-public-theme="light"] .stat + .stat{
    border-color:#e2e8f0;
}

html[data-public-theme="light"] .stat b{
    color:#0f172a;
}

html[data-public-theme="light"] .stat span{
    color:#64748b;
}

/* ==========================================================
   CATEGORY CARDS
   Keep photographic cards dark for guaranteed readability
========================================================== */

html[data-public-theme="light"] .v6-category{
    border-color:rgba(255,255,255,.18);
}

html[data-public-theme="light"] .v6-category .v6-cat-name{
    color:#fff;
}

html[data-public-theme="light"] .v6-category .v6-cat-desc{
    color:#cbd5e1;
}

html[data-public-theme="light"] .v6-category .v6-cat-count{
    color:#e2e8f0;
}

html[data-public-theme="light"] .v6-category .v6-cat-action{
    color:#cbd5e1;
}

html[data-public-theme="light"] .v6-category .v6-cat-icon{
    color:#fff;
}

/* ==========================================================
   FEATURED COMPANIES
========================================================== */

html[data-public-theme="light"] #companies .company{
    background:#fff;
    border-color:#e2e8f0;
    box-shadow:0 14px 40px rgba(15,23,42,.07);
}

html[data-public-theme="light"] #companies .company:hover{
    border-color:#bae6fd;
    box-shadow:0 24px 55px rgba(15,23,42,.12);
}

html[data-public-theme="light"] #companies .companyBody{
    color:#0f172a;
}

html[data-public-theme="light"] #companies .companyLogo{
    border-color:#fff;
    background:#fff;
    color:#0f172a;
    box-shadow:0 8px 22px rgba(15,23,42,.14);
}

html[data-public-theme="light"] #companies .companyTitle{
    color:#0f172a;
}

html[data-public-theme="light"] #companies .companyMeta{
    color:#64748b;
}

html[data-public-theme="light"] #companies .companyFoot{
    border-top-color:#e2e8f0;
}

html[data-public-theme="light"] #companies .next{
    color:#64748b;
}

html[data-public-theme="light"] #companies .next b{
    color:#059669;
}

html[data-public-theme="light"] #companies .book{
    color:#0369a1;
    background:#ecfeff;
    border-color:#bae6fd;
}

html[data-public-theme="light"] #companies .book:hover{
    color:#fff;
    background:#0284c7;
    border-color:#0284c7;
}

/* Featured badge remains on cover */

html[data-public-theme="light"] #companies .cover .badge{
    color:#fff;
}

/* ==========================================================
   DISCOVERY
   Photo cards intentionally remain dark
========================================================== */

html[data-public-theme="light"] #discover .discoveryCard{
    border-color:rgba(15,23,42,.12);
    box-shadow:0 14px 36px rgba(15,23,42,.09);
}

html[data-public-theme="light"] #discover .discoveryTag{
    color:#e2e8f0;
}

html[data-public-theme="light"] #discover .discoveryTitle{
    color:#fff;
}

html[data-public-theme="light"] #discover .discoveryMeta{
    color:#cbd5e1;
}

html[data-public-theme="light"] #discover .discoverySlot{
    color:#cbd5e1;
}

html[data-public-theme="light"] #discover .discoverySlot b{
    color:#6ee7b7;
}

/* ==========================================================
   TERMINO BUSINESS PITCH
   Light outer card; dashboard preview remains dark
========================================================== */

html[data-public-theme="light"] #companies .systemPitch{
    background:
        radial-gradient(650px 330px at 100% 0,rgba(14,165,233,.10),transparent 64%),
        radial-gradient(500px 350px at 0 100%,rgba(139,92,246,.055),transparent 70%),
        #fff;
    border-color:#dbeafe;
    box-shadow:0 25px 70px rgba(15,23,42,.08);
}

html[data-public-theme="light"] #companies .systemPitch h2{
    color:#0f172a;
}

html[data-public-theme="light"] #companies .systemPitch .lead{
    color:#64748b;
}

html[data-public-theme="light"] #companies .promise{
    color:#475569;
    background:#f0f9ff;
}

html[data-public-theme="light"] #companies .promise strong{
    color:#0f172a;
}

html[data-public-theme="light"] #companies .benefit{
    background:#f8fafc;
    border-color:#e2e8f0;
}

html[data-public-theme="light"] #companies .benefit b{
    color:#1e293b;
}

html[data-public-theme="light"] #companies .benefit span{
    color:#64748b;
}

/* Dashboard is a deliberate dark product preview */

html[data-public-theme="light"] #companies .dashboard3d,
html[data-public-theme="light"] #companies .floatReport{
    color:#f8fafc;
}

html[data-public-theme="light"] #companies .dashboard3d .dtop b,
html[data-public-theme="light"] #companies .dashboard3d .dm b{
    color:#fff;
}

html[data-public-theme="light"] #companies .dashboard3d .dm span{
    color:#94a3b8;
}

html[data-public-theme="light"] #companies .dashboard3d .drow b{
    color:#e2e8f0;
}

/* ==========================================================
   TODAY / HOW IT WORKS
========================================================== */

html[data-public-theme="light"] .lastCard,
html[data-public-theme="light"] .how{
    background:#fff;
    border-color:#e2e8f0;
    box-shadow:0 12px 35px rgba(15,23,42,.05);
}

html[data-public-theme="light"] .lastCard h2,
html[data-public-theme="light"] .how h2{
    color:#0f172a;
}

html[data-public-theme="light"] .lastItem + .lastItem{
    border-color:#e2e8f0;
}

html[data-public-theme="light"] .liIcon{
    background:#f1f5f9;
    color:#0369a1;
}

html[data-public-theme="light"] .liTitle{
    color:#0f172a;
}

html[data-public-theme="light"] .liMeta,
html[data-public-theme="light"] .discount span{
    color:#64748b;
}

html[data-public-theme="light"] .step b{
    color:#1e293b;
}

html[data-public-theme="light"] .step p{
    color:#64748b;
}

html[data-public-theme="light"] .num{
    background:#ecfeff;
    color:#0284c7;
}

/* ==========================================================
   CTA + FOOTER
========================================================== */

html[data-public-theme="light"] .cta{
    background:
        radial-gradient(500px 180px at 80% 0,rgba(14,165,233,.10),transparent 65%),
        #fff;
    border-color:#bae6fd;
    box-shadow:0 18px 50px rgba(15,23,42,.06);
}

html[data-public-theme="light"] .cta h2{
    color:#0f172a;
}

html[data-public-theme="light"] .cta p{
    color:#64748b;
}

html[data-public-theme="light"] footer{
    color:#64748b;
    border-top-color:#e2e8f0;
    background:#fff;
}

html[data-public-theme="light"] footer b{
    color:#0f172a !important;
}

html[data-public-theme="light"] footer a:hover{
    color:#0284c7;
}

/* ==========================================================
   BUSINESS DIRECTORY / GENERIC PUBLIC CARDS
========================================================== */

html[data-public-theme="light"] .termino-public .bg-slate-950,
html[data-public-theme="light"] .termino-public .bg-slate-900{
    background-color:#f6f8fc;
}

html[data-public-theme="light"] .termino-public .bg-slate-800{
    background-color:#f1f5f9;
}

html[data-public-theme="light"] .termino-public .border-white\/10,
html[data-public-theme="light"] .termino-public .border-white\/5{
    border-color:#e2e8f0;
}

html[data-public-theme="light"] .termino-public .bg-white\/\[\.04\],
html[data-public-theme="light"] .termino-public .bg-white\/5{
    background-color:#fff;
}

/* ==========================================================
   BUSINESS PROFILE
========================================================== */

html[data-public-theme="light"] .termino-business-hero{
    background:#fff;
    border-color:#e2e8f0;
    box-shadow:0 18px 50px rgba(15,23,42,.08);
}

html[data-public-theme="light"] .termino-business-identity{
    background:#fff;
    color:#0f172a;
}

html[data-public-theme="light"] .termino-business-identity h1{
    color:#0f172a !important;
}

html[data-public-theme="light"] .termino-business-identity p{
    color:#64748b;
}

/* Cover itself remains photographic/dark */

html[data-public-theme="light"] .termino-business-cover .text-white{
    color:#fff !important;
}

/* Main profile sections */

html[data-public-theme="light"] .termino-public main section:not(.termino-business-hero){
    border-color:#e2e8f0;
}

html[data-public-theme="light"] .termino-public main h2,
html[data-public-theme="light"] .termino-public main h3{
    color:#0f172a;
}

/* Gallery captions are on photos */

html[data-public-theme="light"] .termino-public .bg-gradient-to-t.text-white,
html[data-public-theme="light"] .termino-public [class*="bg-gradient-to-t"] .text-white{
    color:#fff !important;
}

/* ==========================================================
   FORMS / BOOKING
========================================================== */

html[data-public-theme="light"] #booking{
    background:#fff;
    color:#0f172a;
    border-color:#dbe4ee;
    box-shadow:0 18px 50px rgba(15,23,42,.08);
}

html[data-public-theme="light"] #booking h2,
html[data-public-theme="light"] #booking h3{
    color:#0f172a;
}

html[data-public-theme="light"] #booking label{
    color:#475569;
}

html[data-public-theme="light"] #booking input,
html[data-public-theme="light"] #booking select,
html[data-public-theme="light"] #booking textarea{
    color:#0f172a;
    background:#f8fafc;
    border-color:#cbd5e1;
}

html[data-public-theme="light"] #booking input::placeholder,
html[data-public-theme="light"] #booking textarea::placeholder{
    color:#94a3b8;
}

html[data-public-theme="light"] #booking select option{
    color:#0f172a;
    background:#fff;
}

html[data-public-theme="light"] #booking_date_strip button:not(:disabled){
    color:#334155;
    background:#f8fafc;
    border-color:#e2e8f0;
}

html[data-public-theme="light"] #booking_date_strip button:not(:disabled):hover{
    color:#0369a1;
    background:#ecfeff;
    border-color:#7dd3fc;
}

html[data-public-theme="light"] #booking_date_strip button.bg-cyan-500{
    color:#082f49 !important;
    background:#67e8f9 !important;
    border-color:#22d3ee !important;
}

html[data-public-theme="light"] #booking_slots button{
    color:#334155;
    background:#f8fafc;
    border-color:#e2e8f0;
}

html[data-public-theme="light"] #booking_slots button:hover{
    color:#0369a1;
    background:#ecfeff;
    border-color:#7dd3fc;
}

html[data-public-theme="light"] #booking_slots button.bg-cyan-500{
    color:#082f49 !important;
    background:#67e8f9 !important;
}

/* Success / error semantic colors */

html[data-public-theme="light"] .termino-public .text-emerald-300,
html[data-public-theme="light"] .termino-public .text-emerald-200{
    color:#047857;
}

html[data-public-theme="light"] .termino-public .text-rose-300{
    color:#be123c;
}

/* ==========================================================
   RENT A CAR PUBLIC
   Scope only visual colors — no rental logic touched
========================================================== */

html[data-public-theme="light"] .termino-public [class*="rental"] input,
html[data-public-theme="light"] .termino-public [class*="rental"] select,
html[data-public-theme="light"] .termino-public [class*="rental"] textarea{
    color:#0f172a;
    background:#f8fafc;
    border-color:#cbd5e1;
}

html[data-public-theme="light"] .termino-public [class*="rental"] input::placeholder,
html[data-public-theme="light"] .termino-public [class*="rental"] textarea::placeholder{
    color:#94a3b8;
}

/* ==========================================================
   BUTTON CONTRAST
========================================================== */

html[data-public-theme="light"] .termino-public .bg-cyan-500{
    color:#082f49;
}

html[data-public-theme="light"] .termino-public .bg-blue-600,
html[data-public-theme="light"] .termino-public .bg-indigo-600{
    color:#fff;
}

/* ==========================================================
   FOCUS
========================================================== */

html[data-public-theme="light"] .termino-public input:focus,
html[data-public-theme="light"] .termino-public select:focus,
html[data-public-theme="light"] .termino-public textarea:focus{
    border-color:#38bdf8;
    outline:none;
    box-shadow:0 0 0 3px rgba(14,165,233,.12);
}

/* ==========================================================
   IMPORTANT:
   public mobile bottom navigation deliberately excluded.
========================================================== */


/* ==========================================================
   TERMINO LIGHT — DIRECTORY V2
   Premium separated business cards
   LIGHT ONLY
========================================================== */

html[data-public-theme="light"] .termino-directory-shell{
    max-width:1280px!important;
    padding:42px 34px 70px!important;
}

html[data-public-theme="light"] .termino-directory-title{
    margin-bottom:22px!important;
}

html[data-public-theme="light"] .termino-directory-title .kicker{
    color:#64748b!important;
    font-size:11px;
    letter-spacing:.12em;
}

html[data-public-theme="light"] .termino-directory-title h1{
    margin-top:5px!important;
    color:#0f172a!important;
    font-weight:800!important;
}

/* SEARCH BAR */

html[data-public-theme="light"] .termino-directory-search{
    display:grid!important;
    grid-template-columns:minmax(230px,1.35fr) minmax(190px,1fr) 140px 110px!important;
    gap:10px!important;

    margin-bottom:30px!important;
    padding:10px!important;

    background:rgba(255,255,255,.88)!important;
    border:1px solid #e2e8f0!important;
    border-radius:19px!important;

    box-shadow:
        0 10px 30px rgba(15,23,42,.045),
        0 1px 2px rgba(15,23,42,.03)!important;
}

html[data-public-theme="light"] .termino-directory-search input,
html[data-public-theme="light"] .termino-directory-search select{
    height:48px!important;
    background:#f8fafc!important;
    color:#0f172a!important;
    border:1px solid #e2e8f0!important;
    border-radius:12px!important;
    outline:none!important;
}

html[data-public-theme="light"] .termino-directory-search input:focus,
html[data-public-theme="light"] .termino-directory-search select:focus{
    background:#fff!important;
    border-color:#38bdf8!important;
    box-shadow:0 0 0 3px rgba(14,165,233,.10)!important;
}

html[data-public-theme="light"] .termino-directory-search button{
    height:48px!important;
    border-radius:12px!important;
    background:linear-gradient(135deg,#22d3ee,#0ea5e9)!important;
    color:#06202b!important;
    box-shadow:0 8px 20px rgba(14,165,233,.16)!important;
}

/* ==========================================================
   BUSINESS GRID
========================================================== */

html[data-public-theme="light"] .termino-business-grid{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:22px!important;
    align-items:stretch!important;
}

/* ==========================================================
   BUSINESS CARD
========================================================== */

html[data-public-theme="light"] .termino-business-card{
    position:relative!important;
    min-width:0!important;
    overflow:hidden!important;

    display:flex!important;
    flex-direction:column!important;

    background:#fff!important;
    border:1px solid #e2e8f0!important;
    border-radius:22px!important;

    box-shadow:
        0 10px 30px rgba(15,23,42,.055),
        0 1px 3px rgba(15,23,42,.025)!important;

    transition:
        transform .25s cubic-bezier(.2,.8,.2,1),
        box-shadow .25s ease,
        border-color .25s ease!important;
}

html[data-public-theme="light"] .termino-business-card:hover{
    transform:translateY(-5px)!important;
    border-color:#bae6fd!important;

    box-shadow:
        0 22px 50px rgba(15,23,42,.105),
        0 0 0 1px rgba(14,165,233,.035)!important;
}

/* COVER */

html[data-public-theme="light"] .termino-business-card > .relative.h-40{
    height:180px!important;
    flex:0 0 180px!important;

    overflow:hidden!important;
    background:
        linear-gradient(135deg,#e8eef5,#f8fafc)!important;
}

html[data-public-theme="light"] .termino-business-card > .relative.h-40 > img{
    width:100%!important;
    height:100%!important;

    object-fit:cover!important;
    object-position:center!important;

    transition:transform .5s cubic-bezier(.2,.8,.2,1)!important;
}

html[data-public-theme="light"] .termino-business-card:hover > .relative.h-40 > img{
    transform:scale(1.035)!important;
}

/* subtle image readability */

html[data-public-theme="light"] .termino-business-card > .relative.h-40:after{
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;

    background:
        linear-gradient(
            180deg,
            rgba(15,23,42,0) 45%,
            rgba(15,23,42,.10) 100%
        );
}

/* FEATURED */

html[data-public-theme="light"] .termino-business-card > .relative.h-40 > span{
    z-index:3!important;

    top:13px!important;
    right:13px!important;

    padding:7px 10px!important;

    color:#fff!important;
    background:linear-gradient(135deg,#7c3aed,#8b5cf6)!important;
    border:1px solid rgba(255,255,255,.30)!important;
    border-radius:999px!important;

    box-shadow:0 7px 18px rgba(91,33,182,.24)!important;

    font-size:9px!important;
    letter-spacing:.045em!important;
}

/* ==========================================================
   CARD BODY
========================================================== */

html[data-public-theme="light"] .termino-business-card > .relative.p-5{
    position:relative!important;

    display:flex!important;
    flex:1!important;
    flex-direction:column!important;

    padding:47px 18px 18px!important;

    background:#fff!important;
}

/* LOGO */

html[data-public-theme="light"] .termino-business-card > .relative.p-5 > .absolute{
    width:68px!important;
    height:68px!important;

    top:-34px!important;
    left:18px!important;

    overflow:hidden!important;

    background:#fff!important;
    border:4px solid #fff!important;
    border-radius:18px!important;

    box-shadow:
        0 9px 24px rgba(15,23,42,.15),
        0 0 0 1px rgba(15,23,42,.035)!important;
}

html[data-public-theme="light"] .termino-business-card > .relative.p-5 > .absolute img{
    width:100%!important;
    height:100%!important;
    object-fit:contain!important;
}

/* TITLE */

html[data-public-theme="light"] .termino-business-card h2{
    margin:0!important;

    color:#0f172a!important;

    font-size:17px!important;
    line-height:1.25!important;
    font-weight:800!important;
    letter-spacing:-.02em!important;
}

/* CATEGORY / CITY */

html[data-public-theme="light"] .termino-business-card h2 + p{
    margin-top:6px!important;

    color:#64748b!important;

    font-size:12px!important;
    line-height:1.45!important;
}

/* SERVICE CHIPS */

html[data-public-theme="light"] .termino-business-card .mt-4.flex.min-h-7{
    min-height:34px!important;
    margin-top:15px!important;
    gap:6px!important;
}

html[data-public-theme="light"] .termino-business-card .mt-4.flex.min-h-7 span{
    display:inline-flex!important;
    align-items:center!important;

    padding:6px 9px!important;

    color:#475569!important;
    background:#f1f5f9!important;
    border:1px solid #e2e8f0!important;
    border-radius:9px!important;

    font-size:10px!important;
    font-weight:700!important;
}

/* AVAILABILITY */

html[data-public-theme="light"] .termino-business-card .mt-4.text-sm.font-bold{
    margin-top:18px!important;
    padding-top:14px!important;

    border-top:1px solid #eef2f7!important;

    font-size:11px!important;
    line-height:1.4!important;
}

html[data-public-theme="light"] .termino-business-card .text-emerald-300{
    color:#059669!important;
}

html[data-public-theme="light"] .termino-business-card .text-slate-500{
    color:#64748b!important;
}

/* ==========================================================
   CARD ACTIONS
========================================================== */

html[data-public-theme="light"] .termino-business-card .mt-4.grid.grid-cols-2{
    margin-top:auto!important;
    padding-top:16px!important;
    gap:8px!important;
}

html[data-public-theme="light"] .termino-business-card .mt-4.grid.grid-cols-2 a{
    min-height:43px!important;

    display:flex!important;
    align-items:center!important;
    justify-content:center!important;

    padding:0 12px!important;
    border-radius:12px!important;

    font-size:11px!important;
    font-weight:850!important;

    transition:
        transform .18s ease,
        background .18s ease,
        border-color .18s ease!important;
}

/* BOOK */

html[data-public-theme="light"] .termino-business-card .mt-4.grid.grid-cols-2 a:first-child{
    color:#06202b!important;
    background:linear-gradient(135deg,#22d3ee,#38bdf8)!important;
    border:1px solid transparent!important;

    box-shadow:0 7px 17px rgba(14,165,233,.13)!important;
}

html[data-public-theme="light"] .termino-business-card .mt-4.grid.grid-cols-2 a:first-child:hover{
    transform:translateY(-1px)!important;
    background:linear-gradient(135deg,#06b6d4,#0ea5e9)!important;
}

/* PROFILE */

html[data-public-theme="light"] .termino-business-card .mt-4.grid.grid-cols-2 a:last-child{
    color:#334155!important;
    background:#fff!important;
    border:1px solid #dbe3ec!important;
}

html[data-public-theme="light"] .termino-business-card .mt-4.grid.grid-cols-2 a:last-child:hover{
    color:#0369a1!important;
    background:#f8fafc!important;
    border-color:#7dd3fc!important;
}

/* DISTANCE */

html[data-public-theme="light"] .termino-distance-badge{
    color:#0369a1!important;
    background:#ecfeff!important;
    border-color:#bae6fd!important;
}

/* ==========================================================
   MAP PANEL — LIGHT HEADER, MAP ITSELF UNTOUCHED
========================================================== */

html[data-public-theme="light"] .termino-near-panel{
    background:#fff!important;
    border-color:#e2e8f0!important;

    box-shadow:0 12px 35px rgba(15,23,42,.055)!important;
}

html[data-public-theme="light"] .termino-near-head h2{
    color:#0f172a!important;
}

html[data-public-theme="light"] .termino-near-head p{
    color:#64748b!important;
}

html[data-public-theme="light"] .termino-near-kicker{
    color:#0284c7!important;
}

/* ==========================================================
   TABLET
========================================================== */

@media (max-width:1100px) and (min-width:701px){

    html[data-public-theme="light"] .termino-business-grid{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
    }

    html[data-public-theme="light"] .termino-directory-search{
        grid-template-columns:1fr 1fr!important;
    }
}

/* ==========================================================
   MOBILE CARDS
   Mobile bottom NAV intentionally NOT targeted.
========================================================== */

@media (max-width:700px){

    html[data-public-theme="light"] .termino-directory-shell{
        padding:24px 14px 40px!important;
    }

    html[data-public-theme="light"] .termino-directory-search{
        grid-template-columns:1fr!important;
        padding:8px!important;
        margin-bottom:20px!important;
    }

    html[data-public-theme="light"] .termino-business-grid{
        grid-template-columns:1fr!important;
        gap:14px!important;
    }

    html[data-public-theme="light"] .termino-business-card{
        border-radius:19px!important;
    }

    html[data-public-theme="light"] .termino-business-card > .relative.h-40{
        height:165px!important;
        flex-basis:165px!important;
    }

    html[data-public-theme="light"] .termino-business-card > .relative.p-5{
        padding:44px 15px 15px!important;
    }
}


/* ==========================================================
   TERMINO PUBLIC — HOMEPAGE LIGHT V2
   Homepage visual system only
   Dark theme untouched
   Mobile bottom navigation untouched
========================================================== */

/* ---------- PAGE ---------- */

html[data-public-theme="light"] body{
    background:
        radial-gradient(circle at 82% 5%,rgba(56,189,248,.10),transparent 26%),
        radial-gradient(circle at 22% 30%,rgba(14,165,233,.045),transparent 24%),
        #f6f8fc!important;
}

html[data-public-theme="light"] .termino-public{
    color:#0f172a;
}

html[data-public-theme="light"] .section{
    position:relative;
}

html[data-public-theme="light"] .sectionHead h2{
    color:#0f172a!important;
}

html[data-public-theme="light"] .sectionHead p,
html[data-public-theme="light"] .sectionHead .sub{
    color:#64748b!important;
}

html[data-public-theme="light"] .kicker,
html[data-public-theme="light"] .eyebrow{
    color:#0284c7!important;
}

/* ==========================================================
   HERO
========================================================== */

html[data-public-theme="light"] .hero{
    position:relative;
    background:transparent!important;
}

html[data-public-theme="light"] .hero:before{
    content:"";
    position:absolute;
    width:560px;
    height:560px;
    right:5%;
    top:-180px;
    border-radius:50%;
    pointer-events:none;
    background:radial-gradient(
        circle,
        rgba(34,211,238,.13) 0%,
        rgba(56,189,248,.055) 42%,
        transparent 70%
    );
    filter:blur(3px);
}

html[data-public-theme="light"] .heroGrid{
    position:relative;
    z-index:1;
}

html[data-public-theme="light"] .hero h1{
    color:#0f172a!important;
    text-shadow:none!important;
}

html[data-public-theme="light"] .hero .grad{
    background:linear-gradient(
        100deg,
        #0369a1 0%,
        #0284c7 43%,
        #06b6d4 100%
    )!important;
    -webkit-background-clip:text!important;
    background-clip:text!important;
    -webkit-text-fill-color:transparent;
    color:transparent!important;
}

html[data-public-theme="light"] .hero p{
    color:#64748b!important;
}

/* ==========================================================
   SEARCH
========================================================== */

html[data-public-theme="light"] .searchbox{
    background:rgba(255,255,255,.92)!important;
    border:1px solid #dce5ef!important;
    box-shadow:
        0 20px 55px rgba(15,23,42,.09),
        0 2px 6px rgba(15,23,42,.035)!important;
    backdrop-filter:blur(18px);
}

html[data-public-theme="light"] .searchbox input,
html[data-public-theme="light"] .searchbox select{
    color:#0f172a!important;
    background:transparent!important;
}

html[data-public-theme="light"] .searchbox input::placeholder{
    color:#94a3b8!important;
}

html[data-public-theme="light"] .searchbox svg{
    color:#64748b!important;
}

html[data-public-theme="light"] .quick{
    color:#475569!important;
    background:#fff!important;
    border:1px solid #e2e8f0!important;
    box-shadow:0 3px 10px rgba(15,23,42,.035);
}

html[data-public-theme="light"] .quick:hover{
    color:#0369a1!important;
    border-color:#7dd3fc!important;
    background:#f0f9ff!important;
    transform:translateY(-1px);
}

/* CATEGORY RAIL BELOW SEARCH */

html[data-public-theme="light"] .homeCategoryRail a{
    color:#475569!important;
    background:rgba(255,255,255,.88)!important;
    border-color:#e2e8f0!important;
    box-shadow:0 3px 10px rgba(15,23,42,.025);
}

html[data-public-theme="light"] .homeCategoryRail a:hover{
    color:#0369a1!important;
    background:#ecfeff!important;
    border-color:#7dd3fc!important;
}

/* ==========================================================
   LIVE SEARCH RESULTS
========================================================== */

html[data-public-theme="light"] .liveResults{
    background:rgba(255,255,255,.98)!important;
    border:1px solid #dbe5ef!important;
    box-shadow:0 24px 60px rgba(15,23,42,.15)!important;
}

html[data-public-theme="light"] .liveResult{
    color:#0f172a!important;
}

html[data-public-theme="light"] .liveResult:hover{
    background:#f1f5f9!important;
}

html[data-public-theme="light"] .liveResult .meta{
    color:#64748b!important;
}

/* ==========================================================
   HERO PRODUCT PREVIEW
   Intentionally remains DARK.
========================================================== */

html[data-public-theme="light"] .heroVisual .phone{
    background:#080d15!important;
    color:#f8fafc!important;
    border-color:rgba(255,255,255,.10)!important;
    box-shadow:
        0 35px 80px rgba(15,23,42,.20),
        0 0 0 1px rgba(15,23,42,.04)!important;
}

html[data-public-theme="light"] .heroVisual .phone .bizname{
    color:#f8fafc!important;
}

html[data-public-theme="light"] .heroVisual .phone .meta{
    color:#8794a8!important;
}

/* ==========================================================
   STATS
========================================================== */

html[data-public-theme="light"] .stats{
    background:rgba(255,255,255,.78)!important;
    border-color:#e2e8f0!important;
    box-shadow:0 14px 38px rgba(15,23,42,.045)!important;
}

html[data-public-theme="light"] .stats b{
    color:#0f172a!important;
}

html[data-public-theme="light"] .stats span{
    color:#64748b!important;
}

/* ==========================================================
   CATEGORY PHOTO CARDS
   Keep photographic cards dark.
========================================================== */

html[data-public-theme="light"] .v6-category{
    border-color:rgba(15,23,42,.09)!important;
    box-shadow:0 12px 30px rgba(15,23,42,.10)!important;
}

html[data-public-theme="light"] .v6-category:hover{
    transform:translateY(-5px);
    box-shadow:0 22px 45px rgba(15,23,42,.16)!important;
}

html[data-public-theme="light"] .v6-category,
html[data-public-theme="light"] .v6-category h3,
html[data-public-theme="light"] .v6-category .title,
html[data-public-theme="light"] .v6-category .name{
    color:#fff!important;
}

html[data-public-theme="light"] .v6-category p,
html[data-public-theme="light"] .v6-category .meta{
    color:rgba(255,255,255,.78)!important;
}

/* ==========================================================
   FEATURED COMPANIES
========================================================== */

html[data-public-theme="light"] #companies .company{
    background:#fff!important;
    border:1px solid #e2e8f0!important;
    box-shadow:
        0 12px 32px rgba(15,23,42,.055),
        0 1px 3px rgba(15,23,42,.025)!important;
}

html[data-public-theme="light"] #companies .company:hover{
    border-color:#bae6fd!important;
    transform:translateY(-4px);
    box-shadow:0 20px 45px rgba(15,23,42,.10)!important;
}

html[data-public-theme="light"] #companies .companyName,
html[data-public-theme="light"] #companies .company h3{
    color:#0f172a!important;
}

html[data-public-theme="light"] #companies .companyMeta{
    color:#64748b!important;
}

html[data-public-theme="light"] #companies .companyLogo{
    background:#fff!important;
    border-color:#fff!important;
    box-shadow:0 7px 20px rgba(15,23,42,.13)!important;
}

/* ==========================================================
   BUSINESS / SYSTEM PITCH
   Outer surface = LIGHT
========================================================== */

html[data-public-theme="light"] #companies .systemPitch{
    position:relative;
    overflow:hidden;

    background:
        radial-gradient(circle at 90% 10%,rgba(34,211,238,.12),transparent 28%),
        linear-gradient(145deg,#ffffff,#f7fbff)!important;

    border:1px solid #dbe7f1!important;
    box-shadow:0 20px 55px rgba(15,23,42,.07)!important;
}

html[data-public-theme="light"] #companies .systemPitch:before{
    opacity:.45;
}

html[data-public-theme="light"] #companies .systemPitch h2{
    color:#0f172a!important;
}

html[data-public-theme="light"] #companies .systemPitch .lead{
    color:#64748b!important;
}

html[data-public-theme="light"] #companies .systemPitch .eyebrow{
    color:#0284c7!important;
}

/*
   Dashboard/product preview inside systemPitch
   deliberately remains DARK.
*/

html[data-public-theme="light"] #companies .systemPitch .system3d,
html[data-public-theme="light"] #companies .systemPitch .dashboard3d{
    color:#e5edf7;
}

/* Benefits */

html[data-public-theme="light"] #companies .benefits > *{
    background:rgba(255,255,255,.75)!important;
    border-color:#e2e8f0!important;
    color:#334155!important;
}

/* ==========================================================
   DISCOVER
   Photo cards deliberately remain DARK.
========================================================== */

html[data-public-theme="light"] #discover .discoveryCard{
    border-color:rgba(15,23,42,.10)!important;
    box-shadow:0 14px 34px rgba(15,23,42,.12)!important;
}

html[data-public-theme="light"] #discover .discoveryCard:hover{
    transform:translateY(-5px);
    box-shadow:0 23px 48px rgba(15,23,42,.17)!important;
}

html[data-public-theme="light"] #discover .discoveryCard,
html[data-public-theme="light"] #discover .discoveryCard h3,
html[data-public-theme="light"] #discover .discoveryCard .title{
    color:#fff!important;
}

html[data-public-theme="light"] #discover .discoveryCard .meta{
    color:rgba(255,255,255,.76)!important;
}

html[data-public-theme="light"] #discover .discoveryTag{
    color:#fff!important;
}

/* ==========================================================
   LAST MINUTE / HOW IT WORKS
========================================================== */

html[data-public-theme="light"] .lastCard,
html[data-public-theme="light"] .how{
    background:#fff!important;
    border:1px solid #e2e8f0!important;
    box-shadow:0 12px 34px rgba(15,23,42,.05)!important;
}

html[data-public-theme="light"] .lastCard h2,
html[data-public-theme="light"] .how h2,
html[data-public-theme="light"] .lastCard h3,
html[data-public-theme="light"] .how h3{
    color:#0f172a!important;
}

html[data-public-theme="light"] .lastItem + .lastItem{
    border-color:#eef2f7!important;
}

html[data-public-theme="light"] .liIcon{
    background:#f0f9ff!important;
    border:1px solid #dff3fb;
}

html[data-public-theme="light"] .liTitle{
    color:#0f172a!important;
}

html[data-public-theme="light"] .liMeta{
    color:#64748b!important;
}

html[data-public-theme="light"] .discount span{
    color:#64748b!important;
}

html[data-public-theme="light"] .discount b{
    color:#059669!important;
}

/* HOW STEPS */

html[data-public-theme="light"] .how .step,
html[data-public-theme="light"] .how [class*="step"]{
    border-color:#eef2f7;
}

html[data-public-theme="light"] .how p{
    color:#64748b!important;
}

/* ==========================================================
   CTA
========================================================== */

html[data-public-theme="light"] .cta{
    position:relative;
    overflow:hidden;

    background:
        radial-gradient(circle at 80% 20%,rgba(34,211,238,.16),transparent 28%),
        linear-gradient(135deg,#ffffff,#f0f9ff)!important;

    border:1px solid #d9e8f2!important;
    box-shadow:0 18px 50px rgba(15,23,42,.07)!important;
}

html[data-public-theme="light"] .cta h2{
    color:#0f172a!important;
}

html[data-public-theme="light"] .cta p{
    color:#64748b!important;
}

/* PRIMARY CTA */

html[data-public-theme="light"] .primary{
    background:linear-gradient(135deg,#22d3ee,#0ea5e9)!important;
    color:#06202b!important;
    border-color:transparent!important;
    box-shadow:0 8px 22px rgba(14,165,233,.18)!important;
}

html[data-public-theme="light"] .primary:hover{
    transform:translateY(-1px);
    box-shadow:0 12px 27px rgba(14,165,233,.24)!important;
}

/* ==========================================================
   FOOTER
========================================================== */

html[data-public-theme="light"] footer,
html[data-public-theme="light"] .footer{
    color:#64748b!important;
    border-color:#e2e8f0!important;
}

html[data-public-theme="light"] .footerin{
    color:#64748b!important;
}

html[data-public-theme="light"] footer a,
html[data-public-theme="light"] .footer a{
    color:#475569!important;
}

html[data-public-theme="light"] footer a:hover,
html[data-public-theme="light"] .footer a:hover{
    color:#0284c7!important;
}

/* ==========================================================
   COMMON SECONDARY BUTTONS
========================================================== */

html[data-public-theme="light"] .ghost{
    color:#334155!important;
    background:#fff!important;
    border-color:#dce5ef!important;
}

html[data-public-theme="light"] .ghost:hover{
    color:#0369a1!important;
    background:#f8fafc!important;
    border-color:#7dd3fc!important;
}

/* ==========================================================
   TABLET
========================================================== */

@media(max-width:900px){

    html[data-public-theme="light"] #companies .systemPitch{
        padding:28px!important;
    }

    html[data-public-theme="light"] .lastgrid{
        gap:14px!important;
    }
}

/* ==========================================================
   MOBILE HOMEPAGE
   Bottom navigation intentionally excluded.
========================================================== */

@media(max-width:620px){

    html[data-public-theme="light"] .hero:before{
        width:340px;
        height:340px;
        right:-120px;
        top:-80px;
    }

    html[data-public-theme="light"] .searchbox{
        box-shadow:0 12px 35px rgba(15,23,42,.08)!important;
    }

    html[data-public-theme="light"] #companies .systemPitch{
        padding:23px 17px!important;
        border-radius:24px!important;
    }

    html[data-public-theme="light"] .lastCard,
    html[data-public-theme="light"] .how{
        border-radius:20px!important;
    }

    html[data-public-theme="light"] .cta{
        border-radius:22px!important;
    }
}

/* END — TERMINO HOMEPAGE LIGHT V2 */

/* ==========================================================
   TERMINO PUBLIC — RENT A CAR LIGHT V2
   Visual layer only.
   Rental logic untouched.
   Dark theme untouched.
========================================================== */

/* ---------- ROOT ---------- */

html[data-public-theme="light"] .r5{
    color:#0f172a!important;
    background:#fff!important;
    border:1px solid #e2e8f0!important;
    border-radius:26px!important;
    box-shadow:
        0 18px 50px rgba(15,23,42,.065),
        0 2px 5px rgba(15,23,42,.025)!important;
}

/* ---------- HEADER ---------- */

html[data-public-theme="light"] .r5-head{
    border-color:#e8eef5!important;
}

html[data-public-theme="light"] .r5-title{
    color:#0f172a!important;
}

html[data-public-theme="light"] .r5-sub{
    color:#64748b!important;
}

html[data-public-theme="light"] .r5-kicker{
    color:#0284c7!important;
}

html[data-public-theme="light"] .r5-online{
    color:#047857!important;
    background:#ecfdf5!important;
    border:1px solid #d1fae5!important;
}

/* ==========================================================
   FLEET
========================================================== */

html[data-public-theme="light"] .r5-label{
    color:#64748b!important;
}

html[data-public-theme="light"] .r5-cars{
    gap:9px!important;
}

html[data-public-theme="light"] .r5-car{
    color:#0f172a!important;
    background:#fff!important;
    border-color:#e2e8f0!important;
    border-radius:16px!important;

    box-shadow:0 3px 12px rgba(15,23,42,.025)!important;

    transition:
        transform .18s ease,
        border-color .18s ease,
        background .18s ease,
        box-shadow .18s ease!important;
}

html[data-public-theme="light"] .r5-car:hover{
    background:#f8fafc!important;
    border-color:#bae6fd!important;
    transform:translateY(-1px)!important;
    box-shadow:0 7px 18px rgba(15,23,42,.06)!important;
}

html[data-public-theme="light"] .r5-car.is-selected{
    background:linear-gradient(135deg,#ecfeff,#f0f9ff)!important;
    border-color:#22d3ee!important;

    box-shadow:
        0 0 0 2px rgba(34,211,238,.10),
        0 8px 22px rgba(14,165,233,.08)!important;
}

/* CAR PHOTO */

html[data-public-theme="light"] .r5-thumb{
    background:#f1f5f9!important;
    border-color:#e2e8f0!important;
}

html[data-public-theme="light"] .r5-thumb img{
    object-fit:cover!important;
}

/* NAME */

html[data-public-theme="light"] .r5-carname{
    color:#0f172a!important;
}

html[data-public-theme="light"] .r5-check{
    color:#0891b2!important;
}

/* SPECS */

html[data-public-theme="light"] .r5-specs{
    color:#64748b!important;
}

/* PRICE */

html[data-public-theme="light"] .r5-price{
    color:#0f172a!important;
}

html[data-public-theme="light"] .r5-price small,
html[data-public-theme="light"] .r5-price span{
    color:#64748b!important;
}

/* ==========================================================
   SEPARATOR
========================================================== */

html[data-public-theme="light"] .r5-sep{
    background:linear-gradient(
        90deg,
        transparent,
        #dbe4ee,
        transparent
    )!important;
}

/* ==========================================================
   DATE AREA
========================================================== */

html[data-public-theme="light"] .r5-datearea{
    color:#0f172a!important;
}

html[data-public-theme="light"] .r5-clear{
    color:#64748b!important;
    background:#f8fafc!important;
    border:1px solid #e2e8f0!important;
    border-radius:10px!important;
}

html[data-public-theme="light"] .r5-clear:hover{
    color:#0369a1!important;
    background:#f0f9ff!important;
    border-color:#bae6fd!important;
}

/* ==========================================================
   PICKUP / RETURN RANGE
========================================================== */

html[data-public-theme="light"] .r5-range{
    background:#f8fafc!important;
    border:1px solid #e2e8f0!important;
    border-radius:18px!important;
}

html[data-public-theme="light"] .r5-range-label{
    color:#64748b!important;
}

html[data-public-theme="light"] .r5-range-value{
    color:#0f172a!important;
}

html[data-public-theme="light"] .r5-range-value.active{
    color:#0284c7!important;
}

html[data-public-theme="light"] .r5-range-time{
    color:#64748b!important;
}

html[data-public-theme="light"] .r5-arrow{
    color:#94a3b8!important;
}

/* ==========================================================
   CALENDAR
========================================================== */

html[data-public-theme="light"] .r5-calendar{
    background:#fff!important;
    border:1px solid #e2e8f0!important;
    border-radius:20px!important;
    box-shadow:0 8px 25px rgba(15,23,42,.035)!important;
}

html[data-public-theme="light"] .r5-month{
    color:#0f172a!important;
}

html[data-public-theme="light"] .r5-month strong,
html[data-public-theme="light"] .r5-month b{
    color:#0f172a!important;
}

html[data-public-theme="light"] .r5-nav{
    color:#334155!important;
    background:#f1f5f9!important;
    border:1px solid #e2e8f0!important;
}

html[data-public-theme="light"] .r5-nav:hover{
    color:#0369a1!important;
    background:#e0f2fe!important;
    border-color:#bae6fd!important;
}

/* WEEK DAYS */

html[data-public-theme="light"] .r5-week{
    color:#64748b!important;
}

/* DAY */

html[data-public-theme="light"] .r5-day{
    color:#334155!important;
    background:transparent!important;
}

html[data-public-theme="light"] .r5-day:hover:not(:disabled){
    color:#0f172a!important;
    background:#f1f5f9!important;
}

/* SELECTED DAY */

html[data-public-theme="light"] .r5-day.is-selected{
    color:#06202b!important;
    background:#22d3ee!important;
}

/* RANGE */

html[data-public-theme="light"] .r5-day.is-range{
    color:#0369a1!important;
    background:#e0f7fa!important;
}

/* DISABLED */

html[data-public-theme="light"] .r5-day:disabled{
    color:#cbd5e1!important;
}

/* BUSY */

html[data-public-theme="light"] .r5-day.is-busy{
    color:#e11d48!important;
}

html[data-public-theme="light"] .r5-busy-dot{
    background:#f43f5e!important;
}

/* LEGEND */

html[data-public-theme="light"] .r5-legend{
    color:#64748b!important;
}

html[data-public-theme="light"] .r5-dot-cyan{
    background:#06b6d4!important;
}

html[data-public-theme="light"] .r5-dot-red{
    background:#f43f5e!important;
}

/* ==========================================================
   TIME INPUTS
========================================================== */

html[data-public-theme="light"] .r5-times{
    gap:10px!important;
}

html[data-public-theme="light"] .r5-field-label{
    color:#64748b!important;
}

html[data-public-theme="light"] .r5-time{
    color:#0f172a!important;
    background:#fff!important;
    border:1px solid #dbe4ee!important;
    border-radius:12px!important;
    color-scheme:light!important;
}

html[data-public-theme="light"] .r5-time:focus{
    border-color:#38bdf8!important;
    box-shadow:0 0 0 3px rgba(14,165,233,.10)!important;
    outline:none!important;
}

/* ==========================================================
   BOOKING PANEL
========================================================== */

html[data-public-theme="light"] .r5-book{
    color:#0f172a!important;
}

html[data-public-theme="light"] .r5-user{
    background:#f8fafc!important;
    border:1px solid #e2e8f0!important;
    border-radius:16px!important;
}

html[data-public-theme="light"] .r5-avatar{
    color:#047857!important;
    background:#d1fae5!important;
}

html[data-public-theme="light"] .r5-user-name{
    color:#0f172a!important;
}

html[data-public-theme="light"] .r5-user-phone{
    color:#64748b!important;
}

html[data-public-theme="light"] .r5-verified{
    color:#059669!important;
}

/* AUTH INFO */

html[data-public-theme="light"] .r5-auth-note{
    color:#475569!important;
    background:#f0fdfa!important;
    border-color:#ccfbf1!important;
}

html[data-public-theme="light"] .r5-auth-icon{
    color:#059669!important;
}

/* ==========================================================
   TOTAL
========================================================== */

html[data-public-theme="light"] .r5-total{
    background:
        linear-gradient(135deg,#f8fafc,#f0f9ff)!important;

    border:1px solid #dbe7f0!important;
    border-radius:18px!important;
}

html[data-public-theme="light"] .r5-total-small{
    color:#475569!important;
}

html[data-public-theme="light"] .r5-total-price{
    color:#0f172a!important;
}

html[data-public-theme="light"] .r5-total-price strong,
html[data-public-theme="light"] .r5-total-price b{
    color:#0284c7!important;
}

/* ==========================================================
   NOTE
========================================================== */

html[data-public-theme="light"] .r5-note{
    color:#0f172a!important;
    background:#fff!important;
    border:1px solid #dbe4ee!important;
    border-radius:14px!important;
}

html[data-public-theme="light"] .r5-note::placeholder{
    color:#94a3b8!important;
}

html[data-public-theme="light"] .r5-note:focus{
    outline:none!important;
    border-color:#38bdf8!important;
    box-shadow:0 0 0 3px rgba(14,165,233,.10)!important;
}

/* ==========================================================
   SUBMIT
========================================================== */

html[data-public-theme="light"] .r5-submit{
    color:#06202b!important;
    background:linear-gradient(135deg,#22d3ee,#0ea5e9)!important;
    border-color:transparent!important;

    box-shadow:0 10px 24px rgba(14,165,233,.18)!important;
}

html[data-public-theme="light"] .r5-submit:hover{
    color:#06202b!important;
    background:linear-gradient(135deg,#06b6d4,#38bdf8)!important;
    transform:translateY(-1px)!important;
    box-shadow:0 13px 30px rgba(14,165,233,.24)!important;
}

html[data-public-theme="light"] .r5-submit:disabled{
    color:#94a3b8!important;
    background:#e2e8f0!important;
    box-shadow:none!important;
    transform:none!important;
}

/* ==========================================================
   INLINE SUCCESS / ERROR MESSAGES
   Overrides the two inline dark-theme colors visually only.
========================================================== */

html[data-public-theme="light"] .r5 [style*="color:#34d399"]{
    color:#047857!important;
}

html[data-public-theme="light"] .r5 [style*="color:#fb7185"]{
    color:#be123c!important;
}

/* ==========================================================
   MOBILE
   Mobile navigation NOT targeted.
========================================================== */

@media(max-width:700px){

    html[data-public-theme="light"] .r5{
        border-radius:20px!important;
        box-shadow:0 10px 30px rgba(15,23,42,.05)!important;
    }

    html[data-public-theme="light"] .r5-car{
        border-radius:14px!important;
    }

    html[data-public-theme="light"] .r5-range{
        border-radius:15px!important;
    }

    html[data-public-theme="light"] .r5-calendar{
        border-radius:17px!important;
    }

    html[data-public-theme="light"] .r5-total{
        border-radius:15px!important;
    }
}

/* END — RENT A CAR LIGHT V2 */

/* RENTAL LIGHT — PURPLE DATE RANGE */

/* Nga + Deri */
html[data-public-theme="light"] .r5-day.is-selected{
    color:#fff!important;
    background:#7c3aed!important;
    box-shadow:0 5px 14px rgba(124,58,237,.28)!important;
    font-weight:900!important;
}

/* Ditët ndërmjet Nga → Deri */
html[data-public-theme="light"] .r5-day.is-range{
    color:#6d28d9!important;
    background:#ede9fe!important;
    font-weight:800!important;
}

/* Hover */
html[data-public-theme="light"] .r5-day:hover:not(:disabled){
    background:#f3e8ff!important;
    color:#6d28d9!important;
}

/* Mos lejo hover-in të zbehë Nga/Deri */
html[data-public-theme="light"] .r5-day.is-selected:hover{
    color:#fff!important;
    background:#6d28d9!important;
}

/* Legjenda "Zgjedhur" */
html[data-public-theme="light"] .r5-dot-cyan{
    background:#7c3aed!important;
}


/* RENTAL CALENDAR — REAL PURPLE SELECTION STATES */

/* NGA + DERI */
html[data-public-theme="light"] .r5 .r5-day.selected{
    background:#7c3aed!important;
    color:#ffffff!important;
    box-shadow:0 5px 16px rgba(124,58,237,.32)!important;
    font-weight:900!important;
}

/* intervali NGA → DERI */
html[data-public-theme="light"] .r5 .r5-day.inrange{
    background:#ede9fe!important;
    color:#6d28d9!important;
    font-weight:800!important;
}

/* selected nuk ndryshon në hover */
html[data-public-theme="light"] .r5 .r5-day.selected:hover:not(:disabled){
    background:#6d28d9!important;
    color:#ffffff!important;
}

/* intervali në hover */
html[data-public-theme="light"] .r5 .r5-day.inrange:hover:not(:disabled){
    background:#ddd6fe!important;
    color:#5b21b6!important;
}

/* pika e legjendës "Zgjedhur" */
html[data-public-theme="light"] .r5 .r5-dot-cyan{
    background:#7c3aed!important;
}


/* ==========================================================
   TERMINO PUBLIC — CATEGORY GRID LIGHT V2
   Light only / Dark untouched / Mobile nav untouched
========================================================== */

html[data-public-theme="light"] .termino-cat-wrap{
    position:relative;
}

/* ---------- EDGE FADES ---------- */

html[data-public-theme="light"] .termino-cat-fade-left{
    background:linear-gradient(
        90deg,
        #f6f8fc 15%,
        rgba(246,248,252,.82) 42%,
        transparent
    )!important;
}

html[data-public-theme="light"] .termino-cat-fade-right{
    background:linear-gradient(
        270deg,
        #f6f8fc 15%,
        rgba(246,248,252,.82) 42%,
        transparent
    )!important;
}

/* ---------- SCROLL RAIL ---------- */

html[data-public-theme="light"] .termino-cat-scroll{
    padding-top:8px!important;
    padding-bottom:14px!important;
}

/* ==========================================================
   CATEGORY CARD
========================================================== */

html[data-public-theme="light"] .termino-cat-card{
    position:relative!important;

    background:
        radial-gradient(
            circle at 50% 18%,
            rgba(14,165,233,.055),
            transparent 38%
        ),
        linear-gradient(180deg,#ffffff,#f8fafc)!important;

    border:1px solid #e2e8f0!important;
    border-radius:24px!important;

    box-shadow:
        0 8px 24px rgba(15,23,42,.045),
        0 1px 3px rgba(15,23,42,.025)!important;

    transition:
        transform .32s cubic-bezier(.19,1,.22,1),
        border-color .3s ease,
        box-shadow .3s ease!important;
}

html[data-public-theme="light"] .termino-cat-card:hover{
    transform:translateY(-6px)!important;

    background:
        radial-gradient(
            circle at 50% 18%,
            rgba(14,165,233,.09),
            transparent 40%
        ),
        #fff!important;

    border-color:#bae6fd!important;

    box-shadow:
        0 18px 38px rgba(15,23,42,.095),
        0 0 0 1px rgba(14,165,233,.025)!important;
}

/* tiny top accent */

html[data-public-theme="light"] .termino-cat-card:before{
    content:"";
    position:absolute;
    top:0;
    left:28%;
    right:28%;
    height:2px;

    background:linear-gradient(
        90deg,
        transparent,
        var(--cat-color,#22d3ee),
        transparent
    );

    opacity:.55;
    transition:
        left .3s ease,
        right .3s ease,
        opacity .3s ease;
}

html[data-public-theme="light"] .termino-cat-card:hover:before{
    left:17%;
    right:17%;
    opacity:.9;
}

/* ==========================================================
   ICON AREA
========================================================== */

html[data-public-theme="light"] .termino-cat-icon-wrap{
    position:relative!important;
}

/* SVG ring track */

html[data-public-theme="light"] .termino-cat-track{
    stroke:#e2e8f0!important;
}

/*
 Keep animated sweep tied to each category's own
 --cat-color. No hard-coded universal icon color.
*/

html[data-public-theme="light"] .termino-cat-sweep{
    filter:drop-shadow(
        0 2px 5px rgba(15,23,42,.10)
    );
}

/* Icon center */

html[data-public-theme="light"] .termino-cat-icon-box{
    background:#fff!important;
    border-color:#e2e8f0!important;

    box-shadow:
        0 7px 18px rgba(15,23,42,.075),
        inset 0 0 0 1px rgba(255,255,255,.8)!important;
}

html[data-public-theme="light"] .termino-cat-card:hover .termino-cat-icon-box{
    box-shadow:
        0 10px 25px rgba(15,23,42,.11),
        0 0 0 4px rgba(14,165,233,.035)!important;
}

html[data-public-theme="light"] .termino-cat-icon-box iconify-icon{
    color:var(--cat-color,#0891b2)!important;
}

/* ==========================================================
   CATEGORY NAME
========================================================== */

html[data-public-theme="light"] .termino-cat-name{
    color:#0f172a!important;
    font-weight:750!important;
    letter-spacing:-.012em!important;
}

html[data-public-theme="light"] .termino-cat-card:hover .termino-cat-name{
    color:#020617!important;
}

/* ---------- HAIRLINE ---------- */

html[data-public-theme="light"] .termino-cat-hairline{
    background:#e2e8f0!important;
}

html[data-public-theme="light"] .termino-cat-card:hover .termino-cat-hairline{
    width:30px!important;
    background:var(--cat-color,#0ea5e9)!important;
}

/* ==========================================================
   BUSINESS COUNT
========================================================== */

html[data-public-theme="light"] .termino-cat-count{
    color:#94a3b8!important;
}

/* Desktop hover reveal */

html[data-public-theme="light"] .termino-cat-card:hover .termino-cat-count{
    color:#64748b!important;
}

/* ==========================================================
   KEYBOARD / ACCESSIBILITY
========================================================== */

html[data-public-theme="light"] .termino-cat-card:focus-visible{
    outline:none!important;
    border-color:#38bdf8!important;

    box-shadow:
        0 0 0 4px rgba(14,165,233,.12),
        0 14px 34px rgba(15,23,42,.08)!important;
}

/* ==========================================================
   MOBILE
   Count always visible because mobile has no useful hover.
   Mobile bottom navigation intentionally NOT targeted.
========================================================== */

@media(max-width:700px){

    html[data-public-theme="light"] .termino-cat-card{
        border-radius:21px!important;
    }

    html[data-public-theme="light"] .termino-cat-count{
        opacity:1!important;
        transform:none!important;
        color:#64748b!important;
    }

    html[data-public-theme="light"] .termino-cat-fade-left{
        background:linear-gradient(
            90deg,
            #f6f8fc,
            transparent
        )!important;
    }

    html[data-public-theme="light"] .termino-cat-fade-right{
        background:linear-gradient(
            270deg,
            #f6f8fc,
            transparent
        )!important;
    }
}

/* END — CATEGORY GRID LIGHT V2 */

/* ==========================================================
   TERMINO PROFILE COVER — PROFESSIONAL FINAL
   ========================================================== */

.termino-public .termino-business-cover{
    position:relative!important;
    isolation:isolate!important;

    width:100%!important;
    height:320px!important;
    min-height:320px!important;
    max-height:320px!important;

    margin:0!important;
    padding:0!important;

    overflow:hidden!important;

    background:#0f172a!important;
}

/* Background fill */
.termino-public .termino-business-cover-bg{
    position:absolute!important;
    z-index:0!important;

    inset:-30px!important;

    background-size:cover!important;
    background-position:center!important;
    background-repeat:no-repeat!important;

    filter:blur(28px) brightness(.55) saturate(.85)!important;
    transform:scale(1.12)!important;

    opacity:.9!important;
    pointer-events:none!important;
}

/* Soft layer so blurred sides don't look like separate blocks */
.termino-public .termino-business-cover::after{
    content:""!important;
    position:absolute!important;
    z-index:1!important;
    inset:0!important;

    background:
        linear-gradient(
            90deg,
            rgba(15,23,42,.18) 0%,
            rgba(15,23,42,0) 25%,
            rgba(15,23,42,0) 75%,
            rgba(15,23,42,.18) 100%
        )!important;

    pointer-events:none!important;
}

/* Original image — always complete */
.termino-public
.termino-business-cover
> img.termino-business-cover-image{

    position:absolute!important;
    z-index:2!important;

    inset:0!important;
    margin:auto!important;

    width:100%!important;
    height:100%!important;

    min-width:0!important;
    min-height:0!important;
    max-width:100%!important;
    max-height:100%!important;

    display:block!important;

    object-fit:contain!important;
    object-position:center!important;

    padding:0!important;
}

/* Existing dark gradient above image */
.termino-public
.termino-business-cover
> .absolute.inset-0{

    position:absolute!important;
    z-index:3!important;

    inset:0!important;

    background:linear-gradient(
        to top,
        rgba(15,23,42,.20),
        transparent 45%
    )!important;

    pointer-events:none!important;
}


/* TABLET */
@media (min-width:641px) and (max-width:980px){

    .termino-public .termino-business-cover{
        height:240px!important;
        min-height:240px!important;
        max-height:240px!important;
    }

}


/* MOBILE */
@media (max-width:640px){

    .termino-public .termino-business-cover{
        height:180px!important;
        min-height:180px!important;
        max-height:180px!important;
    }

}

/* END TERMINO PROFILE COVER — PROFESSIONAL FINAL */


/* ============================================================
   TERMINO PUBLIC SHELL — FINAL SINGLE SOURCE V2
   ============================================================ */

:root{
    --tp-header:64px;
    --tp-sidebar:188px;
    --tp-bottom:72px;
    --tp-bg:#f7f9fc;
    --tp-line:#e7ebf0;
    --tp-text:#101828;
    --tp-muted:#667085;
    --tp-cyan:#10b8dc;
}

html[data-public-theme="light"],
html[data-public-theme="light"] body{
    margin:0!important;
    padding:0!important;
    background:var(--tp-bg)!important;
    color:var(--tp-text)!important;
}

html[data-public-theme="light"] body{
    overflow-x:hidden!important;
}


/* ================= TOP BAR ================= */

.termino-global-top{
    position:fixed!important;
    top:0!important;
    left:0!important;
    right:0!important;
    z-index:10000!important;

    height:var(--tp-header)!important;

    border-bottom:1px solid var(--tp-line)!important;
    background:rgba(255,255,255,.96)!important;

    backdrop-filter:blur(20px) saturate(180%)!important;
    -webkit-backdrop-filter:blur(20px) saturate(180%)!important;
}

.termino-global-inner{
    width:100%!important;
    height:100%!important;

    display:flex!important;
    align-items:center!important;

    box-sizing:border-box!important;

    padding:0 26px 0 calc(var(--tp-sidebar) + 26px)!important;
}


/* ================= DESKTOP SIDEBAR ================= */

.termino-global-sidebar{
    position:fixed!important;
    top:var(--tp-header)!important;
    left:0!important;
    bottom:0!important;

    z-index:9000!important;

    width:var(--tp-sidebar)!important;

    display:flex!important;
    flex-direction:column!important;

    padding:20px 13px 18px!important;

    box-sizing:border-box!important;

    border-right:1px solid var(--tp-line)!important;
    background:#fff!important;
}

.termino-sidebar-main{
    display:flex!important;
    flex-direction:column!important;
    gap:5px!important;
}

.termino-sidebar-item{
    position:relative!important;

    min-height:45px!important;

    display:flex!important;
    align-items:center!important;

    gap:11px!important;
    padding:0 12px!important;

    border-radius:13px!important;

    color:var(--tp-muted)!important;
    text-decoration:none!important;

    font-size:11px!important;
    font-weight:760!important;

    transition:.16s ease!important;
}

.termino-sidebar-item:hover{
    background:#f4f7f9!important;
    color:var(--tp-text)!important;
}

.termino-sidebar-item.is-active{
    color:#087f9e!important;
    background:rgba(16,184,220,.09)!important;
    font-weight:850!important;
}

.termino-sidebar-item.is-active:before{
    content:""!important;

    position:absolute!important;
    left:0!important;
    top:11px!important;
    bottom:11px!important;

    width:3px!important;

    border-radius:0 6px 6px 0!important;
    background:var(--tp-cyan)!important;
}

.termino-sidebar-icon{
    width:27px!important;
    height:27px!important;
    flex:0 0 27px!important;

    display:grid!important;
    place-items:center!important;

    color:#7c8999!important;
}

.termino-sidebar-icon iconify-icon{
    font-size:20px!important;
}

.termino-sidebar-item.is-active .termino-sidebar-icon{
    color:#08a6ce!important;
}


/* ================= SIDEBAR BOOK ================= */

.termino-sidebar-book{
    margin-top:auto!important;
}

.termino-sidebar-book a{
    min-height:48px!important;

    display:flex!important;
    align-items:center!important;

    gap:10px!important;
    padding:7px!important;

    border:1px solid rgba(14,181,218,.15)!important;
    border-radius:15px!important;

    color:#075d74!important;
    text-decoration:none!important;

    background:#effcff!important;

    font-size:11px!important;
    font-weight:850!important;
}

.termino-sidebar-book-plus{
    width:34px!important;
    height:34px!important;
    flex:0 0 34px!important;

    display:grid!important;
    place-items:center!important;

    border-radius:11px!important;

    background:linear-gradient(145deg,#46dcf4,#0ba8d2)!important;
    color:#fff!important;

    font-size:23px!important;
}


/* ================= PAGE VIEWPORT ================= */

.termino-public-app-shell{
    position:relative!important;

    width:calc(100% - var(--tp-sidebar))!important;

    min-height:calc(100vh - var(--tp-header))!important;

    margin:0 0 0 var(--tp-sidebar)!important;
    padding:0!important;

    box-sizing:border-box!important;

    background:
        radial-gradient(
            900px 420px at 82% 0%,
            rgba(38,202,239,.07),
            transparent 66%
        ),
        var(--tp-bg)!important;
}

.termino-public-page{
    width:100%!important;
    min-width:0!important;
    min-height:calc(100vh - var(--tp-header))!important;

    margin:0!important;
    padding:0!important;

    box-sizing:border-box!important;
}

.termino-public-page .termino-public,
.termino-public-page .customer-white-dashboard{
    width:100%!important;
    max-width:none!important;

    margin:0!important;

    box-sizing:border-box!important;
}


/* Kill legacy internal sidebar offsets */

.termino-public-page .termino-public{
    padding-left:0!important;
    padding-right:0!important;
}

.termino-public-page .termino-public > main{
    box-sizing:border-box!important;
}


/* ================= DIRECTORY ================= */

.termino-public-page .termino-directory-shell{
    width:min(1180px,calc(100% - 48px))!important;
    max-width:1180px!important;

    margin:0 auto!important;
    padding:38px 0 60px!important;

    box-sizing:border-box!important;
}


/* ================= MOBILE APP ================= */

@media(max-width:820px){

    :root{
        --tp-header:calc(58px + env(safe-area-inset-top,0px));
    }

    /* Sidebar nuk ekziston ne mobile */

    .termino-global-sidebar{
        display:none!important;
    }


    /* Top bar */

    .termino-global-top{
        height:var(--tp-header)!important;
    }

    .termino-global-inner{
        padding:
            env(safe-area-inset-top,0px)
            12px
            0!important;
    }


    /* Content starts exactly under navbar */

    .termino-public-app-shell{
        width:100%!important;

        min-height:calc(100vh - var(--tp-header))!important;

        margin:0!important;
        padding:
            0
            0
            calc(var(--tp-bottom) + env(safe-area-inset-bottom,0px))
            0!important;
    }

    .termino-public-page{
        width:100%!important;
        min-height:calc(100vh - var(--tp-header))!important;
    }


    /* No mysterious top gap */

    .termino-public-page > :first-child{
        margin-top:0!important;
    }


    /* Directory */

    .termino-public-page .termino-directory-shell{
        width:100%!important;
        max-width:none!important;

        margin:0!important;
        padding:24px 14px 34px!important;
    }


    /* Bottom app navigation */

    nav.termino-app-bottom{
        position:fixed!important;

        left:0!important;
        right:0!important;
        bottom:0!important;

        z-index:20000!important;

        display:block!important;
    }
}


/* ================= DESKTOP ================= */

@media(min-width:821px){

    nav.termino-app-bottom{
        display:none!important;
    }
}

/* END TERMINO PUBLIC SHELL — FINAL SINGLE SOURCE V2 */

/* ============================================================
   TERMINO CUSTOMER ACCESS — WHITE
   ============================================================ */

.termino-customer-access{
    min-height:calc(100vh - var(--tp-header));
    padding:46px 20px 70px;
    box-sizing:border-box;
    background:
        radial-gradient(
            600px 300px at 50% 0%,
            rgba(22,191,226,.09),
            transparent 70%
        ),
        #f7f9fc;
}

.termino-access-wrap{
    width:100%;
    max-width:440px;
    margin:0 auto;
}

.termino-access-card{
    padding:32px;
    border:1px solid #e5eaf0;
    border-radius:26px;
    background:#fff;
    box-shadow:0 18px 60px rgba(15,23,42,.07);
}

.termino-access-heading{
    margin-bottom:27px;
}

.termino-access-heading > span{
    color:#079fc5;
    font-size:10px;
    font-weight:900;
    letter-spacing:.18em;
}

.termino-access-heading h1{
    margin:7px 0 0;
    color:#101828;
    font-size:30px;
    line-height:1.12;
    font-weight:900;
    letter-spacing:-.04em;
}

.termino-access-heading p{
    margin:8px 0 0;
    color:#7c8798;
    font-size:13px;
    line-height:1.55;
}

.termino-access-success,
.termino-access-error{
    margin-bottom:16px;
    padding:12px 14px;
    border-radius:12px;
    font-size:12px;
    font-weight:700;
}

.termino-access-success{
    background:#ecfdf3;
    color:#087443;
}

.termino-access-error{
    background:#fff1f2;
    color:#be123c;
}

.termino-access-tabs{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:4px;

    margin-bottom:22px;
    padding:4px;

    border:1px solid #edf0f4;
    border-radius:13px;

    background:#f5f7fa;
}

.termino-access-tabs button{
    min-height:39px;
    border:0;
    border-radius:10px;

    background:transparent;
    color:#7a8698;

    cursor:pointer;

    font-size:11px;
    font-weight:850;
}

.termino-access-tabs button.is-active{
    background:#fff;
    color:#087f9e;

    box-shadow:0 3px 12px rgba(15,23,42,.07);
}

.termino-access-form{
    display:grid;
    gap:17px;
}

.termino-access-form label{
    display:block;
}

.termino-access-form label > span{
    display:block;
    margin-bottom:7px;

    color:#667085;

    font-size:10px;
    font-weight:850;
    text-transform:uppercase;
    letter-spacing:.05em;
}

.termino-access-form input{
    width:100%;
    min-height:50px;

    box-sizing:border-box;

    padding:0 15px;

    border:1px solid #dce3ea;
    border-radius:13px;

    outline:none;

    background:#fff;
    color:#101828;

    font-size:14px;
    font-weight:650;
}

.termino-access-form input:focus{
    border-color:#29c5e5;
    box-shadow:0 0 0 4px rgba(22,191,226,.10);
}

.termino-access-form .termino-otp-input{
    height:60px;

    text-align:center;

    font-size:23px;
    font-weight:900;
    letter-spacing:.30em;
}

.termino-access-submit{
    min-height:52px;

    border:0;
    border-radius:14px;

    cursor:pointer;

    background:linear-gradient(135deg,#39d5ef,#0ba8d2);
    color:#fff;

    box-shadow:0 10px 25px rgba(10,168,210,.20);

    font-size:12px;
    font-weight:900;
}

.termino-access-back{
    display:block;

    margin-top:20px;

    color:#667085;
    text-align:center;
    text-decoration:none;

    font-size:12px;
    font-weight:750;
}

.termino-access-sent{
    margin:0 0 20px;
    color:#667085;
    font-size:13px;
}

@media(max-width:820px){

    .termino-customer-access{
        min-height:calc(100vh - var(--tp-header));
        padding:22px 14px 35px;
    }

    .termino-access-card{
        padding:24px 20px;
        border-radius:22px;
        box-shadow:0 10px 35px rgba(15,23,42,.055);
    }

    .termino-access-heading h1{
        font-size:26px;
    }
}


/* ============================================================
   TERMINO MOBILE HAMBURGER / DRAWER
   ============================================================ */

.termino-mobile-menu-button,
.termino-mobile-drawer,
.termino-mobile-drawer-backdrop{
    display:none;
}

@media(max-width:820px){

    .termino-global-customer{
        display:none!important;
    }

    .termino-mobile-menu-button{
        width:38px;
        height:38px;
        flex:0 0 38px;

        display:flex!important;
        flex-direction:column;
        align-items:center;
        justify-content:center;
        gap:4px;

        padding:0;

        border:1px solid #e4e9ef;
        border-radius:11px;

        background:#fff;
        cursor:pointer;
    }

    .termino-mobile-menu-button span{
        width:16px;
        height:1.5px;

        display:block;

        border-radius:20px;
        background:#344054;
    }

    .termino-mobile-drawer-backdrop{
        position:fixed;
        inset:0;

        z-index:29990;

        background:rgba(15,23,42,.28);

        backdrop-filter:blur(3px);
        -webkit-backdrop-filter:blur(3px);
    }

    .termino-mobile-drawer-backdrop.is-open{
        display:block;
    }

    .termino-mobile-drawer{
        position:fixed;

        top:0;
        right:0;
        bottom:0;

        z-index:30000;

        width:min(86vw,340px);

        display:none;
        flex-direction:column;

        box-sizing:border-box;

        padding:
            calc(18px + env(safe-area-inset-top,0px))
            16px
            calc(20px + env(safe-area-inset-bottom,0px));

        background:#fff;

        box-shadow:-25px 0 70px rgba(15,23,42,.16);
    }

    .termino-mobile-drawer.is-open{
        display:flex;
        animation:terminoDrawerIn .22s cubic-bezier(.22,.8,.25,1) both;
    }

    @keyframes terminoDrawerIn{
        from{
            opacity:0;
            transform:translateX(24px);
        }
        to{
            opacity:1;
            transform:translateX(0);
        }
    }

    .termino-mobile-drawer-head{
        display:flex;
        align-items:center;
        justify-content:space-between;

        padding:2px 2px 18px;

        border-bottom:1px solid #edf0f4;
    }

    .termino-mobile-drawer-head strong{
        display:block;

        color:#101828;

        font-size:17px;
        font-weight:900;
    }

    .termino-mobile-drawer-head span{
        display:block;
        margin-top:2px;

        color:#98a2b3;

        font-size:10px;
        font-weight:750;
    }

    .termino-mobile-drawer-head button{
        width:38px;
        height:38px;

        border:1px solid #e6eaf0;
        border-radius:11px;

        background:#f8fafc;
        color:#475467;

        cursor:pointer;

        font-size:24px;
        line-height:1;
    }

    .termino-mobile-drawer-links{
        display:grid;

        gap:5px;

        padding-top:16px;
    }

    .termino-mobile-drawer-links a{
        min-height:49px;

        display:flex;
        align-items:center;

        gap:12px;
        padding:0 13px;

        border-radius:13px;

        color:#475467;
        text-decoration:none;

        font-size:12px;
        font-weight:800;
    }

    .termino-mobile-drawer-links a:hover{
        background:#f3f8fa;
        color:#087f9e;
    }

    .termino-mobile-drawer-links iconify-icon{
        width:25px;
        font-size:21px;
        color:#079fc5;
    }
}


/* ============================================================
   TERMINO MOBILE VIEWPORT WIDTH FIX V1
   ============================================================ */

@media(max-width:820px){

    nav.termino-app-bottom{
        left:0 !important;
        right:auto !important;

        width:100vw !important;
        max-width:100vw !important;
        min-width:0 !important;

        margin:0 !important;

        box-sizing:border-box !important;
    }

    .termino-public-app-shell,
    .termino-public-page{
        width:100% !important;
        max-width:100% !important;
        min-width:0 !important;
    }
}

/* ============================================================
   TERMINO MOBILE — HARD VIEWPORT BOUNDARY
   ============================================================ */

@media (max-width:820px){

    html{
        width:100%;
        max-width:100%;
        overflow-x:clip !important;
    }

    body{
        width:100%;
        max-width:100%;
        min-width:0;
        margin:0;
        overflow-x:clip !important;
    }

    .termino-public-app-shell,
    .termino-public-page{
        width:100%;
        max-width:100%;
        min-width:0;
        margin-left:0 !important;
        margin-right:0 !important;
        box-sizing:border-box;
        overflow-x:clip;
    }

    .termino-global-top{
        left:0 !important;
        right:0 !important;
        width:100% !important;
        max-width:100% !important;
        box-sizing:border-box !important;
    }

    .termino-global-inner{
        width:100% !important;
        max-width:100% !important;
        box-sizing:border-box !important;
    }

    nav.termino-app-bottom{
        left:0 !important;
        right:0 !important;
        width:100% !important;
        max-width:100% !important;
        min-width:0 !important;
        box-sizing:border-box !important;
    }

    .termino-mobile-drawer:not(.is-open){
        display:none !important;
        transform:none !important;
    }

    .termino-mobile-drawer.is-open{
        display:flex !important;
        right:0 !important;
        left:auto !important;
        max-width:min(86vw,340px) !important;
    }

    .t-shell,
    .t-hero,
    .t-hero-inner,
    .t-business-grid,
    .t-discover,
    .t-business-cta,
    .t-footer{
        max-width:100%;
        min-width:0;
        box-sizing:border-box;
    }

    .t-business-grid{
        width:100%;
        grid-template-columns:minmax(0,1fr);
    }

    .t-business{
        width:100%;
        max-width:100%;
        min-width:0;
    }
}

