
:root{
    --brand:#0d6efd;           /* Bootstrap primary */
    --brand-2:#4f9cff;         /* untuk gradasi */
    --card-bg:rgba(255,255,255,.85);
    --blur:16px;
}

html,body{height:100%;}
body{
    font-family: 'Inter', system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Apple Color Emoji","Segoe UI Emoji", "Segoe UI Symbol";
    background:
    radial-gradient(1100px 600px at 10% -10%, #e8f0ff 0, transparent 60%),
    radial-gradient(900px 500px at 110% 10%, #ffe8f1 0, transparent 55%),
    linear-gradient(180deg, #f8fbff 0, #f7f7ff 100%);
}

/* Hero */
.hero{
    text-align:center;
    margin-top:32px;
    margin-bottom:24px;
}
.hero-badge{
    display:inline-flex; gap:.5rem; align-items:center;
    padding:.35rem .75rem; border-radius:999px;
    background:linear-gradient(90deg, #e6f0ff, #fff0f5);
    font-weight:600; font-size:.85rem; color:#0b5ed7;
    border:1px solid #e8e8ff;
}
.hero h1{
    font-weight:800; letter-spacing:.2px; margin:.75rem 0 .25rem;
}
.hero p{
    color:#5b6470; margin:0 auto; max-width:640px;
}

/* Card glass */
.glass{
    backdrop-filter: saturate(150%) blur(var(--blur));
    -webkit-backdrop-filter: saturate(150%) blur(var(--blur));
    background: var(--card-bg);
    border: 1px solid rgba(13,110,253,.07);
    box-shadow:
    0 10px 30px rgba(13,110,253,.08),
    0 2px 8px rgba(0,0,0,.04);
    border-radius: 18px;
}

.card-header-soft{
    border-bottom:1px solid rgba(13,110,253,.08);
    background:linear-gradient(180deg, rgba(255,255,255,.92), rgba(255,255,255,.7));
    border-top-left-radius: 18px !important;
    border-top-right-radius: 18px !important;
}

/* Input group + floating labels */
.form-floating>.bi{
    position:absolute; left:1rem; top:50%; transform:translateY(-50%);
    color:#6c757d;
    pointer-events:none;
    font-size:1.1rem;
}
.form-floating> .form-control,
.form-floating> .form-select{
    padding-left:2.6rem; /* ruang untuk ikon */
}
.form-floating label{
    padding-left:2.6rem;
}

/* Tombol gradasi */
.btn-gradient{
    background: linear-gradient(90deg, var(--brand) 0%, var(--brand-2) 100%);
    border: none;
    color: #fff;
    font-weight: 600;
    box-shadow: 0 8px 20px rgba(13,110,253,.25);
}
.btn-gradient:hover{ filter: brightness(.95); }
.btn-gradient:active{ transform: translateY(1px); }

/* Honeypot */
.hp { position:absolute; left:-5000px; }
.hp[aria-hidden="true"]{ visibility:hidden; }

/* Small helpers */
.form-text{ color:#6b7280; }
.req-asterisk{ color:#dc3545; }

.input-group-text { min-width: 42px; justify-content: center; }
.form-control, .form-select { font-size: 0.95rem; }
textarea.form-control { min-height: 80px; }

.hero img.logo {
    height: 80px; /* default untuk desktop */
}

/* Responsive tweak */
@media (max-width: 576px){
    .container{ padding-left: 1rem; padding-right:1rem;}
    .hero img.logo {
    height: 50px; /* lebih kecil di HP */
    }
}