/*
Theme Name: AHS Blog
Description: A WordPress recreation of the January 2026 AHS Education blog homepage.
Version: 1.0.11
Text Domain: ahs-archive
*/
:root { --orange:#f59831; --teal:#238ea2; --ink:#282828; }
* { box-sizing:border-box; }
body { margin:0; color:var(--ink); background:#fff; font:16px/1.6 Roboto,Arial,sans-serif; overflow-wrap:anywhere; }
img { max-width:100%; height:auto; vertical-align:middle; }
a { color:#166c7c; }
a:focus-visible, summary:focus-visible { outline:3px solid var(--teal); outline-offset:4px; }
h1,h2,h3,p { margin:0 0 .75rem; }
h1,h2,h3 { line-height:1.18; }
.wrap { width:min(1140px,calc(100% - 40px)); margin-inline:auto; }
.site-header .wrap { display:flex; align-items:center; justify-content:space-between; gap:18px; min-height:85px; }
.site-header img { width:70px; }
.site-header nav { display:flex; flex-wrap:wrap; align-items:center; gap:18px; }
.site-header a,.button { text-decoration:none; font-weight:700; }
.button { display:inline-block; padding:10px 22px; border-radius:5px; background:var(--orange); color:#171717; }
.button:hover { background:#ffc37f; }
.load-more-wrap { text-align:center; margin-top:28px; }
.load-more-wrap button { border:0; font:inherit; font-weight:700; cursor:pointer; }
.load-more-wrap button:disabled { opacity:.65; cursor:wait; }
.load-more-wrap button:focus-visible { outline:3px solid var(--teal); outline-offset:4px; }
.load-more-wrap [hidden] { display:none; }
.hero { min-height:550px; display:grid; align-items:center; background:linear-gradient(39deg,#17100b 22%,#815326); background-color:#302214; color:white; }
.hero h1,.section-title { font-family:"Comic Sans MS",cursive,sans-serif; }
.hero h1 { color:var(--orange); font-size:clamp(32px,5vw,46px); max-width:660px; }
.hero p { max-width:530px; }
.eyebrow { font-weight:700; }
.section { padding-block:42px; }
.section-title { display:flex; align-items:center; gap:18px; text-align:center; justify-content:center; font-size:clamp(23px,4vw,30px); margin-bottom:27px; }
.section-title::before,.section-title::after { content:""; width:clamp(16px,12vw,120px); border-top:3px dotted var(--orange); }
.feature-grid,.about,.footer-grid { display:grid; gap:24px; }
.feature-grid { grid-template-columns:2fr 1fr; }
.feature,.card { border:1px solid #eee; border-radius:8px; overflow:hidden; box-shadow:0 4px 18px #0000000c; }
.feature img,.card img { width:100%; aspect-ratio:16/9; object-fit:cover; }
.card-copy { padding:22px; }
.card-copy h2 a,.card-copy h3 a { color:inherit; text-decoration:none; }
.card-copy h2 a:hover,.card-copy h3 a:hover { color:var(--teal); }
.cards .read-more-link {
    display:inline-flex;
    align-items:center;
    gap:10px;
    min-height:44px;
    padding:8px 18px;
    border:1px solid #e8a968;
    border-radius:24px;
    background:#fff0df;
    color:#653606;
    font-weight:700;
    text-decoration:none;
}
.cards .read-more-link:hover,.cards .read-more-link:focus-visible {
    background:#ffd6ab;
    border-color:#a85f19;
}
.newsletter { background:#f8eee2; border-top:5px dotted #fff; padding-top:30px; }
.newsletter-layout { display:grid; grid-template-columns:minmax(180px, 300px) 1fr; align-items:start; gap:70px; }
.newsletter-layout img { width:220px; justify-self:center; }
.newsletter h2 { color:var(--orange); font-size:clamp(26px, 4vw, 34px); font-weight:800; margin-top:7px; }
.newsletter p { max-width:700px; }
.newsletter-form { display:flex; flex-wrap:wrap; gap:5px; max-width:494px; margin-top:42px; }
.newsletter-form input[type="email"] { flex:1 1 230px; min-width:0; height:40px; padding:8px 10px; border:1px solid #b9b9b9; border-radius:5px; background:#fcf7f1; color:var(--ink); font:inherit; }
.newsletter-form button { min-height:40px; padding:0 18px; border:0; border-radius:5px; background:#ef9636; color:#241409; font-weight:700; cursor:pointer; }
.newsletter-form button:hover { background:#ffc37f; }
.newsletter-form .g-recaptcha { flex-basis:100%; margin-top:7px; }
.newsletter-status { margin:10px 0 0; }
.newsletter-wave { display:block; width:100%; height:64px; fill:#fff; }
@media (max-width:700px) {
    .newsletter-layout { grid-template-columns:1fr; gap:20px; }
    .newsletter-layout img { width:150px; }
    .newsletter-form { margin-top:20px; }
    .newsletter-wave { height:40px; }
}
.cards { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
.meta { font-size:.875rem; color:#555; }
details { margin-top:24px; padding:12px 18px; border:1px solid #eed6ba; border-radius:5px; }
summary { cursor:pointer; font-weight:700; }
details article { padding-top:16px; }
.about-title { color:#f59831; font:700 28px/1.2 Arial,sans-serif; gap:8px; }
.about-title::before,.about-title::after { width:106px; height:16px; border:0; background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='16' viewBox='0 0 20 16'%3E%3Cpath d='M0 3C5 3 5 13 10 13S15 3 20 3' fill='none' stroke='%23238ea2' stroke-width='3.5'/%3E%3C/svg%3E") repeat-x center; }
.about { grid-template-columns:minmax(0, 1.5fr) minmax(0, 1fr); align-items:center; gap:50px; min-height:362px; padding:35px 20px; background:#fff0df; border:1px solid #ff982b; border-radius:11px; }
.about-copy p { text-align:justify; line-height:1.68; margin-bottom:20px; color:#000; }
.about .button { font-weight:400; padding:10px 26px; }
.about-image { text-align:center; }
.about-image img { width:300px; max-width:100%; }
.site-footer { background:#000; color:#fff; }
.site-footer a { color:#fff; text-decoration:none; }
.site-footer a:hover { text-decoration:underline; }
.site-footer .wrap { width:calc(100% - 40px); max-width:1440px; }
.footer-grid { grid-template-columns:1fr 1.12fr .85fr 1.04fr; gap:30px; padding-block:52px 94px; }
.footer-grid h2 { font-size:26px; font-weight:400; margin-bottom:15px; }
.footer-grid ul { padding:0; margin:0; list-style:none; }
.footer-grid li + li { margin-top:12px; }
.footer-intro p { margin-top:18px; line-height:1.88; text-align:justify; }
.footer-contact { display:grid; gap:14px; font-style:normal; }
.footer-contact > * { display:flex; align-items:center; gap:17px; }
.footer-contact svg { width:20px; height:20px; flex:none; fill:none; stroke:var(--orange); stroke-width:2; stroke-linejoin:round; }
.footer-social { display:flex; flex-wrap:wrap; gap:5px; margin:19px 0; }
.footer-social a { display:grid; place-items:center; width:34px; height:34px; border-radius:50%; background:var(--orange); }
.footer-social a:hover { background:#db7416; }
.footer-social svg { width:16px; height:16px; fill:#fff; }
.footer-enroll { padding-inline:26px; }
.copyright { margin:0; padding:7px 20px; background:#f89730; text-align:center; font-size:.875rem; }
.entry { max-width:780px; margin-inline:auto; }
.event-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:26px; }
.event-card { display:flex; flex-direction:column; border-color:#f0dfcd; box-shadow:0 8px 24px #2828280a; }
.event-card .card-copy { flex:1; display:flex; flex-direction:column; align-items:flex-start; padding:26px; }
.event-card h2,.event-card h3 { font-size:24px; }
.event-archive-actions { text-align:center; margin-top:28px; }
.event-card .event-label { color:#166c7c; background:#eaf5f6; border-radius:20px; padding:4px 12px; font-size:12px; font-weight:700; letter-spacing:.07em; text-transform:uppercase; }
.event-link { margin-top:auto; }
.event-details { width:100%; margin:6px 0 22px; }
.event-details > div { display:grid; grid-template-columns:82px minmax(0,1fr); gap:12px; padding:9px 0; border-bottom:1px solid #eee; }
.event-details dt { font-weight:700; color:#166c7c; }
.event-details dd { margin:0; }
.event-empty { padding:30px; text-align:center; background:#fff0df; border-radius:8px; }
@media (max-width:660px) { .event-grid { grid-template-columns:1fr; } .event-card .card-copy { padding:20px; } }
.event-image { margin-bottom:24px; }
.event-image img { display:block; width:100%; height:auto; border-radius:8px; }
@media (max-width:800px) {
    .cards,.footer-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .hero { min-height:420px; }
}
@media (max-width:580px) {
    .feature-grid,.cards,.about,.footer-grid { grid-template-columns:1fr; }
    .site-header .wrap { padding-block:10px; }
    .site-header nav { gap:8px 12px; font-size:.9rem; }
    .about img { width:160px; }
}


.site-header { background:#fff; box-shadow:inset 0 3px 5px -5px #333; }
.site-header .wrap { width:min(960px,calc(100% - 32px)); display:grid; grid-template-columns:1fr auto 1fr; min-height:78px; }
.site-header .wrap > a:first-child { justify-self:start; margin-left:38px; }
.site-header img { width:74px; }
.site-header nav { justify-content:center; gap:32px; }
.site-header nav a { display:inline-flex; align-items:center; gap:12px; color:#000; font-weight:400; }
.site-header nav svg { width:28px; height:28px; fill:none; stroke:var(--orange); stroke-width:2.6; stroke-linecap:round; stroke-linejoin:round; }
.site-header .signup { justify-self:end; color:#fff; padding:9px 26px; }
@media (max-width:660px) {
    .site-header .wrap > a:first-child { margin-left:0; }
    .site-header nav { gap:10px 14px; }
    .site-header nav a { gap:5px; }
    .site-header nav svg { width:20px; height:20px; }
    .site-header .signup { padding-inline:12px; white-space:nowrap; }
}
@media (max-width:420px) {
    .site-header .wrap { grid-template-columns:1fr 1fr; gap:8px; }
    .site-header nav { grid-row:2; grid-column:1/-1; }
}


