.page-hero { padding:7rem 0 5rem; background:var(--surface); border-bottom:.75rem solid var(--yellow); }
.page-hero h1 { max-width:850px; margin-bottom:1rem; color:var(--green); font-size:clamp(3rem,6vw,6rem); line-height:.92; }
.page-hero p:not(.eyebrow) { max-width:650px; color:var(--muted); font-size:1.12rem; }
.content-grid { display:grid; grid-template-columns:1.05fr .95fr; gap:4rem; }
.content-grid p { color:var(--muted); }
.feature-list { display:grid; gap:.75rem; padding:0; margin:0; list-style:none; }
.feature-list li { padding:1rem 0; border-bottom:1px solid var(--line); color:var(--green); font-weight:800; }
.page-cards { display:grid; grid-template-columns:repeat(3,1fr); gap:1rem; }
.page-card { min-height:240px; padding:1.5rem; color:#fff; background:var(--green); text-decoration:none; }
.page-card:nth-child(even) { background:var(--black); }
.page-card h2 { color:inherit; font-size:2rem; }
.article-list { display:grid; gap:1rem; }
.article-list article { padding:0; border:1px solid var(--line); background:#fff; overflow:hidden; }
.article-card { display:grid; grid-template-columns:minmax(220px,32%) 1fr; min-height:255px; }
.article-card-media { display:flex; min-height:255px; align-items:center; justify-content:center; overflow:hidden; color:var(--green); background:var(--surface); font-size:.8rem; font-weight:900; letter-spacing:.12em; text-transform:uppercase; }
.article-card-media img { width:100%; height:100%; min-height:255px; object-fit:cover; transition:transform .45s ease; }
.article-card:hover .article-card-media img { transform:scale(1.04); }
.article-card-body { padding:2rem 2.25rem; }
.article-card-body h2 { margin-bottom:.65rem; font-size:clamp(1.5rem,2.5vw,2.25rem); line-height:1.08; }
.article-card-body h2 a { text-decoration:none; }
.article-card-body > p:not(.eyebrow) { max-width:760px; color:var(--muted); }
.article-list h2 { margin-bottom:.5rem; font-size:1.7rem; }
.blog-article { background:linear-gradient(180deg,var(--surface) 0, #fff 22rem); }
.blog-article > .container { width:min(calc(100% - (var(--gutter) * 2)), 980px); }
.article-header { max-width:800px; margin:0 auto 3.75rem; text-align:center; }
.article-header .eyebrow { margin-bottom:1.25rem; }
.article-header h1 { max-width:800px; margin:0 auto 1.4rem; color:var(--green-deep); font-size:clamp(2.5rem,6vw,5.2rem); line-height:.98; }
.article-lead { max-width:700px; margin:0 auto; color:var(--muted); font-size:clamp(1rem,1.5vw,1.18rem); line-height:1.75; }
.article-hero-image { max-width:900px; margin:0 auto 3.5rem; }
.article-hero-image img { display:block; width:auto; max-width:100%; height:auto; max-height:760px; margin-inline:auto; border-radius:1.25rem; object-fit:contain; box-shadow:0 1.25rem 3rem rgba(0,69,42,.14); }
.article-content { max-width:740px; margin-inline:auto; color:#303a33; font-size:1.05rem; line-height:1.85; }
.article-content p { margin:0 0 1.35rem; }
.article-content h2,.article-content h3,.article-content h4 { max-width:none; margin:3.5rem 0 1rem; color:var(--green); line-height:1.08; }
.article-content h2 { font-size:clamp(2rem,4.5vw,3.25rem); }
.article-content h3 { font-size:clamp(1.45rem,3vw,2.1rem); }
.article-content h4 { font-size:1.25rem; }
.article-content ul,.article-content ol { margin:0 0 1.5rem; padding-left:1.35rem; }
.article-content li { margin:.45rem 0; padding-left:.25rem; }
.article-content blockquote { margin:2rem 0; padding:1rem 1.35rem; border-left:4px solid var(--yellow); color:var(--green-deep); background:var(--surface); }
.article-content img { display:block; width:auto; max-width:100%; max-height:520px; margin:2.25rem auto; border-radius:1rem; object-fit:contain; box-shadow:0 1rem 2.5rem rgba(0,69,42,.12); }
.article-content video { display:block; width:100%; max-height:520px; margin:2.25rem auto; border-radius:1rem; background:var(--black); }
.article-content a { color:var(--green-deep); font-weight:700; text-decoration-thickness:2px; text-underline-offset:3px; }
.article-actions { max-width:740px; margin:3.5rem auto 0; padding-top:2rem; border-top:1px solid var(--line); }
.contact-panel { padding:2rem; background:var(--yellow); }
@media (max-width:760px) { .page-hero { padding:5rem 0 3.5rem; } .content-grid,.page-cards { grid-template-columns:1fr; } .article-card { grid-template-columns:1fr; } .article-card-media,.article-card-media img { min-height:190px; height:190px; } .article-card-body { padding:1.5rem; } .blog-article { padding-top:4rem; } .article-header { margin-bottom:2.5rem; } .article-hero-image { margin-bottom:2.5rem; } .article-hero-image img { max-height:70vh; border-radius:.8rem; } .article-content { font-size:1rem; line-height:1.75; } .article-content h2 { margin-top:2.75rem; } .article-content img,.article-content video { margin-block:1.75rem; border-radius:.7rem; } }
