/* AirBright Coastal / Vouch Framework Systems - Shared Stylesheet */
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;700;900&family=DM+Sans:wght@300;400;500;600&display=swap');
:root{--navy:#0a1628;--ocean:#1a4a6e;--sky:#2e8bc0;--foam:#e8f4f8;--sand:#f5ede0;--coral:#e8734a;--gold:#c9963b;--white:#ffffff;--text:#1c2b3a;--muted:#5a7a8a;--border:#d0e4ec;--radius:8px;--shadow:0 4px 24px rgba(10,22,40,0.12);}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{font-family:'DM Sans',sans-serif;color:var(--text);background:var(--white);line-height:1.7;font-size:16px;}
nav{background:var(--navy);padding:0 2rem;display:flex;align-items:center;justify-content:space-between;height:64px;position:sticky;top:0;z-index:100;box-shadow:0 2px 12px rgba(0,0,0,0.3);}
.nav-logo{font-family:'Playfair Display',serif;font-size:1.4rem;color:var(--white);text-decoration:none;}
.nav-logo span{color:var(--coral);}
.nav-links{display:flex;gap:1.5rem;list-style:none;}
.nav-links a{color:rgba(255,255,255,0.8);text-decoration:none;font-size:0.9rem;font-weight:500;transition:color 0.2s;}
.nav-links a:hover{color:var(--coral);}
.hero{background:linear-gradient(135deg,var(--navy) 0%,var(--ocean) 60%,var(--sky) 100%);color:var(--white);padding:5rem 2rem 4rem;text-align:center;position:relative;overflow:hidden;}
.hero-eyebrow{font-size:0.8rem;text-transform:uppercase;letter-spacing:0.15em;color:var(--coral);font-weight:600;margin-bottom:1rem;}
.hero h1{font-family:'Playfair Display',serif;font-size:clamp(2rem,5vw,3.5rem);font-weight:900;line-height:1.15;margin-bottom:1.25rem;}
.hero p{font-size:1.1rem;max-width:600px;margin:0 auto 2rem;opacity:0.85;}
.btn{display:inline-block;padding:0.75rem 2rem;border-radius:var(--radius);font-weight:600;text-decoration:none;font-size:0.95rem;transition:all 0.2s;cursor:pointer;border:none;}
.btn-primary{background:var(--coral);color:var(--white);}
.btn-primary:hover{background:#d4623a;transform:translateY(-1px);}
.btn-outline{background:transparent;color:var(--white);border:2px solid rgba(255,255,255,0.5);margin-left:1rem;}
.btn-outline:hover{border-color:var(--white);background:rgba(255,255,255,0.1);}
.container{max-width:960px;margin:0 auto;padding:0 1.5rem;}
section{padding:4rem 0;}
.section-title{font-family:'Playfair Display',serif;font-size:clamp(1.6rem,3vw,2.4rem);font-weight:700;color:var(--navy);margin-bottom:0.5rem;}
.section-subtitle{color:var(--muted);font-size:1rem;margin-bottom:2.5rem;}
.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.5rem;}
.card{background:var(--white);border:1px solid var(--border);border-radius:12px;padding:1.75rem;box-shadow:0 2px 12px rgba(10,22,40,0.06);transition:box-shadow 0.2s,transform 0.2s;}
.card:hover{box-shadow:var(--shadow);transform:translateY(-2px);}
.card-icon{font-size:2rem;margin-bottom:1rem;}
.card h3{font-family:'Playfair Display',serif;font-size:1.15rem;margin-bottom:0.5rem;color:var(--navy);}
.card p{font-size:0.92rem;color:var(--muted);}
.article-body{max-width:800px;margin:0 auto;}
.article-body h2{font-family:'Playfair Display',serif;font-size:1.65rem;color:var(--navy);margin:2.5rem 0 1rem;padding-bottom:0.4rem;border-bottom:2px solid var(--foam);}
.article-body h3{font-size:1.15rem;color:var(--ocean);margin:1.75rem 0 0.6rem;font-weight:600;}
.article-body p{margin-bottom:1.25rem;}
.article-body ul,.article-body ol{margin:1rem 0 1.25rem 1.5rem;}
.article-body li{margin-bottom:0.5rem;}
.article-body a{color:var(--sky);text-decoration:underline;}
.article-body a:hover{color:var(--coral);}
.article-body blockquote{border-left:4px solid var(--sky);padding:1rem 1.5rem;background:var(--foam);margin:1.5rem 0;border-radius:0 var(--radius) var(--radius) 0;font-style:italic;color:var(--ocean);}
.badge{display:inline-block;background:var(--foam);color:var(--ocean);font-size:0.78rem;font-weight:600;padding:0.25rem 0.75rem;border-radius:100px;letter-spacing:0.05em;text-transform:uppercase;margin-bottom:1rem;}
.affiliate-disclaimer{background:var(--sand);border:1px solid #e0d4c0;border-radius:var(--radius);padding:1rem 1.25rem;font-size:0.85rem;color:#7a6a50;margin:2rem 0;display:flex;gap:0.75rem;align-items:flex-start;}
.cta-band{background:linear-gradient(135deg,var(--navy),var(--ocean));color:var(--white);padding:3.5rem 2rem;text-align:center;}
.cta-band h2{font-family:'Playfair Display',serif;font-size:2rem;margin-bottom:0.75rem;}
.cta-band p{opacity:0.8;max-width:500px;margin:0 auto 1.75rem;}
.form-group{margin-bottom:1.25rem;}
.form-group label{display:block;font-size:0.88rem;font-weight:600;color:var(--navy);margin-bottom:0.4rem;}
.form-group input,.form-group select,.form-group textarea{width:100%;padding:0.7rem 1rem;border:1.5px solid var(--border);border-radius:var(--radius);font-family:'DM Sans',sans-serif;font-size:0.95rem;color:var(--text);background:var(--white);transition:border-color 0.2s;}
.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--sky);box-shadow:0 0 0 3px rgba(46,139,192,0.12);}
footer{background:var(--navy);color:rgba(255,255,255,0.7);padding:3rem 2rem 1.5rem;}
.footer-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2rem;max-width:960px;margin:0 auto 2rem;}
.footer-col h4{color:var(--white);font-size:0.95rem;font-weight:600;margin-bottom:1rem;}
.footer-col ul{list-style:none;}
.footer-col ul li{margin-bottom:0.5rem;}
.footer-col a{color:rgba(255,255,255,0.6);text-decoration:none;font-size:0.88rem;transition:color 0.2s;}
.footer-col a:hover{color:var(--coral);}
.footer-bottom{text-align:center;border-top:1px solid rgba(255,255,255,0.1);padding-top:1.5rem;font-size:0.82rem;color:rgba(255,255,255,0.4);max-width:960px;margin:0 auto;}
.text-center{text-align:center;}
.mt-2{margin-top:2rem;}
.bg-foam{background:var(--foam);}
.bg-sand{background:var(--sand);}
.article-layout{display:grid;grid-template-columns:1fr 300px;gap:3rem;align-items:start;}
.zip-meta{display:flex;flex-wrap:wrap;gap:1rem;margin:1.5rem 0;}
.zip-tag{background:var(--foam);border:1px solid var(--border);border-radius:6px;padding:0.35rem 0.85rem;font-size:0.82rem;font-weight:600;color:var(--ocean);}
.sidebar{background:var(--foam);border-radius:12px;padding:1.75rem;margin-top:2rem;}
.sidebar h4{font-family:'Playfair Display',serif;color:var(--navy);margin-bottom:1rem;}
.sidebar ul{list-style:none;padding:0;}
.sidebar ul li{padding:0.4rem 0;border-bottom:1px solid var(--border);font-size:0.9rem;}
.sidebar ul li:last-child{border-bottom:none;}
@media(max-width:768px){.article-layout{grid-template-columns:1fr;}}
@media(max-width:640px){nav{padding:0 1rem;}.nav-links{gap:1rem;}.btn-outline{display:none;}.hero{padding:3rem 1rem 2.5rem;}}
