.dn-home-hero {
    position: relative;
    overflow: hidden;
    min-height: clamp(560px, 72vh, 760px);
    border-radius: 36px;
    display: flex;
    align-items: stretch;
    isolation: isolate;
    background: linear-gradient(135deg, #0f172a, #075985 58%, #0284c7), var(--dn-home-hero-image);
    background-size: cover;
    background-position: center;
    border: 1px solid rgba(186, 230, 253, .65);
    box-shadow: 0 30px 90px rgba(15, 23, 42, .18);
}
.dn-home-hero::before { content:""; position:absolute; inset:0; background-image:var(--dn-home-hero-image); background-size:cover; background-position:center; opacity:.58; z-index:-2; }
.dn-home-hero-overlay { position:absolute; inset:0; background:radial-gradient(circle at 78% 22%, rgba(125,211,252,.42), transparent 24rem), linear-gradient(90deg, rgba(2,6,23,.92) 0%, rgba(15,23,42,.82) 42%, rgba(15,23,42,.35) 100%); z-index:-1; }
.dn-home-hero-inner { width:100%; display:grid; grid-template-columns:minmax(0,1fr) 360px; gap:30px; align-items:center; padding:clamp(34px,6vw,72px); }
.dn-home-hero-copy { max-width:790px; color:#fff; }
.dn-home-eyebrow { display:inline-flex; align-items:center; gap:10px; width:fit-content; border:1px solid rgba(255,255,255,.24); background:rgba(255,255,255,.12); backdrop-filter:blur(14px); border-radius:999px; padding:9px 14px; color:#e0f2fe; font-size:.78rem; font-weight:950; letter-spacing:.16em; text-transform:uppercase; }
.dn-home-eyebrow::before { content:""; width:9px; height:9px; border-radius:999px; background:#38bdf8; box-shadow:0 0 0 6px rgba(56,189,248,.18); }
.dn-home-hero h1 { margin:20px 0 18px; max-width:820px; font-size:clamp(2.75rem,6.5vw,6.6rem); line-height:.88; letter-spacing:-.085em; font-weight:950; }
.dn-home-hero p { max-width:700px; margin:0; color:#dbeafe; font-size:clamp(1rem,1.8vw,1.24rem); line-height:1.78; }
.dn-home-actions { display:flex; gap:12px; flex-wrap:wrap; margin-top:30px; }
.dn-home-primary,.dn-home-secondary { min-height:48px; padding-inline:20px; }
.dn-home-trust-row { display:flex; flex-wrap:wrap; gap:10px; margin-top:24px; }
.dn-home-trust-row span { display:inline-flex; align-items:center; border:1px solid rgba(255,255,255,.22); background:rgba(255,255,255,.10); backdrop-filter:blur(12px); color:#f8fafc; border-radius:999px; padding:8px 11px; font-size:.82rem; font-weight:850; }
.dn-home-hero-card { align-self:center; border:1px solid rgba(255,255,255,.24); background:rgba(255,255,255,.14); backdrop-filter:blur(20px); border-radius:28px; padding:18px; box-shadow:0 24px 70px rgba(2,6,23,.24); }
.dn-home-card-label { color:#e0f2fe; font-size:.76rem; text-transform:uppercase; letter-spacing:.14em; font-weight:950; margin-bottom:12px; }
.dn-home-hero-card a { display:flex; align-items:center; gap:12px; padding:14px; border-radius:20px; color:#fff; border:1px solid rgba(255,255,255,.16); background:rgba(255,255,255,.10); transition:.18s ease; }
.dn-home-hero-card a + a { margin-top:10px; }
.dn-home-hero-card a:hover { transform:translateX(2px); background:rgba(255,255,255,.18); }
.dn-home-hero-card span { width:42px; height:42px; display:grid; place-items:center; border-radius:16px; background:rgba(255,255,255,.18); }
.dn-home-stats { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; margin:-34px auto 34px; position:relative; z-index:5; width:min(1040px, calc(100% - 38px)); }
.dn-home-stat { border:1px solid #dbeafe; background:rgba(255,255,255,.94); backdrop-filter:blur(16px); box-shadow:0 18px 46px rgba(15,23,42,.10); border-radius:24px; padding:20px; text-align:center; }
.dn-home-stat strong { display:block; color:#0f172a; font-size:clamp(1.7rem,3vw,2.45rem); letter-spacing:-.06em; line-height:1; }
.dn-home-stat span { display:block; margin-top:7px; color:#64748b; font-size:.86rem; font-weight:850; }
.dn-home-section { margin-top:34px; }
.dn-home-section-head { display:flex; align-items:end; justify-content:space-between; gap:24px; margin-bottom:18px; }
.dn-home-section-head h2 { margin:0; color:#0f172a; font-size:clamp(1.9rem,4vw,3.2rem); line-height:1; letter-spacing:-.065em; }
.dn-home-section-head > p { color:#64748b; line-height:1.75; max-width:520px; margin:0; }
.dn-home-feature-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.dn-home-feature-card { position:relative; overflow:hidden; min-height:250px; border-radius:28px; border:1px solid #dbeafe; background:radial-gradient(circle at 100% 0%, rgba(186,230,253,.54), transparent 14rem), rgba(255,255,255,.94); box-shadow:0 18px 45px rgba(14,165,233,.09); padding:24px; transition:.18s ease; }
.dn-home-feature-card:hover { transform:translateY(-3px); box-shadow:0 24px 60px rgba(14,165,233,.16); }
.dn-home-feature-card.primary { grid-column:span 2; background:radial-gradient(circle at 88% 0%, rgba(125,211,252,.42), transparent 18rem), linear-gradient(135deg,#0f172a,#075985); color:#fff; }
.dn-home-feature-card.primary p,.dn-home-feature-card.primary span { color:#dbeafe; }
.dn-home-feature-icon { width:56px; height:56px; display:grid; place-items:center; border-radius:20px; background:#e0f2fe; color:#075985; font-size:1.35rem; margin-bottom:18px; }
.dn-home-feature-card span { display:block; margin-bottom:8px; color:#0284c7; font-size:.78rem; font-weight:950; letter-spacing:.14em; text-transform:uppercase; }
.dn-home-feature-card h3 { max-width:560px; margin:0 0 10px; font-size:clamp(1.3rem,2.3vw,2rem); line-height:1.06; letter-spacing:-.045em; }
.dn-home-feature-card p { margin:0; max-width:560px; color:#64748b; line-height:1.7; }
@media (max-width:1024px){.dn-home-hero-inner{grid-template-columns:1fr}.dn-home-stats,.dn-home-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dn-home-feature-card.primary{grid-column:span 2}.dn-home-section-head{align-items:start;flex-direction:column}}
@media (max-width:720px){.dn-home-hero{border-radius:24px;min-height:auto}.dn-home-hero-inner{padding:28px 20px}.dn-home-hero h1{font-size:clamp(2.45rem,15vw,4.2rem)}.dn-home-actions,.dn-home-actions .dn-btn,.dn-home-actions .dn-btn-soft{width:100%}.dn-home-stats,.dn-home-feature-grid{grid-template-columns:1fr}.dn-home-feature-card.primary{grid-column:auto}.dn-home-stats{margin-top:14px;width:100%}}


/*
|--------------------------------------------------------------------------
| Homepage Submission Popup
|--------------------------------------------------------------------------
| Kept inside datanet-home.css to avoid disrupting the global layout CSS stack.
*/

.dn-home-feature-button {
    width: 100%;
    text-align: left;
    cursor: pointer;
    font: inherit;
}

.dn-home-floating-submit {
    position: fixed;
    right: 22px;
    bottom: 22px;
    z-index: 80;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    border: 1px solid rgba(14, 165, 233, .22);
    background: linear-gradient(135deg, #0284c7, #075985);
    color: #fff;
    border-radius: 999px;
    box-shadow: 0 18px 44px rgba(2, 132, 199, .30);
    padding: 13px 18px;
    font-weight: 950;
    cursor: pointer;
    transition: transform .18s ease, box-shadow .18s ease;
}

.dn-home-floating-submit:hover {
    transform: translateY(-2px);
    box-shadow: 0 24px 54px rgba(2, 132, 199, .38);
}

.dn-home-floating-submit span {
    width: 32px;
    height: 32px;
    display: grid;
    place-items: center;
    border-radius: 999px;
    background: rgba(255, 255, 255, .16);
}

.dn-home-popup {
    position: fixed;
    inset: 0;
    z-index: 200;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 22px;
}

.dn-home-popup.is-open {
    display: flex;
}

.dn-home-popup-backdrop {
    position: absolute;
    inset: 0;
    background: rgba(2, 6, 23, .68);
    backdrop-filter: blur(12px);
}

.dn-home-popup-panel {
    position: relative;
    width: min(620px, 100%);
    border: 1px solid rgba(186, 230, 253, .75);
    background:
        radial-gradient(circle at 88% 0%, rgba(56, 189, 248, .22), transparent 18rem),
        linear-gradient(135deg, #ffffff, #f0f9ff);
    box-shadow: 0 32px 100px rgba(2, 6, 23, .35);
    border-radius: 32px;
    padding: clamp(26px, 5vw, 42px);
    animation: dnHomePopupIn .18s ease-out;
}

@keyframes dnHomePopupIn {
    from {
        opacity: 0;
        transform: translateY(14px) scale(.98);
    }

    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

.dn-home-popup-close {
    position: absolute;
    top: 16px;
    right: 16px;
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    border: 1px solid #dbeafe;
    background: rgba(255, 255, 255, .9);
    color: #0f172a;
    border-radius: 999px;
    font-size: 1.55rem;
    line-height: 1;
    cursor: pointer;
    transition: .18s ease;
}

.dn-home-popup-close:hover {
    background: #e0f2fe;
    transform: rotate(6deg);
}

.dn-home-popup-icon {
    width: 70px;
    height: 70px;
    display: grid;
    place-items: center;
    border-radius: 26px;
    background: linear-gradient(135deg, #0284c7, #075985);
    color: #fff;
    box-shadow: 0 18px 42px rgba(2, 132, 199, .28);
    font-size: 1.8rem;
    margin-bottom: 18px;
}

.dn-home-popup-panel h2 {
    margin: 8px 0 12px;
    color: #0f172a;
    font-size: clamp(2rem, 5vw, 3.2rem);
    line-height: .98;
    letter-spacing: -.07em;
}

.dn-home-popup-panel p {
    color: #475569;
    font-size: 1.05rem;
    line-height: 1.75;
    max-width: 540px;
    margin: 0;
}

.dn-home-popup-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 26px;
}

body.dn-popup-lock {
    overflow: hidden;
}

@media (max-width: 720px) {
    .dn-home-floating-submit {
        right: 14px;
        bottom: 14px;
        left: 14px;
        justify-content: center;
        border-radius: 20px;
    }

    .dn-home-popup {
        padding: 14px;
        align-items: end;
    }

    .dn-home-popup-panel {
        border-radius: 28px;
        padding: 28px 20px 22px;
    }

    .dn-home-popup-actions,
    .dn-home-popup-actions .dn-btn,
    .dn-home-popup-actions .dn-btn-soft {
        width: 100%;
    }
}
