/* Emerald, sage and lime public editorial palette. */
.public-site{--green-primary:#047857;--green-dark:#064e3b;--green-accent:#10b981;--green-soft:#ecfdf5;--green-border:#cde8da}
.public-site{background:#fffefa;color:#1c4538}.public-site h1,.public-site h2,.public-site h3,.public-site h4{font-family:'Playfair Display',Georgia,serif;letter-spacing:-.035em}.public-site .btn,.public-site .nav-cta{border-radius:30px;background:var(--green-primary);padding:14px 23px}.public-site .btn:hover,.public-site .nav-cta:hover{background:#065f46}.public-site .header{background:#fffefa;border-color:#eeeee4}.public-site .brand{white-space:nowrap}.public-site .nav{height:86px}.public-site .nav-links a{position:relative;padding:12px 0}.public-site .nav-links a:hover:after{content:'';position:absolute;bottom:2px;left:0;right:0;height:2px;background:#10b981}.public-topbar{background:#064e3b;color:#d8e2cd;font-size:14px;padding:10px 0}.public-topbar>.wrap{display:flex;justify-content:space-between;gap:15px}.public-topbar a{color:#e0ebb8}.public-site .eyebrow{color:#047857;font-size:13px;letter-spacing:.17em}.public-site .article-card{border:1px solid #e7e8de;box-shadow:0 6px 25px #064e3b05;border-radius:13px}.public-site .article-visual{height:225px;overflow:hidden}.public-site .article-visual img{height:100%;width:100%;object-fit:cover;transition:transform .35s}.public-site .article-card:hover img{transform:scale(1.04)}.public-site .card-category-icon{position:absolute;bottom:13px;right:15px;background:#fffef0e8;border-radius:50%;height:36px;width:36px;display:grid;place-items:center;font-size:21px;color:#047857}.public-site .article-body{padding:23px}.card-meta{display:flex;gap:13px;font-size:13px;color:#83907c;margin-bottom:16px}.public-site .tag{font-size:12px;letter-spacing:.08em}.public-site .article-body h3{font-size:23px;line-height:1.35;margin:10px 0}.public-site .article-body p{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;font-size:16px;line-height:1.8}.public-site .read{display:block;padding-top:15px;border-top:1px solid #eceee4;font-size:14px;color:#047857}.public-site .footer{background:var(--green-dark);padding:62px 0 25px}.public-site .footer h4{font-size:20px;color:#ecf0df}.public-site .footer .brand{font-family:Manrope,sans-serif}.public-site .footer a:hover{color:#d4e86c}.public-site .page-head{padding-top:65px;padding-bottom:40px}.public-site :focus-visible{outline:3px solid #10b981;outline-offset:5px}.mobile-navigation{display:none}.public-site .content pre{overflow-x:auto}.public-site .content a{overflow-wrap:anywhere}
@media(max-width:800px){.public-site .nav{height:74px}.public-site .nav-links,.public-site .nav-cta{display:none}.mobile-navigation{display:block;margin-left:auto}.mobile-navigation summary{display:flex;align-items:center;gap:12px;cursor:pointer;font-size:16px;font-weight:700;padding:10px 12px;border:1px solid #cde8da;border-radius:6px;list-style:none}.mobile-navigation summary::-webkit-details-marker{display:none}.mobile-navigation nav{position:absolute;top:100%;left:0;right:0;background:#fffefa;box-shadow:0 12px 25px #064e3b15;padding:12px 24px 20px;display:flex;flex-direction:column;border-bottom:1px solid #cde8da}.mobile-navigation nav a{padding:12px;border-bottom:1px solid #eeeee5;font-size:16px}.public-site .brand{font-size:23px}.public-site .article-visual{height:210px}}
@media(max-width:400px){.public-topbar{font-size:12px}.public-site .brand{font-size:21px}.public-site .brand-mark{width:30px;height:30px}.public-topbar>.wrap{gap:7px}}
@media(prefers-reduced-motion:reduce){.public-site *{transition:none!important;scroll-behavior:auto!important}}
.public-site .footer a.brand{font-size:25px;line-height:1.4;margin-bottom:15px}

/* Comfortable reading sizes shared by public pages. */
.public-site{font-size:17px;line-height:1.65}
.public-site .nav-links{font-size:16px;gap:28px}
.public-site .btn,.public-site .nav-cta{font-size:15px;line-height:1.5}
.public-site .footer p,.public-site .footer a{font-size:15px;line-height:1.75}
.public-site .copyright{font-size:14px}
.public-site .article-body p{font-size:16px;line-height:1.8}
.public-site .tag,.public-site .card-meta{font-size:13px}
@media(max-width:800px){.public-topbar{font-size:13px}.public-site .nav{height:76px}.mobile-navigation summary,.mobile-navigation nav a{font-size:16px}}
@media(max-width:400px){.public-topbar>.wrap{align-items:center}.public-topbar{font-size:12px}.public-topbar a{white-space:nowrap}}
