/*
Theme Name: Awasam Blog
Theme URI: https://awasam.com/blog/
Author: Awasam
Description: A WordPress theme aligned with the Awasam Fresh Produce Export Exchange.
Version: 1.0.0
Text Domain: awasam-blog
*/

:root {
  --aw-green: #12b635;
  --aw-green-dark: #087a2d;
  --aw-green-soft: #eaf8ee;
  --aw-orange: #ffab38;
  --aw-ink: #0f172a;
  --aw-muted: #64748b;
  --aw-bg: #eef3f7;
  --aw-border: #dce5eb;
  --aw-white: #fff;
  --aw-shadow: 0 10px 30px rgba(15, 23, 42, .07);
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--aw-ink); background: var(--aw-bg); font-family: "Nunito Sans", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; font-size: 16px; line-height: 1.65; -webkit-font-smoothing: antialiased; }
img { max-width: 100%; height: auto; }
a { color: var(--aw-green-dark); }
.aw-shell { width: min(1200px, calc(100% - 40px)); margin: 0 auto; }
.aw-skip-link { position: fixed; top: -100px; left: 16px; z-index: 1000; padding: 10px 16px; background: #fff; color: var(--aw-ink); border-radius: 8px; }
.aw-skip-link:focus { top: 12px; }

.aw-topbar { background: var(--aw-green); border-bottom: 1px solid rgba(7,99,29,.35); }
.aw-topbar__inner { min-height: 61px; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 20px; }
.aw-logo { color: #fff; font-size: 2rem; font-weight: 900; letter-spacing: -.04em; line-height: 1; text-decoration: none; }
.aw-tagline { justify-self: center; color: rgba(255,255,255,.94); font-size: .82rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; white-space: nowrap; }
.aw-actions { justify-self: end; display: flex; align-items: center; gap: 14px; font-size: .95rem; font-weight: 700; }
.aw-actions a { color: #fff; text-decoration: none; }
.aw-actions__divider { color: rgba(255,255,255,.6); }
.aw-btn { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: .75rem 1.1rem; border-radius: 14px; font-weight: 900; line-height: 1.05; text-decoration: none; }
.aw-btn--light { background: #fff; color: #0a8a34 !important; box-shadow: 0 8px 22px rgba(4,79,26,.14); }
.aw-btn--orange { background: var(--aw-orange); color: #fff !important; text-transform: uppercase; box-shadow: 0 8px 22px rgba(155,90,13,.18); }

.aw-nav { background: #fff; border-bottom: 1px solid var(--aw-border); }
.aw-nav__inner { min-height: 52px; display: flex; align-items: center; gap: 26px; }
.aw-nav a { color: #334155; font-size: .9rem; font-weight: 800; text-decoration: none; }
.aw-nav a:hover, .aw-nav a[aria-current="page"] { color: var(--aw-green-dark); }

.aw-blog-hero { background: var(--aw-green); padding: 58px 0 64px; color: #fff; }
.aw-blog-hero__inner { display: grid; grid-template-columns: minmax(0, 1fr) minmax(280px, 460px); gap: 56px; align-items: end; }
.aw-eyebrow { margin: 0 0 10px; font-size: .78rem; font-weight: 900; letter-spacing: .14em; text-transform: uppercase; }
.aw-blog-hero h1 { max-width: 710px; margin: 0; font-size: clamp(2.4rem, 5vw, 4.1rem); font-weight: 900; letter-spacing: -.05em; line-height: 1.04; }
.aw-blog-hero p { max-width: 680px; margin: 18px 0 0; color: rgba(255,255,255,.88); font-size: 1.05rem; }
.aw-search { display: flex; min-height: 50px; overflow: hidden; border-radius: 14px; background: #fff; box-shadow: 0 8px 26px rgba(4,79,26,.18); }
.aw-search input { width: 100%; min-width: 0; padding: 0 18px; border: 0; outline: none; color: #334155; font: inherit; }
.aw-search button { width: 54px; border: 0; background: #fff; color: var(--aw-green-dark); cursor: pointer; font-size: 1.1rem; }

.aw-main { min-height: 55vh; padding: 44px 0 72px; }
.aw-section-head { display: flex; align-items: end; justify-content: space-between; gap: 20px; margin-bottom: 22px; }
.aw-section-head h2, .aw-archive-title { margin: 0; font-size: clamp(1.7rem, 3vw, 2.35rem); letter-spacing: -.035em; line-height: 1.15; }
.aw-section-head p { margin: 7px 0 0; color: var(--aw-muted); }
.aw-section-link { font-size: .9rem; font-weight: 900; text-decoration: none; }
.aw-post-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 20px; }
.aw-card { display: flex; flex-direction: column; overflow: hidden; min-width: 0; background: #fff; border: 1px solid var(--aw-border); border-radius: 18px; box-shadow: var(--aw-shadow); }
.aw-card__media { position: relative; display: block; aspect-ratio: 16/9; overflow: hidden; background: linear-gradient(135deg,#0b8e31,#12b635); }
.aw-card__media img { width: 100%; height: 100%; object-fit: cover; transition: transform .25s ease; }
.aw-card:hover .aw-card__media img { transform: scale(1.025); }
.aw-card__fallback { display: flex; height: 100%; align-items: end; padding: 22px; color: #fff; font-size: 1.25rem; font-weight: 900; line-height: 1.15; }
.aw-card__body { display: flex; flex: 1; flex-direction: column; padding: 22px; }
.aw-card__meta { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; color: var(--aw-muted); font-size: .78rem; font-weight: 800; text-transform: uppercase; letter-spacing: .06em; }
.aw-card__meta a { color: var(--aw-green-dark); text-decoration: none; }
.aw-card h2 { margin: 11px 0 10px; font-size: 1.3rem; letter-spacing: -.025em; line-height: 1.22; }
.aw-card h2 a { color: var(--aw-ink); text-decoration: none; }
.aw-card h2 a:hover { color: var(--aw-green-dark); }
.aw-card__excerpt { margin: 0 0 18px; color: #475569; font-size: .94rem; line-height: 1.6; }
.aw-card__read { margin-top: auto; color: var(--aw-green-dark); font-size: .88rem; font-weight: 900; text-decoration: none; }
.aw-pagination { margin-top: 34px; }
.aw-pagination .nav-links { display: flex; flex-wrap: wrap; gap: 8px; }
.aw-pagination .page-numbers { display: inline-flex; min-width: 42px; height: 42px; align-items: center; justify-content: center; padding: 0 13px; border: 1px solid var(--aw-border); border-radius: 10px; background: #fff; color: var(--aw-ink); font-weight: 800; text-decoration: none; }
.aw-pagination .current { border-color: var(--aw-green); background: var(--aw-green); color: #fff; }

.aw-article-wrap { display: grid; grid-template-columns: minmax(0, 820px) minmax(240px, 1fr); gap: 28px; align-items: start; }
.aw-article, .aw-sidebar-card { background: #fff; border: 1px solid var(--aw-border); border-radius: 20px; box-shadow: var(--aw-shadow); }
.aw-article { overflow: hidden; }
.aw-article__head { padding: clamp(28px,5vw,54px); padding-bottom: 30px; }
.aw-breadcrumb { margin-bottom: 18px; color: var(--aw-muted); font-size: .82rem; font-weight: 800; }
.aw-breadcrumb a { text-decoration: none; }
.aw-article h1 { margin: 0; font-size: clamp(2.15rem,5vw,3.65rem); letter-spacing: -.05em; line-height: 1.05; }
.aw-article__meta { margin-top: 18px; color: var(--aw-muted); font-size: .9rem; font-weight: 700; }
.aw-article__image { width: 100%; max-height: 520px; object-fit: cover; display: block; }
.aw-content { padding: 10px clamp(28px,5vw,54px) 54px; color: #334155; font-size: 1.05rem; }
.aw-content > * { max-width: 100%; }
.aw-content h2, .aw-content h3 { color: var(--aw-ink); letter-spacing: -.03em; line-height: 1.2; }
.aw-content h2 { margin-top: 2em; font-size: 1.8rem; }
.aw-content h3 { margin-top: 1.7em; font-size: 1.35rem; }
.aw-content a { color: var(--aw-green-dark); font-weight: 700; }
.aw-content blockquote { margin: 2rem 0; padding: 18px 22px; border-left: 4px solid var(--aw-green); border-radius: 0 12px 12px 0; background: var(--aw-green-soft); }
.aw-content img { border-radius: 14px; }
.aw-content table { width: 100%; border-collapse: collapse; }
.aw-content th, .aw-content td { padding: 12px; border: 1px solid var(--aw-border); text-align: left; }
.aw-sidebar { display: grid; gap: 18px; position: sticky; top: 18px; }
.aw-sidebar-card { padding: 24px; }
.aw-sidebar-card h2 { margin: 0 0 12px; font-size: 1.15rem; }
.aw-sidebar-card p { margin: 0; color: var(--aw-muted); font-size: .92rem; }
.aw-sidebar-card .aw-btn { margin-top: 18px; background: var(--aw-green); color: #fff; }
.aw-sidebar-card ul { margin: 0; padding: 0; list-style: none; }
.aw-sidebar-card li + li { border-top: 1px solid var(--aw-border); }
.aw-sidebar-card li a { display: block; padding: 12px 0; color: var(--aw-ink); font-size: .9rem; font-weight: 800; line-height: 1.35; text-decoration: none; }
.aw-empty { padding: 42px; border: 1px solid var(--aw-border); border-radius: 18px; background: #fff; text-align: center; }
.aw-empty h2 { margin-top: 0; }

.aw-footer { padding: 48px 0 26px; background: #0f172a; color: #cbd5e1; }
.aw-footer__grid { display: grid; grid-template-columns: 1.5fr 1fr 1fr; gap: 40px; }
.aw-footer__logo { color: #fff; font-size: 1.7rem; font-weight: 900; letter-spacing: -.04em; text-decoration: none; }
.aw-footer p { max-width: 430px; margin: 12px 0 0; color: #94a3b8; }
.aw-footer h2 { margin: 0 0 12px; color: #fff; font-size: .9rem; text-transform: uppercase; letter-spacing: .08em; }
.aw-footer ul { margin: 0; padding: 0; list-style: none; }
.aw-footer li + li { margin-top: 8px; }
.aw-footer a { color: #cbd5e1; text-decoration: none; }
.aw-footer a:hover { color: #fff; }
.aw-footer__bottom { margin-top: 36px; padding-top: 20px; border-top: 1px solid #263246; color: #64748b; font-size: .82rem; }

@media (max-width: 980px) {
  .aw-topbar__inner { grid-template-columns: auto 1fr; }
  .aw-tagline { display: none; }
  .aw-post-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .aw-blog-hero__inner, .aw-article-wrap { grid-template-columns: 1fr; }
  .aw-blog-hero__inner { gap: 28px; }
  .aw-sidebar { position: static; grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 720px) {
  .aw-shell { width: min(100% - 28px, 1200px); }
  .aw-topbar__inner { min-height: 68px; }
  .aw-logo { font-size: 1.75rem; }
  .aw-actions > a:not(.aw-btn), .aw-actions__divider { display: none; }
  .aw-actions { gap: 8px; }
  .aw-actions .aw-btn { min-height: 40px; padding: .65rem .8rem; border-radius: 11px; font-size: .76rem; }
  .aw-nav__inner { gap: 18px; overflow-x: auto; }
  .aw-nav a { white-space: nowrap; }
  .aw-blog-hero { padding: 42px 0 48px; }
  .aw-blog-hero h1 { font-size: 2.55rem; }
  .aw-main { padding: 30px 0 52px; }
  .aw-post-grid, .aw-sidebar, .aw-footer__grid { grid-template-columns: 1fr; }
  .aw-section-head { align-items: start; flex-direction: column; }
  .aw-article__head, .aw-content { padding-left: 24px; padding-right: 24px; }
}
@media (max-width: 460px) {
  .aw-actions .aw-btn--light { display: none; }
  .aw-blog-hero h1 { font-size: 2.15rem; }
}
