/* GLOBAL VARIABLES & RESET */
:root {
    --brand-maroon: #802A36;
    --brand-charcoal: #2B2B2B;
    --brand-cream: #F5F2EA;
    --brand-white: #FFFFFF;
    --font-main: 'Helvetica Neue', Helvetica, Arial, sans-serif;
}
* { margin: 0; padding: 0; box-sizing: border-box; }
body { font-family: var(--font-main); background-color: var(--brand-charcoal); color: var(--brand-cream); line-height: 1.6; }

/* 24/7 CONTACT BANNER (TIGHTENED PADDING) */
.top-bar { background-color: var(--brand-maroon); color: var(--brand-white); text-align: center; padding: 0.4rem 5%; font-size: 0.85rem; font-weight: bold; letter-spacing: 1px; z-index: 200; position: relative; }
.top-bar a { color: var(--brand-white); text-decoration: none; border-bottom: 1px solid transparent; transition: 0.3s; }
.top-bar a:hover { border-bottom: 1px solid var(--brand-white); }

/* BANNER HEADER (AGGRESSIVELY TIGHTENED PADDING & LOGO) */
.banner-header { background-color: #1A1A1A; text-align: center; padding: 0.8rem 5%; border-bottom: 2px solid #444; }
.banner-logo-img { max-width: 180px; height: auto; display: block; margin: 0 auto 0.2rem auto; }
.banner-title { font-size: 1.8rem; font-weight: 900; letter-spacing: 1px; color: var(--brand-white); text-transform: uppercase; }

/* STICKY NAVIGATION BAR (TIGHTENED PADDING) */
.sticky-nav { background-color: var(--brand-maroon); position: sticky; top: 0; z-index: 100; box-shadow: 0 4px 12px rgba(0,0,0,0.5); padding: 0.6rem 5%; }
.nav-container { display: flex; justify-content: center; flex-wrap: wrap; gap: 1.2rem; max-width: 1400px; margin: 0 auto; }
.nav-container a { color: var(--brand-white); text-decoration: none; font-weight: bold; font-size: 0.95rem; text-transform: uppercase; transition: opacity 0.3s; }
.nav-container a:hover { opacity: 0.7; }

/* SECTION STYLING */
.section-padding { padding: 3.5rem 5%; max-width: 1200px; margin: 0 auto; }
.alt-bg { background-color: #222; border-top: 1px solid #333; border-bottom: 1px solid #333; }
.section-title { font-size: 2.5rem; color: var(--brand-white); margin-bottom: 1.5rem; border-bottom: 3px solid var(--brand-maroon); padding-bottom: 0.5rem; display: inline-block; }

/* CONTENT GRIDS */
.grid-2 { display: grid; grid-template-columns: 1fr 1fr; gap: 3rem; align-items: start; }

/* CARDS & PRICING */
.info-card { background-color: #363636; padding: 2rem; border-radius: 4px; border-left: 4px solid var(--brand-maroon); }
.info-card h3 { color: var(--brand-white); font-size: 1.4rem; margin-bottom: 1rem; }
.price-list { list-style: none; margin-top: 1rem; }
.price-list li { display: flex; justify-content: space-between; padding: 0.5rem 0; border-bottom: 1px solid #555; }
.price-list li:last-child { border-bottom: none; }
.feature-list { margin: 1.5rem 0; list-style-type: none; padding-left: 0; }
.feature-list li { margin-bottom: 0.8rem; padding-left: 1.5rem; position: relative; font-size: 1.05rem;}
.feature-list li::before { content: "→"; color: var(--brand-maroon); position: absolute; left: 0; font-weight: bold; }
.highlight-text { color: var(--brand-maroon); font-weight: bold; }

/* FOOTER */
footer { background-color: #1A1A1A; padding: 3rem 5%; text-align: center; border-top: 2px solid var(--brand-maroon); }

@media