/**
 * TicketHelp.ro Authentic Master Stylesheet
 * Exact match to tickethelp.ro design, colors, and layout:
 * - Brand Theme Green: #49a32b (hover: #3d8b24)
 * - Dark Brand Color: #1e222a / #22242b
 * - Background: Clean White (#ffffff) & Subtle Warm Light Grey (#f8fafc / #f5f5f5)
 * - Typography: Roboto (Headings & Body)
 */

:root {
    --theme-green: #49a32b;
    --theme-green-hover: #3d8b24;
    --theme-dark: #1e222a;
    --theme-header: #22242b;
    --theme-topbar: #1e222a;
    --theme-bg-light: #f8fafc;
    --text-dark: #222222;
    --text-body: #4b5563;
    --text-muted: #64748b;
    --text-dim: #94a3b8;
    --border-color: #e2e8f0;
    --accent: #49a32b;
    --accent-hover: #3d8b24;
    --accent-light: rgba(73, 163, 43, 0.1);
    --bg-dark: #1e222a;
    --bg-card: #ffffff;
    --bg-card-hover: #f8fafc;
    --border: #e2e8f0;
    --border-light: #cbd5e1;
    --text-main: #222222;
    --radius-sm: 4px;
    --radius-md: 8px;
    --radius-lg: 12px;
}

/* ================= RESET & BASE ================= */
*,
*::before,
*::after {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    -webkit-tap-highlight-color: transparent !important;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0) !important;
}
html {
    scroll-behavior: smooth;
    font-size: 12px;
    -webkit-tap-highlight-color: transparent !important;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0) !important;
}
html body, body {
    background-color: #ffffff;
    color: #6c6c6c;
    font-family: 'Roboto', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
    font-size: 12px;
    line-height: 24px;
    overflow-x: hidden;
    -webkit-font-smoothing: antialiased;
    -webkit-tap-highlight-color: transparent !important;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0) !important;
    -webkit-touch-callout: none;
}

/* ================= MOBILE TOUCH & TAP HIGHLIGHT SUPPRESSION ================= */
a,
button,
input,
select,
textarea,
label,
summary,
[role="button"],
[tabindex],
.btn,
.ibutton,
.header-logo,
.header-logo a,
.header-logo-badge,
.header-logo-badge a,
.navbar-toggle,
.mobile-menu-btn,
.nav-menu li a,
.topbar a,
.footer-bottom-actions a,
.menu-useful-links a {
    -webkit-tap-highlight-color: transparent !important;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0) !important;
    touch-action: manipulation;
}

/* Remove unwanted default blue browser outline/glow on touch/click while maintaining keyboard accessibility */
a:focus:not(:focus-visible),
button:focus:not(:focus-visible),
input:focus:not(:focus-visible),
select:focus:not(:focus-visible),
textarea:focus:not(:focus-visible),
[role="button"]:focus:not(:focus-visible),
.header-logo a:focus,
.header-logo-badge a:focus,
.ibutton:focus:not(:focus-visible) {
    outline: none !important;
    box-shadow: none !important;
}

/* Prevent image ghost selection, blue flash and iOS callout on interactive logo/buttons */
.header-logo a,
.header-logo a img,
.header-logo-badge a,
.header-logo-badge a img,
.footer-logo a,
.footer-logo a img {
    -webkit-tap-highlight-color: transparent !important;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0) !important;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    user-select: none;
}
p {
    font-size: 14px;
    line-height: 24px;
    color: #838383;
}
h1, h2, h3, h4, h5, h6 {
    font-family: 'Roboto', sans-serif;
    color: #222222;
    font-weight: 700;
    line-height: 1.25;
}
button, input, select, textarea {
    font-family: 'Roboto', sans-serif;
}
a {
    color: inherit;
    text-decoration: none;
    transition: all 0.2s ease;
}
img {
    max-width: 100%;
    height: auto;
    display: block;
}
.container {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}
.container-fluid {
    width: 100%;
    padding: 0 20px;
}
.text-center {
    text-align: center;
}
.theme-color {
    color: var(--theme-green) !important;
}
.theme-bg {
    background-color: var(--theme-green) !important;
}

/* ================= AUTHENTIC INHOST BUTTON ENGINE ================= */
.ibutton {
    position: relative;
    color: #fff !important;
    text-decoration: none;
    display: inline-block;
    border-radius: 2px;
    font-size: 14px;
    margin: 0 10px;
    border: 2px solid transparent;
    line-height: 40px;
    padding: 0 20px;
    overflow: hidden;
    white-space: nowrap;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    font-family: 'Roboto', sans-serif;
}
.ibutton .fa, .ibutton i {
    margin-right: 10px;
}
.ibutton span {
    display: inline-block;
    white-space: nowrap;
}
.ibutton:hover, .ibutton:active, .ibutton:focus {
    text-decoration: none;
    color: #fff !important;
}
.ibutton-small {
    font-size: 13px !important;
    line-height: 31px !important;
}
.ibutton-large {
    font-size: 16px !important;
    text-transform: uppercase;
    line-height: 48px !important;
}
.ibutton3, .ibutton4 {
    border-radius: 30px !important;
}
.ibutton3.ibutton-small, .ibutton4.ibutton-small {
    border-radius: 20px !important;
}
.ibutton3.ibutton-large, .ibutton4.ibutton-large {
    border-radius: 50px !important;
}
.ibutton1, .ibutton3 {
    background: #49a32b !important;
    color: #fff !important;
}
.ibutton1 {
    box-shadow: 0px 1px 1px grey;
}
.ibutton2, .ibutton4 {
    border-color: #49a32b !important;
    color: #49a32b !important;
}
.ibutton2:hover, .ibutton4:hover {
    border-color: #49a32b !important;
    color: #49a32b !important;
}
.ibutton:active, .btn-submit:active, .button:active {
    top: 2px;
}
.ibutton-effect1, .ibutton-effect2, .ibutton-effect3 {
    overflow: hidden;
}
/* Effect 1: Same word slide in vertically */
.ibutton-effect1 span {
    position: relative;
    display: inline-block;
    -webkit-transition: -webkit-transform 0.3s ease 0s;
    transition: transform 0.3s ease 0s;
}
.ibutton-effect1 span::before {
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    display: inline-block;
    content: attr(data-hover);
    font-weight: 700;
    -webkit-transform: translate3d(0,0,0);
    transform: translate3d(0,0,0);
}
.ibutton-effect1:hover span,
.ibutton-effect1:focus span {
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%);
}
/* Effect 2: White background slide down / pill outline */
.ibutton-effect2::after {
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    content: '';
    position: absolute;
    z-index: 1;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    opacity: 0;
    background: #fff;
    border-radius: 30px;
}
/* ibutton4 on light backgrounds: green outline with green text */
.ibutton4,
.ibutton4.ibutton-effect2 {
    border: 2px solid #49a32b !important;
    border-radius: 22px !important;
    color: #49a32b !important;
    background: transparent !important;
    transition: all 0.3s ease;
}
.ibutton4 span,
.ibutton4.ibutton-effect2 span {
    position: relative;
    z-index: 2;
    color: #49a32b !important;
    transition: color 0.3s ease;
}
.ibutton4:hover,
.ibutton4:active,
.ibutton4.ibutton-effect2:hover,
.ibutton4.ibutton-effect2:active {
    background: #49a32b !important;
    border-color: #49a32b !important;
    color: #ffffff !important;
}
.ibutton4:hover span,
.ibutton4:active span,
.ibutton4.ibutton-effect2:hover span,
.ibutton4.ibutton-effect2:active span {
    color: #ffffff !important;
}

/* ibutton4 inside theme-bg (green background bands): white outline with white text */
.theme-bg .ibutton4,
.theme-bg .ibutton4.ibutton-effect2,
.theme-color-bg .ibutton4,
.theme-color-bg .ibutton4.ibutton-effect2 {
    border: 2px solid #ffffff !important;
    color: #ffffff !important;
    background: transparent !important;
}
.theme-bg .ibutton4 span,
.theme-bg .ibutton4.ibutton-effect2 span,
.theme-color-bg .ibutton4 span,
.theme-color-bg .ibutton4.ibutton-effect2 span {
    color: #ffffff !important;
}
.theme-bg .ibutton4:hover,
.theme-bg .ibutton4:active,
.theme-bg .ibutton4.ibutton-effect2:hover,
.theme-bg .ibutton4.ibutton-effect2:active,
.theme-color-bg .ibutton4:hover,
.theme-color-bg .ibutton4.ibutton-effect2:hover {
    background: #ffffff !important;
    border-color: #ffffff !important;
    color: #49a32b !important;
}
.theme-bg .ibutton4:hover span,
.theme-bg .ibutton4:active span,
.theme-bg .ibutton4.ibutton-effect2:hover span,
.theme-bg .ibutton4.ibutton-effect2:active span,
.theme-color-bg .ibutton4:hover span,
.theme-color-bg .ibutton4.ibutton-effect2:hover span {
    color: #49a32b !important;
}

/* ================= 1. HEADER TOP BAR ================= */
.top-bar {
    background: var(--theme-topbar);
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
    height: 42px;
    line-height: 42px;
    font-size: 12px;
    color: #cbcbcb;
}
.top-bar-inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: 100%;
}
.top-social {
    display: flex;
    gap: 8px;
    align-items: center;
}
.top-social a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 26px;
    height: 26px;
    background: #2b303c;
    color: #fff;
    border-radius: 50%;
    font-size: 11px;
    transition: all 0.2s ease;
}
.top-social a i {
    display: inline-block;
    line-height: 1;
}
.top-social a:hover {
    background: var(--theme-green);
    color: #fff;
}
.top-contact {
    display: flex;
    gap: 20px;
    align-items: center;
}
.top-contact-item {
    color: #cbcbcb;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 12px;
}
.top-contact-item i {
    color: var(--theme-green);
}
.top-contact-item:hover {
    color: #fff;
}
.top-lang {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-weight: 700;
}
.top-lang a {
    color: #94a3b8;
    text-decoration: none;
}
.top-lang a.active, .top-lang a:hover {
    color: var(--theme-green);
}

/* ================= 2. SITE HEADER & NOTCHED LOGO ================= */
.site-header {
    background: var(--theme-header);
    border-bottom: 1px solid rgba(255, 255, 255, 0.05);
    height: 80px;
    position: sticky;
    top: 0;
    z-index: 1000;
    display: flex;
    align-items: center;
}
.header-container {
    width: 100%;
    max-width: 1240px;
    margin: 0 auto;
    padding: 0 20px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 100%;
    position: relative;
}
.header-logo, .header-logo-badge {
    background: transparent;
    padding: 0;
    display: flex;
    align-items: center;
    height: 80px;
    position: relative;
    clip-path: none;
    margin-left: 0;
}
.header-logo img, .header-logo-badge img {
    height: 52px;
    width: auto;
    max-width: 210px;
    object-fit: contain;
    display: block;
    image-rendering: -webkit-optimize-contrast;
}
.header-nav {
    display: flex;
    align-items: center;
    flex: 1;
    justify-content: flex-end;
    margin-right: 25px;
}
.nav-menu {
    display: flex;
    list-style: none;
    gap: 22px;
    align-items: center;
    margin: 0;
    padding: 0;
}
.nav-menu li {
    position: relative;
}
.nav-menu a {
    color: #dedede;
    text-decoration: none;
    font-size: 13px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.3px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 28px 0;
    transition: color 0.2s ease;
}
.nav-menu a i {
    font-size: 13px;
    color: #94a3b8;
}
.nav-menu a:hover, .nav-menu a.active {
    color: var(--theme-green) !important;
}
.nav-menu a:hover i, .nav-menu a.active i {
    color: var(--theme-green) !important;
}

/* Submenu dropdowns */
.has-dropdown .sub-menu {
    position: absolute;
    top: 100%;
    left: 0;
    background: #1e222a;
    border-top: 3px solid var(--theme-green);
    border-radius: 0 0 4px 4px;
    min-width: 240px;
    list-style: none;
    padding: 10px 0;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.4);
    display: none;
    z-index: 100;
}
.has-dropdown:hover .sub-menu {
    display: block;
}
.has-dropdown .sub-menu li a {
    padding: 10px 20px;
    color: #cbd5e1;
    font-size: 12px;
    font-weight: 500;
    text-transform: none;
    display: block;
    transition: all 0.2s;
}
.has-dropdown .sub-menu li a:hover {
    background: rgba(73, 163, 43, 0.1);
    color: var(--theme-green) !important;
    padding-left: 24px;
}

/* Right Header Actions */
.header-right-actions {
    display: flex;
    align-items: center;
    gap: 12px;
}
.btn-lock {
    width: 38px;
    height: 38px;
    background: var(--theme-green);
    color: #fff !important;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    transition: all 0.25s;
    text-decoration: none;
}
.btn-lock:hover {
    background: var(--theme-green-hover);
    transform: scale(1.05);
}
.cart-badge-wrap {
    width: 38px;
    height: 38px;
    background: #2b303c;
    color: #fff !important;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    position: relative;
    font-size: 14px;
    transition: all 0.25s;
    text-decoration: none;
}
.cart-badge-wrap:hover {
    background: var(--theme-green);
}
.btn-lock i, .cart-badge-wrap i {
    display: inline-block;
    line-height: 1;
    font-size: 14px;
}
.cart-badge-wrap .cart-count {
    position: absolute;
    top: -4px;
    right: -4px;
    background: var(--theme-green);
    color: #fff;
    font-size: 10px;
    font-weight: 800;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 2px solid #22242b;
}

/* Burger Toggle - Strictly Hidden on Desktop */
.mobile-toggle {
    display: none !important;
}

/* ================= 2B. MOBILE NAVIGATION DRAWER ================= */
.mobile-nav-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.7);
    backdrop-filter: blur(2px);
    z-index: 9998;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease;
}
.mobile-nav-overlay.active {
    opacity: 1;
    visibility: visible;
}
.mobile-nav-drawer {
    position: fixed;
    top: 0;
    right: -320px;
    width: 300px;
    max-width: 85vw;
    height: 100%;
    background: #1e222a;
    z-index: 9999;
    box-shadow: -5px 0 30px rgba(0, 0, 0, 0.6);
    transition: right 0.35s cubic-bezier(0.25, 0.8, 0.25, 1);
    display: flex;
    flex-direction: column;
    overflow-y: auto;
}
.mobile-nav-drawer.active {
    right: 0;
}
.mobile-nav-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 18px 20px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
    background: #22242b;
}
.mobile-nav-close {
    background: transparent;
    border: none;
    color: #cbd5e1;
    font-size: 22px;
    cursor: pointer;
    padding: 4px 8px;
    transition: color 0.2s;
}
.mobile-nav-close:hover {
    color: var(--theme-green);
}
.mobile-nav-list {
    list-style: none;
    padding: 10px 0;
    margin: 0;
}
.mobile-nav-list li a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 13px 20px;
    color: #e2e8f0;
    font-size: 14px;
    font-weight: 500;
    border-bottom: 1px solid rgba(255, 255, 255, 0.04);
    text-decoration: none;
    transition: all 0.2s;
}
.mobile-nav-list li a:hover {
    background: rgba(73, 163, 43, 0.1);
    color: var(--theme-green);
    padding-left: 24px;
}
.mobile-nav-list li a i {
    width: 20px;
    color: var(--theme-green);
    margin-right: 10px;
}
.mobile-dropdown-toggle i.fa-chevron-down {
    font-size: 11px;
    margin-right: 0;
    color: #94a3b8;
    transition: transform 0.25s ease;
}
.mobile-dropdown.open .mobile-dropdown-toggle i.fa-chevron-down {
    transform: rotate(180deg);
    color: var(--theme-green);
}
.mobile-submenu {
    list-style: none;
    padding: 0;
    margin: 0;
    background: #161920;
    display: none;
}
.mobile-dropdown.open .mobile-submenu {
    display: block;
}
.mobile-submenu li a {
    padding: 11px 20px 11px 45px;
    font-size: 13px;
    color: #94a3b8;
    border-bottom: 1px solid rgba(255, 255, 255, 0.02);
}
.mobile-submenu li a:hover {
    color: var(--theme-green);
    background: rgba(73, 163, 43, 0.05);
}
.mobile-nav-footer {
    margin-top: auto;
    padding: 20px;
    border-top: 1px solid rgba(255, 255, 255, 0.08);
    display: flex;
    flex-direction: column;
    gap: 12px;
}
.mobile-nav-footer a {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 13px;
    color: #cbd5e1;
}
.mobile-nav-footer a:hover {
    color: var(--theme-green);
}

/* ================= 3. HERO SLIDER SECTION ================= */
.hero-slider {
    background-color: #181b22;
    background-image: linear-gradient(rgba(17, 20, 28, 0.75), rgba(17, 20, 28, 0.85)), url('../images/slide-bg1.jpg');
    background-size: cover;
    background-position: center center;
    height: 520px;
    min-height: 520px;
    max-height: 520px;
    padding: 0;
    color: #ffffff;
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}
.hero-content {
    max-width: 860px;
    width: 100%;
    height: 380px;
    margin: 0 auto;
    text-align: center;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
}
.hero-slide {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.35s ease, visibility 0.35s ease;
    pointer-events: none;
}
.hero-slide.active {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}
.slider-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 44px;
    height: 44px;
    background: rgba(0, 0, 0, 0.5);
    color: #fff;
    border: none;
    border-radius: 50%;
    cursor: pointer;
    font-size: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s ease;
    z-index: 10;
}
.slider-arrow:hover {
    background: var(--theme-green);
}
.arrow-prev { left: 20px; }
.arrow-next { right: 20px; }
.hero-subheading {
    font-size: 16px;
    letter-spacing: 2px;
    color: #cbd5e1;
    font-weight: 500;
    display: block;
    margin-bottom: 12px;
    text-transform: uppercase;
}
.hero-title {
    font-size: 2.9rem;
    font-weight: 900;
    color: #ffffff;
    line-height: 1.15;
    margin-bottom: 20px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}
.hero-desc {
    font-size: 18px;
    color: #e2e8f0;
    max-width: 660px;
    margin: 0 auto 25px;
    line-height: 1.6;
}
/* Exact Match Checklist from media_1791104614933.png: Centered block, single column, left-aligned, white checkmarks */
.hero-checklist {
    list-style: none;
    padding: 0;
    margin: 15px auto 25px;
    display: inline-flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
    text-align: left;
}
.hero-checklist li {
    display: flex;
    align-items: center;
    gap: 12px;
    font-size: 15px;
    font-weight: 500;
    color: #ffffff;
    line-height: 1.5;
}
.hero-checklist li i {
    color: #ffffff;
    font-size: 16px;
}
.hero-cta-wrap {
    margin-top: 5px;
}
.btn-green-solid {
    background: var(--theme-green);
    color: #ffffff !important;
    font-weight: 700;
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    padding: 12px 30px;
    border-radius: 25px;
    display: inline-block;
    transition: all 0.25s ease;
    box-shadow: 0 4px 15px rgba(73, 163, 43, 0.35);
    border: none;
    cursor: pointer;
}
.btn-green-solid:hover {
    background: var(--theme-green-hover);
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(73, 163, 43, 0.45);
}
.btn-outline-green { background: transparent; border: 2px solid var(--theme-green); color: var(--theme-green) !important; font-weight: 700; font-size: 14px; text-transform: uppercase; letter-spacing: 0.5px; padding: 10px 28px; border-radius: 25px; display: inline-block; transition: all 0.25s ease; cursor: pointer; text-decoration: none; box-sizing: border-box; }
.btn-outline-green:hover { background: var(--theme-green); color: #ffffff !important; transform: translateY(-2px); box-shadow: 0 4px 15px rgba(73, 163, 43, 0.35); }


/* ================= 4. AUTHENTIC DOMAIN CHECKER ================= */
.domain-checker-wrapper {
    background: #fbfbfb;
    padding: 60px 0 50px;
    position: relative;
    z-index: 10;
}
.inwave-domain-check {
    position: relative;
    margin: 0 auto;
    max-width: 660px;
    width: 100%;
}
.home-domain-check .input-search-box {
    width: 100%;
    margin: 0 auto;
}
.inwave-domain-check .search-input {
    display: flex;
    align-items: flex-start;
    width: 100%;
    box-sizing: border-box;
}
.inwave-domain-check .left-col {
    flex: 1;
    background: var(--theme-green);
    border-radius: 2px;
    padding: 10px 12px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
    box-sizing: border-box;
}
.inwave-domain-check .left-col input[type="text"] {
    background: #ffffff;
    height: 44px;
    line-height: 44px;
    padding: 0 14px;
    font-size: 15px;
    font-family: 'Roboto', sans-serif;
    color: #222222;
    width: 100%;
    border-radius: 2px;
    border: none;
    outline: none;
    display: block;
    margin-bottom: 8px;
    box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.08);
    box-sizing: border-box;
}
.inwave-domain-check .left-col input[type="text"]::placeholder {
    color: #888888;
    font-size: 14px;
}
.inwave-domain-check .right-col {
    width: 135px;
    padding-left: 10px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    box-sizing: border-box;
}
.inwave-domain-check .right-col .ibutton {
    height: 48px;
    line-height: 48px !important;
    background: var(--theme-green);
    color: #ffffff;
    font-size: 15px;
    font-weight: 700;
    text-transform: uppercase;
    text-align: center;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    display: block;
    width: 100%;
    margin: 0 !important;
    padding: 0 15px;
    box-sizing: border-box;
    transition: transform 0.28s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.28s ease, background-color 0.25s ease;
    box-shadow: 0 4px 15px rgba(73, 163, 43, 0.35);
    position: relative;
    overflow: hidden;
}
.inwave-domain-check .right-col .ibutton span {
    display: inline-block;
    transition: transform 0.25s cubic-bezier(0.34, 1.56, 0.64, 1);
}
.inwave-domain-check .right-col .ibutton:hover {
    background: var(--theme-green-hover);
    transform: translateY(-3px) scale(1.03);
    box-shadow: 0 10px 24px rgba(73, 163, 43, 0.48);
}
.inwave-domain-check .right-col .ibutton:hover span {
    transform: scale(1.06);
}
.inwave-domain-check .right-col .ibutton:active {
    transform: translateY(0) scale(0.98);
    box-shadow: 0 3px 10px rgba(73, 163, 43, 0.3);
}
.inwave-domain-check .button-link {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 12px;
    font-weight: 700;
    color: var(--theme-green);
    margin-top: 8px;
    text-decoration: none;
}
.inwave-domain-check .button-link a {
    color: var(--theme-green);
    text-decoration: none;
}
.inwave-domain-check .button-link a:hover {
    text-decoration: underline;
}

/* Domain Checkboxes - 2 Rows matching authentic tickethelp.ro */
.inwave-domain-check .list-domain-check {
    width: 100%;
}
.inwave-domain-check .domain-list {
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px 14px;
}
.inwave-domain-check .domain-row {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 4px 10px;
}
.inwave-domain-check .domain-list label,
.inwave-domain-check .domain-row label {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    cursor: pointer;
    color: #ffffff;
    font-size: 12px;
    font-weight: 700;
    user-select: none;
    margin: 0;
    line-height: 1;
}
.inwave-domain-check .domain-list input[type="checkbox"],
.inwave-domain-check .domain-row input[type="checkbox"] {
    appearance: none;
    -webkit-appearance: none;
    width: 13px;
    height: 13px;
    border: 1.5px solid #ffffff;
    border-radius: 2px;
    background: transparent;
    cursor: pointer;
    position: relative;
    display: inline-block;
    vertical-align: middle;
    margin: 0;
    transition: all 0.15s ease;
    flex-shrink: 0;
}
.inwave-domain-check .domain-list input[type="checkbox"]:checked,
.inwave-domain-check .domain-row input[type="checkbox"]:checked {
    background: #ffffff;
}
.inwave-domain-check .domain-list input[type="checkbox"]:checked::after,
.inwave-domain-check .domain-row input[type="checkbox"]:checked::after {
    content: '\2714';
    font-size: 10px;
    color: var(--theme-green);
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    line-height: 1;
}
.inwave-domain-check .output-search-box {
    margin-top: 15px;
}
.list-domain-checked {
    text-align: center;
}

/* ================= 5. "DE CE TICKETHELP.RO?" ================= */
.why-choose, .section-why {
    background-color: #ffffff;
    background-repeat: no-repeat;
    background-position: center 30%;
    background-size: 85% auto;
    padding: 60px 0 50px;
    color: #333333;
    position: relative;
}
.iw-heading {
    padding: 20px 0;
    margin-bottom: 30px;
}
.iw-heading.center-text {
    text-align: center;
}
.iwh-sub-title {
    font-size: 14px;
    color: #838383;
    line-height: 1.7;
    max-width: 820px;
    margin: 0 auto 15px;
    font-weight: 400;
}
.iwh-title {
    font-size: 30px;
    font-weight: 300;
    color: #444444;
    margin-top: 10px;
    margin-bottom: 12px;
    text-transform: none;
    line-height: 1.3;
    font-family: 'Roboto', sans-serif;
}
.iwh-title strong {
    font-weight: 700;
    color: #222222;
}
.iwh-content {
    font-size: 14px;
    color: #838383;
    max-width: 780px;
    margin: 10px auto 0;
    line-height: 1.6;
}
.features-row, .why-features-grid {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 30px;
    margin: 35px 0 40px;
}
.info-item.style1, .why-feature-col {
    text-align: center;
    padding: 15px;
    flex: 1;
    min-width: 260px;
    max-width: 360px;
}
.info-item.style1 .icon, .why-icon-circle {
    margin-bottom: 15px;
    display: inline-block;
}
.info-item.style1 .icon i, .why-icon-circle i {
    color: var(--theme-green);
    font-size: 48px;
    display: inline-block;
    transition: transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1), color 0.25s ease, filter 0.35s ease;
}
.info-item.style1:hover .icon i,
.why-feature-col:hover .why-icon-circle i {
    transform: translateY(-8px) scale(1.18);
    color: #388e3c;
    filter: drop-shadow(0 10px 18px rgba(73, 163, 43, 0.38));
}
.info-item.style1 .info-item-title, .why-feature-title {
    font-size: 15px;
    font-weight: 700;
    text-transform: uppercase;
    color: #333333;
    margin-bottom: 12px;
    letter-spacing: 0.5px;
}
.info-item.style1 .info-item-desc p, .why-feature-desc {
    font-size: 13px;
    color: #838383;
    line-height: 1.6;
}
.cta-banner.style4 {
    background: transparent;
    border: none;
    border-radius: 0;
    padding: 10px 20px;
    max-width: 900px;
    margin: 20px auto 0;
    text-align: center;
}
.cta-banner.style4 .cta-desc p, .why-bottom-desc {
    font-size: 14px;
    color: #838383;
    line-height: 200%;
    margin-bottom: 20px;
    text-align: center;
}
.cta-banner.style4 .cta-btn a.ibutton, .btn-green-pill {
    background: #49a32b !important;
    color: #ffffff !important;
    display: inline-block;
    padding: 0 35px !important;
    border-radius: 30px !important;
    font-size: 20px !important;
    line-height: 44px !important;
    font-weight: 300 !important;
    text-transform: none;
    transition: all 0.3s ease;
    border: none;
    text-decoration: none;
}
.cta-banner.style4 .cta-btn a.ibutton:hover, .btn-green-pill:hover {
    background: var(--theme-green-hover) !important;
}

/* ================= 6. "PARTENERII NOSTRII" GREEN STRIP ================= */
.our-pre-clients, .section-partners-green {
    background-color: var(--theme-green);
    position: relative;
    padding: 50px 0 55px;
    color: #ffffff;
    overflow: hidden;
    background-size: cover;
    background-position: center;
}
.our-pre-clients .iw-parallax-overlay {
    position: absolute;
    top: 0; left: 0; width: 100%; height: 100%;
    background-color: var(--theme-green);
    opacity: 0.88;
}
.our-pre-clients .container, .section-partners-green .container {
    position: relative;
    z-index: 2;
}
.our-pre-clients .iwh-title, .partners-title {
    font-size: 30px;
    font-weight: 400;
    color: #ffffff;
    text-transform: none; /* Exact match: "Partenerii Nostrii" */
    text-align: center;
    margin-bottom: 30px;
    font-family: 'Roboto', sans-serif;
}
.our-pre-clients .iwh-title strong, .partners-title strong {
    font-weight: 700;
    color: #ffffff;
}
.client-images, .client-images p, .partners-tiles-grid {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 8px !important;
    margin: 0 auto;
    max-width: 1200px;
    padding: 10px 0 15px;
    perspective: 800px;
}
.client-images a, .partner-tile {
    background: rgba(255, 255, 255, 0.22) !important;
    border: 1px solid rgba(255, 255, 255, 0.3) !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 145px;
    height: 105px;
    padding: 8px 12px;
    margin: 2px;
    border-radius: 5px !important;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.08), inset 0 1px 0 rgba(255, 255, 255, 0.35) !important;
    transition: transform 0.28s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.28s ease, background 0.25s ease, border-color 0.25s ease, opacity 0.25s ease;
    text-decoration: none;
    opacity: 0.94;
    position: relative;
    z-index: 1;
    transform: translateY(0);
}
.client-images a:hover, .partner-tile:hover {
    background: rgba(255, 255, 255, 0.38) !important;
    border-color: rgba(255, 255, 255, 0.75) !important;
    opacity: 1;
    transform: translateY(-6px) scale(1.05) !important;
    box-shadow: 0 16px 30px rgba(0, 0, 0, 0.26), 0 6px 12px rgba(0, 0, 0, 0.16), inset 0 1px 0 rgba(255, 255, 255, 0.8) !important;
    z-index: 5;
}
.client-images img, .partner-tile img {
    max-width: 120px !important;
    max-height: 75px !important;
    width: auto !important;
    height: auto !important;
    object-fit: contain;
    display: block;
    margin: 0 auto;
    transition: transform 0.28s ease, filter 0.28s ease;
}
.client-images a:hover img, .partner-tile:hover img {
    transform: scale(1.06);
    filter: brightness(1.05) drop-shadow(0 2px 5px rgba(0, 0, 0, 0.22));
}

/* ================= 7. "EXPERTIZA IN HOSTING" SHOWCASE ================= */
.expertise-in, .section-showcase {
    background-color: #ffffff;
    padding: 60px 0 65px;
    border-bottom: 1px solid #ebebeb;
}
.expertise-grid, .showcase-3col-grid {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    margin: 40px 0 25px;
}
.expertise-col, .showcase-col {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 25px;
}
.expertise-col.left-col {
    text-align: left;
}
.expertise-col.right-col {
    text-align: right;
}
.expertise-center-col, .showcase-device-col {
    flex: 1.6;
    text-align: center;
}
.expertise-center-col img, .device-mockup-img {
    max-width: 100%;
    height: auto;
    display: inline-block;
}
.info-item.style2 {
    padding: 10px 0;
    display: block;
    overflow: hidden;
}
.expertise-col.left-col .info-item.style2 .icon {
    width: 34px;
    font-size: 32px;
    color: var(--theme-green);
    float: left;
    margin-right: 15px;
    margin-top: 2px;
}
.expertise-col.left-col .info-item.style2 .info-item-content {
    margin-left: 49px;
    text-align: left;
}
.expertise-col.right-col .info-item.style2 .icon {
    width: 34px;
    font-size: 32px;
    color: var(--theme-green);
    float: right;
    margin-left: 15px;
    margin-right: 0;
    margin-top: 2px;
}
.expertise-col.right-col .info-item.style2 .info-item-content {
    margin-right: 49px;
    margin-left: 0;
    text-align: right;
}
.info-item.style2 .info-item-title {
    font-size: 15px;
    font-weight: 700;
    text-transform: uppercase;
    color: var(--theme-green);
    margin-bottom: 6px;
    letter-spacing: 0.3px;
}
.info-item.style2 .info-item-desc p {
    font-size: 13px;
    color: #838383;
    line-height: 1.6;
    margin: 0;
}
.see-plans-banner, .see-plans {
    text-align: center;
    margin-top: 30px;
}
.see-plans-banner p, .see-plans p {
    font-size: 24px;
    color: #666666;
    font-weight: 300;
    margin-bottom: 15px;
    font-family: 'Roboto', sans-serif;
    line-height: 1.5;
}
.see-plans-banner p strong, .see-plans p strong {
    font-weight: 400;
    color: #333333;
}
.see-plans-banner p strong .theme-color, .see-plans p strong .theme-color,
.see-plans-banner p .theme-color, .see-plans p .theme-color {
    color: #49a32b !important;
    font-weight: 700;
}
.see-plans .ibutton, .see-plans-banner .ibutton {
    font-size: 24px !important;
    line-height: 48px !important;
    padding: 0 35px !important;
    border-radius: 30px !important;
    font-weight: 300 !important;
    background: #49a32b !important;
    color: #ffffff !important;
    display: inline-block;
    box-shadow: 0 4px 15px rgba(73, 163, 43, 0.3);
}

/* ================= 8. PRICING PLANS SECTION ================= */
/* Authentic inhost style1 */
.section-pricing {
    background-color: #fbfbfb;
    padding: 70px 0 80px;
}
.pricing-grid-authentic {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: 25px;
    margin: 40px auto 0;
    max-width: 1200px;
    align-items: stretch;
}
.pricing-grid-authentic.cols-4 {
    grid-template-columns: repeat(4, 1fr);
}
.pricing-grid-authentic.cols-3 {
    grid-template-columns: repeat(3, 1fr);
}
@media (max-width: 1100px) {
    .pricing-grid-authentic.cols-4 {
        grid-template-columns: repeat(2, 1fr);
        gap: 30px;
    }
}
@media (max-width: 900px) {
    .pricing-grid-authentic.cols-3 {
        grid-template-columns: repeat(2, 1fr);
        gap: 30px;
    }
}
@media (max-width: 600px) {
    .pricing-grid-authentic,
    .pricing-grid-authentic.cols-4,
    .pricing-grid-authentic.cols-3 {
        grid-template-columns: 1fr;
    }
}

.pricebox {
    text-align: center;
    position: relative;
    margin: 10px 0 25px;
    border-radius: 6px;
}
.pricebox.style1 {
    position: relative;
    display: flex;
    flex-direction: column;
    height: 100%;
    border-radius: 6px;
}
.pricebox.style1 .pricebox-header {
    flex-shrink: 0;
    border-top-left-radius: 6px;
    border-top-right-radius: 6px;
}
.pricebox.style1 .pricebox-body {
    flex: 1;
    display: flex;
    flex-direction: column;
    position: relative;
    border-bottom-left-radius: 6px;
    border-bottom-right-radius: 6px;
}
.pricebox.style1 .pricebox-badge {
    position: absolute;
    top: -12px;
    right: 20px;
    background: #e67e22;
    color: #ffffff;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    padding: 4px 14px;
    border-radius: 20px;
    box-shadow: 0 4px 10px rgba(0,0,0,0.15);
    z-index: 10;
    letter-spacing: 0.5px;
}
.pricebox-header {
    color: #ffffff;
    position: relative;
}
.style1 .pricebox-header-content {
    margin-right: 36px;
    padding: 22px 15px;
    position: relative;
    background: #49a32b;
    border-top-left-radius: 6px !important;
    border-top-right-radius: 6px !important;
}
.style1 .pricebox-header-content:after {
    width: 0;
    height: 0;
    border-left: 10px solid transparent !important;
    border-right: 10px solid transparent !important;
    border-top: 10px solid #49a32b;
    position: absolute;
    bottom: -10px;
    left: 50%;
    content: "";
    margin-left: -10px;
    z-index: 3;
}
.style1 .pricebox-edge {
    top: 0;
    width: 1px;
    right: 0;
    position: absolute;
    height: 100%;
    background: #ffffff;
    opacity: 0.2;
}
.style1 .pricebox-header .pricebox-shadow {
    width: 36px;
    height: 100%;
    position: absolute;
    top: 0;
    right: 0;
    transform: skewY(45deg) translateY(18px);
    -webkit-transform: skewY(45deg) translateY(18px);
    background: #377d20;
    z-index: 2;
    border-top-right-radius: 6px !important;
}
.pricebox-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 54px;
    height: 54px;
    background: #ffffff;
    border-radius: 50%;
    margin: 0 auto 10px;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.12);
    transition: transform 0.32s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.3s ease, background-color 0.25s ease;
    cursor: pointer;
}
.pricebox-icon i {
    color: #49a32b;
    font-size: 26px;
    display: inline-block;
    line-height: 1;
    transition: transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1), color 0.25s ease;
}
.pricebox:hover .pricebox-icon {
    transform: translateY(-4px) scale(1.12);
    box-shadow: 0 10px 22px rgba(0, 0, 0, 0.22);
}
.pricebox:hover .pricebox-icon i {
    transform: scale(1.1);
    color: #2e7d32;
}
.pricebox-icon:hover {
    transform: translateY(-6px) scale(1.22) !important;
    box-shadow: 0 14px 28px rgba(0, 0, 0, 0.3) !important;
}
.pricebox-icon:hover i {
    transform: scale(1.15) !important;
    color: #1b5e20 !important;
}
.pricebox-title {
    text-transform: uppercase;
    color: #ffffff;
    margin-top: 12px;
    margin-bottom: 0;
    font-weight: 700;
    font-size: 20px;
    font-family: 'Roboto', sans-serif;
    letter-spacing: normal;
    line-height: 1.25;
}
.pricebox-body {
    position: relative;
    background: transparent;
}
.style1 .pricebox-body-content {
    background: #f0f0f0;
    margin-right: 36px;
    padding: 10px 15px 20px;
    border-left: 1px solid #e0e0e0;
    border-bottom: 1px solid #e0e0e0;
    border-bottom-left-radius: 6px !important;
    border-bottom-right-radius: 6px !important;
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.style1 .pricebox-body .pricebox-shadow {
    width: 36px;
    height: 100%;
    position: absolute;
    top: 0;
    right: 0;
    transform: skewY(-45deg) translateY(-18px);
    -webkit-transform: skewY(-45deg) translateY(-18px);
    background: #dddddd;
    box-shadow: 9px 9px 20px #ddd;
    z-index: 1;
    border-bottom-right-radius: 6px !important;
}
.pricebox-price {
    font-size: 36px;
    font-weight: 300;
    color: #838383;
    padding: 25px 0 12px;
    font-family: 'Roboto', sans-serif;
    display: block;
    cursor: default;
    transition: transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1), color 0.25s ease, text-shadow 0.25s ease;
}
.pricebox:hover .pricebox-price {
    color: #333333;
}
.pricebox-price:hover,
.pricebox:hover .pricebox-price:hover {
    transform: translateY(-3px) scale(1.08);
    color: var(--theme-green);
    text-shadow: 0 3px 14px rgba(73, 163, 43, 0.3);
}
.pricebox .old-price {
    font-size: 17px !important;
    opacity: 0.8;
    text-decoration: line-through;
}
.style1 .pricebox-price-desc {
    position: relative;
    padding: 10px 10px;
    margin-bottom: 5px;
}
.style1 .pricebox-price-desc:after {
    content: '';
    border-bottom: 1px solid #d6d6d6;
    display: block;
    margin-top: -12px;
}
.style1 .pricebox-price-desc span {
    font-size: 12px;
    border-radius: 20px;
    color: #ffffff;
    padding: 4px 15px;
    text-transform: uppercase;
    border: 4px solid #f0f0f0;
    font-weight: 600;
    background: #49a32b;
    position: relative;
    z-index: 2;
    display: inline-block;
}
.style1 .pricebox-description {
    padding: 15px 20px;
    color: #838383;
    font-size: 14px;
    line-height: 24px;
    text-align: center;
}
.pricebox-purchased-link {
    padding: 10px 0 25px;
}
.pricebox-purchased-link a.ibutton, .pricebox-purchased-link .ibutton {
    background: #49a32b !important;
    color: #ffffff !important;
    font-weight: 700;
    font-size: 13px !important;
    line-height: 33px !important;
    text-transform: uppercase;
    padding: 0 24px !important;
    border-radius: 25px !important;
    display: inline-block;
    transition: all 0.25s ease;
    border: none;
    cursor: pointer;
    text-decoration: none;
    box-shadow: 0 2px 6px rgba(73, 163, 43, 0.35);
}
.pricebox-purchased-link a.ibutton:hover, .pricebox-purchased-link .ibutton:hover {
    background: #3d8b24 !important;
    box-shadow: 0 4px 12px rgba(73, 163, 43, 0.45);
    transform: translateY(-1px);
}

@media (max-width: 768px) {
    .style1 .pricebox-header-content,
    .style1 .pricebox-body-content {
        margin-right: 0;
    }
    .style1 .pricebox-body-content {
        border-right: 1px solid #e0e0e0;
    }
    .style1 .pricebox-header .pricebox-shadow,
    .style1 .pricebox-body .pricebox-shadow,
    .style1 .pricebox-edge {
        display: none;
    }
}

/* ================= 9. BLOG ARTICLES ================= */
.section-home-blog {
    padding: 75px 0;
    background: #ffffff;
}
.home-articles-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    gap: 25px;
    margin-top: 35px;
}
.article-card {
    background: #ffffff;
    border: 1px solid var(--border-color);
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.03);
    transition: all 0.25s ease;
}
.article-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.08);
    border-color: var(--theme-green);
}
.article-body {
    padding: 25px;
}
.article-date {
    font-size: 12px;
    color: #94a3b8;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-bottom: 10px;
}
.article-date i {
    color: var(--theme-green);
}
.article-card-title {
    font-size: 1.15rem;
    font-weight: 700;
    color: #1e222a;
    margin-bottom: 10px;
    line-height: 1.4;
}
.article-card-title a:hover {
    color: var(--theme-green);
}
.article-card-excerpt {
    font-size: 14px;
    color: #64748b;
    line-height: 1.6;
    margin-bottom: 18px;
}
.article-read-more {
    font-size: 13px;
    font-weight: 700;
    color: var(--theme-green);
    display: inline-flex;
    align-items: center;
    gap: 6px;
}
.article-read-more:hover {
    color: var(--theme-green-hover);
    gap: 9px;
}

/* ================= 10. COOKIE BANNER ================= */
.cookie-banner-bottom {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    background: rgba(30, 34, 42, 0.98);
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    padding: 18px 0;
    color: #ffffff;
    z-index: 9999;
    box-shadow: 0 -10px 30px rgba(0, 0, 0, 0.3);
}
.cookie-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 25px;
    flex-wrap: wrap;
}
.cookie-text {
    flex: 1;
    font-size: 13px;
    line-height: 1.6;
    color: #cbd5e1;
}
.cookie-text a {
    color: var(--theme-green);
    text-decoration: underline;
}
.cookie-actions {
    display: flex;
    gap: 10px;
    align-items: center;
    flex-wrap: wrap;
}
.btn-cookie-settings, .btn-cookie-reject {
    background: transparent;
    border: 1px solid #475569;
    color: #ffffff;
    padding: 8px 16px;
    border-radius: 4px;
    font-size: 12px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s;
}
.btn-cookie-settings:hover, .btn-cookie-reject:hover {
    background: #334155;
    border-color: #64748b;
}
.btn-cookie-accept {
    background: var(--theme-green);
    border: none;
    color: #ffffff;
    padding: 8px 20px;
    border-radius: 4px;
    font-size: 12px;
    font-weight: 700;
    cursor: pointer;
    transition: all 0.2s;
}
.btn-cookie-accept:hover {
    background: var(--theme-green-hover);
}

/* ================= 11. CTA STRIP & AUTHENTIC INHOST FOOTER ================= */
.custom-cta-strip, .wpb_content_element.contact-us {
    background-color: var(--theme-green);
    color: #ffffff;
    padding: 35px 0;
    font-size: 22px;
    line-height: 150%;
    font-weight: 300;
}
.cta-strip-inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 30px;
}
.cta-strip-text {
    font-size: 22px;
    line-height: 1.5;
    font-weight: 300;
    color: #ffffff;
    flex: 1;
    font-family: 'Roboto', sans-serif;
}
.cta-strip-btn .ibutton-white-outline,
.wpb_content_element.contact-us .ibutton,
.ibutton-white-outline {
    border: 2px solid #ffffff;
    background: transparent;
    color: #ffffff !important;
    border-radius: 22px;
    padding: 0 25px;
    height: 42px;
    line-height: 38px;
    font-weight: 700;
    font-size: 15px;
    text-transform: uppercase;
    display: inline-block;
    transition: all 0.25s ease;
    cursor: pointer;
    text-decoration: none;
    white-space: nowrap;
}
.cta-strip-btn .ibutton-white-outline:hover,
.wpb_content_element.contact-us .ibutton:hover,
.ibutton-white-outline:hover {
    background: #ffffff;
    color: #49a32b !important;
}

/* Page Footer */
.page-footer {
    background: #252525;
    color: #969595;
    font-size: 13px;
}
.page-footer .container {
    background: #252525;
}
.footer-main-row {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -15px;
}
.footer-left {
    background: #252525;
    padding: 35px 25px 35px 15px;
    flex: 0 0 25%;
    max-width: 25%;
    box-sizing: border-box;
}
.footer-col {
    background: #252525;
    padding: 35px 20px 35px 20px;
    box-sizing: border-box;
}
.footer-links-col {
    flex: 0 0 35%;
    max-width: 35%;
}
.footer-posts-col {
    flex: 0 0 40%;
    max-width: 40%;
    padding-right: 15px;
}
.footer-logo {
    margin-bottom: 22px;
}
.footer-logo img {
    max-height: 48px;
    width: auto;
}
.footer-text {
    color: #989898;
    font-size: 13px;
    line-height: 1.7;
    margin-bottom: 20px;
}
.footer-social-links .social-links {
    display: flex;
    gap: 8px;
    list-style: none;
    padding: 0;
    margin: 0 0 20px;
}
.footer-social-links .social-links a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border: 2px solid #838383;
    border-radius: 50%;
    color: #838383;
    font-size: 13px;
    transition: all 0.2s ease;
    text-decoration: none;
}
.footer-social-links .social-links a:hover {
    border-color: var(--theme-green);
    background: var(--theme-green);
    color: #ffffff;
}
.footer-extra-links {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 10px;
}
.footer-extra-links a {
    border: 2px solid #838383;
    border-radius: 20px;
    color: #838383;
    text-transform: uppercase;
    font-size: 11px;
    font-weight: 700;
    padding: 6px 14px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    transition: all 0.2s ease;
    text-decoration: none;
}
.footer-extra-links a:hover {
    border-color: var(--theme-green);
    color: #ffffff;
    background: var(--theme-green);
}
.footer-title h4 {
    font-size: 18px;
    font-weight: 700;
    text-transform: uppercase;
    color: #ffffff;
    margin-bottom: 20px;
    letter-spacing: 0.5px;
    font-family: 'Roboto', sans-serif;
}
.menu-useful-links {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px 10px;
    width: 100%;
}
.menu-useful-links li {
    padding: 0;
    margin: 0;
    border-bottom: none;
    min-width: 0;
}
.menu-useful-links li a { text-align: left;
    color: #f1f5f9;
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px 10px;
    border-radius: 8px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    background: rgba(255, 255, 255, 0.035);
    text-decoration: none;
    position: relative;
    overflow: hidden;
    transition: all 0.22s ease;
    box-sizing: border-box;
    min-height: 42px;
    width: 100%;
    min-width: 0;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2);
}
.menu-useful-links li a::before,
.menu-useful-links li a::after {
    content: none !important;
}
.menu-useful-links .ul-ico {
    width: 28px;
    height: 28px;
    min-width: 28px;
    border-radius: 6px;
    background: rgba(113, 178, 56, 0.14);
    border: 1px solid rgba(113, 178, 56, 0.3);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    transition: all 0.22s ease;
}
.menu-useful-links .ul-ico i {
    color: var(--theme-green);
    font-size: 13px;
    transition: all 0.22s ease;
}
.menu-useful-links .ul-txt {
    font-size: 12px;
    font-weight: 500;
    color: #f1f5f9;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    transition: all 0.22s ease;
}
.menu-useful-links li a:hover {
    color: #ffffff;
    background: rgba(113, 178, 56, 0.12);
    border-color: rgba(113, 178, 56, 0.45);
    transform: translateY(-2px);
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.35);
}
.menu-useful-links li a:hover .ul-ico {
    background: var(--theme-green);
    border-color: var(--theme-green);
    box-shadow: 0 0 10px rgba(113, 178, 56, 0.5);
}
.menu-useful-links li a:hover .ul-ico i {
    color: #ffffff;
}
.menu-useful-links li a:hover .ul-txt {
    color: #ffffff;
}

/* Client green subnav icons */
.client-green-nav > li > a .subnav-ico,
.user-greeting-link .subnav-ico {
    font-size: 14px;
    margin-right: 6px;
    opacity: 0.9;
    transition: transform 0.2s ease, opacity 0.2s ease;
}
.client-green-nav > li > a:hover .subnav-ico,
.client-green-nav > li.active > a .subnav-ico,
.user-greeting-link:hover .subnav-ico {
    opacity: 1;
    transform: scale(1.15);
}

/* Bigger home icon in main header */
.nav-menu > li:first-child > a > i.fa-home {
    font-size: 20px !important;
    color: #dedede;
}
.nav-menu > li:first-child > a:hover > i.fa-home,
.nav-menu > li:first-child > a.active > i.fa-home {
    color: var(--theme-green) !important;
}
.recent-blog-posts {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 8px;
}
.recent-blog-posts-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px 10px;
    list-style: none;
    padding: 0;
    margin: 0;
    width: 100%;
}
@media (max-width: 991px) {
    .recent-blog-posts-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 8px 10px;
        width: 100%;
    }
}
@media (max-width: 767px) {
    /* Useful Links: Guaranteed 2 Columns on Mobile */
    .menu-useful-links {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 6px 8px !important;
        width: 100% !important;
    }
    .menu-useful-links li a { text-align: left;
        padding: 5px 6px !important;
        gap: 6px !important;
        min-height: 38px !important;
    }
    .menu-useful-links .ul-ico {
        width: 24px !important;
        height: 24px !important;
        min-width: 24px !important;
    }
    .menu-useful-links .ul-ico i {
        font-size: 11px !important;
    }
    .menu-useful-links .ul-txt {
        font-size: 10.5px !important;
    }

    /* Recent Posts: Guaranteed 2 Columns on Mobile */
    .recent-blog-posts-grid {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 6px 8px !important;
        max-width: 100% !important;
        width: 100% !important;
    }
    .recent-blog-post { text-align: left;
        max-width: 100% !important;
        width: 100% !important;
        padding: 5px 6px !important;
        gap: 6px !important;
        min-height: 44px !important;
    }
    .recent-blog-post-thumnail {
        width: 38px !important;
        height: 28px !important;
        min-width: 38px !important;
        flex-shrink: 0 !important;
    }
    .recent-blog-post-title a {
        font-size: 9.5px !important;
        line-height: 1.25 !important;
        display: -webkit-box !important;
        -webkit-line-clamp: 2 !important;
        -webkit-box-orient: vertical !important;
        overflow: hidden !important;
    }
    .recent-blog-post-detail .post-date {
        font-size: 8.5px !important;
        gap: 3px !important;
        margin-top: 1px !important;
    }
    .recent-blog-post-detail .post-date i {
        font-size: 8.5px !important;
    }
}
.recent-blog-post { text-align: left;
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 6px 8px;
    border-radius: 6px;
    border: 1px solid rgba(255, 255, 255, 0.07);
    background: rgba(255, 255, 255, 0.03);
    transition: all 0.22s ease;
    box-sizing: border-box;
    min-height: 48px;
    width: 100%;
    min-width: 0;
}
.recent-blog-post:hover {
    background: rgba(255, 255, 255, 0.07);
    border-color: rgba(113, 178, 56, 0.45);
    transform: translateY(-2px);
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.35);
}
.recent-blog-post:last-child {
    border-bottom: 1px solid rgba(255, 255, 255, 0.07);
}
.recent-blog-post-thumnail {
    display: block;
    width: 46px;
    height: 34px;
    flex-shrink: 0;
    border-radius: 4px;
    overflow: hidden;
    background: #18191d;
    border: 1px solid rgba(255, 255, 255, 0.12);
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.3);
}
.recent-blog-post-thumnail img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.3s ease;
}
.recent-blog-post:hover .recent-blog-post-thumnail img {
    transform: scale(1.08);
}
.recent-blog-post-detail {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.recent-blog-post-title {
    margin-bottom: 2px;
    line-height: 1.3;
}
.recent-blog-post-title a {
    color: #e2e8f0;
    font-weight: 500;
    font-size: 11px;
    line-height: 1.3;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    text-decoration: none;
    transition: color 0.2s ease;
}
.recent-blog-post:hover .recent-blog-post-title a,
.recent-blog-post-title a:hover {
    color: var(--theme-green, #71b238);
}
.recent-blog-post-detail .post-date {
    color: #94a3b8;
    font-size: 10px;
    display: inline-flex;
    align-items: center;
    gap: 4px;
    margin-top: 1px;
}
.recent-blog-post-detail .post-date i {
    color: var(--theme-green, #71b238);
    font-size: 10px;
}
.tagcloud {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}
.tag-cloud-link {
    display: inline-block;
    height: 28px;
    border: 1px solid #9c9c9c;
    border-radius: 50px;
    line-height: 26px;
    padding: 0 10px;
    text-transform: uppercase;
    color: #838383;
    font-size: 10px !important;
    text-decoration: none;
    transition: all 0.2s ease;
}
.tag-cloud-link:hover {
    background: var(--theme-green);
    border-color: var(--theme-green);
    color: #ffffff;
}

/* Copyright */
.copyright {
    background: #373737;
    color: #ffffff;
    height: 63px;
    line-height: 63px;
    font-size: 13px;
}
.copyright-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: 100%;
}
.copyright a {
    color: var(--theme-green);
    font-weight: 700;
    text-decoration: none;
}
.copyright .back-to-top {
    display: none;
}

/* WhatsApp-Style Floating Scroll Up Button */
.floating-scroll-up {
    position: fixed;
    bottom: 30px;
    right: 30px;
    width: 52px;
    height: 52px;
    background: #71b238;
    background: linear-gradient(135deg, #71b238 0%, #5d972c 100%);
    color: #ffffff !important;
    border-radius: 50%;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
    margin: 0 !important;
    line-height: 1 !important;
    box-shadow: 0 4px 18px rgba(0, 0, 0, 0.28), 0 2px 8px rgba(113, 178, 56, 0.4);
    z-index: 99999;
    text-decoration: none !important;
    cursor: pointer;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    opacity: 0;
    visibility: hidden;
    transform: translateY(20px) scale(0.9);
}

.floating-scroll-up.is-visible {
    opacity: 1;
    visibility: visible;
    transform: translateY(0) scale(1);
}

.floating-scroll-up:hover {
    background: #5d972c;
    background: linear-gradient(135deg, #7ec43e 0%, #68a931 100%);
    color: #ffffff !important;
    transform: translateY(-5px) scale(1.08);
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.35), 0 4px 14px rgba(113, 178, 56, 0.6);
}

.floating-scroll-up:active {
    transform: translateY(-2px) scale(0.98);
}

.floating-scroll-up svg {
    width: 22px;
    height: 22px;
    stroke: #ffffff;
    display: block;
    margin: auto;
    transition: transform 0.2s ease;
}

.floating-scroll-up:hover svg {
    transform: translateY(-2px);
}

.floating-scroll-up i {
    color: #ffffff;
    font-size: 19px;
    line-height: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
    /* Optical vertical centering compensation for FontAwesome chevron glyph */
    transform: translateY(-2px);
    transition: transform 0.2s ease;
}

.floating-scroll-up:hover i {
    transform: translateY(-4px);
}

@media (max-width: 768px) {
    .floating-scroll-up {
        bottom: 20px;
        right: 20px;
        width: 46px;
        height: 46px;
    }
    .floating-scroll-up svg {
        width: 20px;
        height: 20px;
    }
    .floating-scroll-up i {
        font-size: 17px;
    }
}

/* Extra legal disclaimer & ANPC badges */
.extrainfofooter {
    clear: both;
    padding: 18px 0 25px;
    text-align: center;
    background: #2b2b2b;
}
.extrainfofooter p {
    color: #969595;
    font-size: 12px;
    line-height: 1.6;
    max-width: 920px;
    margin: 0 auto 12px;
}
.anpc-badges-wrap {
    display: flex;
    justify-content: center;
    gap: 15px;
    align-items: center;
}

/* ================= 11.1 INTERNAL PAGES (SERVICES & DOMAINS) ================= */
.section-header {
    text-align: center;
    max-width: 720px;
    margin: 0 auto 40px;
}
.section-subtitle {
    color: var(--theme-green);
    font-size: 13px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    margin-bottom: 8px;
    display: block;
}
.section-title {
    font-size: 2.2rem;
    font-weight: 800;
    color: #1e222a;
    margin-bottom: 12px;
}
.section-desc {
    color: #64748b;
    font-size: 1rem;
}
.domain-search-box {
    background: #ffffff;
    border: 1px solid var(--border-color);
    border-radius: 8px;
    padding: 25px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05);
}
.domain-form {
    display: flex;
    gap: 10px;
    background: #f8fafc;
    border: 2px solid var(--border-color);
    border-radius: 4px;
    padding: 6px;
    align-items: center;
}
.domain-input {
    flex: 1;
    background: transparent;
    border: none;
    color: #222;
    font-size: 1rem;
    padding: 10px 15px;
    outline: none;
}
.tld-select {
    background: #ffffff;
    border: 1px solid var(--border-color);
    border-radius: 4px;
    color: #222;
    padding: 10px 15px;
    font-size: 0.95rem;
    font-weight: 700;
    outline: none;
    cursor: pointer;
}
.domain-search-btn {
    background: var(--theme-green);
    color: #ffffff;
    border: none;
    border-radius: 4px;
    padding: 12px 28px;
    font-weight: 700;
    font-size: 0.95rem;
    cursor: pointer;
    text-transform: uppercase;
    transition: 0.2s;
}
.domain-search-btn:hover {
    background: var(--theme-green-hover);
}

/* ================= 12. RESPONSIVE MEDIA QUERIES ================= */
@media (max-width: 992px) {
    .site-header { height: auto; padding: 10px 0; }
    .header-logo, .header-logo-badge { clip-path: none; margin-left: 0; padding: 0; height: auto; }
    .header-logo img, .header-logo-badge img { height: 44px; max-width: 175px; }
    .header-nav { display: none !important; }
    .mobile-toggle {
        display: inline-flex !important;
        align-items: center;
        justify-content: center;
        width: 38px;
        height: 38px;
        background: #2b303c;
        color: #ffffff;
        border: none;
        border-radius: 4px;
        font-size: 16px;
        cursor: pointer;
        transition: all 0.25s ease;
    }
    .mobile-toggle:hover {
        background: var(--theme-green);
    }
    .top-bar-inner { flex-direction: column; height: auto; padding: 8px 0; gap: 6px; }
    .expertise-grid, .showcase-3col-grid { flex-direction: column; text-align: center; }
    .expertise-col.left-col, .expertise-col.right-col,
    .showcase-col.left-col, .showcase-col.right-col { text-align: center; }
    .expertise-col.left-col .info-item.style2,
    .showcase-col.left-col .showcase-feature-item { flex-direction: row; justify-content: center; }
    .cta-strip-inner { flex-direction: column; text-align: center; }
    .page-footer .container { background-image: linear-gradient(to right, #252525 50%, #313131 50%); }
    .footer-left { flex: 0 0 50%; max-width: 50%; }
    .footer-links-col { flex: 0 0 50%; max-width: 50%; }
    .footer-posts-col { flex: 0 0 100%; max-width: 100%; padding-top: 25px; }
}

@media (max-width: 768px) {
    .domain-checker-wrapper { padding: 40px 0 35px; }
    .inwave-domain-check { margin: 0 auto; padding: 0; width: 100%; max-width: 100%; box-sizing: border-box; }
    .inwave-domain-check .search-input { display: flex; flex-direction: column; width: 100%; box-sizing: border-box; }
    .inwave-domain-check .left-col { width: 100%; margin-bottom: 10px; box-sizing: border-box; flex: none; }
    .inwave-domain-check .right-col { width: 100%; padding-left: 0; padding-right: 0; margin: 0; box-sizing: border-box; display: flex; flex-direction: column; align-items: stretch; }
    .inwave-domain-check .right-col .ibutton { width: 100%; margin: 0 !important; box-sizing: border-box; height: 48px; line-height: 48px !important; }
    .inwave-domain-check .button-link { margin-top: 8px; align-self: flex-start; }
    .inwave-domain-check .domain-list { display: flex !important; flex-direction: row !important; flex-wrap: wrap !important; align-items: center !important; justify-content: flex-start !important; gap: 6px 8px !important; padding-top: 4px !important; }
    .inwave-domain-check .domain-list label { font-size: 11.5px !important; white-space: nowrap !important; gap: 3px !important; padding: 2px 1px !important; }
    .hero-title { font-size: 2rem; }
    .hero-slider { height: 480px; min-height: 480px; max-height: 480px; }
    .hero-content { height: 380px; }
    .slider-arrow { display: none; }
    .footer-left, .footer-col, .footer-links-col, .footer-posts-col { flex: 0 0 100%; max-width: 100%; padding: 22px 12px; }
    .page-footer, .page-footer .container { background: #252525; }
    .copyright { height: auto; line-height: 1.5; padding: 15px 0; }
    .copyright-row { flex-direction: column; gap: 10px; text-align: center; }
    .copyright .back-to-top a { margin: 5px auto 0; }
    .cookie-inner { flex-direction: column; text-align: center; }
    .cta-strip-inner { flex-direction: column; text-align: center; gap: 18px; }
    .cta-strip-text { font-size: 16px; line-height: 1.45; }
}

/* Feature Circular Icon (Guaranteed 1:1 Perfect Circle) & Style3 Override */
.feature-circle-icon,
.info-item.style3 .icon,
.info-item.style2.style3 .icon,
.info-item.light-grey .icon {
    width: 52px !important;
    height: 52px !important;
    min-width: 52px !important;
    min-height: 52px !important;
    max-width: 52px !important;
    max-height: 52px !important;
    flex: 0 0 52px !important;
    aspect-ratio: 1 / 1 !important;
    border-radius: 50% !important;
    border: 2px solid var(--theme-green) !important;
    color: var(--theme-green) !important;
    background: #ffffff !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin-right: 18px !important;
    margin-top: 2px !important;
    float: none !important;
    box-sizing: border-box !important;
    transition: all 0.3s ease !important;
    position: relative !important;
    overflow: hidden !important;
}
.feature-circle-icon i,
.info-item.style3 .icon i,
.info-item.style2.style3 .icon i,
.info-item.light-grey .icon i {
    font-size: 20px !important;
    line-height: 1 !important;
    display: inline-block !important;
    position: static !important;
    transform: none !important;
    -webkit-transform: none !important;
    color: var(--theme-green) !important;
    transition: color 0.3s ease !important;
    animation: none !important;
    -webkit-animation: none !important;
}
.info-item:hover .feature-circle-icon,
.info-item.style3:hover .icon,
.info-item.style2.style3:hover .icon,
.info-item.light-grey:hover .icon {
    background: var(--theme-green) !important;
    border-color: var(--theme-green) !important;
    box-shadow: 0 0 0 6px rgba(73, 163, 43, 0.2) !important;
}
.info-item:hover .feature-circle-icon i,
.info-item.style3:hover .icon i,
.info-item.style2.style3:hover .icon i,
.info-item.light-grey:hover .icon i {
    color: #ffffff !important;
    animation: none !important;
    -webkit-animation: none !important;
}

/* ==========================================================================
   Header Login Modal Popup (Exact Match to tickethelp.ro)
   ========================================================================== */
.login-modal-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background: rgba(0, 0, 0, 0.72);
    backdrop-filter: blur(2px);
    -webkit-backdrop-filter: blur(2px);
    z-index: 100000;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 15px;
    box-sizing: border-box;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.25s ease, visibility 0.25s ease;
}
.login-modal-overlay.active {
    opacity: 1;
    visibility: visible;
}
.login-modal-dialog {
    background: #ffffff;
    width: 100%;
    max-width: 480px;
    border-radius: 4px;
    box-shadow: 0 15px 45px rgba(0, 0, 0, 0.5), 0 0 1px rgba(0, 0, 0, 0.2);
    position: relative;
    overflow: hidden;
    transform: translateY(-20px) scale(0.98);
    transition: transform 0.25s cubic-bezier(0.16, 1, 0.3, 1);
    box-sizing: border-box;
    text-align: left;
}
.login-modal-overlay.active .login-modal-dialog {
    transform: translateY(0) scale(1);
}
.login-modal-header {
    padding: 14px 22px;
    border-bottom: 1px solid #ebebeb;
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: #ffffff;
}
.login-modal-header h3 {
    margin: 0;
    font-size: 15px;
    font-weight: 600;
    color: #555555;
    font-family: 'Roboto', sans-serif;
    line-height: 1.3;
}
.login-modal-close {
    background: transparent;
    border: none;
    font-size: 24px;
    line-height: 1;
    color: #888888;
    cursor: pointer;
    padding: 0;
    margin: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    transition: color 0.2s, background-color 0.2s;
}
.login-modal-close:hover {
    color: #111111;
    background-color: #f0f0f0;
}
.login-modal-body {
    background: #fbfbfb;
    padding: 22px 24px 18px;
    box-sizing: border-box;
}
.form-group-modal {
    margin-bottom: 16px;
    text-align: left;
}
.form-group-modal label {
    display: block;
    font-size: 13px;
    font-weight: 500;
    color: #555555;
    margin-bottom: 6px;
    font-family: 'Roboto', sans-serif;
}
.form-control-modal {
    width: 100%;
    box-sizing: border-box;
    background: #ebf3fb !important;
    border: 1px solid #d4e1ed !important;
    border-radius: 3px;
    padding: 10px 12px;
    font-size: 14px;
    color: #222222 !important;
    outline: none;
    font-family: inherit;
    transition: background 0.2s, border-color 0.2s, box-shadow 0.2s;
}
.form-control-modal:focus {
    background: #ffffff !important;
    border-color: #71b238 !important;
    box-shadow: 0 0 0 2px rgba(113, 178, 56, 0.25) !important;
}
.login-modal-action {
    text-align: center;
    margin-top: 22px;
    margin-bottom: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
}
.btn-modal-auth {
    background: #71b238 !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 3px;
    font-size: 13px;
    font-weight: 600;
    padding: 8px 24px;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    transition: background-color 0.2s, transform 0.1s;
    font-family: 'Roboto', sans-serif;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.15);
}
.btn-modal-auth:hover {
    background: #619e2e !important;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
}
.btn-modal-auth:active {
    transform: scale(0.98);
}
.btn-modal-auth:disabled {
    opacity: 0.65;
    cursor: not-allowed;
}
.btn-modal-auth i {
    font-size: 13px;
}
.login-loading {
    color: #71b238;
    font-size: 16px;
    display: inline-flex;
    align-items: center;
}
.login-modal-feedback {
    margin-top: 14px;
    padding: 10px 14px;
    border-radius: 4px;
    font-size: 13px;
    text-align: center;
    line-height: 1.4;
}
.login-modal-feedback.error {
    background: #fde8e8;
    color: #c81e1e;
    border: 1px solid #f8b4b4;
    display: block !important;
}
.login-modal-feedback.success {
    background: #def7ec;
    color: #03543f;
    border: 1px solid #84e1bc;
    display: block !important;
}
.login-modal-footer {
    border-top: 1px solid #ebebeb;
    padding: 14px 24px;
    background: #ffffff;
}
.login-modal-links {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 16px;
}
.login-modal-links li {
    font-size: 13px;
    color: #666666;
    display: inline-flex;
    align-items: center;
}
.login-modal-links li::before {
    content: "â€¢";
    color: #888888;
    margin-right: 8px;
    font-weight: bold;
}
.login-modal-links a {
    color: #666666;
    text-decoration: none;
    font-size: 13px;
    transition: color 0.2s;
}
.login-modal-links a:hover {
    color: #71b238;
    text-decoration: underline;
}
@media (max-width: 576px) {
    .login-modal-dialog {
        max-width: 95%;
    }
    .login-modal-body {
        padding: 18px 16px 14px;
    }
    .login-modal-footer {
        padding: 12px 16px;
    }
    .login-modal-links {
        gap: 12px;
    }
}

/* ==========================================================================
   Client Area Inhost / WHMCS Dashboard Styles (Exact Match to TicketHelp)
   ========================================================================== */
.client-green-navbar {
    background: #71b238;
    position: relative;
    z-index: 100;
}
.client-green-navbar .container {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.client-portal-burger {
    display: none;
}
.client-user-menu .has-dropdown.open > .client-dropdown {
    display: block;
}
.client-green-nav {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}
.client-green-nav > li {
    position: relative;
}
.client-green-nav > li > a {
    color: #ffffff !important;
    font-size: 13px;
    font-weight: 700;
    padding: 13px 16px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    text-decoration: none;
    transition: background 0.2s;
    font-family: 'Roboto', sans-serif;
}
.client-green-nav > li > a:hover,
.client-green-nav > li.active > a,
.client-green-nav > li.has-dropdown:hover > a {
    background: #4f8224 !important;
    color: #ffffff !important;
}
.client-green-nav > li.has-dropdown:hover > .client-dropdown,
.client-user-menu .has-dropdown:hover > .client-dropdown {
    display: block;
}
.client-dropdown {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    background: #ffffff;
    min-width: 220px;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.15);
    border: 1px solid #dcdfe4;
    border-top: 3px solid #71b238;
    border-radius: 0 0 6px 6px;
    list-style: none;
    margin: 0;
    padding: 6px 0;
    z-index: 1000;
}
.client-dropdown.user-dropdown-right {
    left: auto;
    right: 0;
}
.client-dropdown li {
    margin: 0;
    padding: 0;
}
.client-dropdown li a {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 18px;
    color: #334155 !important;
    font-size: 13px;
    font-weight: 500;
    text-decoration: none;
    transition: all 0.18s ease;
    border-left: 4px solid transparent;
}
.client-dropdown li a:hover {
    background: #eef8e8 !important;
    color: #1e5c09 !important;
    font-weight: 700 !important;
    border-left-color: #71b238 !important;
    padding-left: 22px;
}
.client-user-menu {
    display: flex;
    align-items: center;
}
.user-greeting-link {
    color: #ffffff !important;
    font-size: 13px;
    font-weight: 700;
    padding: 13px 16px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    text-decoration: none;
    cursor: pointer;
}
.user-greeting-link:hover {
    background: #5d962c;
}

/* Dashboard Panels */
.client-panel {
    background: #ffffff;
    border: 1px solid #e1e7ec;
    border-radius: 4px;
    margin-bottom: 25px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04);
    overflow: hidden;
}
.client-panel-heading {
    background: #71b238;
    color: #ffffff;
    padding: 10px 18px;
    font-weight: 700;
    font-size: 14px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.client-panel-heading h3 {
    margin: 0;
    font-size: 14px;
    font-weight: 700;
    color: #ffffff;
    display: inline-flex;
    align-items: center;
    gap: 8px;
}
.client-panel-heading a {
    color: #ffffff;
    font-size: 12px;
    text-decoration: none;
    font-weight: normal;
    opacity: 0.9;
}
.client-panel-heading a:hover {
    opacity: 1;
    text-decoration: underline;
}
.client-panel-body {
    padding: 18px;
    font-size: 13px;
    color: #4b5563;
    line-height: 1.6;
}

/* Dashboard KPI Tiles */
.client-tiles-row {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 18px;
    margin-bottom: 25px;
}
.client-tile-item {
    background: #ffffff;
    border: 1px solid #e1e7ec;
    border-radius: 4px;
    padding: 16px 20px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    text-decoration: none;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04);
    transition: transform 0.2s, box-shadow 0.2s;
    position: relative;
}
.client-tile-item:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
}
.client-tile-stat {
    font-size: 32px;
    font-weight: 700;
    color: #1f2937;
    line-height: 1;
}
.client-tile-title {
    font-size: 13px;
    color: #6b7280;
    margin-top: 6px;
    font-weight: 500;
}
.client-tile-icon {
    font-size: 30px;
    color: #d1d5db;
}
.client-tile-blue { border-bottom: 3px solid #3b82f6; }
.client-tile-green { border-bottom: 3px solid #71b238; }
.client-tile-red { border-bottom: 3px solid #ef4444; }
.client-tile-gold { border-bottom: 3px solid #f59e0b; }

/* Direct Links List */
.client-direct-links {
    list-style: none;
    margin: 0;
    padding: 0;
}
.client-direct-links li a {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 11px 18px;
    color: #4b5563;
    text-decoration: none;
    font-size: 13px;
    font-weight: 500;
    border-bottom: 1px solid #f1f5f9;
    transition: background 0.2s, color 0.2s;
}
.client-direct-links li:last-child a {
    border-bottom: none;
}
.client-direct-links li a:hover {
    background: #f8fafc;
    color: #71b238;
}
.client-direct-links li a i {
    color: #9ca3af;
    font-size: 14px;
    width: 18px;
    text-align: center;
}
.client-direct-links li a:hover i {
    color: #71b238;
}

/* Active Services List */
.client-service-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 13px 18px;
    border-bottom: 1px solid #f1f5f9;
    font-size: 13px;
    background: #ffffff;
    transition: all 0.18s ease;
    border-left: 4px solid transparent;
}
.client-service-item:last-child {
    border-bottom: none;
}
.client-service-item:hover {
    background: #eef8e8 !important;
    border-left: 4px solid #71b238 !important;
}
.client-service-item:hover .client-service-name {
    color: #1e5c09 !important;
}
.client-service-name {
    font-weight: 700;
    color: #1f2937;
    margin-bottom: 2px;
    transition: color 0.18s ease;
}
.client-service-domain {
    color: #71b238;
    text-decoration: none;
    font-size: 12px;
}
.client-service-domain:hover {
    text-decoration: underline;
}

/* Recent Tickets List */
.client-ticket-item {
    padding: 13px 18px;
    border-bottom: 1px solid #f1f5f9;
    font-size: 13px;
    background: #ffffff;
    transition: all 0.18s ease;
    border-left: 4px solid transparent;
}
.client-ticket-item:last-child {
    border-bottom: none;
}
.client-ticket-item:hover {
    background: #eef8e8 !important;
    border-left: 4px solid #71b238 !important;
}
.client-ticket-item:hover .client-ticket-title {
    color: #1e5c09 !important;
}
.client-ticket-top {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 4px;
}
.client-ticket-title {
    font-weight: 600;
    color: #1f2937;
    text-decoration: none;
    transition: color 0.18s ease;
}
.client-ticket-badge {
    background: #71b238;
    color: #fff;
    padding: 2px 8px;
    border-radius: 10px;
    font-size: 11px;
    font-weight: 600;
}
.client-ticket-date {
    font-size: 11px;
    color: #9ca3af;
}

/* Attached Files List */
.client-file-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 13px 18px;
    border-bottom: 1px solid #f1f5f9;
    font-size: 13px;
    background: #ffffff;
    transition: all 0.18s ease;
    border-left: 4px solid transparent;
}
.client-file-item:last-child {
    border-bottom: none;
}
.client-file-item:hover {
    background: #eef8e8 !important;
    border-left: 4px solid #71b238 !important;
}
.client-file-item:hover .client-file-name {
    color: #1e5c09 !important;
}
.client-file-name {
    color: #374151;
    font-weight: 500;
    transition: color 0.18s ease;
}
.client-file-date {
    color: #9ca3af;
    font-size: 12px;
}

/* Table Rows Hover Highlighting across All Client Sections (Services, Domains, Invoices, Tickets) */
#servicesTable tbody tr.service-row,
#domainsTable tbody tr.domain-row,
#invoicesTable tbody tr.invoice-row,
#ticketsTable tbody tr.ticket-row {
    transition: background-color 0.18s ease, box-shadow 0.18s ease;
}

#servicesTable tbody tr.service-row:hover,
#domainsTable tbody tr.domain-row:hover,
#invoicesTable tbody tr.invoice-row:hover,
#ticketsTable tbody tr.ticket-row:hover {
    background-color: #eef8e8 !important;
    box-shadow: inset 4px 0 0 #71b238 !important;
}

#servicesTable tbody tr.service-row:hover .service-name-link,
#domainsTable tbody tr.domain-row:hover td:first-child a,
#invoicesTable tbody tr.invoice-row:hover td:first-child a,
#ticketsTable tbody tr.ticket-row:hover td:nth-child(2) a {
    color: #1e5c09 !important;
}

/* Base Data Tables Formatting (Prevents squishing, word wrapping, and vertical letter breaks) */
#servicesTable th, #servicesTable td,
#domainsTable th, #domainsTable td,
#invoicesTable th, #invoicesTable td,
#ticketsTable th, #ticketsTable td {
    white-space: nowrap;
    vertical-align: middle;
}
#servicesTable span[style*="border-radius"],
#domainsTable span[style*="border-radius"],
#invoicesTable span[style*="border-radius"],
#ticketsTable span[style*="border-radius"],
.client-status-badge {
    white-space: nowrap !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    flex-shrink: 0 !important;
}
#servicesTable a,
#domainsTable a,
#invoicesTable a,
#ticketsTable a {
    white-space: nowrap;
}

@media (max-width: 991px) {
    .client-tiles-row {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media (max-width: 768px) {
    /* Client Green Sub-Navbar Bar on Mobile: Burger Left, User Menu Right */
    .client-portal-body .client-green-navbar .container,
    .client-green-navbar .container {
        display: flex !important;
        flex-wrap: wrap !important;
        justify-content: space-between !important;
        align-items: center !important;
        padding: 8px 15px !important;
        min-height: 48px !important;
        position: relative;
    }

    /* Burger toggle button placed directly to the left of Salut, IonuÈ› */
    .client-portal-burger {
        display: inline-flex !important;
        align-items: center;
        gap: 8px;
        order: 1;
        background: rgba(0, 0, 0, 0.18);
        border: 1px solid rgba(255, 255, 255, 0.4);
        color: #ffffff !important;
        padding: 7px 14px;
        border-radius: 6px;
        font-size: 13px;
        font-weight: 700;
        cursor: pointer;
        outline: none;
        transition: all 0.2s ease;
        line-height: 1.2;
    }
    .client-portal-burger:hover,
    .client-portal-burger.active {
        background: rgba(0, 0, 0, 0.35) !important;
        border-color: #ffffff !important;
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
    }
    .client-portal-burger i {
        font-size: 14px;
    }

    /* Salut, IonuÈ› User Menu on the Right */
    .client-user-menu {
        order: 2;
        margin-left: auto;
        position: relative;
    }
    .user-greeting-link {
        display: inline-flex !important;
        align-items: center;
        gap: 6px;
        padding: 7px 12px !important;
        border-radius: 6px;
        background: rgba(0, 0, 0, 0.15);
        border: 1px solid rgba(255, 255, 255, 0.3);
        color: #ffffff !important;
        font-size: 13px;
        font-weight: 700;
        text-decoration: none;
        line-height: 1.2;
        transition: background 0.2s ease;
    }
    .user-greeting-link:hover,
    .client-user-menu .has-dropdown.open .user-greeting-link {
        background: rgba(0, 0, 0, 0.3) !important;
        border-color: #ffffff !important;
    }

    /* Client Navigation list on Mobile (Order 3: expands smoothly underneath) */
    .client-green-nav {
        display: none;
        order: 3;
        flex: 0 0 100%;
        width: 100%;
        margin: 10px 0 4px 0;
        padding: 6px 0;
        background: #5d982b;
        border-radius: 8px;
        box-shadow: 0 8px 24px rgba(0, 0, 0, 0.25);
        border: 1px solid rgba(255, 255, 255, 0.22);
        list-style: none;
    }
    .client-green-nav.is-open {
        display: block !important;
        animation: clientNavSlideDown 0.24s cubic-bezier(0.16, 1, 0.3, 1);
    }
    @keyframes clientNavSlideDown {
        from {
            opacity: 0;
            transform: translateY(-8px);
        }
        to {
            opacity: 1;
            transform: translateY(0);
        }
    }

    .client-green-nav > li {
        width: 100%;
        display: block;
        border-bottom: 1px solid rgba(255, 255, 255, 0.12);
    }
    .client-green-nav > li:last-child {
        border-bottom: none;
    }
    .client-green-nav > li > a {
        display: flex !important;
        justify-content: flex-start !important;
        align-items: center !important;
        text-align: left !important;
        padding: 12px 16px !important;
        color: #ffffff !important;
        font-size: 14px !important;
        font-weight: 600;
        text-decoration: none;
        transition: background 0.15s ease;
    }
    .client-green-nav > li > a .subnav-ico {
        width: 22px !important;
        min-width: 22px !important;
        text-align: center !important;
        margin-right: 12px !important;
        font-size: 15px !important;
        flex-shrink: 0 !important;
    }
    .client-green-nav > li.has-dropdown > a i.fa-caret-down {
        margin-left: auto !important;
        font-size: 13px !important;
        transition: transform 0.2s ease;
    }
    .client-green-nav > li.has-dropdown.open > a i.fa-caret-down {
        transform: rotate(180deg);
    }

    /* Sub-dropdowns on mobile (accordion style) */
    .client-green-nav > li.has-dropdown > .client-dropdown {
        display: none !important;
        position: static !important;
        box-shadow: none !important;
        border: none !important;
        background: #4e8223 !important;
        border-left: 3px solid #ffffff !important;
        border-radius: 4px !important;
        margin: 4px 12px 10px 12px !important;
        padding: 4px 0 !important;
        min-width: unset !important;
        width: auto !important;
    }
    .client-green-nav > li.has-dropdown.open > .client-dropdown {
        display: block !important;
    }
    .client-green-nav > li.has-dropdown > .client-dropdown li a {
        display: flex !important;
        align-items: center !important;
        justify-content: flex-start !important;
        text-align: left !important;
        padding: 10px 14px !important;
        color: #ffffff !important;
        font-size: 13px !important;
        font-weight: 500 !important;
        border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
        background: transparent !important;
    }
    .client-green-nav > li.has-dropdown > .client-dropdown li:last-child a {
        border-bottom: none !important;
    }
    .client-green-nav > li.has-dropdown > .client-dropdown li a:hover {
        background: rgba(255, 255, 255, 0.15) !important;
        color: #ffffff !important;
    }
    .client-green-nav > li.has-dropdown > .client-dropdown li a i {
        color: #ffffff !important;
        width: 18px !important;
        min-width: 18px !important;
        text-align: center !important;
        margin-right: 10px !important;
        flex-shrink: 0 !important;
    }

    /* Floating User Greeting Dropdown on Mobile */
    .client-user-menu .has-dropdown > .client-dropdown.user-dropdown-right {
        display: none !important;
        position: absolute !important;
        top: 100% !important;
        right: 0 !important;
        left: auto !important;
        margin-top: 6px !important;
        min-width: 200px !important;
        background: #ffffff !important;
        border: 1px solid #dcdfe4 !important;
        border-top: 3px solid #71b238 !important;
        border-radius: 0 0 6px 6px !important;
        box-shadow: 0 10px 25px rgba(0, 0, 0, 0.2) !important;
        z-index: 1001 !important;
    }
    .client-user-menu .has-dropdown.open > .client-dropdown.user-dropdown-right {
        display: block !important;
    }
    .client-user-menu .has-dropdown > .client-dropdown.user-dropdown-right li a {
        display: flex !important;
        align-items: center !important;
        padding: 10px 16px !important;
        font-size: 13px !important;
        font-weight: 500 !important;
        color: #374151 !important;
        border-bottom: 1px solid #f3f4f6 !important;
        background: #ffffff !important;
    }
    .client-user-menu .has-dropdown > .client-dropdown.user-dropdown-right li a:hover {
        background: #eef8e8 !important;
        color: #1e5c09 !important;
    }
}

/* Dashboard Two Column Grid */
.client-dashboard-grid {
    display: flex;
    gap: 30px;
    align-items: flex-start;
}
.client-sidebar-col {
    flex: 0 0 280px;
    width: 280px;
}
.client-main-col {
    flex: 1;
    min-width: 0;
}
.client-middle-grid {
    display: grid;
    grid-template-columns: 1.4fr 1fr;
    gap: 20px;
    margin-bottom: 25px;
}
@media (max-width: 991px) {
    .client-dashboard-grid {
        flex-direction: column;
    }
    .client-sidebar-col {
        width: 100%;
        flex: 1 1 100%;
    }
    .client-middle-grid {
        grid-template-columns: 1fr;
    }
}

/* Authentic Inhost Left Sidebar Styling (Exact Match to Image 1) */
.client-sidebar-panel {
    background: #ffffff;
    border: 1px solid #e5e7eb;
    border-radius: 4px;
    margin-bottom: 22px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04);
    overflow: hidden;
}
.client-sidebar-heading {
    background: #71b238 !important;
    color: #ffffff !important;
    padding: 10px 16px;
    font-weight: 700;
    font-size: 13px;
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 0;
    border-radius: 3px 3px 0 0;
}
.client-sidebar-heading i {
    font-size: 13px;
    color: #ffffff;
}
.client-sidebar-list {
    list-style: none;
    margin: 0;
    padding: 0;
    background: #ffffff;
}
.client-sidebar-list li {
    border-bottom: 1px solid #eef2f6;
    margin: 0;
    padding: 0;
}
.client-sidebar-list li:last-child {
    border-bottom: none;
}
.client-sidebar-list li a,
.client-side-link {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 10px;
    padding: 10px 16px;
    font-size: 13px;
    color: #555555;
    text-decoration: none;
    font-weight: normal;
    background: #ffffff;
    transition: background 0.15s, color 0.15s, padding-left 0.15s;
    line-height: 1.4;
}
.client-sidebar-list li a i,
.client-side-link i {
    width: 16px;
    text-align: center;
    flex-shrink: 0;
}
.client-sidebar-list li a:hover,
.client-side-link:hover {
    background: #f8fafc;
    color: #71b238 !important;
    padding-left: 19px;
}
.client-sidebar-list li.active a,
.client-sidebar-list li a.active,
.client-side-link.active {
    background: #f1f5f9;
    color: #1e293b;
    font-weight: 600;
}
.client-side-label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}
.client-badge {
    margin-left: auto;
    font-size: 11px;
    font-weight: 700;
    padding: 2px 8px;
    border-radius: 12px;
    line-height: 1.3;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 22px;
    text-align: center;
    transition: all 0.2s ease;
}
.client-badge-gray {
    background: #f1f5f9;
    color: #475569;
    border: 1px solid #e2e8f0;
}
.client-badge-green {
    background: #dcfce7;
    color: #15803d;
    border: 1px solid #bbf7d0;
}
.client-badge-amber {
    background: #fef3c7;
    color: #b45309;
    border: 1px solid #fde68a;
}
.client-badge-red {
    background: #fee2e2;
    color: #b91c1c;
    border: 1px solid #fecaca;
}
.client-badge-blue {
    background: #e0f2fe;
    color: #0369a1;
    border: 1px solid #bae6fd;
}

/* ==========================================================================
   AUTHENTIC DOMAIN REGISTRATION & TRANSFER PAGE STYLES (.domains-page)
   ========================================================================== */
.domain-hero-card {
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05);
    padding: 35px 30px;
    margin-bottom: 45px;
}
.domain-search-form-wrap {
    display: flex;
    gap: 0;
    align-items: stretch;
    background: #ffffff;
    border: 2px solid #71b238;
    border-radius: 6px;
    overflow: hidden;
    box-shadow: 0 3px 12px rgba(113, 178, 56, 0.15);
}
.domain-search-form-wrap .domain-input {
    flex: 1;
    border: none;
    outline: none;
    padding: 16px 20px;
    font-size: 16px;
    color: #1e293b;
    background: transparent;
    min-width: 0;
}
.domain-search-form-wrap .domain-input::placeholder {
    color: #94a3b8;
}
.domain-search-form-wrap .tld-select-wrap {
    background: #f8fafc;
    border-left: 1px solid #e2e8f0;
    display: flex;
    align-items: center;
    padding: 0 10px;
}
.domain-search-form-wrap .tld-select {
    border: none;
    background: transparent;
    font-size: 15px;
    font-weight: 700;
    color: #334155;
    outline: none;
    cursor: pointer;
    padding: 8px 10px;
}
.domain-search-form-wrap .domain-btn-submit {
    background: linear-gradient(135deg, #71b238 0%, #5d982b 100%);
    color: #ffffff;
    border: none;
    padding: 0 32px;
    font-size: 15px;
    font-weight: 700;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    transition: all 0.24s cubic-bezier(0.16, 1, 0.3, 1);
    white-space: nowrap;
    box-shadow: 0 2px 8px rgba(113, 178, 56, 0.28);
    position: relative;
    overflow: hidden;
}
.domain-search-form-wrap .domain-btn-submit i {
    transition: transform 0.24s cubic-bezier(0.16, 1, 0.3, 1);
    display: inline-block;
}
.domain-search-form-wrap .domain-btn-submit:hover {
    background: linear-gradient(135deg, #7ec242 0%, #68a931 100%);
    transform: translateY(-2px) scale(1.02);
    box-shadow: 0 6px 20px rgba(113, 178, 56, 0.45);
    color: #ffffff;
}
.domain-search-form-wrap .domain-btn-submit:hover i {
    transform: scale(1.25) rotate(15deg);
}
.domain-search-form-wrap .domain-btn-submit:active {
    transform: translateY(0) scale(0.98);
}

@media (max-width: 768px) {
    .domain-search-form-wrap {
        flex-direction: column;
        border: 1px solid #e2e8f0;
    }
    .domain-search-form-wrap .domain-input {
        border-bottom: 1px solid #e2e8f0;
        padding: 14px 16px;
    }
    .domain-search-form-wrap .tld-select-wrap {
        border-left: none;
        border-bottom: 1px solid #e2e8f0;
        padding: 8px 16px;
    }
    .domain-search-form-wrap .domain-btn-submit {
        padding: 14px 20px;
        justify-content: center;
        border-radius: 0;
    }
}

/* Quick TLD Pills Row */
.domain-pills-wrap {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 25px;
}
.domain-pill-item {
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 20px;
    padding: 7px 15px;
    font-size: 13px;
    color: #475569;
    cursor: pointer;
    transition: all 0.2s ease;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    text-decoration: none;
    user-select: none;
}
.domain-pill-item strong {
    color: #1e293b;
    font-weight: 700;
}
.domain-pill-item .pill-price {
    color: #71b238;
    font-weight: 700;
}
.domain-pill-item .pill-tag {
    background: #e0f2fe;
    color: #0284c7;
    font-size: 10px;
    padding: 2px 7px;
    border-radius: 10px;
    font-weight: 700;
    text-transform: uppercase;
}
.domain-pill-item .pill-tag.hot {
    background: #fee2e2;
    color: #ef4444;
}
.domain-pill-item .pill-tag.promo {
    background: #fef3c7;
    color: #b45309;
}
.domain-pill-item:hover,
.domain-pill-item.active {
    background: #ffffff;
    border-color: #71b238;
    box-shadow: 0 3px 10px rgba(113, 178, 56, 0.2);
    transform: translateY(-1px);
    color: #71b238;
}

/* Live Search Result Box */
#domain-result {
    margin-top: 25px;
}
.domain-result-card {
    border-radius: 6px;
    padding: 20px 24px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 15px;
    animation: fadeInResult 0.3s ease;
}
@keyframes fadeInResult {
    from { opacity: 0; transform: translateY(6px); }
    to { opacity: 1; transform: translateY(0); }
}
.domain-result-card.available {
    background: #f0fdf4;
    border: 1px solid #86efac;
    color: #166534;
}
.domain-result-card.unavailable {
    background: #fef2f2;
    border: 1px solid #fca5a5;
    color: #991b1b;
}
.domain-result-card.loading {
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    color: #475569;
    justify-content: center;
}
.domain-result-main {
    display: flex;
    align-items: center;
    gap: 14px;
}
.domain-result-icon {
    font-size: 28px;
}
.domain-result-title {
    font-size: 16px;
    font-weight: 700;
    margin: 0;
}
.domain-result-sub {
    font-size: 13px;
    margin-top: 3px;
    opacity: 0.9;
}
.domain-result-action {
    display: flex;
    align-items: center;
    gap: 12px;
}
.domain-btn-cart {
    background: linear-gradient(135deg, #71b238 0%, #5d982b 100%);
    color: #ffffff !important;
    padding: 10px 22px;
    border-radius: 25px;
    font-weight: 700;
    font-size: 14px;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    transition: all 0.22s cubic-bezier(0.16, 1, 0.3, 1);
    box-shadow: 0 3px 10px rgba(113, 178, 56, 0.35);
    cursor: pointer;
}
.domain-btn-cart i {
    transition: transform 0.22s ease;
    display: inline-block;
}
.domain-btn-cart:hover {
    background: linear-gradient(135deg, #7ec242 0%, #68a931 100%);
    transform: translateY(-2px) scale(1.03);
    box-shadow: 0 6px 18px rgba(113, 178, 56, 0.45);
    color: #ffffff !important;
}
.domain-btn-cart:hover i {
    transform: scale(1.22) rotate(-8deg);
}
.domain-btn-cart:active {
    transform: translateY(0) scale(0.98);
}
.domain-btn-transfer {
    background: linear-gradient(135deg, #ef4444 0%, #dc2626 100%);
    color: #ffffff !important;
    padding: 10px 22px;
    border-radius: 25px;
    font-weight: 700;
    font-size: 14px;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    transition: all 0.22s cubic-bezier(0.16, 1, 0.3, 1);
    box-shadow: 0 3px 10px rgba(220, 38, 38, 0.35);
    cursor: pointer;
}
.domain-btn-transfer i {
    transition: transform 0.22s ease;
    display: inline-block;
}
.domain-btn-transfer:hover {
    background: linear-gradient(135deg, #f87171 0%, #ef4444 100%);
    transform: translateY(-2px) scale(1.03);
    box-shadow: 0 6px 18px rgba(220, 38, 38, 0.45);
    color: #ffffff !important;
}
.domain-btn-transfer:hover i {
    transform: translateX(3px) scale(1.2);
}
.domain-btn-transfer:active {
    transform: translateY(0) scale(0.98);
}

/* Pricing Table Card */
.domain-pricing-card {
    background: #ffffff;
    border: 1px solid #e5e7eb;
    border-radius: 6px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.04);
    margin-bottom: 50px;
    overflow: hidden;
}
.domain-table-header-bar {
    padding: 18px 25px;
    border-bottom: 1px solid #e5e7eb;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 15px;
    background: #f8fafc;
}
.domain-table-title {
    font-size: 17px;
    font-weight: 700;
    color: #1f2937;
    margin: 0;
    display: flex;
    align-items: center;
    gap: 8px;
}
.domain-table-title i {
    color: #71b238;
}
.domain-table-search {
    position: relative;
    max-width: 280px;
    width: 100%;
}
.domain-table-search input {
    width: 100%;
    padding: 8px 12px 8px 34px;
    font-size: 13px;
    border: 1px solid #d1d5db;
    border-radius: 4px;
    background: #ffffff;
    outline: none;
    box-sizing: border-box;
}
.domain-table-search input:focus {
    border-color: #71b238;
}
.domain-table-search i {
    position: absolute;
    left: 12px;
    top: 50%;
    transform: translateY(-50%);
    color: #9ca3af;
    font-size: 12px;
}

.domain-table-responsive {
    overflow-x: auto;
    width: 100%;
}
.domain-pricing-table {
    width: 100%;
    border-collapse: collapse;
    text-align: left;
    font-size: 14px;
}
.domain-pricing-table thead tr {
    background: #f8fafc;
    border-bottom: 2px solid #e2e8f0;
    color: #475569;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}
.domain-pricing-table th {
    padding: 14px 18px;
    font-weight: 700;
}
.domain-pricing-table td {
    padding: 16px 18px;
    border-bottom: 1px solid #f1f5f9;
    vertical-align: middle;
    color: #334155;
}
.domain-pricing-table tbody tr:hover {
    background: #fbfcfe;
}
.domain-pricing-table .tld-badge {
    font-size: 17px;
    font-weight: 800;
    color: #1e293b;
    display: inline-flex;
    align-items: center;
    gap: 8px;
}
.domain-pricing-table .tld-badge .tag {
    font-size: 10px;
    font-weight: 700;
    padding: 2px 7px;
    border-radius: 4px;
    text-transform: uppercase;
}
.domain-pricing-table .tld-badge .tag.recomandat {
    background: #dcfce7;
    color: #166534;
}
.domain-pricing-table .tld-badge .tag.popular {
    background: #e0f2fe;
    color: #0369a1;
}
.domain-pricing-table .tld-badge .tag.oferta {
    background: #fef3c7;
    color: #92400e;
}
.domain-pricing-table .price-val {
    font-weight: 700;
    color: #1e293b;
    font-size: 15px;
}
.domain-pricing-table .price-period {
    font-size: 12px;
    color: #64748b;
    font-weight: normal;
}
.domain-pricing-table .badge-free {
    background: #dcfce7;
    color: #15803d;
    padding: 4px 10px;
    border-radius: 12px;
    font-size: 12px;
    font-weight: 700;
    display: inline-block;
}
.domain-pricing-table .badge-included {
    color: #16a34a;
    font-size: 13px;
    font-weight: 600;
    display: inline-flex;
    align-items: center;
    gap: 5px;
}
.domain-order-link {
    background: linear-gradient(135deg, #71b238 0%, #5d982b 100%);
    color: #ffffff !important;
    padding: 7px 18px;
    border-radius: 20px;
    font-size: 13px;
    font-weight: 700;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    transition: all 0.22s cubic-bezier(0.16, 1, 0.3, 1);
    box-shadow: 0 2px 6px rgba(113, 178, 56, 0.25);
    cursor: pointer;
}
.domain-order-link i {
    transition: transform 0.22s ease;
    display: inline-block;
}
.domain-order-link:hover {
    background: linear-gradient(135deg, #7ec242 0%, #68a931 100%);
    transform: translateY(-2px) scale(1.04);
    box-shadow: 0 5px 16px rgba(113, 178, 56, 0.4);
    color: #ffffff !important;
}
.domain-order-link:hover i {
    transform: translateX(4px) scale(1.2);
}
.domain-order-link:active {
    transform: translateY(0) scale(0.98);
}

/* Domain Feature Cards (3x2 Grid) */
.domain-features-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 25px;
    margin-bottom: 50px;
}
@media (max-width: 991px) {
    .domain-features-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media (max-width: 640px) {
    .domain-features-grid {
        grid-template-columns: 1fr;
    }
}
.domain-feature-card {
    background: #ffffff;
    border: 1px solid #e5e7eb;
    border-radius: 6px;
    padding: 28px 24px;
    transition: all 0.25s ease;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.03);
    position: relative;
    overflow: hidden;
}
.domain-feature-card:hover {
    border-color: #71b238;
    box-shadow: 0 8px 25px rgba(113, 178, 56, 0.12);
    transform: translateY(-3px);
}
.domain-feature-icon {
    width: 50px;
    height: 50px;
    border-radius: 8px;
    background: rgba(113, 178, 56, 0.1);
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 18px;
    color: #71b238;
    font-size: 22px;
    transition: all 0.25s ease;
}
.domain-feature-card:hover .domain-feature-icon {
    background: #71b238;
    color: #ffffff;
}
.domain-feature-title {
    font-size: 16px;
    font-weight: 700;
    color: #1f2937;
    margin: 0 0 8px 0;
}
.domain-feature-desc {
    font-size: 13px;
    color: #64748b;
    line-height: 1.6;
    margin: 0;
}

/* Domain Transfer CTA Strip */
.domain-transfer-banner {
    background: #22242b;
    border-radius: 8px;
    padding: 35px 35px;
    color: #ffffff;
    margin-bottom: 50px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 25px;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.15);
    border: 1px solid rgba(255, 255, 255, 0.08);
    box-sizing: border-box;
    width: 100%;
}
.domain-transfer-content {
    flex: 1 1 450px;
    min-width: 0;
}
.domain-transfer-title {
    font-size: 22px;
    font-weight: 700;
    color: #ffffff;
    margin: 0 0 8px 0;
    line-height: 1.3;
}
.domain-transfer-desc {
    font-size: 14px;
    color: #94a3b8;
    line-height: 1.6;
    margin: 0;
}
.domain-transfer-action {
    flex: 0 1 auto;
    max-width: 100%;
}
.domain-transfer-form {
    display: flex;
    gap: 10px;
    align-items: center;
    flex-wrap: wrap;
    width: 100%;
    box-sizing: border-box;
}
.domain-transfer-input {
    padding: 12px 16px;
    border-radius: 4px;
    border: 1px solid rgba(255, 255, 255, 0.2);
    background: rgba(255, 255, 255, 0.08);
    color: #ffffff;
    font-size: 14px;
    outline: none;
    min-width: 220px;
    box-sizing: border-box;
    transition: border-color 0.2s, background 0.2s;
}
.domain-transfer-input:focus {
    border-color: #71b238;
    background: rgba(255, 255, 255, 0.12);
}
.domain-transfer-btn {
    padding: 12px 24px;
    font-size: 14px;
    background: linear-gradient(135deg, #71b238 0%, #5d982b 100%);
    border: none;
    border-radius: 4px;
    color: #ffffff;
    font-weight: 700;
    cursor: pointer;
    white-space: nowrap;
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    transition: all 0.22s cubic-bezier(0.16, 1, 0.3, 1);
    box-shadow: 0 2px 8px rgba(113, 178, 56, 0.25);
}
.domain-transfer-btn i {
    transition: transform 0.22s ease;
    display: inline-block;
}
.domain-transfer-btn:hover {
    background: linear-gradient(135deg, #7ec242 0%, #68a931 100%);
    transform: translateY(-2px) scale(1.02);
    box-shadow: 0 6px 18px rgba(113, 178, 56, 0.42);
    color: #ffffff;
}
.domain-transfer-btn:hover i {
    transform: translateX(4px);
}
.domain-transfer-btn:active {
    transform: translateY(0) scale(0.98);
}

/* Domain FAQ Accordion */
.domain-faq-card {
    background: #ffffff;
    border: 1px solid #e5e7eb;
    border-radius: 6px;
    padding: 30px 35px;
    margin-bottom: 50px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.03);
}
.domain-faq-item {
    border-bottom: 1px solid #eef2f6;
    padding: 18px 0;
}
.domain-faq-item:last-child {
    border-bottom: none;
    padding-bottom: 0;
}
.domain-faq-question {
    display: flex;
    justify-content: space-between;
    align-items: center;
    cursor: pointer;
    font-size: 16px;
    font-weight: 600;
    color: #1e293b;
    user-select: none;
    transition: color 0.15s;
}
.domain-faq-question:hover {
    color: #71b238;
}
.domain-faq-question i {
    color: #71b238;
    font-size: 14px;
    margin-right: 15px;
    transition: transform 0.2s ease;
}
.domain-faq-item.active .domain-faq-question i {
    transform: rotate(180deg);
}
.domain-faq-answer {
    margin-top: 12px;
    font-size: 14px;
    color: #64748b;
    line-height: 1.6;
    display: none;
}
.domain-faq-item.active .domain-faq-answer {
    display: block;
}

/* Global Accordion Arrow / Chevron Margin - Prevents sticking to right edge */
.iw-accordion-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-right: 15px !important;
}
.faq-header i,
.domain-faq-question i {
    margin-right: 15px !important;
}

/* Domain Page Mobile Responsiveness Fixes */
@media (max-width: 768px) {
    .domain-transfer-banner {
        padding: 24px 18px !important;
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 18px !important;
    }
    .domain-transfer-content {
        flex: 1 1 100% !important;
        width: 100% !important;
    }
    .domain-transfer-title {
        font-size: 19px !important;
    }
    .domain-transfer-desc {
        font-size: 13px !important;
    }
    .domain-transfer-action {
        width: 100% !important;
        flex: 1 1 100% !important;
    }
    .domain-transfer-form {
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 10px !important;
        width: 100% !important;
    }
    .domain-transfer-input {
        width: 100% !important;
        min-width: 0 !important;
        box-sizing: border-box !important;
    }
    .domain-transfer-btn {
        width: 100% !important;
        justify-content: center !important;
        box-sizing: border-box !important;
    }
    .domain-hero-card {
        padding: 20px 14px !important;
    }
    .domain-table-header-bar {
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 12px !important;
        padding: 15px 14px !important;
    }
    .domain-table-search {
        max-width: 100% !important;
    }
    .domain-faq-card {
        padding: 20px 16px !important;
    }
    .domain-faq-question {
        font-size: 14px !important;
    }
    .domain-faq-answer {
        font-size: 13px !important;
    }
}

/* ==========================================================================
   CLIENT PORTAL â€“ MOBILE RESPONSIVE FIXES
   EliminÄƒ overflow-ul orizontal (min-width inline fix, rÃ¢nduri flex fÄƒrÄƒ wrap)
   ========================================================================== */
html, body.client-portal-body {
    max-width: 100%;
    overflow-x: hidden;
}
.client-portal-body img,
.client-portal-body select,
.client-portal-body input,
.client-portal-body textarea {
    max-width: 100%;
}
.client-portal-body .client-main-col,
.client-portal-body .client-sidebar-col {
    min-width: 0;
    box-sizing: border-box;
}

@media (max-width: 991px) {
    .client-portal-body .client-dashboard-grid {
        flex-direction: column !important;
        gap: 20px !important;
    }
    .client-portal-body .client-sidebar-col {
        flex: 1 1 auto !important;
        width: 100% !important;
        max-width: 100% !important;
        order: 2;
    }
    .client-portal-body .client-main-col {
        flex: 1 1 auto !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        order: 1;
    }
}

@media (max-width: 767px) {
    .client-portal-body .container {
        padding-left: 12px !important;
        padding-right: 12px !important;
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box;
    }

    /* NeutralizeazÄƒ lÄƒÈ›imile minime fixe din stilurile inline */
    .client-portal-body .client-main-col [style*="min-width"],
    .client-portal-body .client-sidebar-col [style*="min-width"] {
        min-width: 0 !important;
    }
    .client-portal-body .client-main-col [style*="width:260px"],
    .client-portal-body .client-main-col [style*="width: 260px"] {
        width: 100% !important;
    }
    .client-portal-body .client-main-col [style*="border-right:1px solid"] {
        border-right: none !important;
    }
    .client-portal-body .client-main-col [style*="padding:30px 25px"] {
        padding: 18px 14px !important;
    }

    /* Titluri */
    .client-portal-body .client-main-col h1 {
        font-size: 24px !important;
        line-height: 1.25 !important;
        word-break: break-word;
    }
    .client-portal-body .page-heading-wrap h1 {
        font-size: 24px !important;
    }

    /* KPI tiles */
    .client-portal-body .client-tiles-row {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 12px !important;
    }
    .client-portal-body .client-tile-item {
        padding: 14px !important;
        min-width: 0;
    }
    .client-portal-body .client-tile-stat { font-size: 26px; }
    .client-portal-body .client-tile-icon { font-size: 22px; }

    .client-portal-body .client-middle-grid {
        grid-template-columns: minmax(0, 1fr) !important;
    }

    /* RÃ¢nduri servicii / fiÈ™iere / tichete â€“ permit Ã®ncadrarea pe mai multe linii */
    .client-portal-body .client-service-item,
    .client-portal-body .client-file-item {
        flex-wrap: wrap !important;
        gap: 10px;
        padding: 12px 14px !important;
    }
    .client-portal-body .client-service-item > div:first-child {
        flex: 1 1 100% !important;
    }
    .client-portal-body .client-service-item > div:not(:first-child) {
        padding: 0 !important;
    }
    .client-portal-body .client-file-item > div {
        flex-wrap: wrap;
        min-width: 0;
    }
    .client-portal-body .client-file-item > div:first-child {
        flex: 1 1 100%;
    }
    .client-portal-body .client-file-name {
        word-break: break-word;
    }
    .client-portal-body .client-ticket-top {
        gap: 8px;
        align-items: flex-start;
    }
    .client-portal-body .client-ticket-title {
        min-width: 0;
        word-break: break-word;
    }
    .client-portal-body .client-panel-heading {
        flex-wrap: wrap;
        gap: 6px;
    }

    /* Tabele cheie/valoare (detalii serviciu/domeniu) */
    .client-portal-body .client-main-col td[style*="width:240px"],
    .client-portal-body .client-main-col td[style*="width:200px"] {
        width: 42% !important;
        padding: 10px 12px !important;
    }
    /* Tabele cheie/valoare cu text lung (doar tabelele de detalii, NU tabelele liste) */
    .client-portal-body .client-main-col table:not(#servicesTable):not(#domainsTable):not(#invoicesTable):not(#ticketsTable) td {
        word-break: break-word;
    }

    /* Tabele liste (servicii, domenii, facturi, tichete) â€“ scroll orizontal impecabil fÄƒrÄƒ ruperi de litere */
    .client-portal-body #servicesTable,
    .client-portal-body #domainsTable,
    .client-portal-body #invoicesTable,
    .client-portal-body #ticketsTable {
        width: 100% !important;
        border-collapse: collapse !important;
    }
    .client-portal-body #domainsTable {
        min-width: 760px !important;
    }
    .client-portal-body #servicesTable {
        min-width: 820px !important;
    }
    .client-portal-body #invoicesTable {
        min-width: 720px !important;
    }
    .client-portal-body #ticketsTable {
        min-width: 720px !important;
    }

    /* Celule tabele: prevenire rupere pe verticalÄƒ (A C T I V / Gest ione azÄƒ) */
    .client-portal-body #servicesTable th,
    .client-portal-body #servicesTable td,
    .client-portal-body #domainsTable th,
    .client-portal-body #domainsTable td,
    .client-portal-body #invoicesTable th,
    .client-portal-body #invoicesTable td,
    .client-portal-body #ticketsTable th,
    .client-portal-body #ticketsTable td {
        white-space: nowrap !important;
        word-break: normal !important;
        vertical-align: middle !important;
    }

    /* Toate badge-urile de stare (Activ, Inactiv, AchitatÄƒ etc.) */
    .client-portal-body #servicesTable span[style*="border-radius"],
    .client-portal-body #domainsTable span[style*="border-radius"],
    .client-portal-body #invoicesTable span[style*="border-radius"],
    .client-portal-body #ticketsTable span[style*="border-radius"],
    .client-portal-body .client-status-badge {
        white-space: nowrap !important;
        display: inline-flex !important;
        align-items: center !important;
        gap: 6px !important;
        flex-shrink: 0 !important;
        line-height: 1.2 !important;
    }

    /* Toate butoanele de gestiune / acÈ›iuni */
    .client-portal-body #servicesTable a,
    .client-portal-body #domainsTable a,
    .client-portal-body #invoicesTable a,
    .client-portal-body #ticketsTable a {
        white-space: nowrap !important;
        display: inline-flex !important;
        align-items: center !important;
        gap: 5px !important;
        flex-shrink: 0 !important;
    }

    /* Card container padding optimizat pe ecrane mici */
    .client-portal-body .client-main-col > div[style*="padding:25px"],
    .client-portal-body .client-main-col > div[style*="padding: 25px"] {
        padding: 16px 14px !important;
    }

    /* Scroll orizontal lin È™i scrollbar vizibil */
    .client-portal-body div[style*="overflow-x:auto"],
    .client-portal-body div[style*="overflow-x: auto"] {
        overflow-x: auto !important;
        -webkit-overflow-scrolling: touch !important;
        width: 100% !important;
        max-width: 100% !important;
    }

    /* Tab-uri (detalii serviciu) */
    .client-portal-body .client-main-col button[id^="tab-btn-"] {
        flex: 1 1 auto;
        justify-content: center;
        padding: 12px 10px !important;
        font-size: 12px !important;
    }

    /* Bara verde responsive â€“ configuratÄƒ Ã®n secÈ›iunea dedicatÄƒ meniu mobil */
    .client-portal-body .client-green-navbar .container {
        justify-content: space-between;
    }

    /* Formulare */
    .client-portal-body .client-main-col form[style*="max-width"] {
        max-width: 100% !important;
    }
}

@media (max-width: 400px) {
    .client-portal-body .client-tiles-row {
        gap: 10px !important;
    }
    .client-portal-body .client-tile-icon { display: none; }
    .client-portal-body .client-main-col td[style*="width:240px"],
    .client-portal-body .client-main-col td[style*="width:200px"] {
        display: block;
        width: 100% !important;
        padding-bottom: 0 !important;
    }
}

/* ==========================================================================
   PRICING CARDS â€“ ListÄƒ caracteristici cu pictograme profesionale
   ========================================================================== */
.style1 .pricebox-description.pricebox-description--icons {
    padding: 14px 14px 6px;
    text-align: left;
}
.pricebox-features {
    list-style: none;
    margin: 0 auto;
    padding: 0;
    display: inline-block;
    text-align: left;
    width: 100%;
    max-width: 260px;
}
.pricebox-features .pf-item {
    display: flex;
    align-items: flex-start;
    gap: 9px;
    padding: 5px 4px;
    font-size: 13px;
    line-height: 1.45;
    color: #5f6368;
    background: transparent !important;
    background-color: transparent !important;
    border-bottom: 1px dashed #e6e9ec;
    border-radius: 3px;
}
.pricebox-features .pf-item:last-child {
    border-bottom: none;
}
.pricebox-features .pf-icon {
    flex: 0 0 22px;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    background: #eef8e8;
    color: #49a32b;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 11px;
    margin-top: -1px;
    transition: transform 0.22s cubic-bezier(0.34, 1.56, 0.64, 1), background-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease;
}
.pricebox-features .pf-icon .fa {
    line-height: 1;
}
.pricebox-features .pf-text {
    flex: 1;
    min-width: 0;
    word-break: break-word;
    transition: transform 0.2s ease, color 0.2s ease;
}

/* Beneficii suplimentare (liniile cu â€ž+â€) */
.pricebox-features .pf-extra .pf-text {
    color: #2f6f17;
    font-weight: 600;
}
.pricebox-features .pf-boost .pf-icon {
    background: #e8f1fb;
    color: #2563eb;
}
.pricebox-features .pf-secure .pf-icon {
    background: #fff4e0;
    color: #d97706;
}
.pricebox-features .pf-secure .pf-text {
    white-space: nowrap;
}
.pricebox-features .pf-gift .pf-icon {
    background: #fde8ec;
    color: #e11d48;
}
.pricebox-features .pf-gift .pf-text {
    color: #be123c;
    font-weight: 700;
}

/* Animatie exclusiv pe pictograma si text la hover (fara fundal pe linie) */
.pricebox-features .pf-item:hover {
    background: transparent !important;
    background-color: transparent !important;
}
.pricebox-features .pf-item:hover .pf-icon {
    transform: translateY(-2px) scale(1.18);
    background: #49a32b;
    color: #ffffff;
    box-shadow: 0 4px 10px rgba(73, 163, 43, 0.35);
}
.pricebox-features .pf-item:hover .pf-text {
    transform: translateX(4px);
    color: #1e5c09;
}
.pricebox-features .pf-gift:hover .pf-icon {
    background: #e11d48;
    color: #ffffff;
    box-shadow: 0 4px 10px rgba(225, 29, 72, 0.35);
}
.pricebox-features .pf-gift:hover .pf-text {
    color: #9f1239;
}

/* Rand Pictograme CMS - doar pictogramele centrate, fara text */
.pricebox-features .pf-accelerare-row {
    padding: 8px 4px;
    border-bottom: 1px dashed #e6e9ec;
    background: transparent !important;
    background-color: transparent !important;
}
.pricebox-features .pf-accelerare-wrap {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
}
.pricebox-features .pf-cms-strip {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    flex-shrink: 0;
}
.pricebox-features .pf-cms-badge {
    width: 22px;
    height: 22px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.16);
    cursor: default;
    transition: transform 0.22s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.2s ease;
    flex-shrink: 0;
}
.pricebox-features .pf-cms-badge:hover {
    transform: translateY(-3px) scale(1.22);
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.25);
    z-index: 2;
}
.pricebox-features .pf-cms-badge svg {
    display: block;
    width: 12px;
    height: 12px;
}

/* Culori autentice de brand CMS */
.pricebox-features .pf-cms-wp       { background: #21759b; }
.pricebox-features .pf-cms-magento  { background: #ee672f; }
.pricebox-features .pf-cms-presta   { background: #df0067; }
.pricebox-features .pf-cms-joomla   { background: #1b75bb; }
.pricebox-features .pf-cms-drupal   { background: #0077c0; }
.pricebox-features .pf-cms-opencart { background: #239cd3; }

/* Butoane de comandÄƒ rotunjite peste tot Ã®n website */
.pricebox-purchased-link a,
.pricebox-purchased-link a.ibutton,
.pricebox-purchased-link .ibutton,
.btn-order,
.btn-order-now,
.order-btn,
.domain-btn-cart,
.domain-btn-transfer,
.domain-order-link,
.btn-green-solid,
.btn-outline-green,
.contact-submit-btn,
a[href*="order.php"],
a[href*="checkout.php"] {
    border-radius: 25px !important;
}

@media (max-width: 767px) {
    .pricebox-features {
        max-width: 320px;
    }
    .pricebox-features .pf-item {
        font-size: 14px;
        padding: 6px 4px;
    }
}

/* ==========================================================================
   Order Page - Group Switcher Navigation Pills
   ========================================================================== */
.order-group-nav {
    display: flex;
    justify-content: center;
    gap: 12px;
    margin-bottom: 40px;
    flex-wrap: wrap;
}
.order-group-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 10px 22px;
    border-radius: 25px !important;
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
    text-decoration: none !important;
    transition: all 0.2s ease;
    background: #f5f5f5;
    color: #555555;
    border: 1px solid #e0e0e0;
    box-sizing: border-box;
}
.order-group-pill:hover {
    background: #ebebeb;
    color: #222222;
    border-color: #d0d0d0;
}
.order-group-pill.active {
    background: var(--theme-green) !important;
    color: #ffffff !important;
    border-color: var(--theme-green) !important;
    box-shadow: 0 4px 12px rgba(73, 163, 43, 0.28);
}

/* Pe mobile (Samsung S23+, iPhone SE etc.) - toate butoanele devin perfect egale,
   etalonul fiind cel mai mare buton cu cel mai lung nume (Organization Host Pack NVMe) */
@media (max-width: 767px) {
    .order-group-nav {
        display: grid !important;
        grid-template-columns: minmax(0, max-content);
        justify-content: center;
        gap: 10px;
        width: 100%;
        max-width: 100%;
        margin: 0 auto 35px auto;
        padding: 0 12px;
        box-sizing: border-box;
    }
    .order-group-pill {
        width: 100% !important;
        max-width: 100%;
        box-sizing: border-box;
        display: flex !important;
        align-items: center;
        justify-content: center;
        text-align: center;
        padding: 11px 24px;
        font-size: 13px;
        line-height: 1.35;
        white-space: nowrap;
    }
}
@media (max-width: 360px) {
    .order-group-pill {
        padding: 9px 12px;
        font-size: 11.5px;
    }
}

/* ==========================================================================
   CLIENT PORTAL: Interactive Dynamic Micro-Animations for Buttons & Icons
   ========================================================================== */

/* 1. DirectAdmin SSO Action Button */
.client-btn-directadmin,
.client-service-item a[href*="controlpanel"],
#servicesTable a[href*="controlpanel"] {
    background: #eef7e9 !important;
    color: var(--theme-green) !important;
    border: 1px solid #cce5be !important;
    padding: 6px 14px !important;
    border-radius: 4px !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    transition: all 0.22s cubic-bezier(0.16, 1, 0.3, 1) !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04);
    cursor: pointer;
}
.client-btn-directadmin i,
.client-service-item a[href*="controlpanel"] i,
#servicesTable a[href*="controlpanel"] i {
    font-size: 12px;
    transition: transform 0.22s cubic-bezier(0.16, 1, 0.3, 1), color 0.22s ease !important;
    color: var(--theme-green) !important;
}
.client-btn-directadmin:hover,
.client-service-item a[href*="controlpanel"]:hover,
#servicesTable a[href*="controlpanel"]:hover {
    background: linear-gradient(135deg, #71b238 0%, #5d982b 100%) !important;
    color: #ffffff !important;
    border-color: #5d982b !important;
    transform: translateY(-2px) scale(1.03) !important;
    box-shadow: 0 4px 14px rgba(113, 178, 56, 0.38) !important;
}
.client-btn-directadmin:hover i,
.client-service-item a[href*="controlpanel"]:hover i,
#servicesTable a[href*="controlpanel"]:hover i {
    color: #ffffff !important;
    transform: translateX(3px) scale(1.2) !important;
}

/* 2. Secondary Action Buttons (Detalii, GestioneazÄƒ, Vezi Factura, etc.) */
.client-btn-action,
.client-btn-secondary,
.client-main-col a.btn-sm,
.client-service-item > div:last-child a.btn-sm,
#servicesTable tbody td:last-child a[href*="service-details"],
#domainsTable tbody td:last-child a[href*="domain-details"],
#invoicesTable tbody td:last-child a[href*="invoice"],
#ticketsTable tbody td:last-child a[href*="ticket-view"] {
    background: #f8fafc;
    color: #374151 !important;
    border: 1px solid #e2e8f0;
    padding: 6px 13px;
    border-radius: 4px;
    font-size: 12px;
    font-weight: 600;
    text-decoration: none !important;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    transition: all 0.22s cubic-bezier(0.16, 1, 0.3, 1);
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
    cursor: pointer;
}
.client-btn-action i,
.client-btn-secondary i,
.client-main-col a.btn-sm i,
.client-service-item > div:last-child a.btn-sm i,
#servicesTable tbody td:last-child a[href*="service-details"] i,
#domainsTable tbody td:last-child a[href*="domain-details"] i,
#invoicesTable tbody td:last-child a[href*="invoice"] i,
#ticketsTable tbody td:last-child a[href*="ticket-view"] i {
    transition: transform 0.22s ease, color 0.22s ease;
    font-size: 12px;
    color: #64748b;
}
.client-btn-action:hover,
.client-btn-secondary:hover,
.client-main-col a.btn-sm:hover,
.client-service-item > div:last-child a.btn-sm:hover,
#servicesTable tbody td:last-child a[href*="service-details"]:hover,
#domainsTable tbody td:last-child a[href*="domain-details"]:hover,
#invoicesTable tbody td:last-child a[href*="invoice"]:hover,
#ticketsTable tbody td:last-child a[href*="ticket-view"]:hover {
    background: #ffffff !important;
    border-color: #71b238 !important;
    color: #1e5c09 !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 4px 12px rgba(113, 178, 56, 0.2) !important;
}
.client-btn-action:hover i,
.client-btn-secondary:hover i,
.client-main-col a.btn-sm:hover i,
.client-service-item > div:last-child a.btn-sm:hover i,
#servicesTable tbody td:last-child a[href*="service-details"]:hover i,
#domainsTable tbody td:last-child a[href*="domain-details"]:hover i,
#invoicesTable tbody td:last-child a[href*="invoice"]:hover i,
#ticketsTable tbody td:last-child a[href*="ticket-view"]:hover i {
    color: #71b238 !important;
    transform: scale(1.22) rotate(6deg) !important;
}

/* Service / Domain / Invoice / Ticket Typography Links - Clean & Professional (NO FORM LOOK) */
.client-service-name,
.service-name-link,
.client-domain-title-link,
.client-invoice-num-link,
.client-ticket-link,
#domainsTable tbody td:first-child a:first-child,
#invoicesTable tbody td:first-child a:first-child,
#ticketsTable tbody td:nth-child(2) a:first-child {
    background: transparent !important;
    border: none !important;
    padding: 0 !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    color: #1f2937 !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px;
    text-decoration: none !important;
    transition: color 0.18s ease, transform 0.18s ease !important;
    cursor: pointer;
}
.client-service-name:hover,
.service-name-link:hover,
.client-domain-title-link:hover,
.client-invoice-num-link:hover,
.client-ticket-link:hover,
#domainsTable tbody td:first-child a:first-child:hover,
#invoicesTable tbody td:first-child a:first-child:hover,
#ticketsTable tbody td:nth-child(2) a:first-child:hover {
    color: var(--theme-green) !important;
    transform: translateX(3px) !important;
    background: transparent !important;
    box-shadow: none !important;
}
.client-service-name i,
.service-name-link i,
.client-domain-title-link i,
.client-invoice-num-link i,
.client-ticket-link i {
    transition: transform 0.2s ease, color 0.2s ease;
}
.client-service-name:hover i,
.service-name-link:hover i,
.client-domain-title-link:hover i,
.client-invoice-num-link:hover i,
.client-ticket-link:hover i {
    color: var(--theme-green) !important;
    transform: scale(1.2);
}

.client-service-domain,
.service-domain-link {
    background: transparent !important;
    border: none !important;
    padding: 0 !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    color: var(--theme-green) !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 4px;
    margin-top: 3px !important;
    text-decoration: none !important;
    transition: all 0.18s ease !important;
    cursor: pointer;
}
.client-service-domain:hover,
.service-domain-link:hover {
    color: #1e5c09 !important;
    text-decoration: underline !important;
    transform: translateX(2px) !important;
    background: transparent !important;
    box-shadow: none !important;
}
.client-service-domain i,
.service-domain-link i {
    transition: transform 0.2s ease;
}
.client-service-domain:hover i,
.service-domain-link:hover i {
    transform: rotate(20deg) scale(1.15);
}

/* Service Item Row Dynamic Feedback */
.client-service-item {
    transition: all 0.22s cubic-bezier(0.16, 1, 0.3, 1) !important;
}
.client-service-item:hover {
    background: #fbfefb !important;
    box-shadow: 0 4px 12px rgba(113, 178, 56, 0.08) !important;
    border-left: 3px solid var(--theme-green) !important;
    padding-left: 17px !important;
}
.client-service-item:hover .client-service-icon {
    transform: scale(1.22) rotate(-5deg);
    color: var(--theme-green) !important;
}

/* FiÈ™iere AtaÈ™ate Dynamic Micro-Animations */
.client-file-item {
    transition: all 0.22s cubic-bezier(0.16, 1, 0.3, 1) !important;
    border-left: 3px solid transparent;
}
.client-file-item:hover {
    background: #fbfdfb !important;
    border-left-color: var(--theme-green) !important;
    padding-left: 23px !important;
    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.04) !important;
}
.client-file-item .client-file-name {
    transition: color 0.18s ease, transform 0.18s ease;
}
.client-file-item:hover .client-file-name {
    color: #1e5c09 !important;
    transform: translateX(2px);
}
.client-file-item i.fa-file-pdf-o {
    transition: transform 0.22s cubic-bezier(0.16, 1, 0.3, 1), filter 0.22s ease;
    display: inline-block;
}
.client-file-item:hover i.fa-file-pdf-o {
    transform: scale(1.3) rotate(-8deg);
    filter: drop-shadow(0 2px 4px rgba(239, 68, 68, 0.35));
}
.client-file-item span[style*="background:#fee2e2"] {
    transition: transform 0.2s ease;
    display: inline-block;
}
.client-file-item:hover span[style*="background:#fee2e2"] {
    transform: scale(1.08);
}

/* Attached File Buttons: Download & View */
.client-btn-download {
    padding: 5px 12px !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    background: linear-gradient(135deg, #71b238 0%, #5d982b 100%) !important;
    border: 1px solid #5d982b !important;
    color: #ffffff !important;
    border-radius: 4px !important;
    text-decoration: none !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    cursor: pointer !important;
    transition: all 0.22s cubic-bezier(0.16, 1, 0.3, 1) !important;
    box-shadow: 0 1px 3px rgba(113, 178, 56, 0.25) !important;
}
.client-btn-download i {
    transition: transform 0.22s ease !important;
    font-size: 11px !important;
}
.client-btn-download:hover {
    background: linear-gradient(135deg, #7ec242 0%, #68a931 100%) !important;
    transform: translateY(-2px) scale(1.04) !important;
    box-shadow: 0 4px 14px rgba(113, 178, 56, 0.38) !important;
    color: #ffffff !important;
}
.client-btn-download:hover i {
    transform: translateY(2px) scale(1.2) !important;
}

.client-btn-view {
    padding: 5px 12px !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    background: #ffffff !important;
    border: 1px solid #d1d5db !important;
    color: #374151 !important;
    border-radius: 4px !important;
    text-decoration: none !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    cursor: pointer !important;
    transition: all 0.22s cubic-bezier(0.16, 1, 0.3, 1) !important;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04) !important;
}
.client-btn-view i {
    transition: transform 0.22s ease, color 0.22s ease !important;
    font-size: 11px !important;
    color: #6b7280 !important;
}
.client-btn-view:hover {
    background: #ffffff !important;
    border-color: #71b238 !important;
    color: #1e5c09 !important;
    transform: translateY(-2px) scale(1.04) !important;
    box-shadow: 0 4px 12px rgba(113, 178, 56, 0.2) !important;
}
.client-btn-view:hover i {
    color: #71b238 !important;
    transform: scale(1.25) !important;
}

/* 3. Universal Client Portal Primary Buttons (Dynamic 3D Hover & Micro-animations) */
.client-main-col button[type="submit"],
.client-panel button[type="submit"],
.client-panel-body button[type="submit"],
.client-panel-body a[href="profile.php"],
a[href="../domains.php"][style*="background:var(--theme-green)"],
a[href="open-ticket.php"].client-btn-action,
.client-btn-primary,
button.btn-client-primary,
.client-btn-submit {
    background: linear-gradient(135deg, #71b238 0%, #5d982b 100%) !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 4px !important;
    font-weight: 700 !important;
    cursor: pointer !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    transition: all 0.24s cubic-bezier(0.16, 1, 0.3, 1) !important;
    box-shadow: 0 2px 8px rgba(113, 178, 56, 0.28) !important;
    text-decoration: none !important;
}
.client-main-col button[type="submit"]:hover,
.client-panel button[type="submit"]:hover,
.client-panel-body button[type="submit"]:hover,
.client-panel-body a[href="profile.php"]:hover,
a[href="../domains.php"][style*="background:var(--theme-green)"]:hover,
a[href="open-ticket.php"].client-btn-action:hover,
.client-btn-primary:hover,
button.btn-client-primary:hover,
.client-btn-submit:hover {
    background: linear-gradient(135deg, #7ec242 0%, #68a931 100%) !important;
    color: #ffffff !important;
    border-color: #5d982b !important;
    transform: translateY(-2px) scale(1.02) !important;
    box-shadow: 0 6px 20px rgba(113, 178, 56, 0.42) !important;
}
.client-main-col button[type="submit"] i,
.client-panel button[type="submit"] i,
.client-panel-body button[type="submit"] i,
.client-panel-body a[href="profile.php"] i,
.client-btn-primary i,
button.btn-client-primary i,
.client-btn-submit i {
    transition: transform 0.22s ease, color 0.22s ease !important;
    display: inline-block !important;
}
.client-main-col button[type="submit"]:hover i,
.client-panel button[type="submit"]:hover i,
.client-panel-body button[type="submit"]:hover i,
.client-panel-body a[href="profile.php"]:hover i,
.client-btn-primary:hover i,
button.btn-client-primary:hover i,
.client-btn-submit:hover i {
    color: #ffffff !important;
    transform: scale(1.22) rotate(-8deg) !important;
}
.client-main-col button[type="submit"]:active,
.client-panel button[type="submit"]:active,
.client-btn-primary:active {
    transform: translateY(0) scale(0.98) !important;
}

/* Universal Client Portal Secondary Buttons (GenereazÄƒ ParolÄƒ, ÃŽnapoi, Filtre, etc.) */
.client-main-col button[type="button"]:not([onclick*="togglePwView"]),
.client-filter-btn,
.client-btn-secondary {
    transition: all 0.22s cubic-bezier(0.16, 1, 0.3, 1) !important;
    cursor: pointer !important;
}
.client-main-col button[type="button"]:not([onclick*="togglePwView"]):hover,
.client-filter-btn:hover,
.client-btn-secondary:hover {
    background: #ffffff !important;
    border-color: #71b238 !important;
    color: #1e5c09 !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 4px 12px rgba(113, 178, 56, 0.2) !important;
}
.client-main-col button[type="button"]:not([onclick*="togglePwView"]) i,
.client-filter-btn i,
.client-btn-secondary i {
    transition: transform 0.22s ease, color 0.22s ease !important;
}
.client-main-col button[type="button"]:not([onclick*="togglePwView"]):hover i,
.client-filter-btn:hover i,
.client-btn-secondary:hover i {
    color: #71b238 !important;
    transform: scale(1.2) rotate(10deg) !important;
}

/* Client Tabs Micro-Interaction */
button[id^="tab-btn-"] {
    transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1) !important;
}
button[id^="tab-btn-"]:hover {
    color: var(--theme-green) !important;
    transform: translateY(-1px);
}
button[id^="tab-btn-"] i {
    transition: transform 0.2s ease !important;
}
button[id^="tab-btn-"]:hover i {
    transform: scale(1.2);
    color: var(--theme-green) !important;
}

/* 4. KPI Summary Stat Tiles */
.client-tile-item {
    transition: all 0.24s cubic-bezier(0.16, 1, 0.3, 1) !important;
    position: relative;
    overflow: hidden;
}
.client-tile-item .client-tile-icon i {
    transition: transform 0.24s cubic-bezier(0.16, 1, 0.3, 1), color 0.24s ease !important;
    display: inline-block;
}
.client-tile-item .client-tile-stat {
    transition: color 0.2s ease, transform 0.2s ease !important;
}
.client-tile-item:hover {
    transform: translateY(-4px) !important;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1) !important;
}
.client-tile-item:hover .client-tile-icon i {
    transform: scale(1.25) rotate(-6deg) !important;
}
.client-tile-blue:hover .client-tile-icon i { color: #3b82f6 !important; }
.client-tile-green:hover .client-tile-icon i { color: #71b238 !important; }
.client-tile-red:hover .client-tile-icon i { color: #ef4444 !important; }
.client-tile-gold:hover .client-tile-icon i { color: #f59e0b !important; }

/* 5. Left Sidebar Direct Links */
.client-direct-links li a {
    transition: all 0.2s ease !important;
}
.client-direct-links li a i {
    transition: transform 0.22s ease, color 0.22s ease !important;
}
.client-direct-links li a:hover {
    background: #f0faea !important;
    color: #1e5c09 !important;
    padding-left: 24px !important;
    border-left: 3px solid #71b238 !important;
}
.client-direct-links li a:hover i {
    color: #71b238 !important;
    transform: translateX(4px) scale(1.2) !important;
}

/* 6. Client Sidebar Links (Filters) */
.client-sidebar-list li a {
    transition: all 0.2s ease !important;
}
.client-sidebar-list li a:hover {
    background: #f0faea !important;
    color: #1e5c09 !important;
    padding-left: 22px !important;
    border-left: 3px solid #71b238 !important;
}
.client-sidebar-list li a i {
    transition: transform 0.2s ease, color 0.2s ease !important;
}
.client-sidebar-list li a:hover i {
    color: #71b238 !important;
    transform: translateX(3px) scale(1.2) !important;
}

/* 7. Status Badges Micro-Interactions */
.client-status-badge,
.client-service-item span[style*="border-radius"],
#servicesTable span[style*="border-radius"],
#domainsTable span[style*="border-radius"],
#invoicesTable span[style*="border-radius"],
#ticketsTable span[style*="border-radius"] {
    transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1) !important;
    cursor: default;
}
.client-status-badge i,
.client-service-item span[style*="border-radius"] i,
#servicesTable span[style*="border-radius"] i,
#domainsTable span[style*="border-radius"] i,
#invoicesTable span[style*="border-radius"] i,
#ticketsTable span[style*="border-radius"] i {
    transition: transform 0.2s ease !important;
}
.client-status-badge:hover,
.client-service-item span[style*="border-radius"]:hover,
#servicesTable span[style*="border-radius"]:hover,
#domainsTable span[style*="border-radius"]:hover,
#invoicesTable span[style*="border-radius"]:hover,
#ticketsTable span[style*="border-radius"]:hover {
    transform: translateY(-1px) scale(1.06) !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.12) !important;
}
.client-status-badge:hover i,
.client-service-item span[style*="border-radius"]:hover i,
#servicesTable span[style*="border-radius"]:hover i,
#domainsTable span[style*="border-radius"]:hover i,
#invoicesTable span[style*="border-radius"]:hover i,
#ticketsTable span[style*="border-radius"]:hover i {
    transform: scale(1.25) !important;
}

/* 8. Panel Headings Icon Dynamics */
.client-panel-heading h3 i {
    transition: transform 0.22s ease !important;
    display: inline-block;
}
.client-panel:hover .client-panel-heading h3 i {
    transform: scale(1.2) rotate(8deg);
}
.client-panel-heading a {
    transition: transform 0.2s ease, opacity 0.2s ease !important;
    display: inline-flex;
    align-items: center;
    gap: 4px;
}
.client-panel-heading a:hover {
    transform: translateX(3px) !important;
}

/* 9. Network Status Page Components */
.network-status-banner {
    background: linear-gradient(135deg, #ffffff 0%, #f0fdf4 100%);
    border: 1px solid #bbf7d0;
    border-left: 5px solid #22c55e;
    border-radius: 8px;
    padding: 22px 26px;
    box-shadow: 0 4px 16px rgba(34, 197, 94, 0.08);
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 20px;
}
.network-status-banner-badge {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: #15803d;
    font-size: 15px;
    font-weight: 800;
    letter-spacing: 0.5px;
    line-height: 1.4;
}
.network-status-banner-badge i {
    flex-shrink: 0;
}
.status-pulse-circle {
    width: 12px !important;
    height: 12px !important;
    min-width: 12px !important;
    min-height: 12px !important;
    max-width: 12px !important;
    max-height: 12px !important;
    flex: 0 0 12px !important;
    flex-shrink: 0 !important;
    aspect-ratio: 1 / 1 !important;
    line-height: 0 !important;
    font-size: 0 !important;
    border-radius: 50% !important;
    align-self: center !important;
    background: #22c55e;
    box-shadow: 0 0 0 0 rgba(34, 197, 94, 0.7);
    animation: statusPulse 1.8s infinite;
    display: inline-block;
}
@keyframes statusPulse {
    0% {
        box-shadow: 0 0 0 0 rgba(34, 197, 94, 0.7);
    }
    70% {
        box-shadow: 0 0 0 10px rgba(34, 197, 94, 0);
    }
    100% {
        box-shadow: 0 0 0 0 rgba(34, 197, 94, 0);
    }
}
.network-status-banner-metrics {
    display: flex;
    align-items: center;
    gap: 24px;
    background: #ffffff;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    padding: 12px 20px;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.03);
}
.network-metric-box {
    text-align: center;
}
.network-metric-val {
    font-size: 20px;
    font-weight: 800;
    color: #1f2937;
    line-height: 1.1;
}
.network-metric-lbl {
    font-size: 11px;
    font-weight: 600;
    color: #6b7280;
    margin-top: 4px;
    text-transform: uppercase;
}
.status-live-indicator {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    background: #ecfdf5;
    border: 1px solid #a7f3d0;
    color: #065f46;
    padding: 5px 12px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: 700;
}
.status-live-dot {
    width: 8px !important;
    height: 8px !important;
    min-width: 8px !important;
    min-height: 8px !important;
    max-width: 8px !important;
    max-height: 8px !important;
    flex: 0 0 8px !important;
    flex-shrink: 0 !important;
    aspect-ratio: 1 / 1 !important;
    line-height: 0 !important;
    font-size: 0 !important;
    border-radius: 50% !important;
    align-self: center !important;
    background: #10b981;
    animation: statusPulse 1.5s infinite;
    display: inline-block;
}

/* 90-Day Timeline Bar */
.uptime-bar-wrap {
    display: flex;
    align-items: center;
    gap: 3px;
    height: 34px;
    width: 100%;
    padding: 4px 0;
}
.uptime-day-pill {
    flex: 1;
    height: 100%;
    background: #22c55e;
    border-radius: 2px;
    transition: transform 0.15s ease, background 0.15s ease;
    cursor: pointer;
}
.uptime-day-pill:hover {
    transform: scaleY(1.22);
    background: #15803d;
}

/* Network Tables */
.network-table thead th {
    background: #f8fafc;
    color: #64748b;
    text-transform: uppercase;
    font-size: 11px;
    letter-spacing: 0.5px;
    padding: 12px 16px;
    border-bottom: 2px solid #e2e8f0;
    white-space: nowrap;
}
.network-table tbody tr {
    border-bottom: 1px solid #f1f5f9;
    transition: background 0.18s ease;
}
.network-table tbody tr:hover {
    background: #f0fdf4 !important;
}
.network-table tbody td {
    padding: 14px 16px;
    vertical-align: middle;
    white-space: nowrap;
}
.server-service-pills {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
}
.svc-pill {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    background: #f1f5f9;
    border: 1px solid #e2e8f0;
    color: #334155;
    padding: 2px 7px;
    border-radius: 4px;
    font-size: 11px;
    font-weight: 600;
}
.svc-pill i {
    color: #16a34a;
    font-size: 10px;
}
.load-badge {
    display: inline-block;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    color: #475569;
    padding: 3px 8px;
    border-radius: 4px;
    font-family: monospace;
    font-size: 11px;
    font-weight: 700;
}
.status-badge-active {
    background: #dcfce7 !important;
    color: #15803d !important;
    border: 1px solid #bbf7d0 !important;
    padding: 4px 10px !important;
    border-radius: 12px !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
}






/* ================= HERO CAROUSEL v2 (servicii TicketHelp) ================= */
.hs-hero {
    position: relative;
    height: 560px;
    overflow: hidden;
    color: #fff;
    background: #14171e;
    font-family: 'Roboto', sans-serif;
    outline: none;
}
.hs-bg {
    position: absolute; inset: 0;
    background:
        radial-gradient(ellipse at 78% 40%, rgba(113,178,56,0.22), transparent 55%),
        radial-gradient(ellipse at 10% 90%, rgba(113,178,56,0.10), transparent 50%),
        linear-gradient(rgba(17,20,28,0.88), rgba(17,20,28,0.94)),
        url('../images/slide-bg1.jpg') center/cover no-repeat;
}
.hs-grid-bg {
    position: absolute; inset: 0; opacity: .35; pointer-events: none;
    background-image: linear-gradient(rgba(255,255,255,0.04) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,0.04) 1px, transparent 1px);
    background-size: 46px 46px;
    -webkit-mask-image: radial-gradient(ellipse at center, #000 30%, transparent 75%);
            mask-image: radial-gradient(ellipse at center, #000 30%, transparent 75%);
}
.hs-stage { position: relative; height: 100%; max-width: 1200px; margin: 0 auto; padding: 0 70px; }
.hs-slide {
    position: absolute; inset: 0 70px 70px;
    display: grid; grid-template-columns: 1.15fr 0.85fr; align-items: center; gap: 50px;
    opacity: 0; visibility: hidden; pointer-events: none;
    transition: opacity .6s ease, visibility .6s ease;
}
.hs-slide.is-active { opacity: 1; visibility: visible; pointer-events: auto; }

/* text column: staggered entrance */
.hs-text > * { opacity: 0; transform: translateY(22px); transition: opacity .6s ease, transform .6s cubic-bezier(.2,.8,.2,1); }
.hs-slide.is-active .hs-text > * { opacity: 1; transform: none; }
.hs-slide.is-active .hs-text > *:nth-child(1) { transition-delay: .10s; }
.hs-slide.is-active .hs-text > *:nth-child(2) { transition-delay: .20s; }
.hs-slide.is-active .hs-text > *:nth-child(3) { transition-delay: .30s; }
.hs-slide.is-active .hs-text > *:nth-child(4) { transition-delay: .40s; }
.hs-slide.is-active .hs-text > *:nth-child(5) { transition-delay: .50s; }

/* Zero-shift initial hero slide rendering (prevents scaling, translation & shadow flicker on initial page load / refresh) */
.hs-hero:not(.hs-transitions-ready) .hs-slide.is-active,
.hs-hero:not(.hs-transitions-ready) .hs-slide.is-active .hs-text > *,
.hs-hero:not(.hs-transitions-ready) .hs-slide.is-active .hs-card,
.hs-hero:not(.hs-transitions-ready) .hs-slide.is-active .hs-float {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
}

.hs-badge {
    display: inline-flex; align-items: center; gap: 8px;
    font-size: 12px; font-weight: 700; letter-spacing: 1.4px; text-transform: uppercase;
    color: #a7e07a; background: rgba(113,178,56,0.14); border: 1px solid rgba(113,178,56,0.4);
    padding: 6px 14px; border-radius: 30px; margin-bottom: 18px;
}
.hs-title { font-size: 42px; line-height: 1.15; font-weight: 800; margin: 0 0 16px; color: #fff; letter-spacing: -0.5px; }
.hs-title span {
    background: linear-gradient(90deg, #8fd14f, #71b238 60%, #5aa02a);
    -webkit-background-clip: text; background-clip: text; color: transparent;
}
.hs-desc { font-size: 15.5px; line-height: 1.65; color: #c3cad6; margin: 0 0 20px; max-width: 560px; }
.hs-feats { list-style: none; padding: 0; margin: 0 0 28px; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px 18px; max-width: 560px; }
.hs-feats li { display: flex; align-items: center; gap: 10px; font-size: 14px; color: #e5e7eb; font-weight: 500; }
.hs-feats li i {
    width: 20px; height: 20px; border-radius: 50%; flex-shrink: 0;
    background: var(--theme-green); color: #fff; font-size: 10px;
    display: inline-flex; align-items: center; justify-content: center;
    box-shadow: 0 0 0 4px rgba(113,178,56,0.18);
}
.hs-ctas { display: flex; gap: 14px; flex-wrap: wrap; }
.hs-btn {
    display: inline-flex; align-items: center; gap: 9px;
    padding: 14px 26px; border-radius: 6px; font-size: 14px; font-weight: 700;
    text-decoration: none; letter-spacing: .3px; transition: all .25s ease;
}
.hs-btn-primary { background: var(--theme-green); color: #fff; box-shadow: 0 8px 24px rgba(113,178,56,0.4); position: relative; overflow: hidden; }
.hs-btn-primary::after {
    content: ''; position: absolute; top: 0; left: -120%; width: 60%; height: 100%;
    background: linear-gradient(120deg, transparent, rgba(255,255,255,0.35), transparent);
    transform: skewX(-20deg); animation: hsShine 3.2s ease-in-out infinite;
}
@keyframes hsShine { 0%, 60% { left: -120%; } 100% { left: 160%; } }
.hs-btn-primary:hover { background: #5f9a2c; color: #fff; transform: translateY(-2px); box-shadow: 0 12px 30px rgba(113,178,56,0.5); }
.hs-btn-ghost { color: #fff; border: 1px solid rgba(255,255,255,0.25); background: rgba(255,255,255,0.04); }
.hs-btn-ghost:hover { border-color: var(--theme-green); color: #a7e07a; background: rgba(113,178,56,0.08); }
.hs-btn-ghost i { transition: transform .25s ease; }
.hs-btn-ghost:hover i { transform: translateX(4px); }

/* visual column */
.hs-visual { position: relative; display: flex; justify-content: center; }
.hs-card {
    width: 100%; max-width: 380px;
    background: linear-gradient(160deg, rgba(255,255,255,0.09), rgba(255,255,255,0.03));
    border: 1px solid rgba(255,255,255,0.12); border-radius: 16px; padding: 22px;
    backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px);
    box-shadow: 0 30px 60px rgba(0,0,0,0.45), inset 0 1px 0 rgba(255,255,255,0.08);
    opacity: 0; transform: translateX(40px) scale(.96);
    transition: opacity .7s ease .25s, transform .7s cubic-bezier(.2,.8,.2,1) .25s;
}
.hs-slide.is-active .hs-card { opacity: 1; transform: none; animation: hsFloat 6s ease-in-out 1s infinite; }
@keyframes hsFloat { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-8px); } }
.hs-card-head { display: flex; align-items: center; gap: 12px; padding-bottom: 16px; margin-bottom: 14px; border-bottom: 1px solid rgba(255,255,255,0.08); }
.hs-card-ico {
    width: 46px; height: 46px; border-radius: 12px;
    background: linear-gradient(135deg, #8fd14f, #5aa02a); color: #fff; font-size: 20px;
    display: flex; align-items: center; justify-content: center;
    box-shadow: 0 8px 20px rgba(113,178,56,0.45);
}
.hs-card-title { font-size: 16px; font-weight: 700; color: #fff; flex: 1; }
.hs-live { display: inline-flex; align-items: center; gap: 6px; font-size: 11px; font-weight: 700; color: #a7e07a; text-transform: uppercase; letter-spacing: .6px; }
.hs-live span {
    width: 8px !important;
    height: 8px !important;
    min-width: 8px !important;
    min-height: 8px !important;
    max-width: 8px !important;
    max-height: 8px !important;
    flex: 0 0 8px !important;
    flex-shrink: 0 !important;
    aspect-ratio: 1 / 1 !important;
    line-height: 0 !important;
    font-size: 0 !important;
    border-radius: 50% !important;
    align-self: center !important;
    background: #71b238;
    animation: hsPulse 1.8s infinite;
    display: inline-block;
}
@keyframes hsPulse { 0% { box-shadow: 0 0 0 0 rgba(113,178,56,.7); } 70% { box-shadow: 0 0 0 8px rgba(113,178,56,0); } 100% { box-shadow: 0 0 0 0 rgba(113,178,56,0); } }
.hs-rows { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 8px; }
.hs-rows li {
    display: flex; align-items: center; gap: 12px;
    background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.06);
    border-radius: 9px; padding: 11px 14px; font-size: 13.5px; transition: all .2s ease;
}
.hs-rows li:hover { background: rgba(113,178,56,0.1); border-color: rgba(113,178,56,0.35); }
.hs-rows li i { color: var(--theme-green); width: 18px; text-align: center; font-size: 15px; }
.hs-rows li span { color: #aab3c0; flex: 1; }
.hs-rows li b { color: #fff; font-weight: 700; }
.hs-big { text-align: center; padding: 6px 0 16px; }
.hs-big strong { display: block; font-size: 72px; line-height: 1; font-weight: 900; background: linear-gradient(180deg, #a7e07a, #5aa02a); -webkit-background-clip: text; background-clip: text; color: transparent; }
.hs-big span { font-size: 14px; text-transform: uppercase; letter-spacing: 2px; color: #cbd5e1; font-weight: 700; }
.hs-tlds { display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; margin-bottom: 14px; }
.hs-tlds span {
    text-align: center; padding: 10px 0; border-radius: 8px; font-weight: 800; font-size: 15px; color: #fff;
    background: rgba(255,255,255,0.05); border: 1px solid rgba(255,255,255,0.08); transition: all .2s ease;
}
.hs-tlds span:hover { background: var(--theme-green); border-color: var(--theme-green); transform: translateY(-2px); }
.hs-search-mock {
    display: flex; align-items: center; gap: 8px; text-decoration: none;
    background: #fff; color: #374151; border-radius: 8px; padding: 12px 14px; font-size: 14px; font-weight: 600;
}
.hs-search-mock i { color: #9ca3af; }
.hs-search-mock b { color: var(--theme-green); }
.hs-search-mock em { margin-left: auto; font-style: normal; font-size: 11px; font-weight: 700; color: #15803d; background: #dcfce7; padding: 3px 9px; border-radius: 20px; }
.hs-float {
    position: absolute; display: inline-flex; align-items: center; gap: 8px;
    background: #fff; color: #1f2937; font-size: 12.5px; font-weight: 700;
    padding: 9px 14px; border-radius: 30px; box-shadow: 0 12px 30px rgba(0,0,0,0.35);
    opacity: 0; transition: opacity .6s ease .6s;
}
.hs-float i { color: var(--theme-green); }
.hs-float-1 { top: -14px; left: 0; }
.hs-float-2 { bottom: -10px; right: 0; }
.hs-slide.is-active .hs-float { opacity: 1; animation: hsFloat 5s ease-in-out infinite; }
.hs-slide.is-active .hs-float-2 { animation-delay: 1.2s; }

/* arrows */
.hs-arrow {
    position: absolute; top: calc(50% - 35px); transform: translateY(-50%); z-index: 5;
    width: 46px; height: 46px; border-radius: 50%; border: 1px solid rgba(255,255,255,0.15);
    background: rgba(255,255,255,0.06); color: #fff; font-size: 15px; cursor: pointer;
    display: flex; align-items: center; justify-content: center; transition: all .25s ease;
    backdrop-filter: blur(6px);
}
.hs-arrow:hover { background: var(--theme-green); border-color: var(--theme-green); box-shadow: 0 6px 18px rgba(113,178,56,0.45); }
.hs-prev { left: 22px; } .hs-next { right: 22px; }

/* dots with progress + labels */
.hs-dots {
    position: absolute; left: 50%; bottom: 22px; transform: translateX(-50%); z-index: 5;
    display: flex; gap: 10px; width: calc(100% - 40px); max-width: 1060px;
}
.hs-dot { flex: 1; background: none; border: none; padding: 0; cursor: pointer; text-align: left; color: #8b95a5; }
.hs-dot-label { display: block; font-size: 11px; font-weight: 700; letter-spacing: .6px; text-transform: uppercase; margin-bottom: 7px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; transition: color .2s ease; }
.hs-dot:hover .hs-dot-label, .hs-dot.is-active .hs-dot-label { color: #fff; }
.hs-dot-bar { display: block; height: 3px; border-radius: 3px; background: rgba(255,255,255,0.15); overflow: hidden; }
.hs-dot-bar i { display: block; height: 100%; width: 0; background: var(--theme-green); border-radius: 3px; }
.hs-dot.is-active .hs-dot-bar i { animation: hsProgress var(--hs-duration, 7000ms) linear forwards; }
.hs-hero.is-paused .hs-dot.is-active .hs-dot-bar i { animation-play-state: paused; }
@keyframes hsProgress { from { width: 0; } to { width: 100%; } }

/* responsive */
@media (max-width: 1100px) {
    .hs-title { font-size: 34px; }
    .hs-slide { gap: 30px; }
}
@media (max-width: 900px) {
    .hs-hero { height: 600px; }
    .hs-stage { padding: 0 20px; }
    .hs-slide { inset: 0 20px 70px; grid-template-columns: 1fr; text-align: center; }
    .hs-visual { display: none; }
    .hs-desc, .hs-feats { margin-left: auto; margin-right: auto; }
    .hs-feats li { justify-content: center; }
    .hs-ctas { justify-content: center; }
    .hs-arrow { display: none; }
    .hs-dot-label { display: none; }
}
@media (max-width: 520px) {
    .hs-hero { height: 640px; }
    .hs-title { font-size: 28px; }
    .hs-desc { font-size: 14.5px; }
    .hs-feats { grid-template-columns: 1fr; text-align: left; max-width: 300px; }
    .hs-feats li { justify-content: flex-start; }
    .hs-btn { width: 100%; justify-content: center; }
}
@media (prefers-reduced-motion: reduce) {
    .hs-hero *, .hs-hero *::after { animation: none !important; transition: none !important; }
}

/* Interactive Hosting Package Picker Modal Styles */
.modal-cat-btn {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    padding: 10px 12px !important;
    border-radius: 8px !important;
    border: 1px solid #e2e8f0 !important;
    background: #ffffff !important;
    color: #334155 !important;
    cursor: pointer !important;
    text-align: left !important;
    transition: all 0.2s ease !important;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.03) !important;
    box-sizing: border-box !important;
}
.modal-cat-btn .cat-title {
    font-size: 12.5px;
    font-weight: 700;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    color: #1e293b;
    transition: color 0.2s;
}
.modal-cat-btn .cat-sub {
    font-size: 11px;
    color: #64748b;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    transition: color 0.2s;
}
.modal-cat-btn .cat-icon {
    width: 34px;
    height: 34px;
    border-radius: 6px;
    background: rgba(113, 178, 56, 0.1);
    color: var(--theme-green, #71b238);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    flex-shrink: 0;
    transition: all 0.2s;
}
.modal-cat-btn .cat-arrow {
    font-size: 10px;
    color: #94a3b8;
    transition: all 0.2s;
}
.modal-cat-btn:hover:not(.active) {
    border-color: #cbd5e1 !important;
    background: #f1f5f9 !important;
    transform: translateX(2px);
}
.modal-cat-btn:hover:not(.active) .cat-title {
    color: #0f172a !important;
}
.modal-cat-btn:hover:not(.active) .cat-icon {
    background: rgba(113, 178, 56, 0.18) !important;
    color: var(--theme-green, #71b238) !important;
}
.modal-cat-btn.active {
    background: var(--theme-green, #71b238) !important;
    border-color: var(--theme-green, #71b238) !important;
    color: #ffffff !important;
    box-shadow: 0 4px 12px rgba(113, 178, 56, 0.35) !important;
}
.modal-cat-btn.active:hover {
    background: #5ea02d !important;
    border-color: #5ea02d !important;
    color: #ffffff !important;
    transform: translateX(2px);
    box-shadow: 0 4px 14px rgba(94, 160, 45, 0.45) !important;
}
.modal-cat-btn.active .cat-title,
.modal-cat-btn.active:hover .cat-title {
    color: #ffffff !important;
}
.modal-cat-btn.active .cat-sub,
.modal-cat-btn.active:hover .cat-sub {
    color: rgba(255, 255, 255, 0.9) !important;
}
.modal-cat-btn.active .cat-icon,
.modal-cat-btn.active:hover .cat-icon {
    background: rgba(255, 255, 255, 0.25) !important;
    color: #ffffff !important;
}
.modal-cat-btn.active .cat-arrow,
.modal-cat-btn.active:hover .cat-arrow {
    color: #ffffff !important;
}
@media (max-width: 768px) {
    #hostingModalSplit {
        flex-direction: column !important;
    }
    #hostingModalSidebar {
        width: 100% !important;
        border-right: none !important;
        border-bottom: 1px solid #e2e8f0 !important;
        max-height: 160px !important;
        flex-direction: row !important;
        overflow-x: auto !important;
        flex-wrap: nowrap !important;
    }
    #hostingModalSidebar .modal-cat-btn {
        width: auto !important;
        min-width: 180px !important;
    }
    #hostingModalContent {
        padding: 15px !important;
    }
}

/* ================= LANGUAGE SWITCHER (RO / EN) â€“ one design everywhere ================= */
.lang-switcher {
    display: inline-flex;
    align-items: stretch;
    flex-shrink: 0;
    border: 1px solid #e2e8f0;
    border-radius: 4px;
    overflow: hidden;
    background: #f8fafc;
    line-height: 1;
}
.lang-switcher a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 32px;
    height: 30px;
    padding: 0 9px;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .4px;
    color: #64748b;
    background: #f8fafc;
    text-decoration: none;
    transition: background .2s ease, color .2s ease;
}
.lang-switcher a + a { border-left: 1px solid #e2e8f0; }
.lang-switcher a:hover { background: #e2e8f0; color: #1e293b; }
.lang-switcher a.active { background: var(--theme-green, #71b238); color: #fff; }

/* top-bar variant (shown only on phones / tablets) */
.lang-switcher--topbar { display: none; }
.lang-switcher--topbar a { height: 24px; min-width: 30px; padding: 0 8px; font-size: 11px; }

.top-bar-mobile-actions { display: none; }
.top-phone-mobile-btn { display: none !important; }

/* mobile drawer variant */
.mobile-nav-lang {
    margin-top: auto;
    padding: 16px 20px;
    border-top: 1px solid rgba(255, 255, 255, 0.08);
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.mobile-nav-lang + .mobile-nav-footer { margin-top: 0; }
.mobile-nav-lang-label { font-size: 12px; color: #94a3b8; text-transform: uppercase; letter-spacing: .6px; }
.mobile-nav-lang-label i { color: var(--theme-green, #71b238); margin-right: 6px; }
.lang-switcher--drawer { width: 100%; }
.lang-switcher--drawer a { flex: 1 1 50%; height: 38px; font-size: 13px; }

@media (max-width: 992px) {
    /* header row keeps only logo + lock + cart + menu -> nothing overflows */
    .lang-switcher--header { display: none !important; }
    .top-bar { height: auto; line-height: normal; }
    .top-bar-inner {
        flex-direction: row !important;
        justify-content: space-between !important;
        align-items: center !important;
        height: 38px !important;
        padding: 0 15px !important;
        gap: 10px !important;
    }
    .top-bar .top-contact { display: none !important; }
    .top-bar-mobile-actions {
        display: inline-flex !important;
        align-items: center !important;
        gap: 8px !important;
    }
    .top-phone-mobile-btn {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 26px !important;
        height: 26px !important;
        min-width: 26px !important;
        min-height: 26px !important;
        border-radius: 50% !important;
        background: var(--theme-green, #71b238) !important;
        color: #ffffff !important;
        font-size: 11px !important;
        text-decoration: none !important;
        box-shadow: 0 2px 6px rgba(113,178,56,0.3) !important;
        transition: transform 0.15s ease, background 0.15s ease !important;
    }
    .top-phone-mobile-btn:hover,
    .top-phone-mobile-btn:active {
        background: #5f9a2c !important;
        color: #ffffff !important;
        transform: scale(1.08) !important;
    }
    .lang-switcher--topbar { display: inline-flex !important; }
}

@media (max-width: 450px) {
    .header-right-actions { gap: 6px !important; }
    .header-logo img { max-width: 140px !important; height: 38px !important; }
    .btn-lock, .cart-badge-wrap, .mobile-toggle { width: 34px !important; height: 34px !important; font-size: 13px !important; }
}

@media (max-width: 360px) {
    .header-logo img { max-width: 120px !important; height: 34px !important; }
    .header-right-actions { gap: 5px !important; }
}


/* ==========================================================================
   Pricebox / Order Buttons - Perfect Centering & Hover Alignment
   ========================================================================== */
.pricebox-purchased-link {
    text-align: center !important;
    padding: 10px 0 25px !important;
}

.pricebox-purchased-link a.ibutton,
.pricebox-purchased-link .ibutton {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    min-width: 125px !important;
    height: 36px !important;
    line-height: 36px !important;
    padding: 0 24px !important;
    border-radius: 25px !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
    vertical-align: middle !important;
}

.pricebox-purchased-link a.ibutton span,
.pricebox-purchased-link .ibutton span {
    position: relative !important;
    display: inline-block !important;
    width: 100% !important;
    height: 100% !important;
    line-height: 36px !important;
    text-align: center !important;
    white-space: nowrap !important;
    vertical-align: middle !important;
}

.pricebox-purchased-link a.ibutton.ibutton-effect1 span::before,
.pricebox-purchased-link .ibutton.ibutton-effect1 span::before,
.ibutton-effect1 span::before {
    position: absolute !important;
    top: 100% !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    height: 100% !important;
    line-height: inherit !important;
    text-align: center !important;
    display: block !important;
    white-space: nowrap !important;
    content: attr(data-hover) !important;
    font-weight: 700 !important;
}

.ibutton-effect1:hover span,
.ibutton-effect1:focus span {
    -webkit-transform: translateY(-100%) !important;
    transform: translateY(-100%) !important;
}

/* ==========================================================================
   Contact Page Submit Button - Authentic Order Button Match & Roll Animation
   ========================================================================== */
.contact-submit-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    min-width: 190px !important;
    height: 44px !important;
    line-height: 44px !important;
    padding: 0 32px !important;
    border-radius: 25px !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
    vertical-align: middle !important;
    background: #49a32b !important;
    color: #ffffff !important;
    border: none !important;
    cursor: pointer !important;
    box-shadow: 0 2px 6px rgba(73, 163, 43, 0.35) !important;
    transition: all 0.3s ease !important;
    font-family: 'Roboto', sans-serif !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    -webkit-tap-highlight-color: transparent !important;
}

.contact-submit-btn:hover {
    background: #3d8b24 !important;
    box-shadow: 0 4px 14px rgba(73, 163, 43, 0.45) !important;
    transform: translateY(-2px) !important;
    color: #ffffff !important;
}

.contact-submit-btn:active {
    transform: translateY(0) scale(0.98) !important;
    box-shadow: 0 2px 6px rgba(73, 163, 43, 0.25) !important;
}

.contact-submit-btn span {
    position: relative !important;
    display: inline-block !important;
    width: 100% !important;
    height: 100% !important;
    line-height: 44px !important;
    text-align: center !important;
    white-space: nowrap !important;
    vertical-align: middle !important;
    transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.contact-submit-btn.ibutton-effect1 span::before {
    position: absolute !important;
    top: 100% !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    height: 100% !important;
    line-height: 44px !important;
    text-align: center !important;
    display: block !important;
    white-space: nowrap !important;
    content: attr(data-hover) !important;
    font-weight: 700 !important;
    color: #ffffff !important;
}

.contact-submit-btn.ibutton-effect1:hover span,
.contact-submit-btn.ibutton-effect1:focus span {
    -webkit-transform: translateY(-100%) !important;
    transform: translateY(-100%) !important;
}

/* ==========================================================================
   TicketHelp 2.0 - Footer Admin Button & Modern Login Modal Redesign
   ========================================================================== */

/* Footer Admin Button in Copyright Row */
.copyright-admin {
    display: flex;
    align-items: center;
}
.footer-admin-link {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 5px 14px;
    background: rgba(255, 255, 255, 0.08);
    color: #cbd5e1 !important;
    font-size: 12px;
    font-weight: 600;
    line-height: 1.4;
    border-radius: 4px;
    border: 1px solid rgba(255, 255, 255, 0.16);
    text-decoration: none !important;
    transition: all 0.2s ease;
}
.footer-admin-link:hover {
    background: var(--theme-green, #71b238);
    color: #ffffff !important;
    border-color: var(--theme-green, #71b238);
    box-shadow: 0 3px 10px rgba(113, 178, 56, 0.35);
    transform: translateY(-1px);
}
.footer-admin-link i {
    font-size: 11px;
}

/* Redesigned Enterprise Login Modal */
.login-modal-overlay {
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
    background-color: rgba(17, 24, 39, 0.65) !important;
}
.login-modal-dialog {
    max-width: 440px !important;
    width: 92% !important;
    background: #ffffff !important;
    border-radius: 12px !important;
    box-shadow: 0 25px 60px rgba(0, 0, 0, 0.25) !important;
    overflow: hidden !important;
    border: 1px solid rgba(255, 255, 255, 0.2) !important;
    animation: thModalSlideDown 0.28s cubic-bezier(0.16, 1, 0.3, 1) !important;
}
@keyframes thModalSlideDown {
    from { opacity: 0; transform: translateY(-20px) scale(0.97); }
    to { opacity: 1; transform: translateY(0) scale(1); }
}
.login-modal-header {
    background: linear-gradient(135deg, #22242b 0%, #1a1c22 100%) !important;
    padding: 16px 22px !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    border-bottom: 3px solid #71b238 !important;
}
.login-modal-header h3 {
    margin: 0 !important;
    font-size: 15.5px !important;
    font-weight: 700 !important;
    color: #ffffff !important;
    display: flex !important;
    align-items: center !important;
    gap: 9px !important;
    letter-spacing: 0.2px !important;
}
.login-modal-badge {
    width: 28px;
    height: 28px;
    border-radius: 6px;
    background: rgba(113, 178, 56, 0.15);
    color: #71b238;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 13px;
}
.login-modal-close {
    background: rgba(255, 255, 255, 0.1) !important;
    border: none !important;
    font-size: 20px !important;
    color: #cbd5e1 !important;
    cursor: pointer !important;
    line-height: 1 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 28px !important;
    height: 28px !important;
    border-radius: 50% !important;
    transition: all 0.2s ease !important;
}
.login-modal-close:hover {
    color: #ffffff !important;
    background-color: #ef4444 !important;
    transform: rotate(90deg);
}
.login-modal-body {
    background: #ffffff !important;
    padding: 24px 26px 18px !important;
    box-sizing: border-box !important;
}
.form-group-modal {
    margin-bottom: 16px !important;
    text-align: left !important;
}
.form-group-modal label {
    display: block !important;
    font-size: 12.5px !important;
    font-weight: 600 !important;
    color: #334155 !important;
    margin-bottom: 6px !important;
}
.form-control-modal {
    width: 100% !important;
    box-sizing: border-box !important;
    padding: 10px 14px !important;
    border: 1px solid #cbd5e1 !important;
    border-radius: 6px !important;
    background: #f8fafc !important;
    color: #1e293b !important;
    font-size: 13.5px !important;
    outline: none !important;
    transition: all 0.2s ease !important;
}
.form-control-modal:focus {
    background: #ffffff !important;
    border-color: #71b238 !important;
    box-shadow: 0 0 0 3px rgba(113, 178, 56, 0.22) !important;
}
.modal-remember-wrap {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    cursor: pointer !important;
    font-size: 12.5px !important;
    color: #475569 !important;
    user-select: none !important;
}
.modal-remember-wrap input {
    width: 16px !important;
    height: 16px !important;
    margin: 0 !important;
    cursor: pointer !important;
    accent-color: #71b238 !important;
}
.btn-modal-auth {
    background: #71b238 !important;
    background: linear-gradient(135deg, #71b238 0%, #5d972c 100%) !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 6px !important;
    font-size: 13.5px !important;
    font-weight: 700 !important;
    padding: 10px 22px !important;
    cursor: pointer !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    transition: all 0.2s ease !important;
    box-shadow: 0 3px 8px rgba(113, 178, 56, 0.35) !important;
}
.btn-modal-auth:hover {
    background: #5d972c !important;
    box-shadow: 0 4px 14px rgba(113, 178, 56, 0.45) !important;
    transform: translateY(-1px);
}
.login-modal-footer {
    border-top: 1px solid #f1f5f9 !important;
    padding: 14px 26px 18px !important;
    background: #f8fafc !important;
}
.login-modal-subactions {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 10px !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}
.btn-modal-subaction {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 7px !important;
    padding: 8px 12px !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    border-radius: 6px !important;
    text-decoration: none !important;
    transition: all 0.2s ease !important;
    line-height: 1.3 !important;
    white-space: nowrap !important;
}
.btn-modal-subaction.btn-register {
    background: rgba(113, 178, 56, 0.08) !important;
    border: 1px solid rgba(113, 178, 56, 0.35) !important;
    color: #3f6e1b !important;
}
.btn-modal-subaction.btn-register:hover {
    background: #71b238 !important;
    border-color: #71b238 !important;
    color: #ffffff !important;
    box-shadow: 0 2px 8px rgba(113, 178, 56, 0.3) !important;
    transform: translateY(-1px);
}
.btn-modal-subaction.btn-forgot {
    background: #ffffff !important;
    border: 1px solid #cbd5e1 !important;
    color: #475569 !important;
}
.btn-modal-subaction.btn-forgot:hover {
    background: #334155 !important;
    border-color: #334155 !important;
    color: #ffffff !important;
    box-shadow: 0 2px 8px rgba(51, 65, 85, 0.25) !important;
    transform: translateY(-1px);
}
@media (max-width: 480px) {
    .login-modal-subactions {
        grid-template-columns: 1fr !important;
    }
}

/* ==========================================================================
   Unified Premium Footer Bottom & Legal Disclaimer Bar
   ========================================================================== */
.footer-bottom-unified {
    background: #181a1f;
    border-top: 1px solid rgba(255, 255, 255, 0.08);
    padding: 22px 0 24px 0;
    color: #94a3b8;
    font-size: 13px;
    line-height: 1.5;
    position: relative;
    z-index: 5;
}
.footer-bottom-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 16px;
}
.footer-copyright-text {
    font-size: 13.5px;
    color: #94a3b8;
    letter-spacing: 0.15px;
    line-height: 1.7;
    margin: 0;
}
.copyright-content {
    display: inline;
}
.footer-shield-badge {
    color: #49a32b;
    font-size: 14px;
    margin-right: 5px;
    display: inline-block;
    vertical-align: middle;
}
.brand-pill-highlight {
    color: #ffffff !important;
    font-weight: 800;
    background: rgba(73, 163, 43, 0.22);
    border: 1px solid rgba(73, 163, 43, 0.45);
    padding: 2px 8px;
    border-radius: 6px;
    letter-spacing: 0.25px;
    box-shadow: 0 0 10px rgba(73, 163, 43, 0.2);
    display: inline-block;
    text-decoration: none !important;
    transition: all 0.25s ease;
    cursor: pointer;
}
.brand-pill-highlight:hover {
    color: #ffffff !important;
    background: rgba(73, 163, 43, 0.4);
    border-color: rgba(73, 163, 43, 0.8);
    box-shadow: 0 0 15px rgba(73, 163, 43, 0.45);
    transform: translateY(-1px);
}
.company-pill-highlight {
    color: #ffffff !important;
    font-weight: 800;
    background: rgba(14, 165, 233, 0.18);
    border: 1px solid rgba(14, 165, 233, 0.45);
    padding: 2px 8px;
    border-radius: 6px;
    letter-spacing: 0.25px;
    box-shadow: 0 0 10px rgba(14, 165, 233, 0.2);
    display: inline-block;
    text-decoration: none !important;
    transition: all 0.25s ease;
    cursor: pointer;
}
.company-pill-highlight:hover {
    color: #ffffff !important;
    background: rgba(14, 165, 233, 0.35);
    border-color: rgba(14, 165, 233, 0.8);
    box-shadow: 0 0 15px rgba(14, 165, 233, 0.45);
    transform: translateY(-1px);
}
.footer-bottom-actions {
    display: flex;
    align-items: center;
}
.footer-dynamic-admin-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 7px 16px;
    font-size: 12.5px;
    font-weight: 700;
    color: #fef3c7 !important;
    background: linear-gradient(135deg, rgba(217, 119, 6, 0.2) 0%, rgba(180, 83, 9, 0.3) 100%);
    border: 1px solid rgba(245, 158, 11, 0.45);
    border-radius: 24px;
    text-decoration: none !important;
    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
    backdrop-filter: blur(6px);
    box-shadow: 0 2px 10px rgba(217, 119, 6, 0.2);
}
.footer-dynamic-admin-btn i {
    color: #fbbf24;
    font-size: 13px;
    transition: transform 0.25s ease;
}
.footer-dynamic-admin-btn:hover {
    background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);
    border-color: #fbbf24;
    color: #0f172a !important;
    box-shadow: 0 4px 18px rgba(245, 158, 11, 0.45);
    transform: translateY(-2px);
}
.footer-dynamic-admin-btn:hover i {
    color: #0f172a;
    transform: scale(1.1);
}
.footer-dynamic-admin-btn .admin-btn-arrow {
    font-size: 11px;
    transition: transform 0.2s ease;
}
.footer-dynamic-admin-btn:hover .admin-btn-arrow {
    transform: translateX(4px);
}
.admin-pulse-wrap {
    position: relative;
    width: 8px;
    height: 8px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-right: 2px;
}
.admin-pulse-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #22c55e;
    position: absolute;
}
.admin-pulse-ring {
    width: 13px;
    height: 13px;
    border-radius: 50%;
    background: rgba(34, 197, 94, 0.5);
    position: absolute;
    animation: adminPulse 1.8s cubic-bezier(0.4, 0, 0.6, 1) infinite;
}
@keyframes adminPulse {
    0% { transform: scale(0.7); opacity: 1; }
    100% { transform: scale(2.2); opacity: 0; }
}
.footer-legal-divider {
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.08) 15%, rgba(255, 255, 255, 0.08) 85%, transparent);
    margin: 16px 0 18px 0;
}
.footer-legal-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 28px;
}
.footer-legal-disclaimer {
    margin: 0;
    flex: 1;
    font-size: 11px;
    line-height: 1.65;
    color: #838e9d;
    text-align: justify;
}
.footer-legal-row .anpc-badges-wrap {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-shrink: 0;
}
.anpc-badge-link {
    display: inline-block;
    border-radius: 6px;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, 0.12);
    background: #ffffff;
    padding: 2px;
    transition: all 0.2s ease;
    line-height: 0;
}
.anpc-badge-link img {
    display: block;
    height: 36px;
    width: auto;
    max-width: 155px;
    border-radius: 4px;
    object-fit: contain;
}
.anpc-badge-link:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.35);
    border-color: rgba(113, 178, 56, 0.6);
}

@media (max-width: 991px) {
    .footer-legal-row {
        flex-direction: column;
        align-items: flex-start;
        gap: 16px;
    }
    .footer-legal-disclaimer {
        text-align: left;
    }
    .footer-legal-row .anpc-badges-wrap {
        width: 100%;
        justify-content: flex-start;
    }
}

@media (max-width: 768px) {
    .footer-bottom-unified {
        padding: 20px 0 24px 0;
    }
    .footer-bottom-row {
        flex-direction: column !important;
        align-items: center !important;
        text-align: center !important;
        gap: 14px !important;
    }
    .footer-copyright-text {
        display: block !important;
        text-align: center !important;
        font-size: 12.5px !important;
        line-height: 1.85 !important;
        max-width: 100% !important;
        margin: 0 auto !important;
        padding: 0 6px !important;
    }
    .copyright-content {
        display: inline !important;
    }
    .footer-shield-badge {
        font-size: 13px !important;
        margin-right: 4px !important;
        display: inline-block !important;
        vertical-align: middle !important;
    }
    .brand-pill-highlight,
    .company-pill-highlight {
        font-size: 12px !important;
        padding: 2px 7px !important;
        margin: 2px 2px !important;
        display: inline-block !important;
        vertical-align: middle !important;
    }
    .footer-bottom-actions {
        width: 100% !important;
        display: flex !important;
        justify-content: center !important;
        margin-top: 4px !important;
    }
    .footer-dynamic-admin-btn {
        width: auto !important;
        max-width: 90% !important;
        justify-content: center !important;
        padding: 8px 18px !important;
        font-size: 12.5px !important;
    }
    .footer-legal-row .anpc-badges-wrap {
        justify-content: center;
        flex-wrap: wrap;
    }
}

/* --- Mobile Nav Drawer Left Alignment & Linearity Fix --- */
.mobile-nav-list li a {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 12px !important;
    text-align: left !important;
}
.mobile-nav-list li a.mobile-dropdown-toggle {
    justify-content: space-between !important;
}
.mobile-dropdown-toggle span {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    text-align: left !important;
}
.mobile-dropdown-toggle span i {
    margin-right: 0 !important;
    width: 20px !important;
    min-width: 20px !important;
    text-align: center !important;
    flex-shrink: 0 !important;
}
.mobile-dropdown-toggle i.fa-chevron-down {
    margin-left: auto !important;
    margin-right: 0 !important;
    flex-shrink: 0 !important;
}
.mobile-submenu li a {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 12px !important;
    padding: 12px 20px 12px 40px !important;
    text-align: left !important;
}
.mobile-submenu li a span {
    text-align: left !important;
    flex: 1 1 auto !important;
}
.mobile-submenu li a i {
    width: 20px !important;
    min-width: 20px !important;
    text-align: center !important;
    margin-right: 0 !important;
    flex-shrink: 0 !important;
}

/* ================= 12. BLOG INTERACTIVE BUTTONS & ACTIONS ================= */
.article-actions-bar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 18px;
    padding: 22px 28px;
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.04);
    margin: 40px 0 50px;
    transition: all 0.3s ease;
}
.article-actions-bar:hover {
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.07);
    border-color: #cbd5e1;
}

/* Back Button */
.blog-btn-back {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 10px 22px;
    background: #f8fafc;
    color: #1e293b !important;
    border: 1px solid #cbd5e1;
    border-radius: 50px;
    font-size: 13px;
    font-weight: 700;
    text-decoration: none !important;
    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
    cursor: pointer;
}
.blog-btn-back i {
    color: var(--theme-green, #61a629);
    font-size: 13px;
    transition: transform 0.25s cubic-bezier(0.4, 0, 0.2, 1), color 0.25s ease;
}
.blog-btn-back:hover {
    background: var(--theme-green, #61a629);
    border-color: var(--theme-green, #61a629);
    color: #ffffff !important;
    transform: translateY(-2px);
    box-shadow: 0 6px 18px rgba(97, 166, 41, 0.3);
}
.blog-btn-back:hover i {
    transform: translateX(-5px);
    color: #ffffff;
}
.blog-btn-back:active {
    transform: translateY(0) scale(0.97);
}

/* Quick Copy Pill in Article Header */
.blog-quick-copy-pill {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 4px 12px;
    background: #f1f5f9;
    color: #475569;
    border: 1px solid #e2e8f0;
    border-radius: 20px;
    font-size: 11px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s ease;
}
.blog-quick-copy-pill:hover {
    background: #e2e8f0;
    color: #0f172a;
    transform: translateY(-1px);
}
.blog-quick-copy-pill.copied {
    background: #10b981 !important;
    border-color: #10b981 !important;
    color: #ffffff !important;
}

/* Share Group */
.article-share-group {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 12px;
}
.share-group-label {
    font-size: 12px;
    font-weight: 700;
    color: #64748b;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    display: inline-flex;
    align-items: center;
    gap: 7px;
}
.share-group-label i {
    color: var(--theme-green, #61a629);
    font-size: 13px;
}
.share-buttons-list {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
}

/* Individual Share Buttons */
.blog-share-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    padding: 9px 15px;
    border-radius: 8px;
    font-size: 12px;
    font-weight: 600;
    text-decoration: none !important;
    border: 1px solid transparent;
    cursor: pointer;
    line-height: 1;
    transition: all 0.22s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
    user-select: none;
}
.blog-share-btn i {
    font-size: 13px;
    transition: transform 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}
.blog-share-btn:hover {
    transform: translateY(-2px);
}
.blog-share-btn:hover i {
    transform: scale(1.15);
}
.blog-share-btn:active {
    transform: translateY(0) scale(0.96);
}

/* Platforms */
.share-facebook {
    background: #1877f2;
    color: #ffffff !important;
    border-color: #1877f2;
}
.share-facebook:hover {
    background: #1464cc;
    border-color: #1464cc;
    box-shadow: 0 5px 15px rgba(24, 119, 242, 0.35);
}

.share-x {
    background: #0f1419;
    color: #ffffff !important;
    border-color: #0f1419;
}
.share-x:hover {
    background: #000000;
    border-color: #000000;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.35);
}

.share-whatsapp {
    background: #25D366;
    color: #ffffff !important;
    border-color: #25D366;
}
.share-whatsapp:hover {
    background: #1eb857;
    border-color: #1eb857;
    box-shadow: 0 5px 15px rgba(37, 211, 102, 0.35);
}

.share-linkedin {
    background: #0a66c2;
    color: #ffffff !important;
    border-color: #0a66c2;
}
.share-linkedin:hover {
    background: #084e96;
    border-color: #084e96;
    box-shadow: 0 5px 15px rgba(10, 102, 194, 0.35);
}

.share-copy {
    background: #f8fafc;
    color: #334155 !important;
    border-color: #cbd5e1;
}
.share-copy:hover {
    background: #f1f5f9;
    color: #0f172a !important;
    border-color: #94a3b8;
    box-shadow: 0 5px 15px rgba(100, 116, 139, 0.2);
}
.share-copy.copied {
    background: #10b981 !important;
    border-color: #10b981 !important;
    color: #ffffff !important;
    box-shadow: 0 5px 15px rgba(16, 185, 129, 0.35) !important;
}

/* Quick Share Buttons on Blog Cards */
.blog-card-footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
    padding-top: 16px;
    margin-top: auto;
    border-top: 1px solid #f1f5f9;
}
.blog-btn-readmore {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 16px;
    background: #f8fafc;
    color: #1e293b !important;
    border: 1px solid #e2e8f0;
    border-radius: 6px;
    font-size: 12px;
    font-weight: 700;
    text-decoration: none !important;
    transition: all 0.22s ease;
}
.blog-btn-readmore i {
    color: var(--theme-green, #61a629);
    font-size: 11px;
    transition: transform 0.22s ease, color 0.22s ease;
}
.blog-btn-readmore:hover {
    background: var(--theme-green, #61a629);
    border-color: var(--theme-green, #61a629);
    color: #ffffff !important;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(97, 166, 41, 0.25);
}
.blog-btn-readmore:hover i {
    transform: translateX(4px);
    color: #ffffff;
}

.blog-card-quick-share {
    display: flex;
    align-items: center;
    gap: 6px;
}
.blog-card-quick-share .blog-share-icon-btn {
    width: 32px;
    height: 32px;
    padding: 0;
    border-radius: 6px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    border: 1px solid #e2e8f0;
    cursor: pointer;
    transition: all 0.2s ease;
    text-decoration: none !important;
    background: #f8fafc;
    color: #64748b !important;
}
.blog-card-quick-share .blog-share-icon-btn:hover {
    transform: translateY(-2px);
}
.blog-card-quick-share .blog-share-icon-btn.fb:hover {
    background: #1877f2;
    border-color: #1877f2;
    color: #ffffff !important;
    box-shadow: 0 4px 10px rgba(24, 119, 242, 0.3);
}
.blog-card-quick-share .blog-share-icon-btn.wa:hover {
    background: #25D366;
    border-color: #25D366;
    color: #ffffff !important;
    box-shadow: 0 4px 10px rgba(37, 211, 102, 0.3);
}
.blog-card-quick-share .blog-share-icon-btn.cp:hover {
    background: #0f172a;
    border-color: #0f172a;
    color: #ffffff !important;
    box-shadow: 0 4px 10px rgba(15, 23, 42, 0.3);
}
.blog-card-quick-share .blog-share-icon-btn.copied {
    background: #10b981 !important;
    border-color: #10b981 !important;
    color: #ffffff !important;
}

/* Blog Cards Modern Hover */
.blog-card {
    border-radius: 8px !important;
    transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.3s cubic-bezier(0.4, 0, 0.2, 1), border-color 0.3s ease !important;
}
.blog-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 14px 30px rgba(0, 0, 0, 0.08) !important;
    border-color: #cbd5e1 !important;
}
.blog-card:hover .blog-card-img img {
    transform: scale(1.05);
}

/* Search Bar in Blog */
.blog-search-form {
    display: flex;
    gap: 8px;
    background: #ffffff;
    border: 2px solid #e2e8f0;
    padding: 6px;
    border-radius: 50px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.03);
    transition: all 0.25s ease;
}
.blog-search-form:focus-within {
    border-color: var(--theme-green, #61a629);
    box-shadow: 0 6px 20px rgba(97, 166, 41, 0.15);
}
.blog-search-input {
    flex: 1;
    background: transparent;
    border: none;
    color: #1e293b;
    padding: 10px 18px;
    outline: none;
    font-size: 13px;
    font-weight: 500;
}
.blog-search-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: var(--theme-green, #61a629);
    color: #ffffff !important;
    border: none;
    padding: 10px 22px;
    border-radius: 50px;
    font-size: 13px;
    font-weight: 700;
    cursor: pointer;
    transition: all 0.22s ease;
}
.blog-search-btn:hover {
    background: #528f20;
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(97, 166, 41, 0.3);
}
.blog-search-btn:active {
    transform: translateY(0);
}

/* Pagination in Blog */
.blog-pagination {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
    margin-bottom: 40px;
}
.blog-page-btn {
    padding: 9px 18px;
    border-radius: 8px;
    font-weight: 700;
    font-size: 13px;
    background: #ffffff;
    color: #475569 !important;
    border: 1px solid #cbd5e1;
    text-decoration: none !important;
    transition: all 0.22s ease;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 42px;
}
.blog-page-btn:hover {
    border-color: var(--theme-green, #61a629);
    color: var(--theme-green, #61a629) !important;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.06);
}
.blog-page-btn.active {
    background: var(--theme-green, #61a629);
    border-color: var(--theme-green, #61a629);
    color: #ffffff !important;
    box-shadow: 0 4px 12px rgba(97, 166, 41, 0.3);
}

/* Floating Toast Notification */
.blog-toast {
    position: fixed;
    bottom: 30px;
    left: 50%;
    transform: translateX(-50%) translateY(100px);
    background: #1e293b;
    color: #ffffff;
    padding: 12px 24px;
    border-radius: 50px;
    font-size: 13px;
    font-weight: 600;
    box-shadow: 0 10px 30px rgba(0,0,0,0.25);
    display: flex;
    align-items: center;
    gap: 10px;
    z-index: 99999;
    opacity: 0;
    pointer-events: none;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    border: 1px solid rgba(255, 255, 255, 0.1);
}
.blog-toast.show {
    transform: translateX(-50%) translateY(0);
    opacity: 1;
    pointer-events: auto;
}
.blog-toast i {
    color: #10b981;
    font-size: 16px;
}

/* Responsive Rules for Mobile (Samsung S23+, iPhone, etc.) */
@media (max-width: 768px) {
    .article-actions-bar {
        flex-direction: column;
        align-items: stretch;
        gap: 16px;
        padding: 20px 16px;
    }
    .blog-btn-back {
        width: 100%;
        justify-content: center;
        padding: 12px 20px;
        font-size: 14px;
    }
    .article-share-group {
        flex-direction: column;
        align-items: stretch;
        gap: 12px;
        width: 100%;
    }
    .share-group-label {
        justify-content: center;
        font-size: 13px;
    }
    .share-buttons-list {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 10px;
        width: 100%;
    }
    .share-buttons-list .share-copy {
        grid-column: span 2;
    }
    .blog-share-btn {
        padding: 12px 14px;
        font-size: 13px;
    }
    .blog-search-form {
        border-radius: 12px;
    }
}

/* ==========================================================================
   Interactive Blog Link Cards (Browsers, External Resources & Action Pills)
   ========================================================================== */
.article-content a {
    color: var(--theme-green, #61a629);
    text-decoration: underline;
    text-underline-offset: 3px;
    font-weight: 600;
    transition: all 0.2s ease;
}

.article-content a:hover {
    color: #49821f;
    text-decoration-thickness: 2px;
}

.article-browser-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: 14px;
    margin: 22px 0 26px;
}

.article-browser-card {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 14px 18px;
    background: #ffffff;
    border: 1.5px solid #e2e8f0;
    border-radius: 12px;
    text-decoration: none !important;
    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.03);
    position: relative;
    overflow: hidden;
    cursor: pointer;
}

.article-browser-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 4px;
    height: 100%;
    background: var(--card-accent, #61a629);
    opacity: 0;
    transition: opacity 0.25s ease;
}

.article-browser-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.08);
    border-color: var(--card-accent, #61a629);
}

.article-browser-card:hover::before {
    opacity: 1;
}

.article-browser-icon {
    width: 44px;
    height: 44px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 22px;
    background: #f8fafc;
    flex-shrink: 0;
    transition: transform 0.25s ease;
}

.article-browser-card:hover .article-browser-icon {
    transform: scale(1.1);
}

.article-browser-info {
    flex: 1;
    min-width: 0;
}

.article-browser-name {
    display: block;
    font-size: 14px;
    font-weight: 700;
    color: #1e293b;
    margin-bottom: 2px;
    line-height: 1.3;
}

.article-browser-hint {
    display: block;
    font-size: 11.5px;
    color: #64748b;
    line-height: 1.3;
}

.article-browser-arrow {
    color: #94a3b8;
    font-size: 13px;
    transition: transform 0.25s ease, color 0.25s ease;
    flex-shrink: 0;
}

.article-browser-card:hover .article-browser-arrow {
    transform: translateX(3px) translateY(-2px);
    color: var(--card-accent, #61a629);
}

/* Browser Specific Accents */
.article-browser-card.browser-chrome { --card-accent: #4285F4; }
.article-browser-card.browser-chrome .article-browser-icon { background: rgba(66, 133, 244, 0.1); color: #4285F4; }

.article-browser-card.browser-firefox { --card-accent: #FF7139; }
.article-browser-card.browser-firefox .article-browser-icon { background: rgba(255, 113, 57, 0.1); color: #FF7139; }

.article-browser-card.browser-safari { --card-accent: #006CFF; }
.article-browser-card.browser-safari .article-browser-icon { background: rgba(0, 108, 255, 0.1); color: #006CFF; }

.article-browser-card.browser-edge { --card-accent: #0078D7; }
.article-browser-card.browser-edge .article-browser-icon { background: rgba(0, 120, 215, 0.1); color: #0078D7; }

/* External Resource Cards (Useful Links) */
.article-resource-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 14px;
    margin: 20px 0 24px;
}

.article-resource-card {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 14px 18px;
    background: #ffffff;
    border: 1.5px solid #e2e8f0;
    border-radius: 12px;
    text-decoration: none !important;
    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.03);
    cursor: pointer;
}

.article-resource-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 10px 25px rgba(97, 166, 41, 0.12);
    border-color: var(--theme-green, #61a629);
}

.article-resource-icon {
    width: 44px;
    height: 44px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    background: rgba(97, 166, 41, 0.09);
    color: var(--theme-green, #61a629);
    flex-shrink: 0;
    transition: transform 0.25s ease, background 0.25s ease, color 0.25s ease;
}

.article-resource-card:hover .article-resource-icon {
    transform: scale(1.1);
    background: var(--theme-green, #61a629);
    color: #ffffff;
}

.article-resource-info {
    flex: 1;
    min-width: 0;
}

.article-resource-title {
    display: block;
    font-size: 14px;
    font-weight: 700;
    color: #1e293b;
    margin-bottom: 2px;
    line-height: 1.3;
}

.article-resource-url {
    display: block;
    font-size: 11.5px;
    color: #64748b;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.article-resource-arrow {
    color: #94a3b8;
    font-size: 13px;
    transition: transform 0.25s ease, color 0.25s ease;
    flex-shrink: 0;
}

.article-resource-card:hover .article-resource-arrow {
    transform: translateX(3px) translateY(-2px);
    color: var(--theme-green, #61a629);
}

/* Standalone Link Pill / Button */
.article-link-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 16px;
    margin: 4px 6px 4px 0;
    background: #f8fafc;
    border: 1px solid #cbd5e1;
    border-radius: 8px;
    font-size: 13px;
    font-weight: 600;
    color: #1e293b !important;
    text-decoration: none !important;
    transition: all 0.2s ease;
}

.article-link-btn:hover {
    background: var(--theme-green, #61a629);
    border-color: var(--theme-green, #61a629);
    color: #ffffff !important;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(97, 166, 41, 0.2);
}

.article-link-btn i {
    font-size: 12px;
    color: var(--theme-green, #61a629);
    transition: color 0.2s ease;
}

.article-link-btn:hover i {
    color: #ffffff;
}

@media (max-width: 640px) {
    .article-browser-grid,
    .article-resource-grid {
        grid-template-columns: 1fr;
        gap: 10px;
        margin: 16px 0 20px;
    }
    .article-browser-card,
    .article-resource-card {
        padding: 12px 14px;
    }
    .article-browser-icon,
    .article-resource-icon {
        width: 38px;
        height: 38px;
        font-size: 18px;
    }
    .article-browser-name,
    .article-resource-title {
        font-size: 13.5px;
    }
    .article-browser-hint,
    .article-resource-url {
        font-size: 11px;
    }
}

/* ==========================================================================
   PORTAL CLIENÈšI PROMINENT HIGHLIGHT IN FOOTER USEFUL LINKS
   ========================================================================== */
.menu-useful-links li a.link-client-portal-highlight {
    background: linear-gradient(135deg, rgba(245, 158, 11, 0.22) 0%, rgba(217, 119, 6, 0.32) 100%) !important;
    border: 1.5px solid rgba(245, 158, 11, 0.65) !important;
    box-shadow: 0 2px 10px rgba(245, 158, 11, 0.22), inset 0 0 14px rgba(245, 158, 11, 0.1) !important;
    position: relative;
    overflow: visible;
}
.menu-useful-links li a.link-client-portal-highlight .ul-ico {
    background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%) !important;
    border-color: #fbbf24 !important;
    box-shadow: 0 2px 8px rgba(217, 119, 6, 0.4) !important;
}
.menu-useful-links li a.link-client-portal-highlight .ul-ico i {
    color: #0f172a !important;
    font-size: 13px !important;
    text-shadow: none !important;
}
.menu-useful-links li a.link-client-portal-highlight .ul-txt {
    color: #fef3c7 !important;
    font-weight: 700 !important;
    letter-spacing: 0.2px;
}
.menu-useful-links li a.link-client-portal-highlight .portal-pulse-indicator {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-left: auto;
    width: 8px;
    height: 8px;
    position: relative;
    flex-shrink: 0;
}
.menu-useful-links li a.link-client-portal-highlight .portal-pulse-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #22c55e;
    box-shadow: 0 0 8px #22c55e;
    animation: portalPulseGlow 1.8s infinite;
}
.menu-useful-links li a.link-client-portal-highlight .portal-btn-arrow {
    font-size: 10px;
    color: #fbbf24;
    margin-left: 4px;
    transition: transform 0.2s ease;
    flex-shrink: 0;
}
.menu-useful-links li a.link-client-portal-highlight:hover {
    background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%) !important;
    border-color: #fbbf24 !important;
    transform: translateY(-2px);
    box-shadow: 0 4px 20px rgba(245, 158, 11, 0.5) !important;
}
.menu-useful-links li a.link-client-portal-highlight:hover .ul-ico {
    background: #ffffff !important;
    border-color: #ffffff !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2) !important;
}
.menu-useful-links li a.link-client-portal-highlight:hover .ul-ico i {
    color: #d97706 !important;
}
.menu-useful-links li a.link-client-portal-highlight:hover .ul-txt {
    color: #0f172a !important;
}
.menu-useful-links li a.link-client-portal-highlight:hover .portal-btn-arrow {
    color: #0f172a !important;
    transform: translateX(3px);
}
@keyframes portalPulseGlow {
    0% { transform: scale(0.95); box-shadow: 0 0 0 0 rgba(34, 197, 94, 0.7); }
    70% { transform: scale(1.15); box-shadow: 0 0 0 6px rgba(34, 197, 94, 0); }
    100% { transform: scale(0.95); box-shadow: 0 0 0 0 rgba(34, 197, 94, 0); }
}

/* ==========================================================================
   HOMEPAGE "DE CE TICKETHELP.RO?" INTERACTIVE SECTION & CARDS
   ========================================================================== */
.why-header-modern {
    margin-bottom: 40px !important;
}
.why-top-intro-pill {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(113, 178, 56, 0.12);
    border: 1px solid rgba(113, 178, 56, 0.3);
    padding: 6px 16px;
    border-radius: 20px;
    margin-bottom: 18px;
}
.why-pill-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--theme-green, #61a629);
    box-shadow: 0 0 8px rgba(113, 178, 56, 0.6);
    animation: portalPulseGlow 2s infinite;
}
.why-pill-text {
    font-size: 13px;
    font-weight: 700;
    color: #2e7d32;
    letter-spacing: 0.5px;
    text-transform: uppercase;
}
.why-main-subtitle {
    font-size: 14.5px !important;
    color: #64748b !important;
    line-height: 1.75 !important;
    max-width: 850px !important;
    margin: 0 auto 16px !important;
}
.why-main-title {
    font-size: 34px !important;
    font-weight: 800 !important;
    color: #0f172a !important;
    letter-spacing: -0.5px !important;
    margin: 8px auto 14px !important;
}
.why-main-intro {
    font-size: 16px !important;
    color: #475569 !important;
    max-width: 820px !important;
    line-height: 1.65 !important;
    margin: 0 auto !important;
}

/* 3 Cards Grid */
.why-interactive-cards-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 28px;
    margin: 45px 0 35px;
    text-align: left;
}
.why-card-item {
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 18px;
    padding: 34px 28px 28px;
    box-shadow: 0 4px 20px -2px rgba(15, 23, 42, 0.06), 0 2px 6px -1px rgba(15, 23, 42, 0.04);
    position: relative;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1);
    cursor: default;
}
.why-card-item::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    transition: height 0.3s ease;
}
.why-card-item.card-theme-green::before,
.why-card-item.card-accent-green::before {
    background: linear-gradient(90deg, #61a629, #82c83b);
}
.why-card-item.card-theme-slate::before,
.why-card-item.card-accent-blue::before {
    background: linear-gradient(90deg, #1e293b, #475569);
}
.why-card-item.card-theme-amber::before,
.why-card-item.card-accent-purple::before {
    background: linear-gradient(90deg, #f59e0b, #d97706);
}

.why-card-top-tag {
    display: flex;
    justify-content: flex-end;
    margin-bottom: 16px;
}
.why-tag-badge {
    font-size: 11px;
    font-weight: 700;
    padding: 4px 10px;
    border-radius: 12px;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    text-transform: uppercase;
    letter-spacing: 0.4px;
}
.card-theme-green .why-tag-badge,
.card-accent-green .why-tag-badge {
    background: rgba(97, 166, 41, 0.09);
    color: #387317;
    border: 1px solid rgba(97, 166, 41, 0.25);
}
.card-theme-slate .why-tag-badge,
.card-accent-blue .why-tag-badge {
    background: rgba(30, 41, 59, 0.07);
    color: #1e293b;
    border: 1px solid rgba(30, 41, 59, 0.2);
}
.card-theme-amber .why-tag-badge,
.card-accent-purple .why-tag-badge {
    background: rgba(245, 158, 11, 0.1);
    color: #b45309;
    border: 1px solid rgba(245, 158, 11, 0.25);
}

.why-card-icon-wrap {
    margin-bottom: 22px;
}
.why-icon-bubble {
    width: 68px;
    height: 68px;
    border-radius: 18px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: all 0.35s cubic-bezier(0.34, 1.56, 0.64, 1);
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.06);
}
.card-theme-green .why-icon-bubble,
.card-accent-green .why-icon-bubble {
    background: linear-gradient(135deg, rgba(97, 166, 41, 0.12) 0%, rgba(97, 166, 41, 0.22) 100%);
    border: 1px solid rgba(97, 166, 41, 0.35);
}
.card-theme-green .why-icon-bubble i,
.card-accent-green .why-icon-bubble i {
    color: #49821f !important;
    font-size: 30px !important;
}
.card-theme-slate .why-icon-bubble,
.card-accent-blue .why-icon-bubble {
    background: linear-gradient(135deg, rgba(30, 41, 59, 0.08) 0%, rgba(30, 41, 59, 0.16) 100%);
    border: 1px solid rgba(30, 41, 59, 0.25);
}
.card-theme-slate .why-icon-bubble i,
.card-accent-blue .why-icon-bubble i {
    color: #1e293b !important;
    font-size: 30px !important;
}
.card-theme-amber .why-icon-bubble,
.card-accent-purple .why-icon-bubble {
    background: linear-gradient(135deg, rgba(245, 158, 11, 0.12) 0%, rgba(217, 119, 6, 0.2) 100%);
    border: 1px solid rgba(245, 158, 11, 0.32);
}
.card-theme-amber .why-icon-bubble i,
.card-accent-purple .why-icon-bubble i {
    color: #d97706 !important;
    font-size: 30px !important;
}

.why-card-body {
    flex: 1;
}
.why-card-title {
    font-size: 19px !important;
    font-weight: 700 !important;
    color: #0f172a !important;
    margin-bottom: 12px !important;
    letter-spacing: -0.2px !important;
    text-transform: none !important;
}
.why-card-desc {
    font-size: 14px !important;
    color: #475569 !important;
    line-height: 1.65 !important;
    margin-bottom: 22px !important;
}

.why-card-features-list {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    padding-top: 18px;
    border-top: 1px dashed #e2e8f0;
}
.why-feat-pill {
    font-size: 12px;
    font-weight: 600;
    color: #334155;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    padding: 4px 10px;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    transition: all 0.2s ease;
}
.card-theme-green .why-feat-pill i,
.card-accent-green .why-feat-pill i { color: #61a629; }
.card-theme-slate .why-feat-pill i,
.card-accent-blue .why-feat-pill i { color: #334155; }
.card-theme-amber .why-feat-pill i,
.card-accent-purple .why-feat-pill i { color: #d97706; }

/* Interactive Hover States */
.why-card-item:hover {
    transform: translateY(-8px);
    box-shadow: 0 20px 35px -10px rgba(15, 23, 42, 0.12), 0 8px 16px -6px rgba(15, 23, 42, 0.08);
}
.why-card-item:hover::before {
    height: 6px;
}
.why-card-item:hover .why-icon-bubble {
    transform: scale(1.12) rotate(4deg);
}
.card-theme-green:hover,
.card-accent-green:hover {
    border-color: rgba(97, 166, 41, 0.45);
    box-shadow: 0 20px 35px -10px rgba(97, 166, 41, 0.18), 0 8px 16px -6px rgba(15, 23, 42, 0.06);
}
.card-theme-slate:hover,
.card-accent-blue:hover {
    border-color: rgba(30, 41, 59, 0.4);
    box-shadow: 0 20px 35px -10px rgba(15, 23, 42, 0.14), 0 8px 16px -6px rgba(15, 23, 42, 0.06);
}
.card-theme-amber:hover,
.card-accent-purple:hover {
    border-color: rgba(245, 158, 11, 0.45);
    box-shadow: 0 20px 35px -10px rgba(217, 119, 6, 0.18), 0 8px 16px -6px rgba(15, 23, 42, 0.06);
}

.why-card-item:hover .why-feat-pill {
    background: #ffffff;
    border-color: #cbd5e1;
    transform: translateY(-1px);
}

/* Bottom Infrastructure CTA Banner */
.why-bottom-cta-banner {
    margin-top: 25px;
    background: linear-gradient(135deg, #0f172a 0%, #1e293b 100%);
    border: 1px solid rgba(113, 178, 56, 0.35);
    border-radius: 18px;
    padding: 30px 36px;
    box-shadow: 0 16px 36px -10px rgba(15, 23, 42, 0.25);
    text-align: left;
    position: relative;
    overflow: hidden;
}
.why-bottom-cta-banner::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    width: 350px;
    background: radial-gradient(circle at 100% 50%, rgba(113, 178, 56, 0.15) 0%, transparent 70%);
    pointer-events: none;
}
.why-cta-inner {
    display: flex;
    align-items: center;
    gap: 28px;
    position: relative;
    z-index: 2;
}
.why-cta-icon-box {
    width: 60px;
    height: 60px;
    border-radius: 16px;
    background: rgba(113, 178, 56, 0.15);
    border: 1.5px solid rgba(113, 178, 56, 0.4);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}
.why-cta-icon-box i {
    font-size: 26px;
    color: #4ade80;
}
.why-cta-text-content {
    flex: 1;
}
.why-cta-headline {
    font-size: 18px;
    font-weight: 700;
    color: #ffffff;
    margin-bottom: 6px;
    letter-spacing: -0.2px;
}
.why-cta-paragraph {
    font-size: 13.5px;
    color: #cbd5e1;
    line-height: 1.6;
    margin: 0;
}
.why-cta-action {
    flex-shrink: 0;
}
.why-btn-primary {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background: linear-gradient(135deg, #22c55e 0%, #16a34a 100%);
    color: #ffffff !important;
    font-size: 14.5px;
    font-weight: 700;
    padding: 13px 26px;
    border-radius: 30px;
    text-decoration: none !important;
    border: 1px solid rgba(255, 255, 255, 0.2);
    box-shadow: 0 4px 16px rgba(34, 197, 94, 0.35);
    transition: all 0.25s ease;
    white-space: nowrap;
}
.why-btn-primary .why-btn-arrow {
    font-size: 13px;
    transition: transform 0.25s ease;
}
.why-btn-primary:hover {
    background: linear-gradient(135deg, #16a34a 0%, #15803d 100%);
    transform: translateY(-2px);
    box-shadow: 0 6px 22px rgba(34, 197, 94, 0.5);
    color: #ffffff !important;
}
.why-btn-primary:hover .why-btn-arrow {
    transform: translateX(4px);
}

/* Responsive Breakpoints */
@media (max-width: 991px) {
    .why-interactive-cards-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }
    .why-cta-inner {
        flex-direction: column;
        text-align: center;
        gap: 18px;
    }
    .why-cta-headline {
        font-size: 17px;
    }
    .why-cta-paragraph {
        font-size: 13px;
    }
    .why-cta-action {
        width: 100%;
    }
    .why-btn-primary {
        width: 100%;
        justify-content: center;
        padding: 12px 20px;
    }
    .why-bottom-cta-banner {
        padding: 24px 20px;
    }
}
@media (max-width: 767px) {
    .why-main-title {
        font-size: 26px !important;
    }
    .why-main-subtitle,
    .why-main-intro {
        font-size: 13.5px !important;
    }
    .why-card-item {
        padding: 24px 20px 20px;
    }
    .menu-useful-links li a.link-client-portal-highlight {
        padding: 5px 6px !important;
    }
    .menu-useful-links li a.link-client-portal-highlight .portal-btn-arrow {
        display: none !important;
    }
}

/* ========================================================
   RESPONSIVE ENHANCEMENTS: LOGIN SUBACTIONS & CLIENT PORTAL TOPBARS
   ======================================================== */

/* Login Bottom Subaction Buttons */
.login-subactions-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
}

.login-subaction-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    padding: 9px 10px;
    border-radius: 6px;
    font-size: 12px;
    font-weight: 600;
    text-decoration: none;
    white-space: nowrap;
    line-height: 1.2;
    min-height: 38px;
    box-sizing: border-box;
    transition: all 0.2s ease;
}

.login-subaction-reg {
    background: rgba(113, 178, 56, 0.08);
    border: 1px solid rgba(113, 178, 56, 0.35);
    color: #3f6e1b;
}

.login-subaction-reg:hover {
    background: rgba(113, 178, 56, 0.15);
    color: #2e5213;
}

.login-subaction-reset {
    background: #ffffff;
    border: 1px solid #cbd5e1;
    color: #475569;
}

.login-subaction-reset:hover {
    background: #f8fafc;
    color: #1e293b;
    border-color: #94a3b8;
}

/* Mobile scaling for login card and buttons (iPhone SE & Samsung S23+) */
@media (max-width: 480px) {
    .login-card {
        padding: 24px 16px !important;
    }
    .login-subactions-grid {
        gap: 8px;
    }
    .login-subaction-btn {
        font-size: 11.5px;
        padding: 8px 6px;
        gap: 5px;
    }
    .login-subaction-btn i {
        font-size: 11px;
    }
}

@media (max-width: 360px) {
    .login-subactions-grid {
        gap: 6px;
    }
    .login-subaction-btn {
        font-size: 10.5px;
        padding: 8px 4px;
        gap: 4px;
    }
}

/* Client Portal Topbars (Services, Domains, Invoices, Tickets) */
.client-list-topbar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
    gap: 12px;
    flex-wrap: wrap;
}

.client-list-search-wrap {
    position: relative;
    width: 100%;
    max-width: 320px;
}

.client-list-action-wrap {
    flex-shrink: 0;
}

.client-list-action-btn {
    background: var(--theme-green, #71b238);
    color: #ffffff !important;
    padding: 8px 16px;
    font-size: 12px;
    font-weight: 700;
    border-radius: 4px;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    white-space: nowrap;
    transition: background 0.2s ease, transform 0.1s ease;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
}

.client-list-action-btn:hover {
    background: #5d952e;
    color: #ffffff !important;
}

/* Mobile Stacking for Topbar on Samsung S23+, iPhone SE & Tablets */
@media (max-width: 640px) {
    .client-list-topbar {
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 12px !important;
    }
    .client-list-search-wrap {
        max-width: 100% !important;
        width: 100% !important;
    }
    .client-list-action-wrap {
        width: 100% !important;
    }
    .client-list-action-btn {
        width: 100% !important;
        justify-content: center !important;
        padding: 10px 16px !important;
        box-sizing: border-box !important;
    }
}

/* ========================================================
   SERVICE & DOMAIN DETAILS OVERVIEW CARD (RESPONSIVE FIX)
   ======================================================== */

.service-overview-card {
    background: #ffffff;
    border: 1px solid #e5e7eb;
    border-radius: 4px;
    padding: 30px 25px;
    margin-bottom: 25px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04);
}

.service-overview-grid {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
}

.service-overview-left {
    flex: 0 0 280px;
    width: 280px;
    max-width: 280px;
    text-align: center;
    padding: 15px 20px 15px 10px;
    border-right: 1px solid #f3f4f6;
    box-sizing: border-box;
    overflow: hidden;
}

.service-overview-right {
    flex: 1;
    min-width: 0;
    padding: 5px 10px;
    box-sizing: border-box;
}

.service-overview-meta-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
    gap: 14px 18px;
    font-size: 13px;
}

.service-domain-wrap {
    margin-top: 12px;
    display: flex;
    justify-content: center;
    width: 100%;
    box-sizing: border-box;
    padding: 0 4px;
}

.service-domain-link {
    color: #0284c7 !important;
    font-size: 13px;
    font-weight: 500;
    text-decoration: none !important;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    max-width: 100%;
    padding: 5px 12px;
    background: #f0f9ff;
    border: 1px solid #bae6fd;
    border-radius: 6px;
    box-sizing: border-box;
    transition: all 0.2s ease;
}

.service-domain-link:hover {
    color: #0369a1 !important;
    background: #e0f2fe;
    border-color: #7dd3fc;
}

.service-domain-link i {
    flex-shrink: 0;
    font-size: 11px;
    color: #0284c7;
}

.service-domain-text {
    word-break: break-all;
    overflow-wrap: anywhere;
    line-height: 1.35;
    text-align: center;
}

/* Stacking for Mobile and Tablets (< 992px) - Samsung S23+, iPhone SE & Desktop Mode */
@media (max-width: 991px) {
    .service-overview-grid {
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 20px !important;
    }
    .service-overview-left {
        flex: 1 1 auto !important;
        width: 100% !important;
        max-width: 100% !important;
        border-right: none !important;
        border-bottom: 1px solid #f1f5f9 !important;
        padding: 10px 0 22px 0 !important;
    }
    .service-overview-right {
        flex: 1 1 auto !important;
        width: 100% !important;
        padding: 0 !important;
    }
    .service-overview-meta-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 12px !important;
    }
}

@media (max-width: 480px) {
    .service-overview-card {
        padding: 18px 14px !important;
    }
    .service-overview-meta-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 8px !important;
    }
    .meta-info-card {
        padding: 10px 8px !important;
    }
    .meta-info-card div[style*="font-size:14px"] {
        font-size: 13px !important;
        word-break: break-word;
    }
    .service-domain-link {
        font-size: 12px;
        padding: 4px 8px;
    }
}

@media (max-width: 360px) {
    .service-overview-meta-grid {
        grid-template-columns: 1fr !important;
    }
}


