@font-face {
    font-family: "Roboto";
    src: url("../css/fonts/Roboto-Regular.ttf") format("truetype");
    font-weight: normal;
    font-style: normal;
}

body {
    overflow-x: hidden;
    box-sizing: border-box;
    scroll-behavior: smooth;
}

::-webkit-scrollbar {
    width: 8px;
}

::-webkit-scrollbar-track {
    background: #141214;
}

::-webkit-scrollbar-thumb {
    background: #BB882D;
    border-radius: 20px;
}

::-webkit-scrollbar-thumb:hover {
    background: #F7E17C;
}


/* ================================
   GLOBAL STYLING — DREAMPARTYPLAN
   Used across entire website
================================ */

/* ------------------------------
   FONTS (Merienda + Inter)
-------------------------------- */
.font-merienda-300 {
    font-family: "Merienda", cursive;
    font-weight: 300;
}
.font-merienda-400 {
    font-family: "Merienda", cursive;
    font-weight: 400;
}
.font-merienda-500 {
    font-family: "Merienda", cursive;
    font-weight: 500;
}
.font-merienda-600 {
    font-family: "Merienda", cursive;
    font-weight: 600;
}
.font-merienda-700 {
    font-family: "Merienda", cursive;
    font-weight: 700;
}

.font-inter-300 {
    font-family: "Inter", sans-serif;
    font-weight: 300;
}
.font-inter-400 {
    font-family: "Inter", sans-serif;
    font-weight: 400;
}
.font-inter-500 {
    font-family: "Inter", sans-serif;
    font-weight: 500;
}
.font-inter-600 {
    font-family: "Inter", sans-serif;
    font-weight: 600;
}
.font-inter-700 {
    font-family: "Inter", sans-serif;
    font-weight: 700;
}

/* ------------------------------
   GOLD THEME COLORS
-------------------------------- */
.text-gold {
    color: #f7e17c;
}
.bg-gold {
    background: #f7e17c;
}
.border-gold {
    border-color: #f7e17c;
}

/* Golden Gradient */
.gold-gradient {
    background: linear-gradient(to right, #bb882d, #f7e17c, #bb882d);
}

/* ------------------------------
   GLOBAL BACKGROUND
-------------------------------- */
.bg-premium {
    background: linear-gradient(to bottom, #121012, #0e0c0e);
    color: white;
}

/* ------------------------------
   DECORATIVE ELEMENTS
-------------------------------- */
.particle {
    position: absolute;
    width: 140px;
    height: 140px;
    background: url("/assets/images/particles.png") no-repeat center/cover;
    opacity: 0.45;
    animation: float 6s infinite ease-in-out alternate;
    pointer-events: none;
}

.balloon {
    position: absolute;
    width: 220px;
    height: 220px;
    background: url("/assets/images/balloon.png") no-repeat center/contain;
    opacity: 0.55;
    animation: floatBalloon 7s infinite ease-in-out;
    pointer-events: none;
}

/* Floating animations */
@keyframes float {
    from {
        transform: translateY(0);
    }
    to {
        transform: translateY(-22px);
    }
}

@keyframes floatBalloon {
    0% {
        transform: translateY(0) rotate(0deg);
    }
    50% {
        transform: translateY(-15px) rotate(3deg);
    }
    100% {
        transform: translateY(0) rotate(0deg);
    }
}

/* ------------------------------
   GLOBAL INPUT FIELDS
-------------------------------- */
.dp-input {
    width: 100%;
    padding: 12px 14px;
    background: #1a181c;
    border: 1px solid rgba(247, 225, 124, 0.15);
    color: white;
    border-radius: 10px;
    margin-bottom: 16px;
    font-family: "Inter", sans-serif;
    font-size: 15px;
}

.dp-input::placeholder {
    color: #8d877c;
}

/* ------------------------------
   CARDS
-------------------------------- */
.dp-card {
    background: #1a181c;
    border: 1px solid rgba(247, 225, 124, 0.12);
    border-radius: 18px;
    padding: 25px;
    backdrop-filter: blur(6px);
    transition: 0.3s ease;
}

.dp-card:hover {
    border-color: rgba(247, 225, 124, 0.35);
    box-shadow: 0 0 18px rgba(247, 225, 124, 0.25);
}

/* ------------------------------
   GOLD BUTTON
-------------------------------- */
.dp-btn {
    background: linear-gradient(to right, #bb882d, #f7e17c, #bb882d);
    color: black;
    font-family: "Inter", sans-serif;
    font-weight: 600;
    padding: 12px;
    width: 100%;
    border-radius: 50px;
    transition: 0.3s;
    border: none;
}

.dp-btn:hover {
    box-shadow: 0 0 18px rgba(247, 225, 124, 0.7);
    transform: translateY(-1px);
}

/* ------------------------------
   GOLD ICON BOX
-------------------------------- */
.icon-box {
    background: rgba(247, 225, 124, 0.2);
    width: 60px;
    height: 60px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 14px;
}

.icon-box i {
    color: #f7e17c;
    font-size: 28px;
}

/* ------------------------------
   GLOBAL RADIUS + SHADOW UTILITIES
-------------------------------- */
.rounded-xl-16 {
    border-radius: 16px;
}
.rounded-xl-20 {
    border-radius: 20px;
}

.shadow-gold {
    box-shadow: 0 0 18px rgba(247, 225, 124, 0.4);
}

/* ============================
   GOLD HOVER UNDERLINE (GLOBAL)
   ============================ */

.hover-underline {
    position: relative;
    display: inline-block;
    padding-bottom: 3px;
    transition: color 0.3s ease;
}

.hover-underline::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 0%;
    height: 2px;
    background: #f7e17c; /* Gold */
    transition: width 0.35s ease;
}

.hover-underline:hover::after {
    width: 100%;
}

.hover-underline:hover {
    color: #f7e17c;
}

/* ------------------------------
   IMAGES
-------------------------------- */
.dp-img-rounded {
    border-radius: 16px;
    border: 1px solid rgba(247, 225, 124, 0.18);
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.4);
}

/* Desktop Nav Links */
.nav-link {
    position: relative;
    padding: 6px 4px;
    transition: 0.3s;
    color: #ffffff;
}

.nav-link:hover {
    color: #f7e17c;
}

.nav-link::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -4px;
    height: 2px;
    width: 0%;
    background: linear-gradient(to right, #bb882d, #f7e17c);
    transition: width 0.3s ease;
}

.nav-link:hover::after {
    width: 100%;
}

/* Mobile links */
.mobile-link {
    padding: 10px 14px;
    border-left: 3px solid transparent;
    transition: 0.3s;
}

.mobile-link:hover {
    background: rgba(255, 255, 255, 0.05);
    border-left-color: #f7e17c;
    color: #f7e17c;
}

/* Scroll header styling (DARK THEME) */
header.scrolled {
    background: rgba(18, 16, 18, 0.92);
    backdrop-filter: blur(12px);
    border-bottom: 1px solid rgba(187, 136, 45, 0.25);
    box-shadow: 0 0 20px rgba(0, 0, 0, 0.4);
}
