@import url('https://fonts.googleapis.com/css2?family=Merriweather:ital,wght@0,300;0,400;0,700;1,400&family=Inter:wght@300;400;500;600;700&display=swap');

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}

:root{
  --navy:#1a2a4a;--navy-dark:#111e36;--navy-mid:#243558;
  --blue-accent:#2d6fae;--blue-light:#e8f0fb;--blue-border:#c5d8f0;
  --white:#ffffff;--gray-100:#f7f8fa;--gray-200:#eef0f4;--gray-300:#dde1e9;
  --gray-500:#8a92a0;--gray-700:#4a5568;--text-body:#2d3748;--text-muted:#6b7280;
  --font-serif:'Merriweather',Georgia,serif;--font-sans:'Inter',sans-serif;
  --container-max:760px;--container-wide:980px;
  --shadow-card:0 2px 12px rgba(26,42,74,.10);--shadow-hover:0 6px 24px rgba(26,42,74,.16);
  --transition:all .25s ease;
}

html{scroll-behavior:smooth;font-size:17px}
body{font-family:var(--font-sans);background:var(--gray-100);color:var(--text-body);line-height:1.75;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:var(--blue-accent);text-decoration:none;transition:var(--transition)}
a:hover{color:var(--navy);text-decoration:underline}

/* ARTICLE TOP BAR — static, no nav links (Outbrain compliant) */
.article-top-bar{background:var(--navy-dark);border-bottom:2px solid var(--blue-accent);padding:0 1.5rem}
.article-top-bar__inner{max-width:var(--container-wide);margin:0 auto;display:flex;align-items:center;justify-content:space-between;height:44px}
.article-top-bar__source{font-family:var(--font-sans);font-size:.78rem;color:var(--gray-500);letter-spacing:.02em}
.article-top-bar__sponsored{font-family:var(--font-sans);font-size:.65rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--navy-dark);background:#c8d8e8;padding:.22rem .7rem;border-radius:3px}

/* LAYOUT */
.article-wrapper{max-width:var(--container-wide);margin:2rem auto;padding:0 1.5rem;display:grid;grid-template-columns:1fr 280px;gap:2rem;align-items:start}
.article-main{background:var(--white);border-radius:4px;box-shadow:var(--shadow-card);overflow:hidden}

/* META */
.article-meta{padding:1.5rem 2.2rem 0;display:flex;align-items:center;gap:.8rem;flex-wrap:wrap}
.article-meta__category{background:var(--navy);color:var(--white);font-size:.67rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:.28rem .75rem;border-radius:3px}
.article-meta__date,.article-meta__author{font-size:.8rem;color:var(--text-muted)}
.article-meta__divider{color:var(--gray-300)}

/* HEADLINE */
.article-headline{padding:1.2rem 2.2rem 0}
.article-headline h1{font-family:var(--font-serif);font-size:1.8rem;font-weight:700;color:var(--navy-dark);line-height:1.35;letter-spacing:-.01em}
.article-headline__sub{font-size:1rem;color:var(--gray-700);margin-top:.8rem;line-height:1.6;font-style:italic;border-left:3px solid var(--blue-accent);padding-left:1rem}

/* HERO */
.article-hero{margin:1.5rem 0}
.article-hero img{width:100%;object-fit:cover;max-height:360px}
.article-hero__caption{padding:.5rem 2.2rem;font-size:.75rem;color:var(--text-muted);font-style:italic;border-top:1px solid var(--gray-200);background:var(--gray-100)}

/* BODY */
.article-body{padding:0 2.2rem 2rem}
.article-body p{font-family:var(--font-serif);font-size:.96rem;color:var(--text-body);line-height:1.85;margin-bottom:1.4rem}
.article-body h2{font-family:var(--font-sans);font-size:1.18rem;font-weight:700;color:var(--navy);margin:2rem 0 .8rem;padding-bottom:.5rem;border-bottom:2px solid var(--blue-border)}
.article-body h3{font-family:var(--font-sans);font-size:.98rem;font-weight:600;color:var(--navy-mid);margin:1.5rem 0 .4rem}

/* INFO BOX */
.info-box{background:var(--blue-light);border:1px solid var(--blue-border);border-left:4px solid var(--blue-accent);border-radius:4px;padding:1.1rem 1.4rem;margin:1.5rem 0}
.info-box p{font-family:var(--font-sans)!important;font-size:.87rem!important;color:var(--navy-mid)!important;margin-bottom:0!important;line-height:1.65!important}

/* NUTRIENT TABLE */
.nutrient-table{width:100%;border-collapse:collapse;margin:1.4rem 0;font-family:var(--font-sans);font-size:.86rem}
.nutrient-table th{background:var(--navy);color:var(--white);padding:.6rem 1rem;text-align:left;font-weight:600}
.nutrient-table td{padding:.55rem 1rem;border-bottom:1px solid var(--gray-200)}
.nutrient-table tr:nth-child(even) td{background:var(--gray-100)}
.nutrient-table tr:hover td{background:var(--blue-light);transition:var(--transition)}

/* OFFER SECTION */
.offer-section{background:var(--white);border-radius:4px;box-shadow:var(--shadow-card);padding:2rem 2.2rem;margin-top:0}
.offer-section__title{font-family:var(--font-serif);font-size:1.45rem;font-weight:700;color:var(--navy-dark);text-align:center;margin-bottom:.4rem}
.offer-section__sub{font-size:.88rem;color:var(--text-muted);text-align:center;margin-bottom:2rem;line-height:1.6;max-width:520px;margin-left:auto;margin-right:auto}
.product-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;margin-bottom:1.5rem}
.product-card{background:var(--white);border:2px solid var(--gray-300);border-radius:8px;padding:1.4rem 1rem;text-align:center;transition:var(--transition);position:relative;overflow:hidden}
.product-card:hover{border-color:var(--blue-accent);box-shadow:var(--shadow-hover);transform:translateY(-3px)}
.product-card--featured{border-color:var(--blue-accent);background:linear-gradient(160deg,#f0f6ff 0%,var(--white) 100%)}
.product-card__badge{position:absolute;top:0;left:50%;transform:translateX(-50%);background:var(--navy);color:var(--white);font-size:.63rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:.22rem .85rem;border-radius:0 0 6px 6px}
.product-card__image{margin:.8rem auto 1rem;max-width:130px}
.product-card__name{font-size:.78rem;font-weight:700;color:var(--navy);text-transform:uppercase;letter-spacing:.07em;margin-bottom:.3rem}
.product-card__qty{font-family:var(--font-serif);font-size:1.05rem;font-weight:700;color:var(--navy-dark);margin-bottom:.4rem}
.product-card__desc{font-size:.77rem;color:var(--text-muted);margin-bottom:1.1rem;line-height:1.5}
.product-card__cta{display:block;width:100%;background:var(--navy);color:var(--white)!important;font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;padding:.7rem .5rem;border-radius:5px;text-decoration:none!important;transition:var(--transition)}
.product-card__cta:hover{background:var(--blue-accent);transform:translateY(-1px);box-shadow:0 4px 14px rgba(45,111,174,.35)}
.product-card--featured .product-card__cta{background:var(--blue-accent)}
.product-card--featured .product-card__cta:hover{background:var(--navy)}

/* REFERENCES */
.references-section{background:var(--gray-100);border:1px solid var(--gray-200);border-radius:4px;padding:1.4rem 1.6rem;margin-top:2rem}
.references-section h2{font-size:.93rem;font-weight:700;color:var(--navy);margin-bottom:.9rem;text-transform:uppercase;letter-spacing:.06em;border-bottom:none!important;padding-bottom:0!important}
.references-section ol{padding-left:1.4rem}
.references-section li{font-size:.81rem;color:var(--gray-700);margin-bottom:.7rem;line-height:1.6}
.references-section li a{color:var(--blue-accent);font-weight:500;word-break:break-all}

/* SIDEBAR */
.article-sidebar{display:flex;flex-direction:column;gap:1.4rem}
.sidebar-widget{background:var(--white);border-radius:4px;box-shadow:var(--shadow-card);overflow:hidden}
.sidebar-widget__header{background:var(--navy);color:var(--white);font-size:.73rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;padding:.6rem 1.1rem}
.sidebar-widget__body{padding:1.1rem}
.sidebar-widget__body p{font-size:.82rem;color:var(--text-body);line-height:1.6;margin-bottom:.7rem}
.key-facts{list-style:none;padding:0;margin:0}
.key-facts li{font-size:.81rem;color:var(--text-body);padding:.5rem 0;border-bottom:1px solid var(--gray-200);display:flex;align-items:flex-start;gap:.55rem;line-height:1.5}
.key-facts li::before{content:'✓';color:var(--blue-accent);font-weight:700;flex-shrink:0;margin-top:.05rem}
.key-facts li:last-child{border-bottom:none}

/* DISCLAIMER BANNER */
.disclaimer-banner{background:#f0f4f8;border-top:2px solid var(--gray-300);padding:1.8rem 1.5rem;margin-top:2rem}
.disclaimer-banner__inner{max-width:var(--container-wide);margin:0 auto}
.disclaimer-banner__label{display:inline-block;background:var(--gray-700);color:var(--white);font-size:.63rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:.2rem .6rem;border-radius:3px;margin-bottom:.6rem}
.disclaimer-banner p{font-size:.77rem;color:var(--gray-700);line-height:1.65;max-width:860px}

/* FOOTER */
.site-footer{background:var(--navy-dark);color:var(--gray-500);padding:2rem 1.5rem 1.5rem}
.site-footer__inner{max-width:var(--container-wide);margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:1rem}
.site-footer__links{display:flex;gap:2rem;flex-wrap:wrap;justify-content:center;list-style:none;padding:0}
.site-footer__links a{font-size:.81rem;color:var(--gray-500);text-decoration:none;transition:var(--transition)}
.site-footer__links a:hover{color:var(--white)}
.site-footer__copy{font-size:.74rem;color:var(--gray-500);text-align:center}
.site-footer__divider{width:100%;height:1px;background:rgba(255,255,255,.08)}

/* LEGAL PAGES */
.legal-wrapper{max-width:760px;margin:3rem auto;padding:0 1.5rem}
.legal-card{background:var(--white);border-radius:4px;box-shadow:var(--shadow-card);padding:2.5rem 3rem}
.legal-card h1{font-family:var(--font-serif);font-size:1.65rem;color:var(--navy-dark);margin-bottom:.4rem}
.legal-card .legal-date{font-size:.81rem;color:var(--text-muted);margin-bottom:2rem;padding-bottom:1.2rem;border-bottom:1px solid var(--gray-200)}
.legal-card h2{font-size:1.03rem;font-weight:700;color:var(--navy);margin:1.8rem 0 .55rem}
.legal-card p,.legal-card ul,.legal-card ol{font-size:.89rem;color:var(--text-body);line-height:1.75;margin-bottom:1rem}
.legal-card ul,.legal-card ol{padding-left:1.5rem}
.legal-card li{margin-bottom:.35rem}
.legal-card a{color:var(--blue-accent)}

/* CONTACT */
.contact-form{display:flex;flex-direction:column;gap:1.2rem;margin-top:1.5rem}
.form-group{display:flex;flex-direction:column;gap:.4rem}
.form-group label{font-size:.84rem;font-weight:600;color:var(--navy)}
.form-group input,.form-group select,.form-group textarea{font-family:var(--font-sans);font-size:.89rem;color:var(--text-body);background:var(--white);border:1.5px solid var(--gray-300);border-radius:5px;padding:.7rem .9rem;transition:var(--transition);outline:none;width:100%}
.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--blue-accent);box-shadow:0 0 0 3px rgba(45,111,174,.12)}
.form-group textarea{min-height:130px;resize:vertical}
.btn-submit{display:inline-block;background:var(--navy);color:var(--white);font-size:.88rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;padding:.85rem 2rem;border-radius:5px;border:none;cursor:pointer;transition:var(--transition);align-self:flex-start}
.btn-submit:hover{background:var(--blue-accent);transform:translateY(-1px);box-shadow:0 4px 14px rgba(45,111,174,.35)}
.contact-info-box{background:var(--blue-light);border:1px solid var(--blue-border);border-radius:6px;padding:1.2rem 1.5rem;margin-bottom:2rem}
.contact-info-box p{font-size:.87rem;color:var(--navy-mid);margin:0;line-height:1.65}
.form-success{display:none;background:#e8f5e9;border:1px solid #a5d6a7;border-radius:6px;padding:1.2rem 1.5rem;font-size:.88rem;color:#2e7d32;font-weight:500;text-align:center;margin-top:1rem}

/* RESPONSIVE */
@media(max-width:860px){
  .article-wrapper{grid-template-columns:1fr}
  .article-sidebar{order:-1}
  .article-headline h1{font-size:1.5rem}
}
@media(max-width:600px){
  html{font-size:16px}
  .article-body,.article-headline,.article-meta{padding-left:1.2rem;padding-right:1.2rem}
  .product-cards{grid-template-columns:1fr;max-width:280px;margin-left:auto;margin-right:auto}
  .legal-card{padding:1.5rem 1.2rem}
  .offer-section{padding:1.5rem 1.2rem}
}
