.btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    border:0;
    border-radius:16px;
    padding:14px 20px;
    font-weight:900;
    text-decoration:none;
    cursor:pointer;
    transition:.22s ease;
}

/* Primary Kira gold button */
.btn-primary{
    background:linear-gradient(135deg,#d4af37,#c89b1d);
    color:white;
    box-shadow:0 10px 24px rgba(212,175,55,.24);
}

.btn-primary:hover{
    background:linear-gradient(135deg,#c89b1d,#b8860b);
    transform:translateY(-2px);
    box-shadow:0 16px 35px rgba(212,175,55,.35);
}

/* Dark contrast button */
.btn-dark{
    background:#0f172a;
    color:white;
}

.btn-dark:hover{
    transform:translateY(-2px);
    box-shadow:0 14px 28px rgba(15,23,42,.25);
}

/* Light luxury button */
.btn-light{
    background:white;
    color:#b8860b;
    border:1px solid rgba(212,175,55,.35);
}

.btn-light:hover{
    background:#fff8e1;
    transform:translateY(-2px);
    box-shadow:0 12px 26px rgba(212,175,55,.18);
}

/* Outline button */
.btn-outline{
    background:transparent;
    border:1px solid rgba(212,175,55,.55);
    color:#b8860b;
}

.btn-outline:hover{
    background:#fff8e1;
    border-color:#d4af37;
    transform:translateY(-1px);
}

/* Keep meaning colors */
.btn-success{
    background:#16a34a;
    color:white;
}

.btn-success:hover{
    background:#15803d;
    transform:translateY(-2px);
    box-shadow:0 14px 28px rgba(22,163,74,.25);
}

.btn-danger{
    background:#dc2626;
    color:white;
}

.btn-danger:hover{
    background:#b91c1c;
    transform:translateY(-2px);
    box-shadow:0 14px 28px rgba(220,38,38,.25);
}

.btn-lg{
    padding:16px 24px;
    font-size:16px;
}

.btn-sm{
    padding:10px 14px;
    font-size:13px;
    border-radius:12px;
}

.btn-block{
    width:100%;
}

@media(max-width:600px){
    .btn-mobile-block{
        width:100%;
    }
}

/* =========================================================
   EMPIRE MODERN BUTTON SYSTEM
========================================================= */

.btn {
    min-height: 42px;
    padding: 10px 18px;

    border-radius: 10px;

    font-size: 13px;
    font-weight: 700;
    line-height: 1;

    letter-spacing: .01em;

    box-shadow: none;

    transition:
        background-color .18s ease,
        border-color .18s ease,
        color .18s ease,
        box-shadow .18s ease,
        transform .18s ease;
}


/* PRIMARY */

.btn-primary {
    border: 1px solid #b88e3a;

    background: #b88e3a;
    color: #fff;

    box-shadow:
        0 1px 2px rgba(15, 23, 42, .06),
        0 6px 16px rgba(184, 142, 58, .15);
}

.btn-primary:hover {
    background: #9d7428;
    border-color: #9d7428;

    transform: translateY(-1px);

    box-shadow:
        0 2px 4px rgba(15, 23, 42, .08),
        0 8px 20px rgba(184, 142, 58, .18);
}


/* DARK */

.btn-dark {
    border: 1px solid #1f2937;
    background: #111827;
    color: #fff;
}

.btn-dark:hover {
    background: #1f2937;
    transform: translateY(-1px);

    box-shadow: 0 6px 16px rgba(15, 23, 42, .14);
}


/* LIGHT */

.btn-light {
    border: 1px solid #e5e1d8;
    background: #fff;
    color: #765b22;
}

.btn-light:hover {
    border-color: #c9ad72;
    background: #fbf8f1;
    transform: translateY(-1px);
}


/* OUTLINE */

.btn-outline {
    border: 1px solid #c9ad72;
    background: transparent;
    color: #765b22;
}

.btn-outline:hover {
    border-color: #b88e3a;
    background: #fbf8f1;
    color: #5f471a;

    transform: translateY(-1px);
}


/* SIZES */

.btn-lg {
    min-height: 46px;
    padding: 12px 21px;

    font-size: 14px;
    border-radius: 11px;
}

.btn-sm {
    min-height: 34px;
    padding: 8px 13px;

    font-size: 12px;
    border-radius: 8px;
}


/* Preserve comfortable touch targets on small screens */

@media (max-width: 900px) {

    .btn {
        min-height: 44px;
        padding: 11px 17px;
        font-size: 13px;
    }

    .btn-lg {
        min-height: 48px;
        padding: 13px 20px;
        font-size: 14px;
    }

    .btn-sm {
        min-height: 38px;
        padding: 9px 13px;
        font-size: 12px;
    }
}
