/* Nomadic Life Tour — Plugin Styles v5.0 */
@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@300;400;500;700&display=swap');
.nmtb-wrapper {
    font-family: 'Roboto', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    background: linear-gradient(135deg, #0A0F1E 0%, #0D1B2A 50%, #0A1628 100%);
    border-radius: 16px;
    padding: 3rem 2.5rem;
    max-width: 960px;
    margin: 2rem auto;
    color: #FFFFFF;
    border: 1px solid rgba(255,255,255,0.08);
}
.nmtb-header { text-align: center; margin-bottom: 2.5rem; }
.nmtb-header-label { font-size: 0.72rem; letter-spacing: 3px; text-transform: uppercase; color: #FFFFFF; opacity: 0.5; margin-bottom: 0.5rem; }
.nmtb-title { font-family: 'Roboto', sans-serif; font-size: 2.2rem; color: #FFFFFF; margin: 0 0 0.5rem; font-weight: 700; letter-spacing: -0.5px; }
.nmtb-subtitle { color: rgba(255,255,255,0.6); font-size: 0.95rem; line-height: 1.6; margin: 0; }
.nmtb-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 2rem; align-items: start; }
@media (max-width: 680px) { .nmtb-grid { grid-template-columns: 1fr; } .nmtb-wrapper { padding: 2rem 1.25rem; } .nmtb-title { font-size: 1.6rem; } }
.nmtb-field { margin-bottom: 1.2rem; }
.nmtb-label { display: block; font-size: 0.75rem; letter-spacing: 1px; text-transform: uppercase; color: rgba(255,255,255,0.45); margin-bottom: 0.5rem; }
.nmtb-select-wrap { position: relative; }
.nmtb-select-wrap select, .nmtb-input {
    width: 100%; padding: 0.75rem 1rem;
    background: rgba(255,255,255,0.06);
    border: 1px solid rgba(255,255,255,0.15);
    border-radius: 10px; color: #FFFFFF;
    font-size: 0.9rem; font-family: inherit;
    appearance: none; -webkit-appearance: none;
    cursor: pointer; transition: border-color 0.2s; outline: none; box-sizing: border-box;
}
.nmtb-select-wrap select:focus, .nmtb-input:focus { border-color: rgba(255,255,255,0.5); }
.nmtb-select-wrap select option { background: #0D1B2A; color: #FFFFFF; }
.nmtb-input::placeholder { color: rgba(255,255,255,0.3); }
.nmtb-select-arrow { position: absolute; right: 1rem; top: 50%; transform: translateY(-50%); color: rgba(255,255,255,0.4); pointer-events: none; }
.nmtb-activities { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.nmtb-act {
    background: rgba(255,255,255,0.04);
    border: 1px solid rgba(255,255,255,0.12);
    color: rgba(255,255,255,0.6);
    padding: 0.6rem 0.75rem; border-radius: 8px;
    cursor: pointer; font-size: 0.82rem; text-align: left;
    font-family: inherit; transition: all 0.2s; line-height: 1.3;
}
.nmtb-act:hover { background: rgba(255,255,255,0.1); border-color: rgba(255,255,255,0.35); color: #fff; }
.nmtb-act.active { background: rgba(255,255,255,0.15); border-color: #FFFFFF; color: #FFFFFF; }
.nmtb-price-card {
    background: rgba(255,255,255,0.05);
    border: 1px solid rgba(255,255,255,0.2);
    border-radius: 14px; padding: 1.75rem;
    position: sticky; top: 100px;
}
.nmtb-price-label { font-size: 0.75rem; letter-spacing: 2px; text-transform: uppercase; color: rgba(255,255,255,0.4); margin-bottom: 0.5rem; }
.nmtb-price-amount { display: flex; align-items: baseline; gap: 4px; margin-bottom: 0.25rem; }
.nmtb-currency { font-size: 1.8rem; font-weight: 500; color: #FFFFFF; }
#nmtb-price { font-size: 3rem; color: #FFFFFF; line-height: 1; font-weight: 700; }
.nmtb-price-per { font-size: 0.8rem; color: rgba(255,255,255,0.4); }
.nmtb-divider { border: none; border-top: 1px solid rgba(255,255,255,0.12); margin: 1.2rem 0; }
.nmtb-sum-row { display: flex; justify-content: space-between; align-items: flex-start; gap: 0.5rem; margin-bottom: 0.5rem; font-size: 0.83rem; }
.nmtb-sum-row span { color: rgba(255,255,255,0.4); flex-shrink: 0; }
.nmtb-sum-row strong { color: rgba(255,255,255,0.85); font-weight: 400; text-align: right; font-size: 0.82rem; }
.nmtb-includes { display: flex; flex-direction: column; gap: 6px; }
.nmtb-inc-item { font-size: 0.8rem; color: rgba(255,255,255,0.5); line-height: 1.4; }
.nmtb-whatsapp-btn {
    display: flex; align-items: center; justify-content: center; gap: 10px;
    width: 100%; padding: 1rem;
    background: #25D366; color: #fff;
    border: none; border-radius: 10px;
    font-size: 0.95rem; font-weight: 500; font-family: inherit;
    cursor: pointer; transition: all 0.25s; margin-top: 1.25rem;
}
.nmtb-whatsapp-btn:hover { background: #20BA5A; transform: translateY(-2px); }
.nmtb-note { font-size: 0.74rem; color: rgba(255,255,255,0.3); text-align: center; margin: 0.75rem 0 0; line-height: 1.5; }
