/* ── Early bird badge ────────────────────── */
.early-bird-badge{display:inline-block;background:#f9f0e8;border:1px solid #e8d8c8;border-radius:100px;font-size:11px;color:#8b5e3a;padding:4px 12px;margin-bottom:12px;letter-spacing:.04em}
.slots-remaining{font-size:12px;color:#a09890;margin-top:4px}

/* ── Logged-in greeting ──────────────────── */
.auth-greeting{font-size:13px;color:#7a6f68;margin-bottom:16px;padding:10px 14px;background:#faf8f6;border:1px solid #e8e2dc;border-radius:8px}
.auth-greeting a{color:#3a3330;text-decoration:underline;text-underline-offset:2px}

body{
    background:#F7F2EC;
    color:#171717;
    font-family:Inter,sans-serif;
    margin:0;
}

.checkout{
    max-width:1200px;
    margin:auto;
    padding:140px 7% 100px;
    display:grid;
    grid-template-columns:1fr 420px;
    gap:80px;
}

.checkout-left h1{
    font-size:54px;
    font-family:"Cormorant Garamond",serif;
    font-weight:500;
    margin-bottom:18px;
}

.checkout-copy{
    opacity:.7;
    line-height:1.7;
    margin-bottom:42px;
}

.form-grid{
    display:grid;
    gap:16px;
}

input,
select{
    padding:18px;
    border:none;
    border-radius:16px;
    background:white;
    font-size:15px;
    width:100%;
    box-sizing:border-box;
}

.checkout-right{
    background:white;
    padding:34px;
    border-radius:28px;
    height:fit-content;
    position:sticky;
    top:120px;
}

.order-title{
    font-family:"Cormorant Garamond",serif;
    font-size:28px;
    margin-bottom:30px;
}

.line{
    display:flex;
    justify-content:space-between;
    margin-bottom:18px;
}

.total{
    padding-top:24px;
    border-top:1px solid #ECECEC;
    margin-top:24px;
    font-size:24px;
    font-weight:600;
}

.pay{
    width:100%;
    padding:18px;
    background:#171717;
    color:white;
    border:none;
    border-radius:18px;
    cursor:pointer;
    font-size:15px;
    margin-top:28px;
    transition:.3s;
}

.pay:hover{
    opacity:.92;
}

.ship{
    margin-top:20px;
    font-size:13px;
    opacity:.65;
    line-height:1.6;
}


/* ── Trust signals ─────────────────────────────── */

.trust-section {
    margin-top: 24px;
    border-top: 1px solid #e8e2dc;
    padding-top: 20px;
}

.trust-label {
    font-size: 10px;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: #a09890;
    margin: 0 0 12px;
}

.trust-pills {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-bottom: 16px;
}

.trust-pill {
    display: flex;
    align-items: center;
    gap: 5px;
    padding: 5px 12px;
    border: 1px solid #e8e2dc;
    border-radius: 100px;
    font-size: 11px;
    color: #7a6f68;
    background: #fff;
    letter-spacing: 0.02em;
}

.trust-pill svg {
    width: 12px;
    height: 12px;
    stroke: #a09890;
    fill: none;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
    flex-shrink: 0;
}

.trust-cards {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1px;
    background: #e8e2dc;
    border: 1px solid #e8e2dc;
    border-radius: 10px;
    overflow: hidden;
    margin-bottom: 14px;
}

.trust-card {
    background: #faf8f6;
    padding: 12px;
}

.trust-card svg {
    width: 16px;
    height: 16px;
    stroke: #a09890;
    fill: none;
    stroke-width: 1.75;
    stroke-linecap: round;
    stroke-linejoin: round;
    margin-bottom: 6px;
    display: block;
}

.trust-card-title {
    font-size: 10px;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: #5a4f48;
    margin: 0 0 3px;
}

.trust-card-desc {
    font-size: 11px;
    color: #a09890;
    line-height: 1.5;
    margin: 0;
}

.trust-returns {
    border: 1px solid #e8e2dc;
    border-radius: 10px;
    padding: 12px 14px;
    margin-bottom: 14px;
    background: #faf8f6;
}

.trust-returns-header {
    display: flex;
    align-items: center;
    gap: 7px;
    margin-bottom: 6px;
}

.trust-returns-header svg {
    width: 14px;
    height: 14px;
    stroke: #a09890;
    fill: none;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
    flex-shrink: 0;
}

.trust-returns-title {
    font-size: 10px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: #5a4f48;
}

.trust-returns-body {
    font-size: 11px;
    color: #a09890;
    line-height: 1.6;
    margin: 0;
}

.trust-returns-body a {
    color: #5a4f48;
    text-decoration: underline;
    text-underline-offset: 2px;
}

.trust-footer-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 8px;
}

.trust-footer-secure {
    display: flex;
    align-items: center;
    gap: 5px;
    font-size: 11px;
    color: #b0a8a0;
}

.trust-footer-secure svg {
    width: 11px;
    height: 11px;
    stroke: #b0a8a0;
    fill: none;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.trust-footer-contact {
    font-size: 11px;
    color: #a09890;
}

.trust-footer-contact a {
    color: #5a4f48;
    text-decoration: underline;
    text-underline-offset: 2px;
}

@media(max-width:900px){

    .checkout{
        grid-template-columns:1fr;
        padding:120px 24px;
        gap:40px;
    }

    .checkout-left h1{
        font-size:42px;
    }

    .checkout-right{
        position:static;
    }

}