/*
 * DirectoryFire Premium Template
 * Compatible with PHP Link Directory Phoenix v5.3 / Smarty frontend variables.
 * This file intentionally overrides BlueTheme styles without removing core phpLD classes.
 */
:root {
    --df-bg: #f8fafc;
    --df-surface: #ffffff;
    --df-surface-2: #f1f5f9;
    --df-text: #0f172a;
    --df-muted: #64748b;
    --df-border: #e2e8f0;
    --df-dark: #111827;
    --df-dark-2: #020617;
    --df-orange: #ff6a16;
    --df-gold: #ffc247;
    --df-red: #e0183f;
    --df-blue: #38bdf8;
    --df-shadow: 0 24px 70px rgba(15, 23, 42, .12);
    --df-soft-shadow: 0 14px 35px rgba(15, 23, 42, .08);
    --df-radius-xl: 32px;
    --df-radius-lg: 24px;
    --df-radius-md: 16px;
    --df-shell: 1180px;
}

html {
    background: var(--df-bg);
    scroll-behavior: smooth;
}

body.df-premium-template {
    min-height: 100vh;
    margin: 0;
    color: var(--df-text);
    background:
        radial-gradient(circle at 8% 0%, rgba(255, 106, 22, .12), transparent 32rem),
        radial-gradient(circle at 88% 3%, rgba(56, 189, 248, .13), transparent 28rem),
        linear-gradient(180deg, #ffffff 0%, var(--df-bg) 34rem, #ffffff 100%);
    font-family: Inter, Tahoma, Arial, sans-serif;
    font-size: 16px !important;
    line-height: 1.65;
    text-align: left;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}

body.df-premium-template * {
    box-sizing: border-box;
}

body.df-premium-template a {
    color: #e8580f;
    font-family: inherit;
    transition: color .2s ease, background .2s ease, border-color .2s ease, transform .2s ease, box-shadow .2s ease;
}

body.df-premium-template a:hover,
body.df-premium-template a:focus {
    color: var(--df-red);
    text-decoration: none;
}

.df-page-glow {
    position: fixed;
    inset: 0;
    pointer-events: none;
    z-index: -1;
    background:
        radial-gradient(circle at 50% -20%, rgba(255, 106, 22, .10), transparent 30rem),
        radial-gradient(circle at 100% 28%, rgba(224, 24, 63, .06), transparent 26rem);
}

.df-wrap,
.wrap {
    width: min(var(--df-shell), calc(100% - 32px)) !important;
    max-width: var(--df-shell);
    margin: 0 auto !important;
}

.df-shell,
.df-premium-template .phpld-wbox {
    width: 100% !important;
    max-width: var(--df-shell);
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Header */
.df-premium-template .masthead,
.df-masthead {
    width: 100% !important;
    height: auto !important;
    min-height: 0;
    margin: 22px auto 0 !important;
    padding: 0 !important;
    position: relative !important;
    overflow: visible;
    background:
        radial-gradient(circle at 14% 8%, rgba(255, 194, 71, .22), transparent 20rem),
        radial-gradient(circle at 92% 8%, rgba(224, 24, 63, .17), transparent 18rem),
        linear-gradient(135deg, var(--df-dark-2) 0%, #111827 55%, #1f2937 100%) !important;
    border: 1px solid rgba(255, 255, 255, .08);
    border-radius: var(--df-radius-xl) !important;
    box-shadow: var(--df-shadow);
}

.df-masthead-shell {
    padding: 16px 18px 18px;
}

.df-topbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 0 6px 14px;
    color: #cbd5e1;
    font-size: 13px;
}

.df-trust-note {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #e5e7eb;
    font-weight: 700;
    letter-spacing: .01em;
}

.df-trust-note:before {
    content: "";
    width: 9px;
    height: 9px;
    border-radius: 999px;
    background: linear-gradient(135deg, var(--df-gold), var(--df-orange), var(--df-red));
    box-shadow: 0 0 0 5px rgba(255, 106, 22, .13);
}

.df-user-panel,
.df-user-panel a {
    color: #cbd5e1 !important;
    font-size: 13px;
}

.df-user-panel a {
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    padding: 4px 10px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .07);
    border: 1px solid rgba(255, 255, 255, .10);
}

.df-user-panel a:hover {
    color: #ffffff !important;
    background: rgba(255, 255, 255, .12);
}

.df-premium-template .header,
.df-header {
    width: 100% !important;
    height: auto !important;
    display: grid;
    grid-template-columns: minmax(260px, 1fr) minmax(320px, .85fr);
    gap: 28px;
    align-items: center;
    margin: 0 !important;
    padding: 18px 18px 20px !important;
    color: #fff;
}

.df-premium-template .headerLogo,
.df-brand-wrap {
    float: none !important;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
}

.df-brand {
    display: inline-flex;
    align-items: center;
    width: min(100%, 470px);
    min-height: 80px;
}

.df-brand-img {
    display: block;
    max-width: 100%;
    height: auto;
    filter: drop-shadow(0 18px 30px rgba(0, 0, 0, .22));
}

.df-brand-subtitle {
    margin: -6px 0 0 204px !important;
    color: #cbd5e1;
    font-size: 14px !important;
    line-height: 1.5;
    letter-spacing: .01em;
}

.df-header-right {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 14px;
    flex-wrap: wrap;
}

.df-search-shell {
    flex: 1 1 330px;
    min-width: min(100%, 330px);
    max-width: 520px;
}

.df-submit-cta,
.df-primary-action,
.df-secondary-action {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    padding: 0 20px;
    border-radius: 999px;
    font-weight: 850;
    letter-spacing: -.01em;
    white-space: nowrap;
}

.df-submit-cta,
.df-primary-action {
    color: #fff !important;
    background: linear-gradient(135deg, var(--df-gold) 0%, var(--df-orange) 45%, var(--df-red) 100%);
    border: 1px solid rgba(255, 255, 255, .18);
    box-shadow: 0 18px 34px rgba(224, 24, 63, .24);
}

.df-submit-cta:hover,
.df-primary-action:hover {
    color: #fff !important;
    transform: translateY(-2px);
    box-shadow: 0 22px 45px rgba(224, 24, 63, .32);
}

.df-secondary-action {
    color: var(--df-text) !important;
    background: #fff;
    border: 1px solid var(--df-border);
    box-shadow: 0 12px 24px rgba(15, 23, 42, .08);
}

.df-secondary-action:hover {
    color: var(--df-red) !important;
    transform: translateY(-2px);
}

/* Header search */
.df-premium-template .headerSearch {
    float: none !important;
    display: block !important;
    margin: 0 !important;
    padding: 8px !important;
    color: var(--df-text) !important;
    background: rgba(255, 255, 255, .10) !important;
    border: 1px solid rgba(255, 255, 255, .14) !important;
    border-radius: 999px !important;
    box-shadow: none !important;
    overflow: visible !important;
}

.df-premium-template form.headerSearch div.phpld-columnar,
.df-premium-template .headerSearch .phpld-columnar {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: nowrap;
    margin: 0 !important;
}

.df-premium-template form.headerSearch .phpld-fbox-text,
.df-premium-template .headerSearch .phpld-fbox-text {
    margin: 0 !important;
    flex: 1 1 auto;
}

.df-premium-template .headerSearch input[type="text"],
.df-premium-template .headerSearch input[type="search"],
.df-premium-template .headerSearch .phpld-fbox-text input,
.df-premium-template .headerSearch select {
    width: 100%;
    min-height: 42px;
    padding: 0 14px;
    color: var(--df-text);
    background: #fff;
    border: 1px solid rgba(255, 255, 255, .25);
    border-radius: 999px;
    outline: none;
    font: 600 14px/1.2 Inter, Arial, sans-serif;
}

.df-premium-template form.headerSearch .phpld-fbox-button,
.df-premium-template .headerSearch .phpld-fbox-button {
    width: auto !important;
    margin: 0 !important;
}

.df-premium-template .headerSearch .phpld-fbox-button .phpld-searchbutton,
.df-premium-template .headerSearch button,
.df-premium-template .headerSearch input[type="submit"] {
    width: auto !important;
    min-width: 46px;
    height: 42px !important;
    min-height: 42px;
    padding: 0 16px !important;
    margin: 0 !important;
    text-indent: 0 !important;
    color: #fff !important;
    background: linear-gradient(135deg, var(--df-orange), var(--df-red)) !important;
    border: 0 !important;
    border-radius: 999px !important;
    font: 850 13px/1 Inter, Arial, sans-serif !important;
    text-transform: uppercase;
    cursor: pointer;
}

.df-premium-template .select2-container,
.df-premium-template .select2-container .select2-choice,
.df-premium-template .select2-container .select2-choice span {
    min-height: 42px !important;
    height: 42px !important;
    line-height: 42px !important;
    background: #fff !important;
    border-color: transparent !important;
    border-radius: 999px !important;
    color: var(--df-text) !important;
    text-shadow: none !important;
}

/* Navigation */
.df-premium-template #nav,
.df-nav {
    position: static !important;
    inset: auto !important;
    width: 100% !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border-radius: 0 !important;
    overflow: visible !important;
}

.df-premium-template #nav .phpld-wbox {
    height: auto !important;
}

.df-premium-template .phpld-hlist {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 58px;
    margin: 0 !important;
    padding: 8px;
    overflow: visible;
    background: rgba(255, 255, 255, .08) !important;
    border: 1px solid rgba(255, 255, 255, .10);
    border-radius: 22px;
    box-shadow: none !important;
    backdrop-filter: blur(16px);
}

.df-premium-template .phpld-hlist ul {
    display: flex !important;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 6px;
    float: none !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

.df-premium-template .phpld-hlist ul li {
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    list-style: none !important;
    background: transparent !important;
}

.df-premium-template .phpld-hlist ul li a,
.df-premium-template .phpld-hlist ul li strong,
.df-premium-template .phpld-hlist ul li a:link,
.df-premium-template .phpld-hlist ul li a:active,
.df-premium-template .phpld-hlist ul li a:visited {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    height: auto !important;
    padding: 0 16px !important;
    color: #e5e7eb !important;
    background: transparent !important;
    border-radius: 999px;
    font: 800 14px/1 Inter, Arial, sans-serif !important;
    text-shadow: none !important;
    text-decoration: none !important;
    white-space: nowrap;
}

.df-premium-template .phpld-hlist ul li a:hover,
.df-premium-template .phpld-hlist ul li:hover > a,
.df-premium-template .phpld-hlist ul li.active a,
.df-premium-template .phpld-hlist ul li.active strong {
    color: #fff !important;
    background: rgba(255, 255, 255, .14) !important;
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .08);
}

.df-premium-template .phpld-hlist ul ul {
    position: absolute !important;
    z-index: 9999;
    min-width: 220px;
    padding: 10px !important;
    margin-top: 8px !important;
    background: #111827 !important;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 18px !important;
    box-shadow: 0 22px 55px rgba(2, 6, 23, .35);
}

.df-premium-template .phpld-hlist ul ul li {
    width: 100%;
    border: 0 !important;
}

.df-premium-template .phpld-hlist ul ul li a {
    width: 100%;
    justify-content: flex-start;
}

/* Hero */
.df-hero {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 28px;
    width: 100%;
    margin: 26px auto 0;
    padding: 34px;
    background:
        linear-gradient(135deg, rgba(255, 255, 255, .96), rgba(255, 255, 255, .86)),
        radial-gradient(circle at 10% 20%, rgba(255, 106, 22, .16), transparent 28rem);
    border: 1px solid rgba(226, 232, 240, .92);
    border-radius: var(--df-radius-xl);
    box-shadow: var(--df-soft-shadow);
}

.df-kicker {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 10px;
    color: var(--df-red);
    font-weight: 900;
    font-size: 13px;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.df-kicker:before {
    content: "";
    width: 36px;
    height: 3px;
    border-radius: 999px;
    background: linear-gradient(90deg, var(--df-blue), var(--df-orange), var(--df-red));
}

.df-hero h1 {
    margin: 0 0 10px !important;
    color: var(--df-text) !important;
    font: 900 clamp(34px, 4.4vw, 62px)/.98 Inter, Arial, sans-serif !important;
    letter-spacing: -.055em;
    text-shadow: none !important;
}

.df-hero p {
    max-width: 760px;
    margin: 0 !important;
    color: var(--df-muted);
    font-size: clamp(16px, 1.35vw, 19px) !important;
    line-height: 1.75;
}

.df-hero-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 12px;
    flex-wrap: wrap;
}

/* Main content */
.df-premium-template .main-content,
.df-main-content {
    width: 100% !important;
    margin: 28px auto 0 !important;
    padding: 26px !important;
    background: rgba(255, 255, 255, .95);
    border: 1px solid rgba(226, 232, 240, .95);
    border-radius: var(--df-radius-xl);
    box-shadow: var(--df-shadow);
}

.df-content-wrapper {
    min-height: 280px;
}

.df-breadcrumbs,
.df-premium-template .path {
    margin: 0 0 18px;
    padding: 12px 16px;
    color: var(--df-muted);
    background: var(--df-surface-2);
    border: 1px solid var(--df-border);
    border-radius: 999px;
    font-size: 13px;
    font-weight: 700;
}

.df-breadcrumbs:empty,
.df-premium-template .path:empty {
    display: none;
}

.df-premium-template h1,
.df-premium-template h2,
.df-premium-template h3,
.df-premium-template h4,
.df-premium-template h5,
.df-premium-template h6 {
    color: var(--df-text);
    font-family: Inter, Arial, sans-serif;
    font-weight: 900;
    letter-spacing: -.035em;
    text-shadow: none !important;
}

.df-premium-template h1,
.df-premium-template .page-title {
    margin: 8px 0 20px !important;
    color: var(--df-text) !important;
    font-size: clamp(30px, 3.2vw, 46px) !important;
    line-height: 1.08 !important;
}

.df-premium-template h2 { font-size: clamp(24px, 2.5vw, 34px) !important; }
.df-premium-template h3 { font-size: clamp(19px, 1.8vw, 25px) !important; }
.df-premium-template p { color: #475569; font-size: 15px !important; line-height: 1.75; }

.df-premium-template .phpld-column {
    display: block !important;
    width: 100%;
    padding-bottom: 0;
}

.df-premium-template .phpld-col1,
.df-premium-template .phpld-col2,
.df-premium-template .phpld-col3 {
    min-height: 1px;
}

.df-premium-template .phpld-cbox,
.df-premium-template .phpld-gbox {
    padding: 0;
}

/* Premium cards for categories, widgets, and listings */
.df-premium-template .box,
.df-premium-template .phpld-widget,
.df-premium-template .phpld-gbox,
.df-premium-template .listing-list-item,
.df-premium-template .list-box,
.df-premium-template .comment,
.df-premium-template fieldset,
.df-premium-template .phpld-form,
.df-premium-template .phpld-cbox > form {
    border-radius: var(--df-radius-lg);
}

.df-premium-template .box,
.df-premium-template .phpld-widget,
.df-premium-template .listing-list-item,
.df-premium-template .listing-style-list .listing-list-item.list-box,
.df-premium-template fieldset {
    background: #fff;
    border: 1px solid var(--df-border);
    box-shadow: 0 12px 30px rgba(15, 23, 42, .06);
}

.df-premium-template .box,
.df-premium-template .phpld-widget {
    padding: 18px;
    margin-bottom: 18px;
}

.df-premium-template .AllCategories,
.df-premium-template ul.boxPopCats,
.df-premium-template .categories,
.df-premium-template .category-list {
    margin-top: 18px !important;
}

.df-premium-template .AllCategories .phpld-grid,
.df-premium-template .AllCategories .phpld-gbox,
.df-premium-template ul.boxPopCats,
.df-premium-template .boxPopCats {
    gap: 16px;
}

.df-premium-template .AllCategories .phpld-gbox,
.df-premium-template ul.boxPopCats li,
.df-premium-template .boxPopCats li {
    position: relative;
    margin: 0 0 16px !important;
    padding: 18px 18px 18px 22px !important;
    background: linear-gradient(180deg, #fff 0%, #fff 60%, #fff7ed 100%);
    border: 1px solid var(--df-border);
    border-radius: 22px;
    box-shadow: 0 14px 28px rgba(15, 23, 42, .06);
    list-style: none !important;
    overflow: hidden;
}

.df-premium-template .AllCategories .phpld-gbox:before,
.df-premium-template ul.boxPopCats li:before,
.df-premium-template .boxPopCats li:before {
    content: "";
    position: absolute;
    top: 18px;
    left: 0;
    width: 4px;
    height: 36px;
    border-radius: 0 999px 999px 0;
    background: linear-gradient(180deg, var(--df-gold), var(--df-orange), var(--df-red));
}

.df-premium-template .AllCategories a,
.df-premium-template ul.boxPopCats li a,
.df-premium-template .boxPopCats li a {
    color: var(--df-text);
    font-weight: 850;
}

.df-premium-template .AllCategories a:hover,
.df-premium-template ul.boxPopCats li a:hover,
.df-premium-template .boxPopCats li a:hover {
    color: var(--df-red);
}

.df-premium-template .AllCategories h2,
.df-premium-template .AllCategories h3,
.df-premium-template .AllCategories h4 {
    display: flex;
    align-items: center;
    gap: 9px;
    margin-top: 0 !important;
}

.df-premium-template .AllCategories h2:before,
.df-premium-template .AllCategories h3:before,
.df-premium-template .AllCategories h4:before {
    content: "";
    flex: 0 0 auto;
    width: 11px;
    height: 11px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--df-gold), var(--df-orange), var(--df-red));
    box-shadow: 0 0 0 5px rgba(255, 106, 22, .10);
}

/* Listings */
.df-premium-template .listing-style-list .phpld-gbox,
.df-premium-template .listing-style-list .listing-list-item,
.df-premium-template .listingsList .phpld-gbox,
.df-premium-template .listingsList ul li {
    margin: 0 0 18px !important;
}

.df-premium-template .listing-style-list .listing-list-item,
.df-premium-template .listingsList .phpld-gbox {
    padding: 20px !important;
    background: #fff;
    border: 1px solid var(--df-border);
    border-radius: var(--df-radius-lg);
    box-shadow: 0 14px 35px rgba(15, 23, 42, .06);
}

.df-premium-template .listing-title,
.df-premium-template a.listing-title,
.df-premium-template .listingsList h3 a,
.df-premium-template .listingsList h4 a {
    color: var(--df-text) !important;
    font-size: clamp(18px, 1.9vw, 24px) !important;
    font-weight: 900 !important;
    letter-spacing: -.035em;
}

.df-premium-template .listing-title:hover,
.df-premium-template a.listing-title:hover,
.df-premium-template .listingsList h3 a:hover,
.df-premium-template .listingsList h4 a:hover {
    color: var(--df-red) !important;
}

.df-premium-template .readMore,
.df-premium-template a.readMore,
.df-premium-template a[title*="Read"],
.df-premium-template .more {
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    padding: 0 12px;
    color: var(--df-red) !important;
    background: #fff1f2;
    border: 1px solid #ffe4e6;
    border-radius: 999px;
    font-weight: 850;
}

.df-premium-template .readMore:hover,
.df-premium-template a.readMore:hover,
.df-premium-template a[title*="Read"]:hover,
.df-premium-template .more:hover {
    background: var(--df-red);
    color: #fff !important;
}

/* Widgets */
.df-premium-template .phpld-widget h1,
.df-premium-template .phpld-widget h2,
.df-premium-template .phpld-widget h3,
.df-premium-template .phpld-widget h4,
.df-premium-template .phpld-widget h5 {
    margin: 0 0 14px !important;
    padding-bottom: 12px;
    border-bottom: 1px solid var(--df-border);
}

.df-premium-template .phpld-widget ul,
.df-premium-template .phpld-widget li {
    margin-left: 0 !important;
    list-style: none !important;
}

.df-premium-template .phpld-widget li {
    padding: 10px 0;
    border-bottom: 1px solid rgba(226, 232, 240, .75);
}

.df-premium-template .phpld-widget li:last-child {
    border-bottom: 0;
}

/* Forms */
.df-premium-template input[type="text"],
.df-premium-template input[type="email"],
.df-premium-template input[type="url"],
.df-premium-template input[type="password"],
.df-premium-template textarea,
.df-premium-template select {
    max-width: 100%;
    color: var(--df-text);
    background: #fff;
    border: 1px solid var(--df-border);
    border-radius: 14px;
    padding: 12px 14px;
    font: 500 15px/1.4 Inter, Arial, sans-serif;
    outline: none;
    transition: border-color .2s ease, box-shadow .2s ease;
}

.df-premium-template input[type="text"]:focus,
.df-premium-template input[type="email"]:focus,
.df-premium-template input[type="url"]:focus,
.df-premium-template input[type="password"]:focus,
.df-premium-template textarea:focus,
.df-premium-template select:focus {
    border-color: rgba(255, 106, 22, .58);
    box-shadow: 0 0 0 4px rgba(255, 106, 22, .12);
}

.df-premium-template input[type="submit"],
.df-premium-template input[type="button"],
.df-premium-template button,
.df-premium-template .phpld-button,
.df-premium-template .phpld-fbox-button input {
    min-height: 44px;
    padding: 0 18px;
    color: #fff !important;
    background: linear-gradient(135deg, var(--df-orange), var(--df-red)) !important;
    border: 0 !important;
    border-radius: 999px !important;
    font: 850 14px/1 Inter, Arial, sans-serif !important;
    cursor: pointer;
    box-shadow: 0 12px 26px rgba(224, 24, 63, .18);
}

.df-premium-template input[type="submit"]:hover,
.df-premium-template input[type="button"]:hover,
.df-premium-template button:hover,
.df-premium-template .phpld-button:hover,
.df-premium-template .phpld-fbox-button input:hover {
    transform: translateY(-1px);
    box-shadow: 0 16px 34px rgba(224, 24, 63, .24);
}

.df-premium-template label,
.df-premium-template .phpld-label {
    color: #334155;
    font-weight: 800;
}

.df-premium-template .error,
.df-premium-template .phpld-error {
    color: var(--df-red);
    font-weight: 800;
}

.df-premium-template .success,
.df-premium-template .phpld-success,
.df-premium-template .message {
    border-radius: var(--df-radius-md);
}

/* Footer */
.df-premium-template .footer,
.df-footer {
    width: 100% !important;
    min-height: 0 !important;
    height: auto !important;
    display: grid !important;
    grid-template-columns: minmax(220px, 1fr) auto minmax(180px, .8fr);
    align-items: center;
    gap: 24px;
    margin: 28px auto 28px !important;
    padding: 22px 24px !important;
    color: #e5e7eb !important;
    background:
        radial-gradient(circle at 10% 0%, rgba(255, 106, 22, .18), transparent 18rem),
        linear-gradient(135deg, var(--df-dark-2), #111827) !important;
    border: 1px solid rgba(255, 255, 255, .08);
    border-radius: var(--df-radius-xl) !important;
    box-shadow: var(--df-shadow);
}

.df-footer a {
    color: #e5e7eb !important;
}

.df-footer a:hover {
    color: var(--df-gold) !important;
}

.df-footer-brand {
    display: flex;
    align-items: center;
    gap: 12px;
    text-align: left;
}

.df-footer-brand img {
    width: 46px;
    height: 46px;
    border-radius: 14px;
}

.df-footer-brand strong,
.df-footer-brand span,
.df-footer-meta span,
.df-footer-meta strong,
.df-footer-meta small {
    display: block;
}

.df-footer-brand strong {
    color: #fff;
    font-size: 17px;
    line-height: 1.2;
}

.df-footer-brand span,
.df-footer-meta span,
.df-footer-meta small {
    color: #94a3b8;
    font-size: 12px;
}

.df-footer-menu {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 8px;
}

.df-footer-menu a {
    display: inline-flex;
    align-items: center;
    min-height: 36px;
    padding: 0 12px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .07);
    font-weight: 800;
    font-size: 13px;
}

.df-footer-meta {
    text-align: right;
}

.df-footer-meta strong {
    color: #fff;
    font-size: 24px;
    line-height: 1.1;
}

/* Compatibility polish */
.df-premium-template .phpld-gray { color: var(--df-muted) !important; }
.df-premium-template .comments { color: var(--df-muted); }
.df-premium-template img { max-width: 100%; height: auto; }
.df-premium-template table { max-width: 100%; border-collapse: collapse; }
.df-premium-template th,
.df-premium-template td { padding: 12px; border-bottom: 1px solid var(--df-border); }
.df-premium-template hr { border-bottom-color: var(--df-border); }

/* Responsive */
@media (max-width: 980px) {
    .df-premium-template .header,
    .df-header,
    .df-hero,
    .df-footer {
        grid-template-columns: 1fr !important;
    }

    .df-header-right,
    .df-hero-actions {
        justify-content: flex-start;
    }

    .df-brand-subtitle {
        margin-left: 0 !important;
    }

    .df-footer-meta {
        text-align: left;
    }
}

@media (max-width: 720px) {
    .df-wrap,
    .wrap {
        width: min(100% - 18px, var(--df-shell)) !important;
    }

    .df-masthead-shell,
    .df-main-content,
    .df-hero,
    .df-footer {
        padding: 18px !important;
        border-radius: 24px !important;
    }

    .df-topbar {
        flex-direction: column;
        align-items: flex-start;
    }

    .df-brand {
        min-height: 62px;
    }

    .df-header-right,
    .df-search-shell,
    .df-submit-cta,
    .df-primary-action,
    .df-secondary-action {
        width: 100%;
    }

    .df-premium-template form.headerSearch div.phpld-columnar,
    .df-premium-template .headerSearch .phpld-columnar {
        flex-wrap: wrap;
    }

    .df-premium-template .headerSearch .phpld-fbox-button,
    .df-premium-template .headerSearch .phpld-fbox-button .phpld-searchbutton {
        width: 100% !important;
    }

    .df-premium-template .phpld-hlist {
        justify-content: flex-start;
        overflow-x: auto;
        padding: 8px;
    }

    .df-premium-template .phpld-hlist ul {
        justify-content: flex-start;
        flex-wrap: nowrap;
        width: max-content;
    }

    .df-hero h1 {
        font-size: clamp(32px, 12vw, 48px) !important;
    }

    .df-footer-menu {
        justify-content: flex-start;
    }
}

/* =======================================================================
   DirectoryFire Premium V2 polish + phpLD compatibility fixes
   Fixes: legacy title bars, category section heading alignment, submit form
   label alignment, and header search GO button overlap.
   ======================================================================= */

body.df-premium-template {
    --df-ring: 0 0 0 4px rgba(255, 106, 22, .13);
}

/* Keep old BlueTheme floated/negative-margin headings from escaping their cards. */
.df-premium-template .phpld-widget h1,
.df-premium-template .phpld-widget h2,
.df-premium-template .phpld-widget h3,
.df-premium-template .phpld-widget h4,
.df-premium-template .phpld-widget h5,
.df-premium-template .box > h1,
.df-premium-template .box > h2,
.df-premium-template .box > h3,
.df-premium-template .box > h4,
.df-premium-template .phpld-cbox > h1,
.df-premium-template .phpld-cbox > h2,
.df-premium-template .phpld-cbox > h3,
.df-premium-template .df-content-column > h1,
.df-premium-template .df-content-column > h2,
.df-premium-template .df-content-column > h3 {
    position: relative !important;
    display: block !important;
    width: auto !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 0 18px !important;
    padding: 0 0 14px 18px !important;
    overflow: visible !important;
    color: var(--df-text) !important;
    background: transparent !important;
    border: 0 !important;
    border-bottom: 1px solid var(--df-border) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    font-family: Inter, Arial, sans-serif !important;
    font-weight: 900 !important;
    font-size: clamp(20px, 2vw, 30px) !important;
    line-height: 1.18 !important;
    letter-spacing: -.04em !important;
    text-align: left !important;
    text-indent: 0 !important;
    text-shadow: none !important;
}

.df-premium-template .phpld-widget h1:before,
.df-premium-template .phpld-widget h2:before,
.df-premium-template .phpld-widget h3:before,
.df-premium-template .phpld-widget h4:before,
.df-premium-template .phpld-widget h5:before,
.df-premium-template .box > h1:before,
.df-premium-template .box > h2:before,
.df-premium-template .box > h3:before,
.df-premium-template .box > h4:before,
.df-premium-template .phpld-cbox > h1:before,
.df-premium-template .phpld-cbox > h2:before,
.df-premium-template .phpld-cbox > h3:before,
.df-premium-template .df-content-column > h1:before,
.df-premium-template .df-content-column > h2:before,
.df-premium-template .df-content-column > h3:before {
    content: "";
    position: absolute;
    left: 0;
    top: .16em;
    width: 5px;
    height: 1.05em;
    border-radius: 999px;
    background: linear-gradient(180deg, var(--df-gold), var(--df-orange), var(--df-red));
    box-shadow: 0 0 0 6px rgba(255, 106, 22, .09);
}

/* Homepage hero content from phpLD pages. */
.df-premium-template .df-content-column > h1:first-child {
    margin: 6px auto 10px !important;
    padding: 0 !important;
    border: 0 !important;
    max-width: 900px;
    color: var(--df-red) !important;
    text-align: center !important;
    font-size: clamp(34px, 4.8vw, 64px) !important;
    line-height: 1 !important;
    letter-spacing: -.065em !important;
}

.df-premium-template .df-content-column > h1:first-child:before {
    display: none !important;
}

.df-premium-template .df-content-column > h1:first-child + h2,
.df-premium-template .df-content-column > h1:first-child + h3 {
    max-width: 820px;
    margin: 0 auto 22px !important;
    padding: 0 !important;
    border: 0 !important;
    color: #0f172a !important;
    text-align: center !important;
    font-size: clamp(19px, 2.2vw, 30px) !important;
    line-height: 1.28 !important;
    letter-spacing: -.04em !important;
}

.df-premium-template .df-content-column > h1:first-child + h2:before,
.df-premium-template .df-content-column > h1:first-child + h3:before {
    display: none !important;
}

.df-premium-template img[src*="webdirectories"],
.df-premium-template img[alt*="webdirectories"],
.df-premium-template img[alt*="Web"] {
    display: block;
    margin: 12px auto 24px;
    max-width: min(360px, 92%);
    border-radius: 18px;
}

/* Header search: prevents GO from covering the placeholder/text field. */
.df-premium-template .df-search-shell form.headerSearch,
.df-premium-template form.headerSearch {
    width: 100% !important;
    max-width: 100% !important;
    position: relative !important;
    float: none !important;
    display: block !important;
    margin: 0 !important;
    padding: 8px !important;
    overflow: visible !important;
    background: rgba(255, 255, 255, .11) !important;
    border: 1px solid rgba(255, 255, 255, .16) !important;
    border-radius: 999px !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .06), 0 18px 38px rgba(2, 6, 23, .14) !important;
}

.df-premium-template .df-search-shell form.headerSearch div.phpld-columnar,
.df-premium-template form.headerSearch div.phpld-columnar,
.df-premium-template .headerSearch .phpld-columnar {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    flex-wrap: nowrap !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
}

.df-premium-template form.headerSearch .phpld-label,
.df-premium-template form.headerSearch label {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0 0 0 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

.df-premium-template form.headerSearch .phpld-fbox-text,
.df-premium-template form.headerSearch .phpld-fbox-select {
    order: 1 !important;
    flex: 1 1 auto !important;
    min-width: 0 !important;
    width: auto !important;
    float: none !important;
    clear: none !important;
    margin: 0 !important;
    padding: 0 !important;
    position: static !important;
}

.df-premium-template form.headerSearch .phpld-fbox-text input,
.df-premium-template form.headerSearch input[type="text"],
.df-premium-template form.headerSearch input[type="search"] {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    height: 44px !important;
    min-height: 44px !important;
    margin: 0 !important;
    padding: 0 18px !important;
    float: none !important;
    color: #0f172a !important;
    background: #ffffff !important;
    border: 0 !important;
    border-radius: 999px !important;
    box-shadow: none !important;
    text-indent: 0 !important;
    font: 700 14px/44px Inter, Arial, sans-serif !important;
}

.df-premium-template form.headerSearch input::placeholder {
    color: #64748b !important;
    opacity: 1 !important;
}

.df-premium-template form.headerSearch .phpld-fbox-button,
.df-premium-template .headerSearch .phpld-fbox-button {
    order: 2 !important;
    flex: 0 0 auto !important;
    width: auto !important;
    min-width: 0 !important;
    height: auto !important;
    float: none !important;
    clear: none !important;
    margin: 0 !important;
    padding: 0 !important;
    position: static !important;
}

.df-premium-template form.headerSearch .phpld-fbox-button input,
.df-premium-template form.headerSearch .phpld-searchbutton,
.df-premium-template .headerSearch .phpld-fbox-button .phpld-searchbutton,
.df-premium-template form.headerSearch button,
.df-premium-template form.headerSearch input[type="submit"] {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 54px !important;
    width: auto !important;
    height: 44px !important;
    min-height: 44px !important;
    margin: 0 !important;
    padding: 0 18px !important;
    float: none !important;
    color: #fff !important;
    background: linear-gradient(135deg, var(--df-orange), var(--df-red)) !important;
    border: 0 !important;
    border-radius: 999px !important;
    box-shadow: 0 12px 26px rgba(224, 24, 63, .26) !important;
    text-indent: 0 !important;
    text-align: center !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
    font: 900 12px/1 Inter, Arial, sans-serif !important;
}

/* If the old image-only button outputs no visible value, show a clean GO label. */
.df-premium-template form.headerSearch .phpld-searchbutton[value=""],
.df-premium-template form.headerSearch input.phpld-searchbutton:not([value]) {
    font-size: 0 !important;
}

/* Forms and submit flow: align labels/fields and remove legacy red strip. */
.df-premium-template .phpld-form:not(.headerSearch),
.df-premium-template #submitForm,
.df-premium-template #submit_form {
    width: 100% !important;
    margin: 0 !important;
    padding: 26px !important;
    overflow: visible !important;
    color: var(--df-text) !important;
    background:
        linear-gradient(180deg, rgba(255,255,255,.98), rgba(248,250,252,.98)),
        radial-gradient(circle at 0 0, rgba(255,106,22,.08), transparent 22rem) !important;
    border: 1px solid var(--df-border) !important;
    border-radius: 28px !important;
    box-shadow: 0 18px 45px rgba(15, 23, 42, .08) !important;
}

.df-premium-template .phpld-form:not(.headerSearch) fieldset,
.df-premium-template #submitForm fieldset,
.df-premium-template #submit_form fieldset {
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    background: transparent !important;
    border: 0 !important;
}

.df-premium-template .phpld-form:not(.headerSearch) legend,
.df-premium-template #submitForm legend,
.df-premium-template #submit_form legend,
.df-premium-template .phpld-form:not(.headerSearch) h1,
.df-premium-template .phpld-form:not(.headerSearch) h2,
.df-premium-template .phpld-form:not(.headerSearch) h3,
.df-premium-template .phpld-form:not(.headerSearch) h4,
.df-premium-template #submitForm h1,
.df-premium-template #submitForm h2,
.df-premium-template #submitForm h3,
.df-premium-template #submitForm h4,
.df-premium-template #submit_form h1,
.df-premium-template #submit_form h2,
.df-premium-template #submit_form h3,
.df-premium-template #submit_form h4 {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 0 22px !important;
    padding: 0 0 14px 18px !important;
    overflow: visible !important;
    color: var(--df-text) !important;
    background: transparent !important;
    border: 0 !important;
    border-bottom: 1px solid var(--df-border) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    font: 900 clamp(24px, 2.6vw, 38px)/1.12 Inter, Arial, sans-serif !important;
    letter-spacing: -.045em !important;
    text-align: left !important;
    text-indent: 0 !important;
    text-shadow: none !important;
}

.df-premium-template .phpld-form:not(.headerSearch) legend:before,
.df-premium-template #submitForm legend:before,
.df-premium-template #submit_form legend:before,
.df-premium-template .phpld-form:not(.headerSearch) h1:before,
.df-premium-template .phpld-form:not(.headerSearch) h2:before,
.df-premium-template .phpld-form:not(.headerSearch) h3:before,
.df-premium-template .phpld-form:not(.headerSearch) h4:before,
.df-premium-template #submitForm h1:before,
.df-premium-template #submitForm h2:before,
.df-premium-template #submitForm h3:before,
.df-premium-template #submitForm h4:before,
.df-premium-template #submit_form h1:before,
.df-premium-template #submit_form h2:before,
.df-premium-template #submit_form h3:before,
.df-premium-template #submit_form h4:before {
    content: "";
    position: absolute;
    left: 0;
    top: .14em;
    width: 5px;
    height: 1.05em;
    border-radius: 999px;
    background: linear-gradient(180deg, var(--df-gold), var(--df-orange), var(--df-red));
}

.df-premium-template .phpld-form:not(.headerSearch) .phpld-columnar,
.df-premium-template #submitForm .phpld-columnar,
.df-premium-template #submit_form .phpld-columnar {
    margin: 0 !important;
    padding: 0 !important;
}

.df-premium-template .phpld-form:not(.headerSearch) div.phpld-fbox-text,
.df-premium-template .phpld-form:not(.headerSearch) div.phpld-fbox-select,
.df-premium-template .phpld-form:not(.headerSearch) div.phpld-fbox-check,
.df-premium-template #submitForm div.phpld-fbox-text,
.df-premium-template #submitForm div.phpld-fbox-select,
.df-premium-template #submitForm div.phpld-fbox-check,
.df-premium-template #submit_form div.phpld-fbox-text,
.df-premium-template #submit_form div.phpld-fbox-select,
.df-premium-template #submit_form div.phpld-fbox-check {
    display: grid !important;
    grid-template-columns: minmax(150px, 230px) minmax(0, 1fr) !important;
    gap: 10px 16px !important;
    align-items: start !important;
    width: 100% !important;
    margin: 0 0 16px !important;
    padding: 0 !important;
    clear: both !important;
}

.df-premium-template .phpld-form:not(.headerSearch) label,
.df-premium-template .phpld-form:not(.headerSearch) .phpld-label,
.df-premium-template #submitForm label,
.df-premium-template #submitForm .phpld-label,
.df-premium-template #submit_form label,
.df-premium-template #submit_form .phpld-label {
    display: block !important;
    position: static !important;
    float: none !important;
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 11px 0 0 !important;
    color: #334155 !important;
    text-align: left !important;
    font: 850 14px/1.35 Inter, Arial, sans-serif !important;
}

.df-premium-template .phpld-form:not(.headerSearch) .float-left,
.df-premium-template #submitForm .float-left,
.df-premium-template #submit_form .float-left,
.df-premium-template .phpld-form:not(.headerSearch) input,
.df-premium-template .phpld-form:not(.headerSearch) textarea,
.df-premium-template .phpld-form:not(.headerSearch) select,
.df-premium-template #submitForm input,
.df-premium-template #submitForm textarea,
.df-premium-template #submitForm select,
.df-premium-template #submit_form input,
.df-premium-template #submit_form textarea,
.df-premium-template #submit_form select {
    float: none !important;
    max-width: 100% !important;
}

.df-premium-template .phpld-form:not(.headerSearch) input[type="text"],
.df-premium-template .phpld-form:not(.headerSearch) input[type="email"],
.df-premium-template .phpld-form:not(.headerSearch) input[type="url"],
.df-premium-template .phpld-form:not(.headerSearch) input[type="password"],
.df-premium-template .phpld-form:not(.headerSearch) textarea,
.df-premium-template .phpld-form:not(.headerSearch) select,
.df-premium-template #submitForm input[type="text"],
.df-premium-template #submitForm input[type="email"],
.df-premium-template #submitForm input[type="url"],
.df-premium-template #submitForm input[type="password"],
.df-premium-template #submitForm textarea,
.df-premium-template #submitForm select,
.df-premium-template #submit_form input[type="text"],
.df-premium-template #submit_form input[type="email"],
.df-premium-template #submit_form input[type="url"],
.df-premium-template #submit_form input[type="password"],
.df-premium-template #submit_form textarea,
.df-premium-template #submit_form select {
    width: 100% !important;
    min-height: 46px !important;
    margin: 0 !important;
    padding: 12px 15px !important;
    color: #0f172a !important;
    background: #fff !important;
    border: 1px solid #cbd5e1 !important;
    border-radius: 16px !important;
    box-shadow: 0 1px 0 rgba(15, 23, 42, .02) !important;
}

.df-premium-template .phpld-form:not(.headerSearch) input[type="text"]:focus,
.df-premium-template .phpld-form:not(.headerSearch) input[type="email"]:focus,
.df-premium-template .phpld-form:not(.headerSearch) input[type="url"]:focus,
.df-premium-template .phpld-form:not(.headerSearch) input[type="password"]:focus,
.df-premium-template .phpld-form:not(.headerSearch) textarea:focus,
.df-premium-template .phpld-form:not(.headerSearch) select:focus,
.df-premium-template #submitForm input:focus,
.df-premium-template #submitForm textarea:focus,
.df-premium-template #submitForm select:focus,
.df-premium-template #submit_form input:focus,
.df-premium-template #submit_form textarea:focus,
.df-premium-template #submit_form select:focus {
    border-color: rgba(255, 106, 22, .68) !important;
    box-shadow: var(--df-ring) !important;
}

.df-premium-template .phpld-form:not(.headerSearch) div.phpld-fbox-button,
.df-premium-template #submitForm div.phpld-fbox-button,
.df-premium-template #submit_form div.phpld-fbox-button {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    width: 100% !important;
    margin: 22px 0 0 !important;
    padding: 0 0 0 246px !important;
    float: none !important;
    clear: both !important;
}

.df-premium-template .phpld-form:not(.headerSearch) input[type="submit"],
.df-premium-template #submitForm input[type="submit"],
.df-premium-template #submit_form input[type="submit"],
.df-premium-template .phpld-button {
    min-height: 52px !important;
    padding: 0 24px !important;
    border-radius: 999px !important;
    box-shadow: 0 18px 34px rgba(224, 24, 63, .24) !important;
    font-size: 15px !important;
}

/* Submit category tree/select blocks: modern card, no stray labels. */
.df-premium-template #hierarchy,
.df-premium-template #category,
.df-premium-template select[name*="CATEGORY"],
.df-premium-template select[name*="category"] {
    max-width: 760px !important;
}

.df-premium-template .treeview,
.df-premium-template .jqueryFileTree,
.df-premium-template #categ-tree,
.df-premium-template #category-tree,
.df-premium-template #categoryTree,
.df-premium-template #category-tree-container,
.df-premium-template #category_selection,
.df-premium-template #categorySelection {
    width: min(100%, 560px) !important;
    min-height: 260px;
    margin: 18px 0 0 !important;
    padding: 16px !important;
    overflow: auto !important;
    background: #fff !important;
    border: 1px solid #cbd5e1 !important;
    border-radius: 20px !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.8), 0 14px 28px rgba(15,23,42,.06) !important;
}

/* Category grid upgrade. */
.df-premium-template .AllCategories {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 16px !important;
    margin: 14px 0 0 !important;
}

.df-premium-template .AllCategories .phpld-gbox {
    float: none !important;
    width: auto !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 18px 18px 18px 24px !important;
    background:
        linear-gradient(180deg, #ffffff 0%, #ffffff 62%, #fff7ed 100%) !important;
    border: 1px solid rgba(226, 232, 240, .95) !important;
    border-radius: 22px !important;
    box-shadow: 0 14px 34px rgba(15, 23, 42, .07) !important;
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease !important;
}

.df-premium-template .AllCategories .phpld-gbox:hover {
    transform: translateY(-3px);
    border-color: rgba(255, 106, 22, .28) !important;
    box-shadow: 0 20px 44px rgba(15, 23, 42, .10) !important;
}

.df-premium-template .AllCategories h4 {
    margin: 0 0 8px !important;
    padding: 0 !important;
    border: 0 !important;
    background: none !important;
    line-height: 1.25 !important;
}

.df-premium-template .AllCategories h4:before {
    display: none !important;
}

.df-premium-template .AllCategories h4 a {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    color: #0f172a !important;
    font-size: 15px !important;
    line-height: 1.25 !important;
    font-weight: 950 !important;
    letter-spacing: .01em !important;
    text-transform: uppercase !important;
}

.df-premium-template .AllCategories h4 a:before {
    content: "";
    width: 8px;
    height: 24px;
    border-radius: 999px;
    background: linear-gradient(180deg, var(--df-gold), var(--df-orange), var(--df-red));
    box-shadow: 0 0 0 5px rgba(255, 106, 22, .09);
}

.df-premium-template .AllCategories h4 span {
    color: #64748b !important;
    font-size: 12px !important;
    font-weight: 800 !important;
}

.df-premium-template .AllCategories ul {
    margin: 6px 0 0 !important;
    padding: 0 !important;
}

.df-premium-template .AllCategories ul li {
    display: block !important;
    margin: 0 !important;
    padding: 7px 0 !important;
    border-bottom: 1px solid rgba(226,232,240,.72) !important;
    line-height: 1.35 !important;
}

.df-premium-template .AllCategories ul li:last-child {
    border-bottom: 0 !important;
}

.df-premium-template .AllCategories ul li a {
    color: #334155 !important;
    font-size: 13px !important;
    font-weight: 760 !important;
}

.df-premium-template .AllCategories ul li a:hover {
    color: var(--df-red) !important;
}

/* Latest/top listing pages: turn the old list into premium listing cards. */
.df-premium-template .listingsList ul,
.df-premium-template .listing-style-list,
.df-premium-template .listing-list {
    display: grid !important;
    gap: 16px !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

.df-premium-template .listingsList ul li,
.df-premium-template .listing-style-list .listing-list-item,
.df-premium-template .listing-list-item.list-box {
    position: relative !important;
    margin: 0 !important;
    padding: 20px 20px 20px 24px !important;
    list-style: none !important;
    background: #fff !important;
    border: 1px solid var(--df-border) !important;
    border-radius: 22px !important;
    box-shadow: 0 14px 34px rgba(15, 23, 42, .06) !important;
}

.df-premium-template .listingsList ul li:before,
.df-premium-template .listing-style-list .listing-list-item:before,
.df-premium-template .listing-list-item.list-box:before {
    content: "";
    position: absolute;
    top: 20px;
    left: 0;
    width: 5px;
    height: 42px;
    border-radius: 0 999px 999px 0;
    background: linear-gradient(180deg, var(--df-gold), var(--df-orange), var(--df-red));
}

.df-premium-template .listingsList h4,
.df-premium-template .listing-style-list h4,
.df-premium-template .listingsList h3,
.df-premium-template .listing-style-list h3 {
    margin: 0 0 8px !important;
    padding: 0 !important;
    border: 0 !important;
    background: none !important;
    line-height: 1.25 !important;
}

.df-premium-template .listingsList h4:before,
.df-premium-template .listing-style-list h4:before,
.df-premium-template .listingsList h3:before,
.df-premium-template .listing-style-list h3:before {
    display: none !important;
}

/* Small premium details. */
.df-premium-template .df-breadcrumbs,
.df-premium-template .path {
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .85);
}

.df-premium-template .df-main-content {
    backdrop-filter: blur(14px);
}

.df-premium-template .df-submit-cta {
    position: relative;
    overflow: hidden;
}

.df-premium-template .df-submit-cta:after {
    content: "";
    position: absolute;
    inset: 0;
    transform: translateX(-120%) skewX(-18deg);
    background: linear-gradient(90deg, transparent, rgba(255,255,255,.34), transparent);
    transition: transform .55s ease;
}

.df-premium-template .df-submit-cta:hover:after {
    transform: translateX(120%) skewX(-18deg);
}

@media (max-width: 860px) {
    .df-premium-template .AllCategories {
        grid-template-columns: 1fr !important;
    }

    .df-premium-template .phpld-form:not(.headerSearch) div.phpld-fbox-text,
    .df-premium-template .phpld-form:not(.headerSearch) div.phpld-fbox-select,
    .df-premium-template .phpld-form:not(.headerSearch) div.phpld-fbox-check,
    .df-premium-template #submitForm div.phpld-fbox-text,
    .df-premium-template #submitForm div.phpld-fbox-select,
    .df-premium-template #submitForm div.phpld-fbox-check,
    .df-premium-template #submit_form div.phpld-fbox-text,
    .df-premium-template #submit_form div.phpld-fbox-select,
    .df-premium-template #submit_form div.phpld-fbox-check {
        grid-template-columns: 1fr !important;
    }

    .df-premium-template .phpld-form:not(.headerSearch) label,
    .df-premium-template .phpld-form:not(.headerSearch) .phpld-label,
    .df-premium-template #submitForm label,
    .df-premium-template #submitForm .phpld-label,
    .df-premium-template #submit_form label,
    .df-premium-template #submit_form .phpld-label {
        padding-top: 0 !important;
    }

    .df-premium-template .phpld-form:not(.headerSearch) div.phpld-fbox-button,
    .df-premium-template #submitForm div.phpld-fbox-button,
    .df-premium-template #submit_form div.phpld-fbox-button {
        padding-left: 0 !important;
    }
}

@media (max-width: 560px) {
    .df-premium-template form.headerSearch div.phpld-columnar,
    .df-premium-template .headerSearch .phpld-columnar {
        display: grid !important;
        grid-template-columns: 1fr !important;
    }

    .df-premium-template form.headerSearch .phpld-fbox-button,
    .df-premium-template form.headerSearch .phpld-fbox-button input,
    .df-premium-template form.headerSearch .phpld-searchbutton,
    .df-premium-template .headerSearch .phpld-fbox-button .phpld-searchbutton {
        width: 100% !important;
    }
}

/* ======================================================================
   DirectoryFire Premium V3 hotfix / luxury polish
   Purpose: real phpLD compatibility fixes found on live DirectoryFire.
   - Header search: hide the old category dropdown/select2 inside search.
   - Header search: keep one clean input + one GO button, no duplication.
   - Submit category chooser: align Select Category and tree to the left.
   - Submit category chooser: override phpLD/BlueTheme #categtree defaults.
   ====================================================================== */

/* One-search-field header. phpLD often outputs keyword input + category select; the category select becomes the duplicated white pill in the hero. */
.df-premium-template .df-search-shell form.headerSearch .phpld-fbox-select,
.df-premium-template .df-search-shell form.headerSearch select,
.df-premium-template .df-search-shell form.headerSearch .select2-container,
.df-premium-template .df-search-shell form.headerSearch .select2-container-multi,
.df-premium-template .df-search-shell form.headerSearch .select2-drop,
.df-premium-template .df-search-shell form.headerSearch .select2-dropdown-open,
.df-premium-template .df-search-shell .select2-container,
.df-premium-template .df-search-shell .select2-container-multi {
    display: none !important;
    visibility: hidden !important;
    width: 0 !important;
    min-width: 0 !important;
    max-width: 0 !important;
    height: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    overflow: hidden !important;
    pointer-events: none !important;
}

.df-premium-template .df-search-shell {
    flex: 1 1 500px !important;
    min-width: min(100%, 420px) !important;
    max-width: 560px !important;
}

.df-premium-template .df-search-shell form.headerSearch,
.df-premium-template .df-search-shell .headerSearch {
    display: block !important;
    width: 100% !important;
    min-height: 72px !important;
    padding: 8px !important;
    background: linear-gradient(180deg, rgba(255,255,255,.14), rgba(255,255,255,.07)) !important;
    border: 1px solid rgba(255,255,255,.18) !important;
    border-radius: 999px !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.12), 0 24px 55px rgba(2,6,23,.24) !important;
}

.df-premium-template .df-search-shell form.headerSearch div.phpld-columnar,
.df-premium-template .df-search-shell .headerSearch .phpld-columnar {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: center !important;
    gap: 10px !important;
    width: 100% !important;
    min-height: 56px !important;
    margin: 0 !important;
    padding: 0 !important;
}

.df-premium-template .df-search-shell form.headerSearch .phpld-fbox-text,
.df-premium-template .df-search-shell .headerSearch .phpld-fbox-text {
    grid-column: 1 !important;
    grid-row: 1 !important;
    min-width: 0 !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
}

.df-premium-template .df-search-shell form.headerSearch .phpld-fbox-text input,
.df-premium-template .df-search-shell form.headerSearch input[type="text"],
.df-premium-template .df-search-shell form.headerSearch input[type="search"] {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    height: 56px !important;
    min-height: 56px !important;
    margin: 0 !important;
    padding: 0 22px !important;
    color: #0f172a !important;
    background: #ffffff !important;
    border: 0 !important;
    border-radius: 999px !important;
    box-shadow: inset 0 0 0 1px rgba(15,23,42,.04) !important;
    text-indent: 0 !important;
    font: 700 16px/56px Inter, Arial, sans-serif !important;
    letter-spacing: -.01em !important;
}

.df-premium-template .df-search-shell form.headerSearch input::placeholder {
    color: #64748b !important;
    opacity: 1 !important;
}

.df-premium-template .df-search-shell form.headerSearch .phpld-fbox-button,
.df-premium-template .df-search-shell .headerSearch .phpld-fbox-button {
    grid-column: 2 !important;
    grid-row: 1 !important;
    width: auto !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
}

.df-premium-template .df-search-shell form.headerSearch .phpld-fbox-button input,
.df-premium-template .df-search-shell form.headerSearch .phpld-searchbutton,
.df-premium-template .df-search-shell .headerSearch .phpld-fbox-button .phpld-searchbutton,
.df-premium-template .df-search-shell form.headerSearch button,
.df-premium-template .df-search-shell form.headerSearch input[type="submit"] {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 64px !important;
    width: auto !important;
    height: 56px !important;
    min-height: 56px !important;
    margin: 0 !important;
    padding: 0 22px !important;
    color: #fff !important;
    background: linear-gradient(135deg, #ffb347 0%, #ff4d12 48%, #e00035 100%) !important;
    border: 0 !important;
    border-radius: 999px !important;
    box-shadow: 0 16px 34px rgba(224,24,63,.32) !important;
    text-indent: 0 !important;
    text-align: center !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
    font: 950 12px/1 Inter, Arial, sans-serif !important;
}

/* Premium submit/category chooser layout. */
.df-premium-template .df-content-column #hierarchy,
.df-premium-template .df-content-column select#hierarchy {
    display: block !important;
    width: min(100%, 620px) !important;
    max-width: 620px !important;
    height: 48px !important;
    min-height: 48px !important;
    margin: 0 0 14px 0 !important;
    padding: 0 16px !important;
    float: none !important;
    clear: both !important;
    color: #0f172a !important;
    background: #fff !important;
    border: 1px solid #cbd5e1 !important;
    border-radius: 14px !important;
    box-shadow: 0 8px 20px rgba(15,23,42,.05) !important;
    font: 750 14px/48px Inter, Arial, sans-serif !important;
    text-align: left !important;
}

.df-premium-template .df-content-column #categtree,
.df-premium-template .df-content-column #categ-tree,
.df-premium-template .df-content-column .categtree {
    display: block !important;
    width: min(100%, 560px) !important;
    max-width: 560px !important;
    height: 300px !important;
    min-height: 300px !important;
    margin: 12px 0 24px 0 !important;
    padding: 0 !important;
    float: none !important;
    clear: both !important;
    overflow: auto !important;
    color: #0f172a !important;
    background: #ffffff !important;
    border: 1px solid #dbe3ee !important;
    border-radius: 18px !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.85), 0 16px 32px rgba(15,23,42,.07) !important;
}

.df-premium-template .df-content-column #categtree h2,
.df-premium-template .df-content-column #categtree h3,
.df-premium-template .df-content-column #categ-tree h2,
.df-premium-template .df-content-column #categ-tree h3,
.df-premium-template .df-content-column .categtree h2,
.df-premium-template .df-content-column .categtree h3 {
    position: sticky !important;
    top: 0 !important;
    z-index: 2 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    width: auto !important;
    min-height: 44px !important;
    height: auto !important;
    margin: 0 !important;
    padding: 11px 16px 11px 42px !important;
    overflow: visible !important;
    color: #0f172a !important;
    background: linear-gradient(180deg, #ffffff, #f8fafc) !important;
    border: 0 !important;
    border-bottom: 1px solid #e2e8f0 !important;
    border-radius: 18px 18px 0 0 !important;
    box-shadow: none !important;
    text-align: left !important;
    text-indent: 0 !important;
    text-shadow: none !important;
    font: 900 14px/1.25 Inter, Arial, sans-serif !important;
    letter-spacing: .01em !important;
    text-transform: uppercase !important;
}

.df-premium-template .df-content-column #categtree h2:before,
.df-premium-template .df-content-column #categtree h3:before,
.df-premium-template .df-content-column #categ-tree h2:before,
.df-premium-template .df-content-column #categ-tree h3:before,
.df-premium-template .df-content-column .categtree h2:before,
.df-premium-template .df-content-column .categtree h3:before {
    content: "" !important;
    position: absolute !important;
    left: 16px !important;
    top: 50% !important;
    width: 10px !important;
    height: 22px !important;
    transform: translateY(-50%) !important;
    border-radius: 999px !important;
    background: linear-gradient(180deg, var(--df-gold), var(--df-orange), var(--df-red)) !important;
    box-shadow: 0 0 0 5px rgba(255,106,22,.08) !important;
}

.df-premium-template .df-content-column #categtree ul,
.df-premium-template .df-content-column #categ-tree ul,
.df-premium-template .df-content-column .categtree ul,
.df-premium-template .df-content-column ul.treeview,
.df-premium-template .df-content-column .treeview ul {
    margin: 0 !important;
    padding: 6px 0 !important;
    list-style: none !important;
}

.df-premium-template .df-content-column #categtree li,
.df-premium-template .df-content-column #categ-tree li,
.df-premium-template .df-content-column .categtree li,
.df-premium-template .df-content-column ul.treeview li {
    min-height: 38px !important;
    margin: 0 !important;
    padding: 9px 14px !important;
    border-bottom: 1px solid rgba(226,232,240,.72) !important;
    font: 800 14px/1.35 Inter, Arial, sans-serif !important;
}

.df-premium-template .df-content-column #categtree li:last-child,
.df-premium-template .df-content-column #categ-tree li:last-child,
.df-premium-template .df-content-column .categtree li:last-child,
.df-premium-template .df-content-column ul.treeview li:last-child {
    border-bottom: 0 !important;
}

.df-premium-template .df-content-column #categtree a,
.df-premium-template .df-content-column #categ-tree a,
.df-premium-template .df-content-column .categtree a,
.df-premium-template .df-content-column ul.treeview a {
    color: #0f172a !important;
    text-decoration: none !important;
}

.df-premium-template .df-content-column #categtree a:hover,
.df-premium-template .df-content-column #categ-tree a:hover,
.df-premium-template .df-content-column .categtree a:hover,
.df-premium-template .df-content-column ul.treeview a:hover {
    color: var(--df-red) !important;
}

/* If the chooser is wrapped inside phpLD fbox grid, make the big tree consume a full clean line instead of being pushed to the middle. */
.df-premium-template .phpld-form:not(.headerSearch) #categtree,
.df-premium-template #submitForm #categtree,
.df-premium-template #submit_form #categtree {
    grid-column: 1 / -1 !important;
}

/* Wider premium category home grid on desktop, inspired by business directories/review sites. */
@media (min-width: 1100px) {
    .df-premium-template .AllCategories {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 720px) {
    .df-premium-template .df-search-shell form.headerSearch,
    .df-premium-template .df-search-shell .headerSearch {
        border-radius: 28px !important;
        min-height: 0 !important;
    }

    .df-premium-template .df-search-shell form.headerSearch div.phpld-columnar,
    .df-premium-template .df-search-shell .headerSearch .phpld-columnar {
        grid-template-columns: 1fr !important;
    }

    .df-premium-template .df-search-shell form.headerSearch .phpld-fbox-button,
    .df-premium-template .df-search-shell .headerSearch .phpld-fbox-button {
        grid-column: 1 !important;
        width: 100% !important;
    }

    .df-premium-template .df-search-shell form.headerSearch .phpld-fbox-button input,
    .df-premium-template .df-search-shell form.headerSearch .phpld-searchbutton,
    .df-premium-template .df-search-shell .headerSearch .phpld-fbox-button .phpld-searchbutton,
    .df-premium-template .df-search-shell form.headerSearch button,
    .df-premium-template .df-search-shell form.headerSearch input[type="submit"] {
        width: 100% !important;
    }

    .df-premium-template .df-content-column #hierarchy,
    .df-premium-template .df-content-column #categtree,
    .df-premium-template .df-content-column #categ-tree,
    .df-premium-template .df-content-column .categtree {
        width: 100% !important;
        max-width: 100% !important;
    }
}

/* =======================================================================
   DirectoryFire Premium V4 — conversion-focused redesign
   Turns the working phpLD Phoenix template into the same premium direction
   as the approved homepage/submit mockups while keeping Smarty/phpLD output.
   ======================================================================= */

html.df-route-home,
html.df-route-inner,
html.df-route-submit,
html.df-route-latest,
html.df-route-top,
html.df-route-contact,
html.df-route-directory-page {
    background: #f8fafc;
}

body.df-premium-v4 {
    --df-v4-ink: #0f172a;
    --df-v4-muted: #667085;
    --df-v4-soft: #f8fafc;
    --df-v4-line: #e5e7eb;
    --df-v4-navy: #040713;
    --df-v4-purple: #21051c;
    --df-v4-orange: #ff6a00;
    --df-v4-gold: #ffb43b;
    --df-v4-red: #ec003c;
    --df-v4-blue: #38bdf8;
    --df-v4-green: #12b886;
    --df-v4-violet: #8b5cf6;
    --df-v4-pink: #ec4899;
    --df-v4-shadow-xl: 0 30px 100px rgba(15, 23, 42, .14);
    --df-v4-shadow-lg: 0 18px 55px rgba(15, 23, 42, .10);
    --df-v4-shadow-md: 0 12px 30px rgba(15, 23, 42, .07);
    --df-v4-shell: 1460px;
    margin: 0 !important;
    color: var(--df-v4-ink);
    background:
        radial-gradient(circle at 10% 0%, rgba(255, 106, 0, .10), transparent 28rem),
        radial-gradient(circle at 88% 10%, rgba(56, 189, 248, .10), transparent 24rem),
        linear-gradient(180deg, #ffffff 0%, #f7fafc 38rem, #ffffff 100%) !important;
    font-family: Inter, Arial, sans-serif !important;
    font-size: 16px !important;
    line-height: 1.65;
    text-align: left !important;
}

body.df-premium-v4 * {
    box-sizing: border-box;
}

body.df-premium-v4 .df-page-aurora {
    position: fixed;
    inset: 0;
    pointer-events: none;
    z-index: -2;
    background:
        radial-gradient(circle at 72% -12%, rgba(236, 0, 60, .08), transparent 34rem),
        radial-gradient(circle at 18% 18%, rgba(255, 180, 59, .07), transparent 24rem),
        radial-gradient(circle at 100% 74%, rgba(56, 189, 248, .08), transparent 28rem);
}

body.df-premium-v4 .wrap.df-wrap,
body.df-premium-v4 .wrap {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

body.df-premium-v4 .df-v4-shell {
    width: min(var(--df-v4-shell), calc(100% - 96px));
    max-width: var(--df-v4-shell);
    margin-left: auto;
    margin-right: auto;
}

/* Full-width luxury masthead */
body.df-premium-v4 .masthead.df-v4-masthead,
body.df-premium-v4 .df-masthead.df-v4-masthead {
    width: 100% !important;
    max-width: none !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    color: #fff;
    background:
        radial-gradient(circle at 89% 50%, rgba(236, 0, 60, .30), transparent 22rem),
        radial-gradient(circle at 82% 12%, rgba(255, 106, 0, .18), transparent 28rem),
        radial-gradient(circle at 28% 18%, rgba(124, 58, 237, .12), transparent 26rem),
        linear-gradient(110deg, #020617 0%, #050817 45%, #16041d 75%, #26061d 100%) !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

body.df-premium-v4 .df-v4-masthead:before {
    content: "";
    position: absolute;
    inset: -30% -8% auto auto;
    width: min(58vw, 820px);
    height: min(58vw, 820px);
    border-radius: 50%;
    background:
        repeating-radial-gradient(circle, rgba(255, 106, 0, .34) 0 1px, transparent 1px 42px);
    opacity: .34;
    transform: rotate(-18deg);
    pointer-events: none;
}

body.df-premium-v4 .df-v4-masthead:after {
    content: "";
    position: absolute;
    right: 0;
    bottom: -1px;
    left: 0;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(255, 106, 0, .65), rgba(236, 0, 60, .65), transparent);
    pointer-events: none;
}

body.df-premium-v4 .df-v4-nav-shell {
    position: relative;
    z-index: 3;
    display: grid;
    grid-template-columns: minmax(230px, 350px) minmax(0, 1fr) auto;
    align-items: center;
    gap: 28px;
    min-height: 96px;
    padding: 22px 0 10px;
}

body.df-premium-v4 .df-v4-brand {
    display: inline-flex;
    align-items: center;
    min-width: 0;
    color: #fff !important;
    text-decoration: none !important;
}

body.df-premium-v4 .df-v4-brand-img {
    display: block;
    width: min(100%, 336px);
    max-height: 74px;
    object-fit: contain;
    object-position: left center;
    filter: drop-shadow(0 16px 30px rgba(0, 0, 0, .32));
}

body.df-premium-v4 .df-v4-nav,
body.df-premium-v4 .df-v4-nav .phpld-wbox,
body.df-premium-v4 .df-v4-nav .phpld-hlist {
    width: 100% !important;
    max-width: none !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

body.df-premium-v4 .df-v4-nav .phpld-hlist {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    overflow: visible !important;
}

body.df-premium-v4 .df-v4-nav .phpld-hlist ul {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 20px !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    background: transparent !important;
}

body.df-premium-v4 .df-v4-nav .phpld-hlist ul li {
    position: relative !important;
    display: block !important;
    width: auto !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    list-style: none !important;
}

body.df-premium-v4 .df-v4-nav .phpld-hlist ul li a,
body.df-premium-v4 .df-v4-nav .phpld-hlist ul li a:link,
body.df-premium-v4 .df-v4-nav .phpld-hlist ul li a:visited,
body.df-premium-v4 .df-v4-nav .phpld-hlist ul li strong {
    position: relative;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 9px;
    min-height: 42px !important;
    height: auto !important;
    padding: 0 3px 10px !important;
    color: rgba(255, 255, 255, .90) !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    font: 850 15px/1 Inter, Arial, sans-serif !important;
    letter-spacing: -.02em;
    text-shadow: none !important;
    text-decoration: none !important;
    white-space: nowrap !important;
}

body.df-premium-v4 .df-v4-nav .phpld-hlist ul li a:before,
body.df-premium-v4 .df-v4-nav .phpld-hlist ul li strong:before {
    content: "";
    width: 18px;
    height: 18px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    opacity: .95;
    font-size: 18px;
    line-height: 1;
}
body.df-premium-v4 .df-v4-nav .phpld-hlist ul li:nth-child(1) a:before { content: "⌂"; }
body.df-premium-v4 .df-v4-nav .phpld-hlist ul li:nth-child(2) a:before { content: "⊕"; }
body.df-premium-v4 .df-v4-nav .phpld-hlist ul li:nth-child(3) a:before { content: "▦"; }
body.df-premium-v4 .df-v4-nav .phpld-hlist ul li:nth-child(4) a:before { content: "↗"; }
body.df-premium-v4 .df-v4-nav .phpld-hlist ul li:nth-child(5) a:before { content: "✉"; }
body.df-premium-v4 .df-v4-nav .phpld-hlist ul li:nth-child(6) a:before { content: "◔"; }

body.df-premium-v4 .df-v4-nav .phpld-hlist ul li a:after,
body.df-premium-v4 .df-v4-nav .phpld-hlist ul li strong:after {
    content: "";
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    height: 3px;
    border-radius: 999px;
    background: linear-gradient(90deg, var(--df-v4-gold), var(--df-v4-orange), var(--df-v4-red));
    opacity: 0;
    transform: scaleX(.42);
    transform-origin: center;
    transition: opacity .22s ease, transform .22s ease;
}

body.df-premium-v4 .df-v4-nav .phpld-hlist ul li a:hover,
body.df-premium-v4 .df-v4-nav .phpld-hlist ul li:hover > a,
body.df-premium-v4 .df-v4-nav .phpld-hlist ul li.active a,
body.df-premium-v4 .df-v4-nav .phpld-hlist ul li.active strong {
    color: #fff !important;
    background: transparent !important;
    box-shadow: none !important;
}

body.df-premium-v4 .df-v4-nav .phpld-hlist ul li a:hover:after,
body.df-premium-v4 .df-v4-nav .phpld-hlist ul li:hover > a:after,
body.df-premium-v4 .df-v4-nav .phpld-hlist ul li.active a:after,
body.df-premium-v4 .df-v4-nav .phpld-hlist ul li.active strong:after {
    opacity: 1;
    transform: scaleX(1);
}

body.df-premium-v4 .df-v4-submit-top {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-height: 52px;
    padding: 0 30px;
    color: #fff !important;
    background: linear-gradient(135deg, var(--df-v4-gold) 0%, var(--df-v4-orange) 42%, var(--df-v4-red) 100%);
    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: 999px;
    box-shadow: 0 18px 38px rgba(236, 0, 60, .28);
    overflow: hidden;
    font: 900 15px/1 Inter, Arial, sans-serif;
    text-decoration: none !important;
    white-space: nowrap;
}

body.df-premium-v4 .df-v4-submit-top:before {
    content: "➤";
    transform: rotate(-18deg);
    font-size: 15px;
}

body.df-premium-v4 .df-v4-submit-top:after {
    content: "";
    position: absolute;
    inset: 0 auto 0 -80%;
    width: 70%;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,.28), transparent);
    transform: skewX(-16deg);
    transition: left .55s ease;
}

body.df-premium-v4 .df-v4-submit-top:hover:after {
    left: 120%;
}

/* Hero stage */
body.df-premium-v4 .df-v4-hero-stage {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(300px, 380px) minmax(270px, .62fr);
    align-items: center;
    gap: 42px;
    min-height: 472px;
    padding: 50px 0 58px;
}

body.df-premium-v4 .df-v4-hero-copy {
    position: relative;
    z-index: 4;
}

body.df-premium-v4 .df-v4-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin: 0 0 18px !important;
    color: rgba(255, 255, 255, .74) !important;
    font: 850 13px/1.2 Inter, Arial, sans-serif !important;
    letter-spacing: .12em;
    text-transform: uppercase;
}

body.df-premium-v4 .df-v4-eyebrow:before {
    content: "";
    width: 12px;
    height: 12px;
    border-radius: 999px;
    background: radial-gradient(circle at 35% 35%, #fff4c7 0 16%, var(--df-v4-orange) 32%, var(--df-v4-red) 70%);
    box-shadow: 0 0 0 7px rgba(255, 106, 0, .12), 0 0 28px rgba(255, 106, 0, .55);
}

body.df-premium-v4 .df-v4-hero-copy h1 {
    max-width: 820px;
    margin: 0 0 22px !important;
    padding: 0 !important;
    color: #fff !important;
    border: 0 !important;
    font: 950 clamp(42px, 4.3vw, 76px)/1.08 Inter, Arial, sans-serif !important;
    letter-spacing: -.055em !important;
    text-align: left !important;
    text-shadow: 0 18px 54px rgba(0,0,0,.28) !important;
}

body.df-premium-v4 .df-v4-hero-copy h1:before {
    display: none !important;
}

body.df-premium-v4 .df-v4-hero-copy h1 span,
body.df-premium-v4 .df-v4-hero-submit strong {
    color: transparent;
    background: linear-gradient(90deg, var(--df-v4-gold) 0%, var(--df-v4-orange) 42%, var(--df-v4-red) 100%);
    -webkit-background-clip: text;
    background-clip: text;
}

body.df-premium-v4 .df-v4-lead {
    max-width: 760px;
    margin: 0 0 34px !important;
    color: rgba(255, 255, 255, .78) !important;
    font-size: clamp(17px, 1.42vw, 21px) !important;
    line-height: 1.62 !important;
    letter-spacing: -.018em;
}

body.df-premium-v4 .df-v4-hero-submit,
body.df-premium-v4 .df-v4-hero-general {
    display: none;
}

html.df-route-submit body.df-premium-v4 .df-v4-hero-home,
html.df-route-submit body.df-premium-v4 .df-v4-hero-general,
html.df-route-inner:not(.df-route-submit) body.df-premium-v4 .df-v4-hero-home,
html.df-route-inner:not(.df-route-submit) body.df-premium-v4 .df-v4-hero-submit {
    display: none !important;
}

html.df-route-submit body.df-premium-v4 .df-v4-hero-submit,
html.df-route-inner:not(.df-route-submit) body.df-premium-v4 .df-v4-hero-general {
    display: block !important;
}

html.df-route-submit body.df-premium-v4 .df-v4-hero-stage,
html.df-route-inner:not(.df-route-home) body.df-premium-v4 .df-v4-hero-stage {
    min-height: 300px;
    grid-template-columns: minmax(0, 1fr) minmax(300px, .42fr);
    padding-top: 36px;
    padding-bottom: 38px;
}

html.df-route-submit body.df-premium-v4 .df-v4-spotlight,
html.df-route-inner:not(.df-route-home) body.df-premium-v4 .df-v4-spotlight {
    display: none !important;
}

html.df-route-submit body.df-premium-v4 .df-v4-hero-copy h1,
html.df-route-inner:not(.df-route-home) body.df-premium-v4 .df-v4-hero-copy h1 {
    max-width: 760px;
    font-size: clamp(42px, 4.1vw, 66px) !important;
}

html.df-route-submit body.df-premium-v4 .df-v4-lead,
html.df-route-inner:not(.df-route-home) body.df-premium-v4 .df-v4-lead {
    max-width: 840px;
    margin-bottom: 0 !important;
}

/* Premium search — one field, one GO button, no duplicated select/pill */
body.df-premium-v4 .df-v4-search {
    width: min(100%, 870px);
    margin: 0 0 32px !important;
}

body.df-premium-v4 .df-v4-search form.headerSearch,
body.df-premium-v4 .df-v4-search .headerSearch,
body.df-premium-v4 .df-hero-search form.headerSearch,
body.df-premium-v4 .df-hero-search .headerSearch {
    position: relative !important;
    width: 100% !important;
    max-width: none !important;
    min-height: 68px !important;
    height: auto !important;
    margin: 0 !important;
    padding: 7px !important;
    overflow: visible !important;
    background: rgba(255, 255, 255, .09) !important;
    border: 1px solid rgba(255, 255, 255, .20) !important;
    border-radius: 999px !important;
    box-shadow: 0 18px 55px rgba(2, 6, 23, .40), inset 0 1px 0 rgba(255,255,255,.10) !important;
    backdrop-filter: blur(18px);
}

body.df-premium-v4 .df-v4-search form.headerSearch div.phpld-columnar,
body.df-premium-v4 .df-v4-search .headerSearch .phpld-columnar,
body.df-premium-v4 .df-hero-search form.headerSearch div.phpld-columnar,
body.df-premium-v4 .df-hero-search .headerSearch .phpld-columnar {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: center !important;
    gap: 8px !important;
    width: 100% !important;
    min-height: 54px !important;
    margin: 0 !important;
    padding: 0 !important;
}

body.df-premium-v4 .df-v4-search form.headerSearch label,
body.df-premium-v4 .df-v4-search form.headerSearch .phpld-label,
body.df-premium-v4 .df-hero-search form.headerSearch label,
body.df-premium-v4 .df-hero-search form.headerSearch .phpld-label {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    margin: -1px !important;
    padding: 0 !important;
    overflow: hidden !important;
    clip: rect(0 0 0 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

body.df-premium-v4 .df-v4-search form.headerSearch .phpld-fbox-text,
body.df-premium-v4 .df-v4-search form.headerSearch .phpld-fbox-select,
body.df-premium-v4 .df-hero-search form.headerSearch .phpld-fbox-text,
body.df-premium-v4 .df-hero-search form.headerSearch .phpld-fbox-select {
    grid-column: 1 !important;
    grid-row: 1 !important;
    display: block !important;
    min-width: 0 !important;
    width: 100% !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    clear: none !important;
}

/* The category/select2 field in phpLD header search is the duplicated pill. Hide it only inside hero search. */
body.df-premium-v4 .df-v4-search form.headerSearch .phpld-fbox-select,
body.df-premium-v4 .df-v4-search form.headerSearch select,
body.df-premium-v4 .df-v4-search form.headerSearch .select2-container,
body.df-premium-v4 .df-hero-search form.headerSearch .phpld-fbox-select,
body.df-premium-v4 .df-hero-search form.headerSearch select,
body.df-premium-v4 .df-hero-search form.headerSearch .select2-container {
    display: none !important;
    visibility: hidden !important;
    width: 0 !important;
    height: 0 !important;
    max-width: 0 !important;
    max-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    pointer-events: none !important;
}

body.df-premium-v4 .df-v4-search form.headerSearch input[type="text"],
body.df-premium-v4 .df-v4-search form.headerSearch input[type="search"],
body.df-premium-v4 .df-hero-search form.headerSearch input[type="text"],
body.df-premium-v4 .df-hero-search form.headerSearch input[type="search"] {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    height: 54px !important;
    min-height: 54px !important;
    margin: 0 !important;
    padding: 0 24px 0 58px !important;
    color: #101828 !important;
    background: rgba(255, 255, 255, .98) !important;
    border: 0 !important;
    border-radius: 999px !important;
    box-shadow: none !important;
    text-indent: 0 !important;
    font: 650 16px/54px Inter, Arial, sans-serif !important;
    letter-spacing: -.02em;
}

body.df-premium-v4 .df-v4-search form.headerSearch input[type="text"]::placeholder,
body.df-premium-v4 .df-v4-search form.headerSearch input[type="search"]::placeholder,
body.df-premium-v4 .df-hero-search form.headerSearch input[type="text"]::placeholder,
body.df-premium-v4 .df-hero-search form.headerSearch input[type="search"]::placeholder {
    color: #667085 !important;
    opacity: 1 !important;
}

body.df-premium-v4 .df-v4-search form.headerSearch:before,
body.df-premium-v4 .df-hero-search form.headerSearch:before {
    content: "⌕";
    position: absolute;
    left: 30px;
    top: 50%;
    z-index: 4;
    width: 26px;
    height: 26px;
    transform: translateY(-50%);
    color: #475467;
    font: 500 30px/24px Inter, Arial, sans-serif;
    pointer-events: none;
}

body.df-premium-v4 .df-v4-search form.headerSearch .phpld-fbox-button,
body.df-premium-v4 .df-hero-search form.headerSearch .phpld-fbox-button {
    grid-column: 2 !important;
    grid-row: 1 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 0 !important;
    width: auto !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    clear: none !important;
}

body.df-premium-v4 .df-v4-search form.headerSearch input[type="submit"],
body.df-premium-v4 .df-v4-search form.headerSearch button,
body.df-premium-v4 .df-v4-search form.headerSearch .phpld-searchbutton,
body.df-premium-v4 .df-hero-search form.headerSearch input[type="submit"],
body.df-premium-v4 .df-hero-search form.headerSearch button,
body.df-premium-v4 .df-hero-search form.headerSearch .phpld-searchbutton {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 128px !important;
    width: auto !important;
    height: 54px !important;
    min-height: 54px !important;
    margin: 0 !important;
    padding: 0 28px !important;
    color: #fff !important;
    background: linear-gradient(135deg, var(--df-v4-gold), var(--df-v4-orange) 45%, var(--df-v4-red)) !important;
    border: 0 !important;
    border-radius: 999px !important;
    box-shadow: 0 16px 34px rgba(236, 0, 60, .34) !important;
    text-indent: 0 !important;
    text-align: center !important;
    text-transform: uppercase !important;
    font: 950 14px/1 Inter, Arial, sans-serif !important;
    letter-spacing: .02em;
    white-space: nowrap !important;
}

/* Trust row */
body.df-premium-v4 .df-v4-trust-row {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 28px;
    max-width: 900px;
}

body.df-premium-v4 .df-v4-trust-row span {
    display: grid;
    grid-template-columns: 36px minmax(0, 1fr);
    align-items: center;
    gap: 12px;
    color: #fff;
}

body.df-premium-v4 .df-v4-trust-row i {
    grid-row: span 2;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    color: var(--df-v4-orange);
    border: 1px solid rgba(255, 106, 0, .55);
    border-radius: 12px;
    font-style: normal;
    font-size: 19px;
    box-shadow: 0 10px 26px rgba(236, 0, 60, .10);
}

body.df-premium-v4 .df-v4-trust-row strong {
    display: block;
    color: #fff;
    font: 850 14px/1.2 Inter, Arial, sans-serif;
}

body.df-premium-v4 .df-v4-trust-row small {
    display: block;
    margin-top: 3px;
    color: rgba(255,255,255,.62);
    font-size: 13px;
    line-height: 1.2;
}

/* Spotlight card and flame */
body.df-premium-v4 .df-v4-spotlight {
    position: relative;
    z-index: 3;
    grid-column: 2;
    width: 100%;
    min-height: 264px;
    padding: 34px 32px 28px;
    color: #fff;
    text-align: center;
    background: linear-gradient(145deg, rgba(255,255,255,.12), rgba(255,255,255,.045));
    border: 1px solid rgba(255, 255, 255, .18);
    border-radius: 28px;
    box-shadow: 0 28px 72px rgba(0,0,0,.26), inset 0 1px 0 rgba(255,255,255,.12);
    backdrop-filter: blur(18px);
}

body.df-premium-v4 .df-v4-spotlight-icon,
body.df-premium-v4 .df-v4-submit-card-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 72px;
    height: 72px;
    margin: 0 auto 18px;
    color: var(--df-v4-gold);
    background: radial-gradient(circle, rgba(255, 180, 59, .18), rgba(236, 0, 60, .06) 62%, transparent 63%);
    border: 1px solid rgba(255, 180, 59, .18);
    border-radius: 50%;
    box-shadow: 0 0 0 14px rgba(255, 255, 255, .035), 0 16px 32px rgba(0, 0, 0, .10);
    font-size: 28px;
}

body.df-premium-v4 .df-v4-spotlight h2 {
    margin: 0 0 9px !important;
    color: #fff !important;
    border: 0 !important;
    padding: 0 !important;
    font: 900 21px/1.2 Inter, Arial, sans-serif !important;
    letter-spacing: -.035em !important;
    text-align: center !important;
}

body.df-premium-v4 .df-v4-spotlight h2:before {
    display: none !important;
}

body.df-premium-v4 .df-v4-spotlight p {
    max-width: 270px;
    margin: 0 auto 22px !important;
    color: rgba(255,255,255,.72) !important;
    font-size: 15px !important;
    line-height: 1.55;
}

body.df-premium-v4 .df-v4-spotlight a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    width: 100%;
    min-height: 58px;
    margin-bottom: 16px;
    color: #fff !important;
    background: linear-gradient(135deg, #ff8b38, var(--df-v4-orange) 45%, var(--df-v4-red));
    border-radius: 999px;
    box-shadow: 0 18px 36px rgba(236, 0, 60, .27);
    font: 900 16px/1 Inter, Arial, sans-serif;
    text-decoration: none !important;
}

body.df-premium-v4 .df-v4-spotlight small {
    display: block;
    color: rgba(255,255,255,.62);
    font-size: 12px;
}

body.df-premium-v4 .df-v4-flame-orbit {
    position: relative;
    z-index: 1;
    grid-column: 3;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 360px;
    opacity: .96;
}

body.df-premium-v4 .df-v4-flame-orbit:before,
body.df-premium-v4 .df-v4-flame-orbit:after {
    content: "";
    position: absolute;
    border-radius: 50%;
    border: 1px solid rgba(255, 106, 0, .26);
}

body.df-premium-v4 .df-v4-flame-orbit:before {
    inset: -22px;
}

body.df-premium-v4 .df-v4-flame-orbit:after {
    inset: -70px;
    opacity: .55;
}

body.df-premium-v4 .df-v4-flame-orbit img {
    position: relative;
    z-index: 1;
    width: min(28vw, 310px);
    min-width: 230px;
    height: auto;
    filter: drop-shadow(0 34px 58px rgba(236, 0, 60, .36));
    transform: rotate(0deg);
}

html.df-route-submit body.df-premium-v4 .df-v4-flame-orbit,
html.df-route-inner:not(.df-route-home) body.df-premium-v4 .df-v4-flame-orbit {
    grid-column: 2;
    min-height: 230px;
    justify-content: flex-end;
    opacity: .72;
}

html.df-route-submit body.df-premium-v4 .df-v4-flame-orbit img,
html.df-route-inner:not(.df-route-home) body.df-premium-v4 .df-v4-flame-orbit img {
    width: min(22vw, 240px);
    min-width: 170px;
}

/* Main shell */
body.df-premium-v4 .df-v4-main,
body.df-premium-v4 .main-content.df-v4-main {
    width: min(1400px, calc(100% - 96px)) !important;
    max-width: 1400px !important;
    margin: 0 auto 0 !important;
    padding: 34px 0 56px !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

body.df-premium-v4 .df-v4-content-wrapper {
    width: 100%;
    min-height: 420px;
}

body.df-premium-v4 .df-v4-breadcrumbs,
body.df-premium-v4 .path.df-v4-breadcrumbs {
    display: block;
    width: 100%;
    margin: 0 0 26px !important;
    padding: 15px 26px !important;
    color: #667085 !important;
    background: rgba(255,255,255,.82) !important;
    border: 1px solid rgba(226,232,240,.96) !important;
    border-radius: 999px !important;
    box-shadow: 0 12px 26px rgba(15, 23, 42, .04) !important;
    font: 850 14px/1.3 Inter, Arial, sans-serif !important;
    backdrop-filter: blur(12px);
}

html.df-route-home body.df-premium-v4 .df-v4-breadcrumbs {
    display: none !important;
}

body.df-premium-v4 .df-v4-breadcrumbs a {
    color: #0f172a !important;
    font-weight: 900 !important;
    text-decoration: none !important;
}

body.df-premium-v4 .df-v4-categories-intro {
    display: none;
    width: min(900px, 100%);
    margin: 0 auto 32px;
    text-align: center;
}

html.df-route-home body.df-premium-v4 .df-v4-categories-intro {
    display: block;
}

body.df-premium-v4 .df-v4-categories-intro p {
    margin: 0 0 10px !important;
    color: var(--df-v4-orange) !important;
    font: 950 14px/1 Inter, Arial, sans-serif !important;
    letter-spacing: .16em;
    text-transform: uppercase;
}

body.df-premium-v4 .df-v4-categories-intro h2 {
    margin: 0 0 12px !important;
    padding: 0 !important;
    color: var(--df-v4-ink) !important;
    border: 0 !important;
    font: 950 clamp(32px, 3.2vw, 48px)/1.08 Inter, Arial, sans-serif !important;
    letter-spacing: -.055em !important;
    text-align: center !important;
}

body.df-premium-v4 .df-v4-categories-intro h2:before {
    display: none !important;
}

body.df-premium-v4 .df-v4-categories-intro span {
    display: block;
    max-width: 680px;
    margin: 0 auto;
    color: #667085;
    font-size: 18px;
    line-height: 1.5;
}

body.df-premium-v4 .df-v4-page-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    align-items: start;
    gap: 34px;
}

html.df-route-submit body.df-premium-v4 .df-v4-page-grid {
    grid-template-columns: minmax(0, 1fr) 380px;
}

body.df-premium-v4 .df-v4-page-main {
    width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* Hide the old textual homepage hero and old webdirectories image because V4 has a real hero above. */
html.df-route-home body.df-premium-v4 .df-v4-page-main > h1:first-child,
html.df-route-home body.df-premium-v4 .df-v4-page-main > h1:first-child + h2,
html.df-route-home body.df-premium-v4 .df-v4-page-main > h1:first-child + h3,
html.df-route-home body.df-premium-v4 .df-v4-page-main > h3:first-of-type,
html.df-route-home body.df-premium-v4 .df-v4-page-main img[src*="webdirectories"],
html.df-route-home body.df-premium-v4 .df-v4-page-main img[alt*="webdirectories"],
html.df-route-home body.df-premium-v4 .df-v4-page-main img[alt*="Web"] {
    display: none !important;
}

/* Category grid — premium simple cards inspired by modern listing/review platforms. */
html.df-route-home body.df-premium-v4 .AllCategories,
html.df-route-home body.df-premium-v4 .category-list,
html.df-route-home body.df-premium-v4 .categories,
html.df-route-home body.df-premium-v4 ul.boxPopCats {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 20px !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

html.df-route-home body.df-premium-v4 .AllCategories .phpld-grid {
    display: contents !important;
}

html.df-route-home body.df-premium-v4 .AllCategories .phpld-gbox,
html.df-route-home body.df-premium-v4 .AllCategories > div,
html.df-route-home body.df-premium-v4 ul.boxPopCats > li,
html.df-route-home body.df-premium-v4 .boxPopCats > li,
html.df-route-home body.df-premium-v4 .category-list > li,
html.df-route-home body.df-premium-v4 .categories > li {
    position: relative !important;
    display: grid !important;
    grid-template-columns: 74px minmax(0, 1fr) 26px !important;
    align-items: center !important;
    min-height: 112px !important;
    margin: 0 !important;
    padding: 22px 28px !important;
    overflow: hidden !important;
    color: var(--df-v4-ink) !important;
    background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(255,255,255,.92)) !important;
    border: 1px solid rgba(226,232,240,.96) !important;
    border-radius: 20px !important;
    box-shadow: 0 12px 30px rgba(15, 23, 42, .07) !important;
    list-style: none !important;
    transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

html.df-route-home body.df-premium-v4 .AllCategories .phpld-gbox:hover,
html.df-route-home body.df-premium-v4 ul.boxPopCats > li:hover,
html.df-route-home body.df-premium-v4 .category-list > li:hover,
html.df-route-home body.df-premium-v4 .categories > li:hover {
    transform: translateY(-4px);
    border-color: rgba(255, 106, 0, .28) !important;
    box-shadow: 0 22px 48px rgba(15, 23, 42, .11) !important;
}

html.df-route-home body.df-premium-v4 .AllCategories .phpld-gbox:before,
html.df-route-home body.df-premium-v4 ul.boxPopCats > li:before,
html.df-route-home body.df-premium-v4 .category-list > li:before,
html.df-route-home body.df-premium-v4 .categories > li:before {
    content: "" !important;
    position: static !important;
    grid-column: 1;
    width: 54px !important;
    height: 54px !important;
    margin: 0 !important;
    border-radius: 50% !important;
    background: radial-gradient(circle at 35% 28%, rgba(255,255,255,.90), rgba(139, 92, 246, .18) 45%, rgba(139, 92, 246, .10) 100%) !important;
    box-shadow: inset 0 0 0 1px rgba(139, 92, 246, .08), 0 10px 24px rgba(139, 92, 246, .12) !important;
}

html.df-route-home body.df-premium-v4 .AllCategories .phpld-gbox:nth-child(2n):before,
html.df-route-home body.df-premium-v4 ul.boxPopCats > li:nth-child(2n):before { background: radial-gradient(circle at 35% 28%, rgba(255,255,255,.92), rgba(18, 184, 134, .18) 45%, rgba(18, 184, 134, .10) 100%) !important; }
html.df-route-home body.df-premium-v4 .AllCategories .phpld-gbox:nth-child(3n):before,
html.df-route-home body.df-premium-v4 ul.boxPopCats > li:nth-child(3n):before { background: radial-gradient(circle at 35% 28%, rgba(255,255,255,.92), rgba(56, 189, 248, .18) 45%, rgba(56, 189, 248, .10) 100%) !important; }
html.df-route-home body.df-premium-v4 .AllCategories .phpld-gbox:nth-child(4n):before,
html.df-route-home body.df-premium-v4 ul.boxPopCats > li:nth-child(4n):before { background: radial-gradient(circle at 35% 28%, rgba(255,255,255,.92), rgba(236, 72, 153, .18) 45%, rgba(236, 72, 153, .10) 100%) !important; }
html.df-route-home body.df-premium-v4 .AllCategories .phpld-gbox:nth-child(5n):before,
html.df-route-home body.df-premium-v4 ul.boxPopCats > li:nth-child(5n):before { background: radial-gradient(circle at 35% 28%, rgba(255,255,255,.92), rgba(255, 180, 59, .22) 45%, rgba(255, 180, 59, .10) 100%) !important; }

html.df-route-home body.df-premium-v4 .AllCategories .phpld-gbox:after,
html.df-route-home body.df-premium-v4 ul.boxPopCats > li:after,
html.df-route-home body.df-premium-v4 .category-list > li:after,
html.df-route-home body.df-premium-v4 .categories > li:after {
    content: "→" !important;
    grid-column: 3;
    justify-self: end;
    color: #475467;
    font: 800 22px/1 Inter, Arial, sans-serif;
    transition: transform .22s ease, color .22s ease;
}

html.df-route-home body.df-premium-v4 .AllCategories .phpld-gbox:hover:after,
html.df-route-home body.df-premium-v4 ul.boxPopCats > li:hover:after,
html.df-route-home body.df-premium-v4 .category-list > li:hover:after,
html.df-route-home body.df-premium-v4 .categories > li:hover:after {
    color: var(--df-v4-red);
    transform: translateX(4px);
}

html.df-route-home body.df-premium-v4 .AllCategories h2,
html.df-route-home body.df-premium-v4 .AllCategories h3,
html.df-route-home body.df-premium-v4 .AllCategories h4,
html.df-route-home body.df-premium-v4 ul.boxPopCats h2,
html.df-route-home body.df-premium-v4 ul.boxPopCats h3,
html.df-route-home body.df-premium-v4 ul.boxPopCats h4 {
    grid-column: 2;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    color: var(--df-v4-ink) !important;
    font: 900 18px/1.18 Inter, Arial, sans-serif !important;
    letter-spacing: -.025em !important;
    text-align: left !important;
}

html.df-route-home body.df-premium-v4 .AllCategories h2:before,
html.df-route-home body.df-premium-v4 .AllCategories h3:before,
html.df-route-home body.df-premium-v4 .AllCategories h4:before,
html.df-route-home body.df-premium-v4 ul.boxPopCats h2:before,
html.df-route-home body.df-premium-v4 ul.boxPopCats h3:before,
html.df-route-home body.df-premium-v4 ul.boxPopCats h4:before {
    display: none !important;
}

html.df-route-home body.df-premium-v4 .AllCategories h2 a,
html.df-route-home body.df-premium-v4 .AllCategories h3 a,
html.df-route-home body.df-premium-v4 .AllCategories h4 a,
html.df-route-home body.df-premium-v4 ul.boxPopCats h2 a,
html.df-route-home body.df-premium-v4 ul.boxPopCats h3 a,
html.df-route-home body.df-premium-v4 ul.boxPopCats h4 a,
html.df-route-home body.df-premium-v4 .category-list > li > a,
html.df-route-home body.df-premium-v4 .categories > li > a {
    color: var(--df-v4-ink) !important;
    font-weight: 900 !important;
    text-decoration: none !important;
}

html.df-route-home body.df-premium-v4 .AllCategories ul,
html.df-route-home body.df-premium-v4 .AllCategories ol,
html.df-route-home body.df-premium-v4 ul.boxPopCats ul,
html.df-route-home body.df-premium-v4 .category-list ul,
html.df-route-home body.df-premium-v4 .categories ul {
    display: none !important;
}

html.df-route-home body.df-premium-v4 .AllCategories small,
html.df-route-home body.df-premium-v4 .AllCategories .count,
html.df-route-home body.df-premium-v4 .categories .count {
    color: #667085 !important;
    font-size: 14px !important;
}

/* Generic page cards and listing stream */
body.df-premium-v4 .box,
body.df-premium-v4 .phpld-widget,
body.df-premium-v4 .listing-list-item,
body.df-premium-v4 .listing-style-list .listing-list-item.list-box,
body.df-premium-v4 .list-box,
body.df-premium-v4 fieldset,
body.df-premium-v4 .phpld-form:not(.headerSearch),
body.df-premium-v4 .phpld-cbox > form {
    background: rgba(255, 255, 255, .94) !important;
    border: 1px solid rgba(226,232,240,.96) !important;
    border-radius: 24px !important;
    box-shadow: 0 14px 42px rgba(15, 23, 42, .075) !important;
}

body.df-premium-v4 .listing-style-list .listing-list-item,
body.df-premium-v4 .listingsList .phpld-gbox,
body.df-premium-v4 .listingsList ul li,
body.df-premium-v4 .linklist li {
    padding: 24px !important;
    margin: 0 0 20px !important;
    transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

body.df-premium-v4 .listing-style-list .listing-list-item:hover,
body.df-premium-v4 .listingsList .phpld-gbox:hover,
body.df-premium-v4 .listingsList ul li:hover,
body.df-premium-v4 .linklist li:hover {
    transform: translateY(-3px);
    border-color: rgba(255, 106, 0, .24) !important;
    box-shadow: 0 22px 50px rgba(15, 23, 42, .11) !important;
}

body.df-premium-v4 .listing-title,
body.df-premium-v4 a.listing-title,
body.df-premium-v4 .listingsList h3 a,
body.df-premium-v4 .listingsList h4 a {
    color: var(--df-v4-ink) !important;
    font: 950 clamp(20px, 1.7vw, 28px)/1.12 Inter, Arial, sans-serif !important;
    letter-spacing: -.045em !important;
}

body.df-premium-v4 .listing-title:hover,
body.df-premium-v4 a.listing-title:hover,
body.df-premium-v4 .listingsList h3 a:hover,
body.df-premium-v4 .listingsList h4 a:hover {
    color: var(--df-v4-red) !important;
}

body.df-premium-v4 a.readMore,
body.df-premium-v4 .readMore,
body.df-premium-v4 .more,
body.df-premium-v4 a[title*="Read"] {
    min-height: 38px !important;
    padding: 0 15px !important;
    color: var(--df-v4-red) !important;
    background: #fff1f2 !important;
    border: 1px solid #ffe4e6 !important;
    border-radius: 999px !important;
    font-weight: 900 !important;
}

body.df-premium-v4 a.readMore:hover,
body.df-premium-v4 .readMore:hover,
body.df-premium-v4 .more:hover,
body.df-premium-v4 a[title*="Read"]:hover {
    color: #fff !important;
    background: linear-gradient(135deg, var(--df-v4-orange), var(--df-v4-red)) !important;
}

/* Submit page: premium card layout, left aligned Select Category, tree and button */
body.df-premium-v4 .df-v4-submit-card {
    display: none;
}

html.df-route-submit body.df-premium-v4 .df-v4-submit-card {
    position: sticky;
    top: 24px;
    display: block;
    min-height: 420px;
    padding: 36px 34px;
    overflow: hidden;
    background:
        radial-gradient(circle at 50% 0%, rgba(139, 92, 246, .14), transparent 11rem),
        linear-gradient(180deg, rgba(255,255,255,.96), rgba(255,247,237,.92));
    border: 1px solid rgba(226,232,240,.96);
    border-radius: 26px;
    box-shadow: 0 22px 60px rgba(15, 23, 42, .09);
    text-align: center;
}

html.df-route-submit body.df-premium-v4 .df-v4-submit-card h2 {
    margin: 0 0 28px !important;
    padding: 0 !important;
    color: var(--df-v4-ink) !important;
    border: 0 !important;
    font: 950 21px/1.2 Inter, Arial, sans-serif !important;
    letter-spacing: -.04em !important;
    text-align: center !important;
}

html.df-route-submit body.df-premium-v4 .df-v4-submit-card h2:before {
    display: none !important;
}

html.df-route-submit body.df-premium-v4 .df-v4-submit-card ul {
    margin: 0;
    padding: 0;
    list-style: none;
    text-align: left;
}

html.df-route-submit body.df-premium-v4 .df-v4-submit-card li {
    display: grid;
    grid-template-columns: 48px minmax(0, 1fr);
    gap: 14px 16px;
    align-items: start;
    margin: 0 0 26px;
    padding: 0;
    color: var(--df-v4-ink);
}

html.df-route-submit body.df-premium-v4 .df-v4-submit-card li:last-child {
    margin-bottom: 0;
}

html.df-route-submit body.df-premium-v4 .df-v4-submit-card li span {
    grid-row: span 2;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    color: var(--df-v4-orange);
    background: rgba(255, 106, 0, .08);
    border-radius: 50%;
    font-size: 21px;
}

html.df-route-submit body.df-premium-v4 .df-v4-submit-card li strong {
    display: block;
    margin-top: 1px;
    color: var(--df-v4-ink);
    font: 900 15px/1.25 Inter, Arial, sans-serif;
}

html.df-route-submit body.df-premium-v4 .df-v4-submit-card li em {
    display: block;
    margin-top: 2px;
    color: #667085;
    font-style: normal;
    font-size: 14px;
    line-height: 1.55;
}

html.df-route-submit body.df-premium-v4 .df-v4-page-main {
    padding: 34px !important;
    background: rgba(255,255,255,.94) !important;
    border: 1px solid rgba(226,232,240,.96) !important;
    border-radius: 28px !important;
    box-shadow: 0 22px 60px rgba(15, 23, 42, .085) !important;
}

html.df-route-submit body.df-premium-v4 .df-v4-page-main > h1,
html.df-route-submit body.df-premium-v4 .df-v4-page-main > h2,
html.df-route-submit body.df-premium-v4 .df-v4-page-main > h3,
html.df-route-submit body.df-premium-v4 .df-v4-page-main legend,
html.df-route-submit body.df-premium-v4 .df-v4-page-main .phpld-form:not(.headerSearch) h1,
html.df-route-submit body.df-premium-v4 .df-v4-page-main .phpld-form:not(.headerSearch) h2,
html.df-route-submit body.df-premium-v4 .df-v4-page-main .phpld-form:not(.headerSearch) h3 {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    margin: 0 0 22px !important;
    padding: 0 0 16px 22px !important;
    color: var(--df-v4-ink) !important;
    background: transparent !important;
    border: 0 !important;
    border-bottom: 1px solid #e5e7eb !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    text-align: left !important;
    text-indent: 0 !important;
    text-shadow: none !important;
    font: 950 clamp(25px, 2.4vw, 38px)/1.15 Inter, Arial, sans-serif !important;
    letter-spacing: -.05em !important;
}

html.df-route-submit body.df-premium-v4 .df-v4-page-main > h1:before,
html.df-route-submit body.df-premium-v4 .df-v4-page-main > h2:before,
html.df-route-submit body.df-premium-v4 .df-v4-page-main > h3:before,
html.df-route-submit body.df-premium-v4 .df-v4-page-main legend:before,
html.df-route-submit body.df-premium-v4 .df-v4-page-main .phpld-form:not(.headerSearch) h1:before,
html.df-route-submit body.df-premium-v4 .df-v4-page-main .phpld-form:not(.headerSearch) h2:before,
html.df-route-submit body.df-premium-v4 .df-v4-page-main .phpld-form:not(.headerSearch) h3:before {
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    top: .14em !important;
    width: 5px !important;
    height: 1.08em !important;
    border-radius: 999px !important;
    background: linear-gradient(180deg, var(--df-v4-gold), var(--df-v4-orange), var(--df-v4-red)) !important;
    box-shadow: 0 0 0 7px rgba(255, 106, 0, .08) !important;
}

html.df-route-submit body.df-premium-v4 .df-v4-page-main .phpld-form:not(.headerSearch),
html.df-route-submit body.df-premium-v4 .df-v4-page-main #submitForm,
html.df-route-submit body.df-premium-v4 .df-v4-page-main #submit_form {
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

html.df-route-submit body.df-premium-v4 .df-v4-page-main label,
html.df-route-submit body.df-premium-v4 .df-v4-page-main .phpld-label,
html.df-route-submit body.df-premium-v4 .df-v4-page-main label[for="hierarchy"],
html.df-route-submit body.df-premium-v4 .df-v4-page-main .title,
html.df-route-submit body.df-premium-v4 .df-v4-page-main .label {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 0 8px !important;
    padding: 0 !important;
    float: none !important;
    clear: both !important;
    color: #101828 !important;
    text-align: left !important;
    font: 900 15px/1.35 Inter, Arial, sans-serif !important;
}

html.df-route-submit body.df-premium-v4 .df-v4-page-main #hierarchy,
html.df-route-submit body.df-premium-v4 .df-v4-page-main select#hierarchy,
html.df-route-submit body.df-premium-v4 .df-v4-page-main select[name*="CATEGORY"],
html.df-route-submit body.df-premium-v4 .df-v4-page-main select[name*="category"] {
    display: block !important;
    width: min(100%, 760px) !important;
    max-width: 760px !important;
    height: 46px !important;
    min-height: 46px !important;
    margin: 0 0 14px 0 !important;
    padding: 0 16px !important;
    float: none !important;
    clear: both !important;
    color: #101828 !important;
    background: #fff !important;
    border: 1px solid #d0d5dd !important;
    border-radius: 12px !important;
    box-shadow: 0 7px 18px rgba(15, 23, 42, .05) !important;
    text-align: left !important;
    text-indent: 0 !important;
    font: 700 14px/46px Inter, Arial, sans-serif !important;
}

html.df-route-submit body.df-premium-v4 .df-v4-page-main #categtree,
html.df-route-submit body.df-premium-v4 .df-v4-page-main #categ-tree,
html.df-route-submit body.df-premium-v4 .df-v4-page-main .categtree,
html.df-route-submit body.df-premium-v4 .df-v4-page-main .treeview {
    display: block !important;
    width: min(100%, 760px) !important;
    max-width: 760px !important;
    min-height: 280px !important;
    max-height: 420px !important;
    height: auto !important;
    margin: 10px 0 24px 0 !important;
    padding: 0 !important;
    float: none !important;
    clear: both !important;
    overflow: auto !important;
    color: #101828 !important;
    background: #fff !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 18px !important;
    box-shadow: 0 16px 34px rgba(15,23,42,.06) !important;
    text-align: left !important;
}

html.df-route-submit body.df-premium-v4 .df-v4-page-main #categtree h2,
html.df-route-submit body.df-premium-v4 .df-v4-page-main #categtree h3,
html.df-route-submit body.df-premium-v4 .df-v4-page-main #categ-tree h2,
html.df-route-submit body.df-premium-v4 .df-v4-page-main #categ-tree h3,
html.df-route-submit body.df-premium-v4 .df-v4-page-main .categtree h2,
html.df-route-submit body.df-premium-v4 .df-v4-page-main .categtree h3 {
    position: sticky !important;
    top: 0 !important;
    z-index: 2 !important;
    width: auto !important;
    margin: 0 !important;
    padding: 12px 16px 12px 44px !important;
    color: #101828 !important;
    background: linear-gradient(180deg, #ffffff, #f9fafb) !important;
    border: 0 !important;
    border-bottom: 1px solid #e5e7eb !important;
    border-radius: 18px 18px 0 0 !important;
    box-shadow: none !important;
    text-align: left !important;
    text-indent: 0 !important;
    font: 950 14px/1.25 Inter, Arial, sans-serif !important;
    letter-spacing: .02em !important;
    text-transform: uppercase;
}

html.df-route-submit body.df-premium-v4 .df-v4-page-main #categtree h2:before,
html.df-route-submit body.df-premium-v4 .df-v4-page-main #categtree h3:before,
html.df-route-submit body.df-premium-v4 .df-v4-page-main #categ-tree h2:before,
html.df-route-submit body.df-premium-v4 .df-v4-page-main #categ-tree h3:before,
html.df-route-submit body.df-premium-v4 .df-v4-page-main .categtree h2:before,
html.df-route-submit body.df-premium-v4 .df-v4-page-main .categtree h3:before {
    content: "" !important;
    position: absolute !important;
    left: 18px !important;
    top: 50% !important;
    width: 8px !important;
    height: 20px !important;
    transform: translateY(-50%) !important;
    border-radius: 999px !important;
    background: linear-gradient(180deg, var(--df-v4-gold), var(--df-v4-orange), var(--df-v4-red)) !important;
}

html.df-route-submit body.df-premium-v4 .df-v4-page-main #categtree ul,
html.df-route-submit body.df-premium-v4 .df-v4-page-main #categ-tree ul,
html.df-route-submit body.df-premium-v4 .df-v4-page-main .categtree ul,
html.df-route-submit body.df-premium-v4 .df-v4-page-main .treeview ul {
    margin: 0 !important;
    padding: 6px 0 !important;
    list-style: none !important;
}

html.df-route-submit body.df-premium-v4 .df-v4-page-main #categtree li,
html.df-route-submit body.df-premium-v4 .df-v4-page-main #categ-tree li,
html.df-route-submit body.df-premium-v4 .df-v4-page-main .categtree li,
html.df-route-submit body.df-premium-v4 .df-v4-page-main .treeview li {
    min-height: 39px !important;
    margin: 0 !important;
    padding: 9px 18px !important;
    border-bottom: 1px solid rgba(229,231,235,.78) !important;
    color: #101828 !important;
    font: 850 14px/1.35 Inter, Arial, sans-serif !important;
    text-align: left !important;
}

html.df-route-submit body.df-premium-v4 .df-v4-page-main #categtree a,
html.df-route-submit body.df-premium-v4 .df-v4-page-main #categ-tree a,
html.df-route-submit body.df-premium-v4 .df-v4-page-main .categtree a,
html.df-route-submit body.df-premium-v4 .df-v4-page-main .treeview a {
    color: #101828 !important;
    text-decoration: none !important;
}

html.df-route-submit body.df-premium-v4 .df-v4-page-main #categtree a:hover,
html.df-route-submit body.df-premium-v4 .df-v4-page-main #categ-tree a:hover,
html.df-route-submit body.df-premium-v4 .df-v4-page-main .categtree a:hover,
html.df-route-submit body.df-premium-v4 .df-v4-page-main .treeview a:hover {
    color: var(--df-v4-red) !important;
}

html.df-route-submit body.df-premium-v4 .df-v4-page-main div.phpld-fbox-button,
html.df-route-submit body.df-premium-v4 .df-v4-page-main .phpld-fbox-button,
html.df-route-submit body.df-premium-v4 .df-v4-page-main .button-row {
    display: flex !important;
    justify-content: flex-start !important;
    align-items: center !important;
    width: 100% !important;
    margin: 24px 0 0 !important;
    padding: 0 !important;
    float: none !important;
    clear: both !important;
}

html.df-route-submit body.df-premium-v4 .df-v4-page-main input[type="submit"],
html.df-route-submit body.df-premium-v4 .df-v4-page-main button[type="submit"],
body.df-premium-v4 .phpld-button,
body.df-premium-v4 input[type="submit"] {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 54px !important;
    padding: 0 28px !important;
    color: #fff !important;
    background: linear-gradient(135deg, var(--df-v4-orange), var(--df-v4-red)) !important;
    border: 0 !important;
    border-radius: 999px !important;
    box-shadow: 0 18px 36px rgba(236, 0, 60, .24) !important;
    text-indent: 0 !important;
    text-transform: none !important;
    font: 900 15px/1 Inter, Arial, sans-serif !important;
}

/* Inputs/forms sitewide */
body.df-premium-v4 input[type="text"],
body.df-premium-v4 input[type="email"],
body.df-premium-v4 input[type="url"],
body.df-premium-v4 input[type="password"],
body.df-premium-v4 textarea,
body.df-premium-v4 select {
    border-radius: 14px !important;
    border: 1px solid #d0d5dd !important;
    box-shadow: 0 1px 0 rgba(15,23,42,.02) !important;
    font-family: Inter, Arial, sans-serif !important;
}

body.df-premium-v4 input:focus,
body.df-premium-v4 textarea:focus,
body.df-premium-v4 select:focus {
    outline: none !important;
    border-color: rgba(255, 106, 0, .62) !important;
    box-shadow: 0 0 0 4px rgba(255, 106, 0, .12) !important;
}

/* Footer */
body.df-premium-v4 .df-v4-footer,
body.df-premium-v4 .footer.df-v4-footer {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 28px 48px !important;
    color: rgba(255,255,255,.78);
    background:
        radial-gradient(circle at 20% 0%, rgba(255, 106, 0, .13), transparent 18rem),
        linear-gradient(110deg, #020617, #0f1020 58%, #180414) !important;
    border: 0 !important;
    border-radius: 28px 28px 0 0 !important;
    box-shadow: none !important;
}

body.df-premium-v4 .df-footer-brand img {
    width: 42px;
    height: 42px;
}

body.df-premium-v4 .df-footer-brand strong {
    color: #fff;
    font-size: 16px;
}

body.df-premium-v4 .df-footer-menu a {
    color: rgba(255,255,255,.86) !important;
    background: rgba(255,255,255,.06);
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 999px;
    padding: 8px 13px;
    text-decoration: none !important;
}

body.df-premium-v4 .df-footer-menu a:hover {
    color: #fff !important;
    background: rgba(255,255,255,.12);
}

body.df-premium-v4 .df-footer-meta strong {
    color: #fff;
    font-size: 28px;
}

/* Responsive */
@media (max-width: 1280px) {
    body.df-premium-v4 .df-v4-shell,
    body.df-premium-v4 .df-v4-main,
    body.df-premium-v4 .main-content.df-v4-main {
        width: min(100% - 48px, 1180px) !important;
    }

    body.df-premium-v4 .df-v4-nav-shell {
        grid-template-columns: minmax(220px, 310px) 1fr auto;
        gap: 18px;
    }

    body.df-premium-v4 .df-v4-nav .phpld-hlist ul {
        gap: 13px !important;
    }

    body.df-premium-v4 .df-v4-nav .phpld-hlist ul li a,
    body.df-premium-v4 .df-v4-nav .phpld-hlist ul li strong {
        font-size: 14px !important;
    }

    body.df-premium-v4 .df-v4-hero-stage {
        grid-template-columns: minmax(0, 1fr) 330px;
    }

    body.df-premium-v4 .df-v4-flame-orbit {
        position: absolute;
        right: 32px;
        bottom: 0;
        grid-column: auto;
        opacity: .40;
    }

    html.df-route-home body.df-premium-v4 .AllCategories,
    html.df-route-home body.df-premium-v4 .category-list,
    html.df-route-home body.df-premium-v4 .categories,
    html.df-route-home body.df-premium-v4 ul.boxPopCats {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 980px) {
    body.df-premium-v4 .df-v4-nav-shell {
        grid-template-columns: 1fr auto;
        gap: 16px;
    }

    body.df-premium-v4 .df-v4-nav {
        grid-column: 1 / -1;
        order: 3;
        overflow: hidden;
    }

    body.df-premium-v4 .df-v4-nav .phpld-hlist {
        justify-content: flex-start !important;
        overflow-x: auto !important;
        padding-bottom: 4px !important;
    }

    body.df-premium-v4 .df-v4-nav .phpld-hlist ul {
        justify-content: flex-start !important;
        width: max-content !important;
        min-width: 100%;
    }

    body.df-premium-v4 .df-v4-hero-stage,
    html.df-route-submit body.df-premium-v4 .df-v4-hero-stage,
    html.df-route-inner:not(.df-route-home) body.df-premium-v4 .df-v4-hero-stage {
        grid-template-columns: 1fr;
        min-height: 0;
        padding: 34px 0 46px;
    }

    body.df-premium-v4 .df-v4-spotlight {
        grid-column: auto;
        max-width: 440px;
    }

    body.df-premium-v4 .df-v4-flame-orbit {
        display: none;
    }

    html.df-route-submit body.df-premium-v4 .df-v4-page-grid {
        grid-template-columns: 1fr;
    }

    html.df-route-submit body.df-premium-v4 .df-v4-submit-card {
        position: relative;
        top: auto;
        order: -1;
    }

    html.df-route-home body.df-premium-v4 .AllCategories,
    html.df-route-home body.df-premium-v4 .category-list,
    html.df-route-home body.df-premium-v4 .categories,
    html.df-route-home body.df-premium-v4 ul.boxPopCats {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    body.df-premium-v4 .df-v4-trust-row {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 640px) {
    body.df-premium-v4 .df-v4-shell,
    body.df-premium-v4 .df-v4-main,
    body.df-premium-v4 .main-content.df-v4-main {
        width: min(100% - 28px, 100%) !important;
    }

    body.df-premium-v4 .df-v4-nav-shell {
        padding-top: 16px;
    }

    body.df-premium-v4 .df-v4-brand-img {
        width: 230px;
    }

    body.df-premium-v4 .df-v4-submit-top {
        min-height: 44px;
        padding: 0 16px;
        font-size: 13px;
    }

    body.df-premium-v4 .df-v4-hero-copy h1,
    html.df-route-submit body.df-premium-v4 .df-v4-hero-copy h1,
    html.df-route-inner:not(.df-route-home) body.df-premium-v4 .df-v4-hero-copy h1 {
        font-size: clamp(34px, 12vw, 46px) !important;
    }

    body.df-premium-v4 .df-v4-lead {
        font-size: 16px !important;
    }

    body.df-premium-v4 .df-v4-search form.headerSearch,
    body.df-premium-v4 .df-hero-search form.headerSearch {
        border-radius: 28px !important;
    }

    body.df-premium-v4 .df-v4-search form.headerSearch div.phpld-columnar,
    body.df-premium-v4 .df-hero-search form.headerSearch div.phpld-columnar {
        grid-template-columns: 1fr !important;
    }

    body.df-premium-v4 .df-v4-search form.headerSearch .phpld-fbox-button,
    body.df-premium-v4 .df-hero-search form.headerSearch .phpld-fbox-button {
        grid-column: 1 !important;
        width: 100% !important;
    }

    body.df-premium-v4 .df-v4-search form.headerSearch input[type="submit"],
    body.df-premium-v4 .df-v4-search form.headerSearch button,
    body.df-premium-v4 .df-v4-search form.headerSearch .phpld-searchbutton,
    body.df-premium-v4 .df-hero-search form.headerSearch input[type="submit"],
    body.df-premium-v4 .df-hero-search form.headerSearch button,
    body.df-premium-v4 .df-hero-search form.headerSearch .phpld-searchbutton {
        width: 100% !important;
        min-width: 0 !important;
    }

    body.df-premium-v4 .df-v4-trust-row,
    html.df-route-home body.df-premium-v4 .AllCategories,
    html.df-route-home body.df-premium-v4 .category-list,
    html.df-route-home body.df-premium-v4 .categories,
    html.df-route-home body.df-premium-v4 ul.boxPopCats {
        grid-template-columns: 1fr !important;
    }

    html.df-route-submit body.df-premium-v4 .df-v4-page-main {
        padding: 22px !important;
    }

    body.df-premium-v4 .df-v4-footer,
    body.df-premium-v4 .footer.df-v4-footer {
        padding: 26px 20px !important;
        border-radius: 22px 22px 0 0 !important;
    }
}

/* Keep phpLD user panel/login links available without disturbing the premium header. */
body.df-premium-v4 .df-v4-user-panel {
    position: absolute;
    top: 8px;
    right: 0;
    z-index: 5;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: rgba(255,255,255,.58) !important;
    font-size: 12px !important;
    line-height: 1;
}
body.df-premium-v4 .df-v4-user-panel a {
    color: rgba(255,255,255,.70) !important;
    text-decoration: none !important;
    font-weight: 750;
}
body.df-premium-v4 .df-v4-user-panel a:hover { color: #fff !important; }
@media (max-width: 980px) {
    body.df-premium-v4 .df-v4-user-panel { display: none; }
}

/* =======================================================================
   DirectoryFire Premium V5 — live homepage compatibility hotfix
   Fixes found after activating V4 on DirectoryFire:
   1) Real phpLD category names/subcategories became blank icon cards because
      V4 styled intermediate AllCategories wrappers as category cards.
   2) The existing webdirectories.info banner image was hidden by the V4
      homepage cleanup rule. This restores it and makes it look premium.
   ======================================================================= */

/* Restore the old webdirectories.info sponsor/banner under the premium hero. */
html.df-route-home body.df-premium-v4 .df-v4-page-main a[href*="webdirectories"],
html.df-route-home body.df-premium-v4 .df-v4-page-main a[href*="webdirectories.info"],
body.df-premium-v5 .df-v4-page-main a[href*="webdirectories"],
body.df-premium-v5 .df-v4-page-main a[href*="webdirectories.info"] {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    width: min(100%, 760px) !important;
    margin: 16px auto 28px !important;
    padding: 18px !important;
    background: linear-gradient(180deg, #ffffff, #f8fafc) !important;
    border: 1px solid rgba(226, 232, 240, .96) !important;
    border-radius: 22px !important;
    box-shadow: 0 18px 44px rgba(15, 23, 42, .075) !important;
    text-align: center !important;
}

html.df-route-home body.df-premium-v4 .df-v4-page-main img[src*="webdirectories"],
html.df-route-home body.df-premium-v4 .df-v4-page-main img[alt*="webdirectories"],
html.df-route-home body.df-premium-v4 .df-v4-page-main img[alt*="Web"],
body.df-premium-v5 .df-v4-page-main img[src*="webdirectories"],
body.df-premium-v5 .df-v4-page-main img[alt*="webdirectories"],
body.df-premium-v5 .df-v4-page-main img[alt*="Web"] {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: auto !important;
    max-width: min(100%, 468px) !important;
    height: auto !important;
    margin: 0 auto !important;
    border-radius: 12px !important;
    box-shadow: none !important;
}

/* Let only actual category items become cards. Intermediate wrapper divs must
   not become blank cards. */
html.df-route-home body.df-premium-v4 .AllCategories,
html.df-route-home body.df-premium-v4 .category-list,
html.df-route-home body.df-premium-v4 .categories,
html.df-route-home body.df-premium-v4 ul.boxPopCats,
body.df-premium-v5 .AllCategories,
body.df-premium-v5 .category-list,
body.df-premium-v5 .categories,
body.df-premium-v5 ul.boxPopCats {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 20px !important;
    width: 100% !important;
    margin: 18px 0 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

@media (min-width: 1320px) {
    html.df-route-home body.df-premium-v4 .AllCategories,
    html.df-route-home body.df-premium-v4 .category-list,
    html.df-route-home body.df-premium-v4 .categories,
    html.df-route-home body.df-premium-v4 ul.boxPopCats,
    body.df-premium-v5 .AllCategories,
    body.df-premium-v5 .category-list,
    body.df-premium-v5 .categories,
    body.df-premium-v5 ul.boxPopCats {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    }
}

/* Critical: undo V4's .AllCategories > div card rule for wrappers. */
html.df-route-home body.df-premium-v4 .AllCategories > div:not(.phpld-gbox),
body.df-premium-v5 .AllCategories > div:not(.phpld-gbox) {
    display: contents !important;
    width: auto !important;
    min-width: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    color: inherit !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    transform: none !important;
}

html.df-route-home body.df-premium-v4 .AllCategories > div:not(.phpld-gbox):before,
html.df-route-home body.df-premium-v4 .AllCategories > div:not(.phpld-gbox):after,
body.df-premium-v5 .AllCategories > div:not(.phpld-gbox):before,
body.df-premium-v5 .AllCategories > div:not(.phpld-gbox):after {
    display: none !important;
    content: none !important;
}

html.df-route-home body.df-premium-v4 .AllCategories .phpld-grid,
html.df-route-home body.df-premium-v4 .AllCategories .phpld-col1,
html.df-route-home body.df-premium-v4 .AllCategories .phpld-col2,
html.df-route-home body.df-premium-v4 .AllCategories .phpld-col3,
html.df-route-home body.df-premium-v4 .AllCategories .phpld-column,
body.df-premium-v5 .AllCategories .phpld-grid,
body.df-premium-v5 .AllCategories .phpld-col1,
body.df-premium-v5 .AllCategories .phpld-col2,
body.df-premium-v5 .AllCategories .phpld-col3,
body.df-premium-v5 .AllCategories .phpld-column {
    display: contents !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    clear: none !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

/* Actual category cards. */
html.df-route-home body.df-premium-v4 .AllCategories .phpld-gbox,
html.df-route-home body.df-premium-v4 ul.boxPopCats > li,
html.df-route-home body.df-premium-v4 .category-list > li,
html.df-route-home body.df-premium-v4 .categories > li,
body.df-premium-v5 .AllCategories .phpld-gbox,
body.df-premium-v5 ul.boxPopCats > li,
body.df-premium-v5 .category-list > li,
body.df-premium-v5 .categories > li {
    position: relative !important;
    display: grid !important;
    grid-template-columns: 58px minmax(0, 1fr) 24px !important;
    grid-template-rows: auto auto !important;
    align-items: start !important;
    column-gap: 16px !important;
    min-height: 154px !important;
    margin: 0 !important;
    padding: 22px 22px 20px !important;
    overflow: hidden !important;
    color: var(--df-v4-ink, #0f172a) !important;
    background:
        radial-gradient(circle at 12% 0%, rgba(255, 106, 0, .08), transparent 8rem),
        linear-gradient(180deg, #ffffff 0%, #ffffff 62%, #fffaf5 100%) !important;
    border: 1px solid rgba(226, 232, 240, .96) !important;
    border-radius: 22px !important;
    box-shadow: 0 14px 34px rgba(15, 23, 42, .075) !important;
    list-style: none !important;
    transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease !important;
}

html.df-route-home body.df-premium-v4 .AllCategories .phpld-gbox:hover,
html.df-route-home body.df-premium-v4 ul.boxPopCats > li:hover,
html.df-route-home body.df-premium-v4 .category-list > li:hover,
html.df-route-home body.df-premium-v4 .categories > li:hover,
body.df-premium-v5 .AllCategories .phpld-gbox:hover,
body.df-premium-v5 ul.boxPopCats > li:hover,
body.df-premium-v5 .category-list > li:hover,
body.df-premium-v5 .categories > li:hover {
    transform: translateY(-4px) !important;
    border-color: rgba(255, 106, 0, .32) !important;
    box-shadow: 0 24px 54px rgba(15, 23, 42, .12) !important;
}

html.df-route-home body.df-premium-v4 .AllCategories .phpld-gbox:before,
html.df-route-home body.df-premium-v4 ul.boxPopCats > li:before,
html.df-route-home body.df-premium-v4 .category-list > li:before,
html.df-route-home body.df-premium-v4 .categories > li:before,
body.df-premium-v5 .AllCategories .phpld-gbox:before,
body.df-premium-v5 ul.boxPopCats > li:before,
body.df-premium-v5 .category-list > li:before,
body.df-premium-v5 .categories > li:before {
    content: "" !important;
    grid-column: 1 !important;
    grid-row: 1 / span 2 !important;
    position: relative !important;
    display: block !important;
    width: 52px !important;
    height: 52px !important;
    margin: 0 !important;
    border-radius: 18px !important;
    background:
        radial-gradient(circle at 36% 24%, rgba(255,255,255,.95), rgba(255,180,59,.28) 34%, rgba(255,106,0,.18) 100%) !important;
    box-shadow: inset 0 0 0 1px rgba(255,106,0,.10), 0 12px 26px rgba(255,106,0,.12) !important;
}

html.df-route-home body.df-premium-v4 .AllCategories .phpld-gbox:after,
html.df-route-home body.df-premium-v4 ul.boxPopCats > li:after,
html.df-route-home body.df-premium-v4 .category-list > li:after,
html.df-route-home body.df-premium-v4 .categories > li:after,
body.df-premium-v5 .AllCategories .phpld-gbox:after,
body.df-premium-v5 ul.boxPopCats > li:after,
body.df-premium-v5 .category-list > li:after,
body.df-premium-v5 .categories > li:after {
    content: "→" !important;
    grid-column: 3 !important;
    grid-row: 1 !important;
    justify-self: end !important;
    align-self: center !important;
    color: #475467 !important;
    font: 900 20px/1 Inter, Arial, sans-serif !important;
}

html.df-route-home body.df-premium-v4 .AllCategories .phpld-cbox,
html.df-route-home body.df-premium-v4 .AllCategories .phpld-gbox > div,
body.df-premium-v5 .AllCategories .phpld-cbox,
body.df-premium-v5 .AllCategories .phpld-gbox > div {
    grid-column: 2 !important;
    grid-row: 1 / span 2 !important;
    display: block !important;
    min-width: 0 !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

html.df-route-home body.df-premium-v4 .AllCategories h2,
html.df-route-home body.df-premium-v4 .AllCategories h3,
html.df-route-home body.df-premium-v4 .AllCategories h4,
html.df-route-home body.df-premium-v4 ul.boxPopCats h2,
html.df-route-home body.df-premium-v4 ul.boxPopCats h3,
html.df-route-home body.df-premium-v4 ul.boxPopCats h4,
body.df-premium-v5 .AllCategories h2,
body.df-premium-v5 .AllCategories h3,
body.df-premium-v5 .AllCategories h4,
body.df-premium-v5 ul.boxPopCats h2,
body.df-premium-v5 ul.boxPopCats h3,
body.df-premium-v5 ul.boxPopCats h4 {
    display: block !important;
    grid-column: 2 !important;
    width: auto !important;
    height: auto !important;
    margin: 0 0 10px !important;
    padding: 0 !important;
    overflow: visible !important;
    color: var(--df-v4-ink, #0f172a) !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    text-align: left !important;
    text-indent: 0 !important;
    text-shadow: none !important;
    font: 950 18px/1.18 Inter, Arial, sans-serif !important;
    letter-spacing: -.025em !important;
}

html.df-route-home body.df-premium-v4 .AllCategories h2:before,
html.df-route-home body.df-premium-v4 .AllCategories h3:before,
html.df-route-home body.df-premium-v4 .AllCategories h4:before,
html.df-route-home body.df-premium-v4 ul.boxPopCats h2:before,
html.df-route-home body.df-premium-v4 ul.boxPopCats h3:before,
html.df-route-home body.df-premium-v4 ul.boxPopCats h4:before,
body.df-premium-v5 .AllCategories h2:before,
body.df-premium-v5 .AllCategories h3:before,
body.df-premium-v5 .AllCategories h4:before,
body.df-premium-v5 ul.boxPopCats h2:before,
body.df-premium-v5 ul.boxPopCats h3:before,
body.df-premium-v5 ul.boxPopCats h4:before {
    display: none !important;
    content: none !important;
}

html.df-route-home body.df-premium-v4 .AllCategories h2 a,
html.df-route-home body.df-premium-v4 .AllCategories h3 a,
html.df-route-home body.df-premium-v4 .AllCategories h4 a,
html.df-route-home body.df-premium-v4 .AllCategories .phpld-gbox > a,
html.df-route-home body.df-premium-v4 ul.boxPopCats h2 a,
html.df-route-home body.df-premium-v4 ul.boxPopCats h3 a,
html.df-route-home body.df-premium-v4 ul.boxPopCats h4 a,
body.df-premium-v5 .AllCategories h2 a,
body.df-premium-v5 .AllCategories h3 a,
body.df-premium-v5 .AllCategories h4 a,
body.df-premium-v5 .AllCategories .phpld-gbox > a,
body.df-premium-v5 ul.boxPopCats h2 a,
body.df-premium-v5 ul.boxPopCats h3 a,
body.df-premium-v5 ul.boxPopCats h4 a {
    display: inline !important;
    visibility: visible !important;
    opacity: 1 !important;
    color: var(--df-v4-ink, #0f172a) !important;
    background: transparent !important;
    text-decoration: none !important;
    font-weight: 950 !important;
}

html.df-route-home body.df-premium-v4 .AllCategories h2 a:hover,
html.df-route-home body.df-premium-v4 .AllCategories h3 a:hover,
html.df-route-home body.df-premium-v4 .AllCategories h4 a:hover,
body.df-premium-v5 .AllCategories h2 a:hover,
body.df-premium-v5 .AllCategories h3 a:hover,
body.df-premium-v5 .AllCategories h4 a:hover {
    color: var(--df-v4-red, #ec003c) !important;
}

html.df-route-home body.df-premium-v4 .AllCategories h2 span,
html.df-route-home body.df-premium-v4 .AllCategories h3 span,
html.df-route-home body.df-premium-v4 .AllCategories h4 span,
body.df-premium-v5 .AllCategories h2 span,
body.df-premium-v5 .AllCategories h3 span,
body.df-premium-v5 .AllCategories h4 span {
    display: inline !important;
    color: #667085 !important;
    font: 800 13px/1 Inter, Arial, sans-serif !important;
}

/* V4 hid all subcategory lists. V5 shows them again in a compact premium way. */
html.df-route-home body.df-premium-v4 .AllCategories ul,
html.df-route-home body.df-premium-v4 .AllCategories ol,
html.df-route-home body.df-premium-v4 ul.boxPopCats ul,
html.df-route-home body.df-premium-v4 .category-list ul,
html.df-route-home body.df-premium-v4 .categories ul,
body.df-premium-v5 .AllCategories ul,
body.df-premium-v5 .AllCategories ol,
body.df-premium-v5 ul.boxPopCats ul,
body.df-premium-v5 .category-list ul,
body.df-premium-v5 .categories ul {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    grid-column: 2 / 4 !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

html.df-route-home body.df-premium-v4 .AllCategories ul li,
html.df-route-home body.df-premium-v4 .AllCategories ol li,
html.df-route-home body.df-premium-v4 ul.boxPopCats ul li,
body.df-premium-v5 .AllCategories ul li,
body.df-premium-v5 .AllCategories ol li,
body.df-premium-v5 ul.boxPopCats ul li {
    display: block !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 6px 0 !important;
    color: #475467 !important;
    background: transparent !important;
    border: 0 !important;
    border-bottom: 1px solid rgba(226,232,240,.66) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    list-style: none !important;
    font-size: 13px !important;
    line-height: 1.35 !important;
}

html.df-route-home body.df-premium-v4 .AllCategories ul li:last-child,
body.df-premium-v5 .AllCategories ul li:last-child {
    border-bottom: 0 !important;
}

html.df-route-home body.df-premium-v4 .AllCategories ul li:before,
html.df-route-home body.df-premium-v4 .AllCategories ul li:after,
body.df-premium-v5 .AllCategories ul li:before,
body.df-premium-v5 .AllCategories ul li:after {
    display: none !important;
    content: none !important;
}

html.df-route-home body.df-premium-v4 .AllCategories ul li a,
html.df-route-home body.df-premium-v4 .AllCategories ol li a,
html.df-route-home body.df-premium-v4 ul.boxPopCats ul li a,
body.df-premium-v5 .AllCategories ul li a,
body.df-premium-v5 .AllCategories ol li a,
body.df-premium-v5 ul.boxPopCats ul li a {
    display: inline !important;
    visibility: visible !important;
    opacity: 1 !important;
    color: #344054 !important;
    text-decoration: none !important;
    font: 760 13px/1.35 Inter, Arial, sans-serif !important;
}

html.df-route-home body.df-premium-v4 .AllCategories ul li a:hover,
html.df-route-home body.df-premium-v4 .AllCategories ol li a:hover,
body.df-premium-v5 .AllCategories ul li a:hover,
body.df-premium-v5 .AllCategories ol li a:hover {
    color: var(--df-v4-red, #ec003c) !important;
}

/* Keep the old homepage intro/card readable instead of letting the previous
   hide rules remove useful trust/ad content. */
html.df-route-home body.df-premium-v4 .df-v4-page-main > h1:first-child,
html.df-route-home body.df-premium-v4 .df-v4-page-main > h1:first-child + h2,
html.df-route-home body.df-premium-v4 .df-v4-page-main > h1:first-child + h3,
body.df-premium-v5 .df-v4-page-main > h1:first-child,
body.df-premium-v5 .df-v4-page-main > h1:first-child + h2,
body.df-premium-v5 .df-v4-page-main > h1:first-child + h3 {
    display: block !important;
}

@media (max-width: 1100px) {
    html.df-route-home body.df-premium-v4 .AllCategories,
    html.df-route-home body.df-premium-v4 .category-list,
    html.df-route-home body.df-premium-v4 .categories,
    html.df-route-home body.df-premium-v4 ul.boxPopCats,
    body.df-premium-v5 .AllCategories,
    body.df-premium-v5 .category-list,
    body.df-premium-v5 .categories,
    body.df-premium-v5 ul.boxPopCats {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 680px) {
    html.df-route-home body.df-premium-v4 .AllCategories,
    html.df-route-home body.df-premium-v4 .category-list,
    html.df-route-home body.df-premium-v4 .categories,
    html.df-route-home body.df-premium-v4 ul.boxPopCats,
    body.df-premium-v5 .AllCategories,
    body.df-premium-v5 .category-list,
    body.df-premium-v5 .categories,
    body.df-premium-v5 ul.boxPopCats {
        grid-template-columns: 1fr !important;
    }

    html.df-route-home body.df-premium-v4 .AllCategories .phpld-gbox,
    body.df-premium-v5 .AllCategories .phpld-gbox {
        grid-template-columns: 50px minmax(0, 1fr) 20px !important;
        min-height: 136px !important;
        padding: 18px !important;
    }
}


/* ==========================================================
   DirectoryFirePremium V6 hotfixes
   - Footer copyright switched to EightSys IT Solutions in default.tpl
   - Hide/remove the old all-pages limited-time discount popup if it is injected
     from phpLD custom footer/advertising code outside the template.
   ========================================================== */
body.df-premium-v6 #discountModal,
body.df-premium-v6 #offerModal,
body.df-premium-v6 #promoModal,
body.df-premium-v6 #submissionOfferModal,
body.df-premium-v6 .discount-modal,
body.df-premium-v6 .offer-modal,
body.df-premium-v6 .promo-modal,
body.df-premium-v6 .submission-offer-modal,
body.df-premium-v6 .limited-offer-modal,
body.df-premium-v6 .directoryfire-offer-modal,
body.df-premium-v6 .df-offer-modal,
body.df-premium-v6 .offer-popup,
body.df-premium-v6 .discount-popup,
body.df-premium-v6 .promo-popup {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

body.df-premium-v6 .df-footer-meta small,
body.df-premium-v6 .df-footer-meta small a {
    color: rgba(255,255,255,.72) !important;
    font-weight: 800 !important;
    letter-spacing: .01em !important;
}

body.df-premium-v6 .df-footer-meta small a:hover {
    color: #ffffff !important;
    text-decoration: underline !important;
    text-decoration-color: rgba(255, 107, 0, .72) !important;
    text-underline-offset: 4px !important;
}
