/* Banner design (Got A Ticket): white logo bar, colored nav and hero, feature cards. */
@import url('https://fonts.googleapis.com/css2?family=Archivo:wght@600;800&family=Source+Sans+3:wght@400;600&display=swap');

body.design {
    background: #F6F4EF;
    color: #1A1A1A;
    font: normal 16px/1.5 'Source Sans 3', Arial, sans-serif;
    padding: 0;
}
.design #page {
    margin: 32px auto;
    border-radius: 14px;
}
.design-home #page {
    width: auto;
    padding: 0;
    margin: 0;
    background: transparent;
    border-radius: 0;
}
.design-home #affiliate-links {
    max-width: 1100px;
    margin: 0 auto 24px;
    padding: 0 32px;
    list-style: none;
}
.design-home #affiliate-links li:first-child { display: none; }

.bn-wrap { max-width: 1100px; margin: 0 auto; padding: 0 32px; box-sizing: border-box; }

/* Header */
.bn-header { background: #ffffff; }
.bn-top { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding-top: 16px; padding-bottom: 16px; flex-wrap: wrap; }
.bn-brand img { max-height: 72px; max-width: 360px; border: 0; display: block; }
.bn-phone { font-size: 16px; color: #4A4A4A; }
.bn-phone strong { font-family: Archivo, Arial, sans-serif; font-weight: 800; font-size: 22px; color: #1D3557; }
.bn-nav { background: #1D3557; }
.bn-nav ul { list-style: none; display: flex; flex-wrap: wrap; gap: 4px 28px; padding-top: 12px; padding-bottom: 12px; margin: 0 auto; }
.bn-nav li { margin: 0; }
.bn-nav a { color: #ffffff; font-weight: 600; font-size: 16px; text-decoration: none; }
.bn-nav a:hover { color: #F4A261; }

/* Hero */
.bn-hero { background: #1D3557; color: #ffffff; padding: 64px 0 72px; border-top: 1px solid rgba(255,255,255,.2); }
.bn-eyebrow { font-size: 16px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: #F4A261; }
.bn-hero h1 { font-family: Archivo, Arial, sans-serif; font-weight: 800; font-size: 52px; line-height: 1.05; max-width: 800px; margin: 16px 0; color: #ffffff; text-shadow: none; }
p.bn-lead { font-family: inherit; font-size: 20px; max-width: 640px; margin: 0 0 28px; color: #ffffff; }
.bn-buttons { display: flex; flex-wrap: wrap; gap: 16px; }
.bn-btn { display: inline-block; padding: 16px 30px; border-radius: 10px; font-weight: 600; font-size: 18px; text-decoration: none; }
.bn-btn-main { background: #F4A261; color: #1A1A1A !important; }
.bn-btn-outline { border: 2px solid #ffffff; color: #ffffff !important; }
.bn-btn:hover { opacity: .9; }

/* Body */
.bn-body { display: flex; flex-wrap: wrap; gap: 24px; padding-top: 48px; padding-bottom: 48px; align-items: flex-start; }
.bn-cards { flex: 1 1 560px; display: flex; flex-direction: column; gap: 16px; }
.bn-card { background: #ffffff; border-radius: 14px; padding: 22px 26px; }
.bn-card h3 { font-family: Archivo, Arial, sans-serif; font-weight: 800; font-size: 21px; color: #1D3557; margin: 0 0 6px; }
.bn-card p { margin: 0; color: #3A3A3A; font: normal 16px/1.5 'Source Sans 3', Arial, sans-serif; }
.bn-price { flex: 0 1 380px; background: #ffffff; border-radius: 14px; padding: 22px 26px; border-top: 6px solid #F4A261; }
.price-box-title { text-transform: none; font-family: Archivo, Arial, sans-serif; font-weight: 800; font-size: 21px; color: #1D3557; margin: 0 0 12px; }

/* Footer */
.bn-footer { background: #ffffff; color: #4A4A4A; padding: 24px 0; font-size: 15px; }
.bn-footer .footer-links { list-style: none; display: flex; flex-wrap: wrap; gap: 4px 20px; padding: 0; margin: 0 0 10px; }
.bn-footer a { color: #1D3557; }
.bn-footer .footer-details { font: inherit; color: inherit; display: flex; flex-wrap: wrap; justify-content: space-between; gap: 6px 24px; margin: 0; }
