.dg-home {
    --dg-ink: #1f1630;
    --dg-purple: #39287b;
    --dg-purple-dark: #24134a;
    --dg-gold: #d6aa42;
    --dg-gold-light: #f7e8b9;
    --dg-cream: #fbf7ef;
    --dg-muted: #6d6578;
    color: var(--dg-ink);
    overflow: hidden;
}

.dg-home h1,
.dg-home h2,
.dg-home h3,
.dg-home p {
    margin-top: 0;
}

.dg-hero {
    position: relative;
    padding: 84px 0 72px;
    background:
        radial-gradient(circle at 12% 18%, rgba(214, 170, 66, .2), transparent 32%),
        linear-gradient(135deg, #1d1238 0%, #39287b 58%, #4d3494 100%);
    color: #fff;
}

.dg-orb {
    position: absolute;
    border: 1px solid rgba(255, 255, 255, .08);
    border-radius: 50%;
    pointer-events: none;
}

.dg-orb-one {
    width: 420px;
    height: 420px;
    top: -250px;
    right: 20%;
}

.dg-orb-two {
    width: 620px;
    height: 620px;
    right: -380px;
    bottom: -390px;
}

.dg-kicker {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 18px;
    padding: 8px 14px;
    border: 1px solid rgba(247, 232, 185, .28);
    border-radius: 999px;
    background: rgba(255, 255, 255, .07);
    color: var(--dg-gold-light);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1.8px;
    text-transform: uppercase;
}

.dg-hero h1 {
    max-width: 720px;
    margin-bottom: 18px;
    font-size: clamp(34px, 4.8vw, 62px);
    font-weight: 700;
    letter-spacing: -1.8px;
    line-height: 1.08;
}

.dg-hero h1 span {
    color: var(--dg-gold-light);
}

.dg-hero-copy {
    max-width: 620px;
    margin-bottom: 28px;
    color: rgba(255, 255, 255, .78);
    font-size: 17px;
    line-height: 1.75;
}

.dg-hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-bottom: 36px;
}

.dg-btn-gold,
.dg-btn-ghost,
.dg-btn-light {
    padding: 13px 22px;
    border-radius: 8px;
    font-size: 14px;
    font-weight: 700;
}

.dg-btn-gold {
    border-color: var(--dg-gold);
    background: var(--dg-gold);
    color: #241b0d;
}

.dg-btn-gold:hover,
.dg-btn-gold:focus {
    border-color: #e4bc5c;
    background: #e4bc5c;
    color: #241b0d;
}

.dg-btn-ghost {
    border: 1px solid rgba(255, 255, 255, .4);
    color: #fff;
}

.dg-btn-ghost:hover,
.dg-btn-ghost:focus {
    background: rgba(255, 255, 255, .08);
    color: #fff;
}

.dg-btn-gold i,
.dg-btn-light i,
.dg-buy-button i {
    margin-left: 8px;
}

.dg-proof-row {
    display: flex;
    flex-wrap: wrap;
    gap: 22px;
}

.dg-proof-row > div {
    display: flex;
    align-items: center;
    gap: 10px;
    color: rgba(255, 255, 255, .65);
    font-size: 12px;
    line-height: 1.35;
}

.dg-proof-row i {
    color: var(--dg-gold-light);
    font-size: 18px;
}

.dg-proof-row strong {
    display: block;
    color: #fff;
    font-size: 13px;
}

.dg-buy-card {
    border: 1px solid rgba(255, 255, 255, .16);
    border-radius: 18px;
    background: #fff;
    color: var(--dg-ink);
    box-shadow: 0 28px 70px rgba(13, 7, 29, .35);
    overflow: hidden;
}

.dg-card-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 22px 24px 16px;
}

.dg-card-heading span {
    color: var(--dg-purple);
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 1.5px;
}

.dg-card-heading h2 {
    margin: 4px 0 0;
    font-size: 22px;
    font-weight: 700;
}

.dg-card-heading > i {
    color: var(--dg-gold);
    font-size: 24px;
}

.form_DigiGold .dg-metal-tabs {
    margin: 0 24px;
    padding: 4px;
    border: 0;
    border-radius: 10px;
    background: #f3f0f7;
}

.form_DigiGold .dg-metal-tabs li.nav-item button {
    padding: 10px;
    border-radius: 8px;
    color: #736b7d;
    font-weight: 700;
}

.form_DigiGold .dg-metal-tabs li.nav-item button.active {
    background: #fff;
    color: var(--dg-purple);
    box-shadow: 0 3px 12px rgba(38, 24, 62, .1);
}

.dg-rate {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    margin: 18px 24px 0;
    padding: 16px 18px;
    border: 1px solid #eee8da;
    border-radius: 10px;
    background: #fffcf3;
}

.dg-rate-label {
    display: block;
    margin-bottom: 4px;
    color: #8e8060;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 1.1px;
}

.dg-rate > div:last-child {
    text-align: right;
}

.dg-rate strong {
    color: var(--dg-ink);
    font-size: 22px;
}

.dg-rate small {
    color: var(--dg-muted);
    font-size: 11px;
}

.dg-rate .dg-live-dot {
    display: inline-block;
    width: 7px;
    height: 7px;
    margin-left: 6px;
    border-radius: 50%;
    background: #24a15b;
    box-shadow: 0 0 0 4px rgba(36, 161, 91, .12);
}

.dg-form-body {
    padding: 20px 24px 22px;
}

.dg-form-body > p {
    margin-bottom: 14px;
    color: var(--dg-muted);
    font-size: 12px;
    font-weight: 600;
}

.dg-form-body label {
    display: block;
    margin-bottom: 6px;
    color: #554d60;
    font-size: 11px;
    font-weight: 700;
}

.dg-form-body .form-control {
    height: 48px;
    border: 1px solid #ded9e5;
    border-radius: 8px;
    background: #fff;
    font-size: 13px;
}

.dg-form-body .form-control:focus {
    border-color: var(--dg-purple);
}

.dg-form-body label.error {
    margin: 6px 0 0;
    font-size: 10px;
}

.form_DigiGold .dg-buy-button {
    display: block;
    width: 100%;
    margin-top: 18px;
    padding: 14px 18px;
    border: 1px solid var(--dg-purple) !important;
    border-radius: 8px;
    background: var(--dg-purple) !important;
    color: #fff !important;
    font-size: 13px;
    font-weight: 700;
}

.form_DigiGold .dg-buy-button:hover {
    background: var(--dg-purple-dark) !important;
    border-color: var(--dg-purple-dark) !important;
}

.dg-secure-note {
    padding: 12px 16px;
    border-top: 1px solid #ece8ef;
    background: #faf9fb;
    color: #81798a;
    text-align: center;
    font-size: 11px;
}

.dg-secure-note i {
    margin-right: 4px;
    color: #2f9658;
}

.dg-trust-strip {
    background: #fff;
    box-shadow: 0 12px 30px rgba(31, 22, 42, .06);
}

.dg-trust-strip .col-6,
.dg-trust-strip .col-lg-3 {
    position: relative;
    padding: 22px 12px;
    text-align: center;
}

.dg-trust-strip strong {
    display: block;
    color: var(--dg-purple);
    font-size: 18px;
}

.dg-trust-strip span {
    color: var(--dg-muted);
    font-size: 12px;
}

.dg-section {
    padding: 88px 0;
}

.dg-section-label {
    display: inline-block;
    margin-bottom: 12px;
    color: var(--dg-purple);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1.8px;
}

.dg-title {
    margin-bottom: 18px;
    font-size: clamp(28px, 3.6vw, 44px);
    font-weight: 700;
    letter-spacing: -1.2px;
    line-height: 1.16;
}

.dg-lead {
    color: #4b4354;
    font-size: 16px;
    line-height: 1.75;
}

.dg-muted {
    color: var(--dg-muted);
    font-size: 15px;
    line-height: 1.75;
}

.dg-intro {
    background: var(--dg-cream);
}

.dg-check-list {
    margin: 24px 0 0;
    padding: 0;
    list-style: none;
}

.dg-check-list li {
    display: flex;
    gap: 10px;
    margin-bottom: 12px;
    color: #3d3648;
    font-size: 14px;
    line-height: 1.55;
}

.dg-check-list i {
    margin-top: 3px;
    color: #2f9658;
}

.dg-visual {
    position: relative;
    min-height: 420px;
    border-radius: 24px;
    background: linear-gradient(145deg, #f4ead4, #e8d7b0);
    overflow: hidden;
}

.dg-coin {
    position: absolute;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    color: #59410e;
    text-align: center;
}

.dg-coin-back {
    width: 190px;
    height: 190px;
    top: 54px;
    left: 48px;
    background: linear-gradient(145deg, #e7c660, #b68018);
    font-family: Georgia, serif;
    font-size: 58px;
    opacity: .7;
    transform: rotate(-18deg);
}

.dg-coin-front {
    width: 220px;
    height: 220px;
    top: 118px;
    left: 158px;
    border: 2px solid #bb861d;
    background: linear-gradient(145deg, #f5db7e, #c89225);
    box-shadow: 0 24px 40px rgba(77, 57, 16, .22);
    transform: rotate(8deg);
}

.dg-coin-front small,
.dg-coin-front span {
    font-weight: 700;
}

.dg-coin-front strong {
    font-size: 28px;
    letter-spacing: 2px;
}

.dg-float {
    position: absolute;
    display: flex;
    align-items: center;
    gap: 10px;
    max-width: 230px;
    padding: 12px 14px;
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 12px 30px rgba(31, 22, 42, .12);
    font-size: 12px;
    line-height: 1.35;
}

.dg-float i {
    color: var(--dg-purple);
}

.dg-float-one {
    top: 28px;
    right: 24px;
}

.dg-float-two {
    bottom: 28px;
    left: 24px;
}

.dg-benefits {
    background: #fff;
}

.dg-section-heading {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 36px;
}

.dg-section-heading p,
.dg-narrow p {
    max-width: 420px;
    margin-bottom: 0;
    color: var(--dg-muted);
    line-height: 1.7;
}

.dg-benefit-card {
    height: 100%;
    padding: 26px 24px;
    border: 1px solid #ece8f2;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 10px 24px rgba(31, 22, 42, .04);
}

.dg-benefit-card span {
    display: block;
    margin-bottom: 14px;
    color: var(--dg-gold);
    font-size: 12px;
    font-weight: 700;
}

.dg-benefit-card i {
    margin-bottom: 14px;
    color: var(--dg-purple);
    font-size: 22px;
}

.dg-benefit-card h3 {
    margin-bottom: 10px;
    font-size: 18px;
    font-weight: 700;
}

.dg-benefit-card p {
    margin: 0;
    color: var(--dg-muted);
    font-size: 14px;
    line-height: 1.65;
}

.dg-how {
    background: var(--dg-cream);
}

.dg-narrow {
    max-width: 680px;
    margin: 0 auto 42px;
    text-align: center;
}

.dg-step {
    position: relative;
    height: 100%;
    padding: 28px 22px;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 10px 24px rgba(31, 22, 42, .05);
}

.dg-step b {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    margin-bottom: 16px;
    border-radius: 50%;
    background: var(--dg-purple);
    color: #fff;
    font-size: 14px;
}

.dg-step h3 {
    margin-bottom: 8px;
    font-size: 18px;
    font-weight: 700;
}

.dg-step p {
    margin: 0;
    color: var(--dg-muted);
    font-size: 14px;
    line-height: 1.6;
}

.dg-economy {
    background: #21163a;
    color: #fff;
}

.dg-economy .dg-section-label,
.dg-economy .dg-title {
    color: #fff;
}

.dg-economy .dg-lead {
    color: rgba(255, 255, 255, .76);
}

.dg-impact {
    display: flex;
    gap: 14px;
    height: 100%;
    padding: 22px 20px;
    border: 1px solid rgba(255, 255, 255, .1);
    border-radius: 14px;
    background: rgba(255, 255, 255, .05);
}

.dg-impact i {
    color: var(--dg-gold-light);
    font-size: 20px;
}

.dg-impact h3 {
    margin-bottom: 6px;
    font-size: 16px;
    font-weight: 700;
}

.dg-impact p {
    margin: 0;
    color: rgba(255, 255, 255, .7);
    font-size: 13px;
    line-height: 1.6;
}

.dg-products {
    background: #fff;
}

.dg-section-heading a {
    font-size: 14px;
    font-weight: 700;
    text-decoration: none;
}

.dg-product-card {
    display: block;
    height: 100%;
    padding: 16px;
    border: 1px solid #ece8f2;
    border-radius: 16px;
    color: inherit;
    text-decoration: none;
    background: #fff;
}

.dg-product-card:hover {
    color: inherit;
    box-shadow: 0 16px 32px rgba(31, 22, 42, .08);
}

.dg-product-card img {
    width: 100%;
    height: 180px;
    object-fit: contain;
    margin-bottom: 14px;
}

.dg-product-card h3 {
    margin-bottom: 8px;
    font-size: 15px;
    font-weight: 600;
    line-height: 1.4;
}

.dg-product-card span {
    color: var(--dg-purple);
    font-size: 13px;
    font-weight: 700;
}

.dg-story {
    background: var(--dg-cream);
}

.dg-story-copy {
    color: #3d3648;
    font-size: 15px;
    line-height: 1.8;
}

.dg-story-copy a {
    font-weight: 700;
}

.dg-cta {
    padding: 72px 0 88px;
    background: linear-gradient(135deg, #39287b, #24134a);
    color: #fff;
}

.dg-cta-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    padding: 36px 40px;
    border: 1px solid rgba(247, 232, 185, .2);
    border-radius: 20px;
    background: rgba(255, 255, 255, .06);
}

.dg-cta-inner span {
    display: block;
    margin-bottom: 8px;
    color: var(--dg-gold-light);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1.6px;
}

.dg-cta-inner h2 {
    margin-bottom: 8px;
    font-size: clamp(26px, 3vw, 36px);
}

.dg-cta-inner p {
    margin: 0;
    color: rgba(255, 255, 255, .74);
}

.dg-btn-light {
    border-color: #fff;
    background: #fff;
    color: var(--dg-purple);
    white-space: nowrap;
}

.dg-btn-light:hover,
.dg-btn-light:focus {
    background: var(--dg-gold-light);
    border-color: var(--dg-gold-light);
    color: #241b0d;
}

/* ---------- Animations ---------- */
.dg-typed-line {
    min-height: 34px;
    margin-bottom: 18px;
    color: var(--dg-gold-light);
    font-size: clamp(16px, 2vw, 21px);
    font-weight: 600;
}

.dg-typed-line .dg-typed::after {
    content: "";
    display: inline-block;
    width: 2px;
    height: 1em;
    margin-left: 3px;
    background: var(--dg-gold-light);
    vertical-align: -2px;
    animation: dg-caret 1s steps(1) infinite;
}

@keyframes dg-caret {
    0%, 49% { opacity: 1; }
    50%, 100% { opacity: 0; }
}

.dg-live-dot {
    animation: dg-pulse 1.8s ease-out infinite;
}

@keyframes dg-pulse {
    0% { box-shadow: 0 0 0 0 rgba(36, 161, 91, .45); }
    70% { box-shadow: 0 0 0 8px rgba(36, 161, 91, 0); }
    100% { box-shadow: 0 0 0 0 rgba(36, 161, 91, 0); }
}

.dg-rate-meta {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-top: 4px;
    justify-content: flex-end;
}

.dg-rate-trend {
    font-size: 11px;
    font-weight: 700;
}

.dg-rate-trend.is-up {
    color: #1f8f52;
}

.dg-rate-trend.is-down {
    color: #c5443f;
}

.dg-rate-stamp {
    color: #9a93a3;
    font-size: 10px;
}

.dg-flash-up {
    animation: dg-flash-up .9s ease-out;
}

.dg-flash-down {
    animation: dg-flash-down .9s ease-out;
}

@keyframes dg-flash-up {
    0% { background: #eaf7ef; border-color: #b7e2c8; }
    100% { background: #fffcf3; border-color: #eee8da; }
}

@keyframes dg-flash-down {
    0% { background: #fdeeee; border-color: #f0c2c0; }
    100% { background: #fffcf3; border-color: #eee8da; }
}

[data-dg-reveal] {
    opacity: 0;
    transform: translateY(26px);
    transition: opacity .7s ease, transform .7s cubic-bezier(.22, .68, .35, 1);
    transition-delay: var(--dg-delay, 0ms);
}

[data-dg-reveal].dg-revealed {
    opacity: 1;
    transform: none;
}

.dg-hero .dg-kicker,
.dg-hero h1,
.dg-hero .dg-hero-copy,
.dg-hero .dg-hero-actions,
.dg-hero .dg-proof-row,
.dg-hero .dg-buy-card {
    animation: dg-rise .8s cubic-bezier(.22, .68, .35, 1) both;
}

.dg-hero h1 { animation-delay: .08s; }
.dg-hero .dg-typed-line { animation-delay: .14s; }
.dg-hero .dg-hero-copy { animation-delay: .2s; }
.dg-hero .dg-hero-actions { animation-delay: .28s; }
.dg-hero .dg-proof-row { animation-delay: .36s; }
.dg-hero .dg-buy-card { animation-delay: .18s; }

@keyframes dg-rise {
    from { opacity: 0; transform: translateY(24px); }
    to { opacity: 1; transform: none; }
}

.dg-orb-one {
    animation: dg-drift 16s ease-in-out infinite;
}

.dg-orb-two {
    animation: dg-drift 22s ease-in-out infinite reverse;
}

@keyframes dg-drift {
    0%, 100% { transform: translate(0, 0); }
    50% { transform: translate(-18px, 22px); }
}

.dg-coin-front {
    animation: dg-float 6s ease-in-out infinite;
}

.dg-coin-back {
    animation: dg-float-back 7.5s ease-in-out infinite;
}

@keyframes dg-float {
    0%, 100% { transform: rotate(8deg) translateY(0); }
    50% { transform: rotate(8deg) translateY(-14px); }
}

@keyframes dg-float-back {
    0%, 100% { transform: rotate(-18deg) translateY(0); }
    50% { transform: rotate(-18deg) translateY(-10px); }
}

.dg-float-one {
    animation: dg-float-card 5s ease-in-out infinite;
}

.dg-float-two {
    animation: dg-float-card 6.5s ease-in-out infinite reverse;
}

@keyframes dg-float-card {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-10px); }
}

.dg-benefit-card,
.dg-step,
.dg-impact,
.dg-product-card {
    transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease;
}

.dg-benefit-card:hover,
.dg-step:hover,
.dg-product-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 18px 36px rgba(31, 22, 42, .1);
}

.dg-impact:hover {
    transform: translateY(-4px);
    border-color: rgba(247, 232, 185, .32);
}

.dg-btn-gold,
.dg-btn-ghost,
.dg-btn-light,
.form_DigiGold .dg-buy-button {
    transition: transform .2s ease, background-color .2s ease, border-color .2s ease, box-shadow .2s ease;
}

.dg-btn-gold:hover,
.dg-btn-light:hover,
.form_DigiGold .dg-buy-button:hover {
    transform: translateY(-2px);
}

.dg-product-card img {
    transition: transform .4s ease;
}

.dg-product-card:hover img {
    transform: scale(1.05);
}

@media (prefers-reduced-motion: reduce) {
    .dg-home *,
    .dg-home *::after {
        animation: none !important;
        transition: none !important;
    }

    [data-dg-reveal] {
        opacity: 1;
        transform: none;
    }
}

@media (max-width: 991px) {
    .dg-hero,
    .dg-section,
    .dg-cta {
        padding-top: 56px;
        padding-bottom: 56px;
    }

    .dg-section-heading,
    .dg-cta-inner {
        display: block;
    }

    .dg-cta-inner .btn {
        margin-top: 20px;
    }

    .dg-visual {
        min-height: 360px;
        margin-bottom: 8px;
    }

    .dg-coin-front {
        left: 42%;
    }
}

@media (max-width: 575px) {
    .dg-hero h1 {
        letter-spacing: -1px;
    }

    .dg-hero-copy {
        font-size: 15px;
    }

    .dg-coin-back {
        width: 150px;
        height: 150px;
        font-size: 44px;
    }

    .dg-coin-front {
        width: 170px;
        height: 170px;
        left: 38%;
    }

    .dg-float-one,
    .dg-float-two {
        max-width: 180px;
        font-size: 11px;
    }

    .dg-cta-inner {
        padding: 24px;
    }
}
