:root{
    --dlm-blue:#111827;
    --dlm-blue2:#1f2937;
    --dlm-yellow:#2563eb;
    --dlm-bg:#ffffff;
    --dlm-navbar-h: 72px;
    --dlm-link: #0d6efd;
    --dlm-link-hover: #0b5ed7;
    --dlm-link-bg-hover: rgba(13,110,253,.12);
}

body{ background: var(--dlm-bg); color:#111827; }

/* Global link styling (modern, no underline) */
a{
    color: var(--dlm-link);
    text-decoration: none;
    font-weight: 600;
    border-radius: .4rem;
    transition: color .15s ease, background-color .15s ease;
    box-decoration-break: clone;
    -webkit-box-decoration-break: clone;
}
a:hover,
a:focus{
    color: var(--dlm-link-hover);
    text-decoration: none;
    background: var(--dlm-link-bg-hover);
}
a:focus-visible{
    outline: 2px solid rgba(13,110,253,.35);
    outline-offset: 2px;
}

.dlm-navbar{ background: rgba(17,24,39,.96); backdrop-filter: blur(10px); box-shadow: 0 12px 30px rgba(0,0,0,.12); }
.dlm-brand-mark{ display:inline-block; padding:.1rem .45rem; border-radius:.5rem; background: rgba(242,183,5,.18); border: 1px solid rgba(242,183,5,.35); }
.navbar-dark .navbar-nav .nav-link{
    color: rgba(255,255,255,.92);
    text-decoration: none;
    font-weight: 500;
    padding: .45rem .75rem;
    border-radius: .65rem;
    transition: background-color .15s ease, color .15s ease, font-weight .15s ease;
}
.navbar-dark .navbar-nav .nav-link:hover,
.navbar-dark .navbar-nav .nav-link:focus{
    color: #fff;
    text-decoration: none;
    font-weight: 700;
    background: rgba(255,255,255,.10);
}
.navbar-dark .navbar-nav .nav-link:focus-visible{
    outline: 2px solid rgba(255,255,255,.35);
    outline-offset: 2px;
}
.navbar-dark .navbar-nav .nav-link.active{
    color: #fff;
    text-decoration: none;
    font-weight: 700;
    background: rgba(255,255,255,.14);
}
.dlm-nav-social{ display:flex; gap:.35rem; align-items:center; }
.dlm-social-btn{ width:30px; height:30px; display:inline-flex; align-items:center; justify-content:center; border-radius: 999px; color: rgba(255,255,255,.92); text-decoration:none; border:1px solid rgba(255,255,255,.16); background: rgba(255,255,255,.06); }
.dlm-social-btn:hover{ color:#fff; background: rgba(255,255,255,.10); }

.dlm-hero{ position:relative; min-height: calc(100vh - var(--dlm-navbar-h)); }
.dlm-hero-carousel,
.dlm-hero-carousel .carousel-inner,
.dlm-hero-carousel .carousel-item{
    height: 100%;
}

.dlm-hero-slide{
    position:relative;
    min-height: calc(100vh - var(--dlm-navbar-h));
    display:flex;
    flex-direction:column;
    background:
        radial-gradient(900px circle at 20% 20%, rgba(37,99,235,.18), transparent 60%),
        linear-gradient(135deg, rgba(17,24,39,.28), rgba(17,24,39,.40)),
        var(--dlm-hero-bg, none);
    background-size: auto, auto, cover;
    background-position: center, center, center;
    background-repeat: no-repeat, no-repeat, no-repeat;
}

.dlm-hero-slide::after{
    content:"";
    position:absolute;
    inset:0;
    background: radial-gradient(900px circle at 20% 20%, rgba(0,0,0,.04), rgba(0,0,0,.22) 70%);
    pointer-events:none;
}

.dlm-hero-slide > .container,
.dlm-hero-slide > .dlm-hero-wave{
    position:relative;
    z-index:1;
}
.dlm-hero-slide > .container{
    flex: 1 1 auto;
    display:flex;
    align-items:center;
}
.dlm-hero-slide > .container > .row{ width:100%; }
.dlm-hero-wave{ margin-top:auto; }

.dlm-hero-carousel .carousel-control-prev,
.dlm-hero-carousel .carousel-control-next{
    width: 8%;
}

.dlm-hero-carousel .carousel-indicators [data-bs-target]{
    width: 10px;
    height: 10px;
    border-radius: 999px;
}
.dlm-hero-wave{ height: 10px; background: linear-gradient(90deg, rgba(37,99,235,.85), rgba(37,99,235,.15)); }
.dlm-kicker{ color: rgba(255,255,255,.75); letter-spacing:.12em; text-transform:uppercase; font-size:.8rem; }
.dlm-hero-card{ background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.14); border-radius: 1rem; padding: 1.25rem; color:#fff; backdrop-filter: blur(8px); }
.dlm-hero-card-title{ font-weight:600; margin-bottom:.6rem; }
.dlm-hero-list{ margin:0; padding-left: 1.05rem; color: rgba(255,255,255,.85); }
.dlm-hero-list li{ margin:.35rem 0; }

.dlm-card{ background:#fff; border: 1px solid rgba(11,42,91,.06); border-radius: 1rem; padding: 1.25rem; box-shadow: 0 16px 30px rgba(11,42,91,.06); }
.dlm-card-icon{ width: 44px; height:44px; border-radius: 12px; display:flex; align-items:center; justify-content:center; background: rgba(11,42,91,.08); color: var(--dlm-blue); font-weight:700; margin-bottom:.6rem; }
.dlm-card-media{ height: 160px; display:flex; align-items:center; justify-content:center; background: rgba(11,42,91,.03); }
.dlm-card-media img{ width:100%; height:100%; object-fit: contain; display:block; }
.dlm-slider{ display:flex; gap: 1rem; overflow-x:auto; padding: .25rem .25rem .75rem; scroll-snap-type: x mandatory; -webkit-overflow-scrolling: touch; }
.dlm-slide{ flex: 0 0 auto; width: clamp(240px, 33vw, 360px); scroll-snap-align: start; }
.dlm-slider::-webkit-scrollbar{ height: 10px; }
.dlm-slider::-webkit-scrollbar-thumb{ background: rgba(11,42,91,.18); border-radius: 999px; }
.dlm-slider::-webkit-scrollbar-track{ background: rgba(11,42,91,.06); border-radius: 999px; }

.dlm-post-card{ display:flex; flex-direction:column; background:#fff; border:1px solid rgba(11,42,91,.08); border-radius: 1rem; overflow:hidden; text-decoration:none; color:inherit; box-shadow: 0 16px 30px rgba(11,42,91,.06); transition: transform .12s ease, box-shadow .12s ease; }
.dlm-post-card:hover{ transform: translateY(-2px); box-shadow: 0 20px 40px rgba(11,42,91,.10); }
.dlm-post-card-body{ padding: 1.1rem 1.1rem .6rem; }
.dlm-post-meta{ color:#6b7280; font-size:.85rem; margin-bottom:.35rem; }
.dlm-post-title{ font-weight:700; margin-bottom:.35rem; }
.dlm-post-excerpt{ color:#6b7280; font-size:.95rem; }
.dlm-post-card-cta{ padding: .85rem 1.1rem; border-top: 1px solid rgba(11,42,91,.06); color: var(--dlm-blue); font-weight:600; }

.dlm-page-head{ border-left: 6px solid var(--dlm-yellow); padding-left: 1rem; }
.dlm-content{ background:#fff; border:1px solid rgba(11,42,91,.06); border-radius: 1rem; padding: 1.5rem; box-shadow: 0 16px 30px rgba(11,42,91,.05); }
.dlm-content img{ max-width:100%; height:auto; border-radius:.8rem; }

.dlm-footer{ background: linear-gradient(180deg, #071a38, #041029); }
.dlm-footer-link{ color: rgba(255,255,255,.75); text-decoration:none; }
.dlm-footer-link:hover{ color:#fff; text-decoration:underline; text-underline-offset: 4px; }

.dlm-wa-float{
    position: fixed;
    right: 18px;
    bottom: 18px;
    width: 54px;
    height: 54px;
    border-radius: 999px;
    background: #25D366;
    color: #fff;
    display:flex;
    align-items:center;
    justify-content:center;
    text-decoration:none;
    z-index: 1040;
    box-shadow: 0 16px 30px rgba(0,0,0,.22);
    border: 1px solid rgba(255,255,255,.25);
}
.dlm-wa-float:hover{ filter: brightness(.96); }
.dlm-wa-float:active{ transform: translateY(1px); }
