/* Wielichowo — Kraina Małych Odkrywców 1.0.0 | All rules scoped to custom site. */
body.pwa-site { margin:0; color:#25413f; font-family:'DM Sans',sans-serif; font-size:16px; line-height:1.6; }
body.pwa-site *,body.pwa-site *::before,body.pwa-site *::after { box-sizing:border-box; }
body.pwa-site .pwa-shell { --paper:#fbf8f1; --ink:#123634; --muted:#536560; --coral:#e66e59; --green:#277d69; --mint:#cfeadd; --honey:#f8dc99; --line:rgba(23,73,65,.13); width:min(100%,1280px); margin:0 auto; color:var(--ink); background:var(--paper); overflow:clip; min-height:100vh; box-shadow:0 7px 42px rgba(9,42,38,.09); font-family:'DM Sans',sans-serif; }
body.pwa-site .pwa-shell :where(h1,h2,h3,h4,h5,h6) { font-family:'Nunito','DM Sans',sans-serif; color:var(--ink); line-height:1.18; letter-spacing:-.025em; margin:0; font-weight:900; }
body.pwa-site .pwa-shell :where(a) { text-decoration:none; color:inherit; }
body.pwa-site .pwa-shell :where(a:hover) { color:var(--coral); }
body.pwa-site .pwa-shell :where(button,input,textarea) { font:inherit; }
body.pwa-site .pwa-shell :where(button,a,input,textarea):focus-visible { outline:3px solid #e7a04c; outline-offset:3px; }
body.pwa-site .pwa-shell img { max-width:100%; height:auto; }
body.pwa-site .pwa-shell p { margin:0; }
body.pwa-site .pwa-container { width:min(100% - 56px,1180px); margin:0 auto; }
body.pwa-site .pwa-icon { display:inline-block; vertical-align:-.25em; flex:none; }
body.pwa-site .pwa-skip { position:fixed; top:-140px; left:18px; background:#fff; color:#173c35; padding:12px 18px; z-index:99999; border:2px solid #174839; }
body.pwa-site .pwa-skip:focus { top:12px; }
/* Header */
body.pwa-site .pwa-topbar { background:#d3e8dd; font-size:11px; line-height:1.4; color:#18463b; }
body.pwa-site .pwa-topbar-inner { min-height:30px; display:flex; align-items:center; justify-content:space-between; gap:14px; }
body.pwa-site .pwa-topbar-right { white-space:nowrap; }
body.pwa-site .pwa-topbar-right i { font-style:normal; margin:0 5px; }
body.pwa-site .pwa-header { background:var(--paper); position:relative; z-index:20; }
body.pwa-site .pwa-header-inner { display:flex; align-items:center; gap:24px; min-height:96px; }
body.pwa-site .pwa-brand { display:flex; gap:12px; align-items:center; flex-shrink:0; line-height:1.04; }
body.pwa-site .pwa-brand img { width:74px; height:74px; object-fit:contain; }
body.pwa-site .pwa-brand span { color:#123a37; font:900 23px/1.04 'Nunito',sans-serif; letter-spacing:-.045em; display:flex; flex-direction:column; }
body.pwa-site .pwa-brand strong { color:var(--coral); font:inherit; }
body.pwa-site .pwa-main-nav { display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:7px 18px; margin-left:auto; }
body.pwa-site .pwa-main-nav a { display:inline-flex; align-items:center; padding:10px 0; font-size:12px; font-weight:800; color:#283d3b; border-bottom:2px solid transparent; line-height:1.25; }
body.pwa-site .pwa-main-nav a:hover,body.pwa-site .pwa-main-nav a.pwa-current { color:#ce4e3b; border-bottom-color:var(--coral); }
body.pwa-site .pwa-search-toggle,body.pwa-site .pwa-menu-toggle { display:inline-flex; justify-content:center; align-items:center; padding:8px; cursor:pointer; border:0; color:var(--ink); background:transparent; }
body.pwa-site .pwa-menu-toggle { display:none; gap:8px; font-weight:800; }
body.pwa-site .pwa-search-form { background:#fffdf8; padding:19px 24px 24px; margin-bottom:14px; border-radius:0 0 18px 18px; border:1px solid #e9e7db; box-shadow:0 10px 20px #18422c18; }
body.pwa-site .pwa-search-form[hidden] { display:none; }
body.pwa-site .pwa-search-form label { display:block; font-weight:800; margin-bottom:7px; }
body.pwa-site .pwa-search-form div { display:flex; gap:8px; }
body.pwa-site .pwa-search-form input { flex:1; min-width:0; padding:13px 16px; border:1px solid #b9cec6; border-radius:10px; background:#fff; color:var(--ink); }
body.pwa-site .pwa-search-form button { border:0; background:var(--green); color:white; padding:10px 22px; border-radius:10px; cursor:pointer; font-weight:800; }
/* Home hero */
body.pwa-site .pwa-home-hero { width:100%; min-height:485px; display:grid; grid-template-columns:43% 57%; position:relative; isolation:isolate; background:radial-gradient(circle at 5% 75%,#fde7cf 0%,#fbf8f1 43%); overflow:hidden; }
body.pwa-site .pwa-hero-copy { padding:50px 5px 38px clamp(32px,4.3vw,75px); position:relative; z-index:2; }
body.pwa-site .pwa-eyebrow { display:block; font-size:13px; font-weight:900; letter-spacing:.09em; text-transform:uppercase; color:#4a8272; margin-bottom:10px; }
body.pwa-site .pwa-home-hero h1 { font-size:clamp(33px,3.9vw,54px); line-height:1.06; letter-spacing:-.045em; position:relative; max-width:570px; }
body.pwa-site .pwa-home-hero h1 em { color:var(--coral); font-style:normal; display:inline-block; }
body.pwa-site .pwa-sun { color:#f4b62e; font-size:52px; vertical-align:middle; margin-left:7px; }
body.pwa-site .pwa-hero-copy > p { font-size:19px; line-height:1.36; max-width:390px; margin:17px 0 21px; }
body.pwa-site .pwa-hero-actions { display:flex; gap:11px; flex-wrap:wrap; }
body.pwa-site .pwa-btn { display:inline-flex; gap:11px; justify-content:center; align-items:center; padding:12px 20px; border-radius:999px; font-size:13px; font-weight:800; white-space:nowrap; transition:transform .17s,filter .17s; }
body.pwa-site .pwa-btn:hover { transform:translateY(-2px); filter:brightness(.96); }
body.pwa-site .pwa-btn-coral,body.pwa-site .pwa-btn-coral:hover { background:var(--coral); color:#fff !important; }
body.pwa-site .pwa-btn-green,body.pwa-site .pwa-btn-green:hover { background:var(--green); color:white !important; }
body.pwa-site .pwa-hero-trust { display:flex; gap:18px; margin-top:23px; align-items:center; font-size:11px; font-weight:700; line-height:1.4; }
body.pwa-site .pwa-hero-trust span { display:inline-block; white-space:nowrap; }
body.pwa-site .pwa-hero-photo { overflow:hidden; border-radius:44% 0 0 18% / 50% 0 0 29%; min-width:0; position:relative; }
body.pwa-site .pwa-hero-photo:before { content:""; position:absolute; inset:0; background:linear-gradient(90deg,#fbf8f148,transparent 18%); z-index:1; }
body.pwa-site .pwa-hero-photo img { width:100%; height:100%; object-fit:cover; display:block; object-position:center; }
body.pwa-site .pwa-floating { position:absolute; z-index:-1; user-select:none; pointer-events:none; }
body.pwa-site .pwa-float-star { top:9px; right:50px; font-size:35px; color:#ffc04f; }
body.pwa-site .pwa-float-heart { bottom:62px; right:40px; color:#e79181; font-size:38px; }
body.pwa-site .pwa-hero-scribble { position:absolute; bottom:16px; left:26px; color:#d8e9d4; font-size:66px; }
/* Home sections */
body.pwa-site .pwa-home-sections { width:min(100% - 56px,1180px); margin:auto; }
body.pwa-site .pwa-section { padding-top:34px; }
body.pwa-site .pwa-section-heading { display:flex; gap:16px; align-items:center; justify-content:space-between; margin-bottom:20px; }
body.pwa-site .pwa-section-heading h2 { font-size:clamp(25px,2.7vw,34px); }
body.pwa-site .pwa-section-heading h2 span { color:#e8a45b; font-family:sans-serif; }
body.pwa-site .pwa-section-more { color:#315d55; font-size:12px; font-weight:800; display:inline-flex; align-items:center; gap:7px; }
body.pwa-site .pwa-section-more svg { width:15px; height:15px; }
body.pwa-site .pwa-topic-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }
body.pwa-site .pwa-topic { display:flex; flex-direction:column; border-radius:18px; overflow:hidden; min-height:303px; border:1px solid #1f534211; box-shadow:0 8px 20px #38593d11; }
body.pwa-site .pwa-topic-peach { background:#f8ded5; }
body.pwa-site .pwa-topic-mint { background:#deede4; }
body.pwa-site .pwa-topic-honey { background:#fce8b9; }
body.pwa-site .pwa-topic-sky { background:#dceaf3; }
body.pwa-site .pwa-topic-illustration { display:block; height:128px; overflow:hidden; margin:8px 8px 0; border-radius:12px; }
body.pwa-site .pwa-topic-illustration img { display:block; width:100%; height:100%; object-fit:contain; transition:transform .25s; }
body.pwa-site .pwa-topic:hover .pwa-topic-illustration img { transform:scale(1.07); }
body.pwa-site .pwa-topic-body { padding:11px 19px 18px; display:flex; flex-direction:column; flex:1; }
body.pwa-site .pwa-topic-title { display:flex; gap:10px; align-items:center; margin-bottom:9px; }
body.pwa-site .pwa-topic-emoji { background:#ffffffbc; border-radius:50%; width:38px; height:38px; display:grid; place-items:center; flex:none; font-size:19px; }
body.pwa-site .pwa-topic-title h3 { font-size:18px; }
body.pwa-site .pwa-topic-body p { font-size:13px; line-height:1.53; color:#374d47; margin-bottom:13px; }
body.pwa-site .pwa-topic-link { display:inline-flex; gap:8px; align-items:center; color:#b74431; font-size:12px; font-weight:900; margin-top:auto; }
body.pwa-site .pwa-topic-link svg { width:16px; }
body.pwa-site .pwa-featured-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:17px; }
body.pwa-site .pwa-post-card { position:relative; min-width:0; background:#fffdfa; border-radius:18px; overflow:hidden; box-shadow:0 9px 21px #1d4a3810; border:1px solid #1d4a380c; }
body.pwa-site .pwa-post-card .pwa-card-media { height:207px; display:block; overflow:hidden; position:relative; }
body.pwa-site .pwa-card-media img { width:100%; height:100%; object-fit:cover; display:block; transition:transform .25s; }
body.pwa-site .pwa-post-card:hover .pwa-card-media img { transform:scale(1.04); }
body.pwa-site .pwa-card-media.pwa-image-placeholder { background:linear-gradient(130deg,#c9e9d9,#fadcb8); display:grid; place-items:center; color:#377a65; font-size:80px; }
body.pwa-site .pwa-card-copy { padding:15px 20px 21px; }
body.pwa-site .pwa-post-category { background:#fce5a4; color:#735119; padding:5px 12px; display:inline-block; font-size:10px; text-transform:uppercase; font-weight:900; border-radius:100px; margin:-26px 0 11px; position:relative; z-index:1; box-shadow:0 2px 4px #00000008; }
body.pwa-site .pwa-post-card h3 { font-size:20px; line-height:1.18; margin:0 16px 7px 0; }
body.pwa-site .pwa-post-card p { font-size:13px; line-height:1.5; color:#596762; padding-right:20px; }
body.pwa-site .pwa-card-arrow { background:#e8a06a; color:white !important; width:34px; height:34px; border-radius:50%; position:absolute; right:13px; bottom:15px; display:grid; place-items:center; }
body.pwa-site .pwa-card-arrow svg { width:18px; height:18px; }
body.pwa-site .pwa-latest-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:11px; }
body.pwa-site .pwa-mini { display:flex; align-items:center; gap:11px; min-width:0; background:#fffefb; border-radius:14px; padding:9px; box-shadow:0 6px 18px #1855450b; }
body.pwa-site .pwa-mini .pwa-card-media { display:block; flex:0 0 38%; align-self:stretch; min-height:100px; border-radius:9px; overflow:hidden; }
body.pwa-site .pwa-mini .pwa-card-copy { padding:2px 0; min-width:0; }
body.pwa-site .pwa-mini h3 { font-size:12px; line-height:1.42; margin:0 0 9px; overflow-wrap:anywhere; }
body.pwa-site .pwa-mini time { font-size:10px; color:#68766f; }
body.pwa-site .pwa-about { display:grid; grid-template-columns:31% 1fr; gap:24px; background:#e6f0e5; border-radius:18px; padding:26px 32px; margin:38px 0 30px; border-left:5px solid #6eaa8d; }
body.pwa-site .pwa-about h2 { font-size:25px; margin-top:6px; }
body.pwa-site .pwa-small-label { color:#518575; text-transform:uppercase; font-size:11px; letter-spacing:.12em; font-weight:900; }
body.pwa-site .pwa-about p { font-size:14px; color:#334c45; line-height:1.8; }
body.pwa-site .pwa-bottom-cta { min-height:157px; display:flex; justify-content:center; align-items:center; gap:70px; padding:26px 38px; position:relative; background:linear-gradient(178deg,#fff2d9 10%,#fce4b3 95%); overflow:hidden; }
body.pwa-site .pwa-bottom-cta > div,body.pwa-site .pwa-bottom-cta > a { position:relative; z-index:2; }
body.pwa-site .pwa-bottom-cta h2 { font-size:27px; font-style:italic; }
body.pwa-site .pwa-bottom-cta h2 em { color:#da5e48; }
body.pwa-site .pwa-bottom-cta p { font-size:12px; margin-top:8px; }
body.pwa-site .pwa-cta-doodle { font-size:58px; position:relative; z-index:2; }
body.pwa-site .pwa-cta-hill { position:absolute; bottom:-42px; left:-10%; width:120%; height:85px; background:#9fc9ad; border-radius:50% 50% 0 0; opacity:.8; }
/* Inside pages */
body.pwa-site .pwa-inner { padding-top:30px; padding-bottom:70px; }
body.pwa-site .pwa-breadcrumbs { display:flex; flex-wrap:wrap; align-items:center; gap:9px; font-size:12px; color:#527169; margin-bottom:25px; }
body.pwa-site .pwa-breadcrumbs span[aria-current] { font-weight:700; color:#31544b; overflow:hidden; text-overflow:ellipsis; max-width:70ch; white-space:nowrap; }
body.pwa-site .pwa-layout { display:grid; grid-template-columns:minmax(0,1fr) 302px; align-items:start; gap:36px; }
body.pwa-site .pwa-article { min-width:0; background:transparent; }
body.pwa-site .pwa-article-header { margin-bottom:23px; }
body.pwa-site .pwa-pill { display:inline-block; background:#e6efe7; color:#2d785f; font-size:11px; font-weight:900; padding:7px 12px; border-radius:100px; letter-spacing:.03em; margin-bottom:15px; }
body.pwa-site .pwa-article-header h1 { font-size:clamp(31px,4.3vw,50px); max-width:850px; line-height:1.14; overflow-wrap:break-word; }
body.pwa-site .pwa-article-meta { display:flex; align-items:center; flex-wrap:wrap; gap:21px; margin-top:14px; font-size:13px; color:#647169; }
body.pwa-site .pwa-article-meta span { display:inline-flex; align-items:center; gap:6px; }
body.pwa-site .pwa-article-meta svg { width:15px; height:15px; }
body.pwa-site .pwa-article-cover { overflow:hidden; border-radius:19px; margin-bottom:29px; background:#e4eee4; }
body.pwa-site .pwa-article-cover img { display:block; width:100%; max-height:490px; height:auto; object-fit:cover; }
body.pwa-site .pwa-prose { background:transparent; color:#263f3a; font-size:17px; line-height:1.83; max-width:100%; overflow-wrap:anywhere; }
body.pwa-site .pwa-prose > :first-child { margin-top:0; }
body.pwa-site .pwa-prose :where(p,ol,ul,blockquote,figure,table,pre) { margin-top:0; margin-bottom:1.22em; }
body.pwa-site .pwa-prose :where(h2,h3,h4,h5) { margin:1.6em 0 .65em; scroll-margin-top:28px; }
body.pwa-site .pwa-prose h2 { font-size:29px; padding-bottom:10px; border-bottom:2px solid #d8e7d9; }
body.pwa-site .pwa-prose h3 { font-size:24px; }
body.pwa-site .pwa-prose h4 { font-size:20px; }
body.pwa-site .pwa-prose :where(ul,ol) { padding-left:1.55em; }
body.pwa-site .pwa-prose :where(li) { margin-bottom:.35em; }
body.pwa-site .pwa-prose a { text-decoration:underline; text-decoration-color:#e5a26e; color:#1d7461; text-underline-offset:3px; }
body.pwa-site .pwa-prose :where(strong,b) { color:#1d3c35; font-weight:800; }
body.pwa-site .pwa-prose blockquote { border-left:5px solid #85bc9f; border-radius:0 10px 10px 0; padding:16px 19px; background:#eaf1e8; }
body.pwa-site .pwa-prose blockquote p:last-child { margin-bottom:0; }
body.pwa-site .pwa-prose :where(img,iframe,video) { max-width:100%; height:auto; }
body.pwa-site .pwa-prose img { border-radius:10px; }
body.pwa-site .pwa-prose :where(table) { width:100%; border-collapse:collapse; display:block; overflow-x:auto; }
body.pwa-site .pwa-prose :where(td,th) { border:1px solid #c6ddd1; padding:9px 12px; min-width:75px; }
body.pwa-site .pwa-prose th { background:#e6efe7; }
body.pwa-site .pwa-prose :where(pre,code) { white-space:pre-wrap; overflow-wrap:anywhere; }
body.pwa-site .pwa-prose :where(.wp-block-group:not(.has-background),.wp-block-columns,.td-post-content,.td-block-row,.td-pb-row,.td-pb-span8,.td-pb-span12) { background:transparent; }
body.pwa-site .pwa-prose .alignwide,body.pwa-site .pwa-prose .alignfull { max-width:100%; margin-left:0; margin-right:0; }
body.pwa-site .pwa-page-links { margin:20px 0; }
body.pwa-site .pwa-tags { display:flex; gap:8px; flex-wrap:wrap; margin:22px 0; }
body.pwa-site .pwa-tags a { font-size:12px; color:#367662; background:#e3eee3; border-radius:100px; padding:5px 11px; }
body.pwa-site .pwa-article-ending { margin-top:38px; padding:25px; border-radius:15px; background:#e6eee5; border-left:4px solid #75a992; }
body.pwa-site .pwa-article-ending strong { font:900 21px 'Nunito',sans-serif; }
body.pwa-site .pwa-article-ending p { margin:7px 0 18px; color:#4f655a; }
body.pwa-site .pwa-related { margin-top:52px; }
/* Sidebar — one sticky column so the TOC never covers sibling cards. */
body.pwa-site .pwa-sidebar { position:sticky; top:20px; align-self:start; display:flex; flex-direction:column; gap:17px; min-width:0; z-index:1; }
body.pwa-site .pwa-sidebar-panel { border-radius:17px; background:#e8f0e7; border:1px solid #d6e7d9; padding:19px; }
body.pwa-site .pwa-sidebar-toc { background:#fff0d6; border-color:#f2dab0; }
body.pwa-site .pwa-sidebar-panel[hidden] { display:none; }
body.pwa-site .pwa-sidebar-heading { display:flex; gap:9px; align-items:center; margin-bottom:9px; }
body.pwa-site .pwa-sidebar-heading span { font-size:21px; }
body.pwa-site .pwa-sidebar-heading h2 { font-size:20px; }
body.pwa-site .pwa-sidebar-panel > p { font-size:12px; color:#586c62; margin-bottom:11px; }
body.pwa-site #pwa-toc-list { padding-left:21px; margin:7px 0 0; color:#a97242; }
body.pwa-site #pwa-toc-list li { padding:6px 0; line-height:1.42; font-size:13px; }
body.pwa-site #pwa-toc-list li.pwa-toc-sub { margin-left:12px; font-size:12px; }
body.pwa-site #pwa-toc-list a { color:#284c3f; font-weight:700; }
body.pwa-site #pwa-toc-list a:hover { color:#b95139; }
body.pwa-site .pwa-sidebar-posts { display:flex; flex-direction:column; }
body.pwa-site .pwa-side-post { padding:11px 0; border-bottom:1px solid #cdded2; }
body.pwa-site .pwa-side-post:last-child { border-bottom:0; padding-bottom:0; }
body.pwa-site .pwa-side-post span { display:block; font-weight:800; font-size:13px; line-height:1.42; }
body.pwa-site .pwa-side-post small { color:#78817d; font-size:11px; }
body.pwa-site .pwa-side-categories ul { list-style:none; padding:0; margin:10px 0 0; }
body.pwa-site .pwa-side-categories li { border-bottom:1px solid #d4e2d6; }
body.pwa-site .pwa-side-categories li:last-child { border:0; }
body.pwa-site .pwa-side-categories a { display:flex; gap:7px; align-items:center; font-size:13px; font-weight:800; padding:11px 0; }
body.pwa-site .pwa-side-categories a > svg { margin-left:auto; width:14px; height:14px; }
body.pwa-site .pwa-side-tip { border-radius:17px; background:#f8dfb1; padding:25px 22px; overflow:hidden; position:relative; }
body.pwa-site .pwa-side-tip .pwa-tip-icon { position:absolute; font-size:90px; top:-22px; right:-3px; color:#edb759; opacity:.65; }
body.pwa-site .pwa-side-tip h2 { font-size:24px; max-width:190px; position:relative; }
body.pwa-site .pwa-side-tip p { position:relative; font-size:13px; margin:10px 0; }
body.pwa-site .pwa-side-tip a { font-size:12px; display:inline-flex; gap:8px; align-items:center; font-weight:900; position:relative; color:#a34530; }
/* Archive pages */
body.pwa-site .pwa-archive-head { min-height:224px; display:flex; justify-content:space-between; align-items:center; gap:20px; border-radius:24px; background:linear-gradient(110deg,#e4f2e8,#f9edcf); padding:28px 38px; margin-bottom:22px; overflow:hidden; position:relative; }
body.pwa-site .pwa-archive-head h1 { font-size:clamp(31px,4vw,46px); margin:7px 0 10px; }
body.pwa-site .pwa-archive-head p { max-width:690px; color:#475d53; font-size:15px; line-height:1.6; }
body.pwa-site .pwa-archive-title-copy { position:relative; z-index:1; }
body.pwa-site .pwa-archive-art { width:280px; flex:none; align-self:stretch; display:flex; align-items:center; }
body.pwa-site .pwa-archive-art img { width:100%; height:auto; }
body.pwa-site .pwa-category-strip { display:flex; align-items:center; flex-wrap:wrap; gap:9px; margin:24px 0; }
body.pwa-site .pwa-category-strip > span { font-size:13px; font-weight:800; margin-right:5px; }
body.pwa-site .pwa-category-strip a { display:inline-flex; align-items:center; gap:2px; background:#e8f1e8; color:#315c4f; border:1px solid #cddfd2; border-radius:100px; padding:7px 12px; font-size:12px; font-weight:800; }
body.pwa-site .pwa-category-strip a svg { width:13px; height:13px; }
body.pwa-site .pwa-archive-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:19px; }
body.pwa-site .pwa-archive-list { min-width:0; }
body.pwa-site .pwa-archive-grid .pwa-post-card .pwa-card-media { height:175px; }
body.pwa-site .pwa-archive-grid .pwa-post-card h3 { font-size:19px; }
body.pwa-site .pwa-pagination { margin-top:30px; }
body.pwa-site .pwa-pagination .nav-links { display:flex; flex-wrap:wrap; align-items:center; gap:8px; }
body.pwa-site .pwa-pagination .page-numbers { display:inline-flex; padding:8px 13px; min-height:39px; align-items:center; justify-content:center; border-radius:9px; background:#e0eee5; color:#285a4b; font-weight:800; }
body.pwa-site .pwa-pagination .page-numbers.current { background:#2a846e; color:white; }
body.pwa-site .pwa-empty { padding:40px; border-radius:18px; background:#e7f0e6; }
body.pwa-site .pwa-empty h2 { font-size:27px; margin-bottom:10px; }
body.pwa-site .pwa-empty p { margin-bottom:20px; }
/* Comments */
body.pwa-site .pwa-comments { padding:25px 0; margin:20px 0; border-top:2px solid #d8e6d9; }
body.pwa-site .pwa-comments h2 { font-size:25px; margin-bottom:18px; }
body.pwa-site .pwa-comment-list { list-style:none; padding:0; }
body.pwa-site .pwa-comment-list .comment-body { padding:13px 16px; margin-bottom:12px; border-radius:12px; background:#e9f0e6; }
body.pwa-site .pwa-comments label { display:block; margin:9px 0 5px; font-weight:800; }
body.pwa-site .pwa-comments :where(input:not([type=submit]),textarea) { width:100%; max-width:100%; padding:12px; border:1px solid #b5ccc1; border-radius:9px; background:#fffefa; }
body.pwa-site .pwa-comments input[type=submit] { border:0; background:#287c68; color:white; padding:10px 19px; border-radius:40px; cursor:pointer; }
/* Footer */
body.pwa-site .pwa-footer { background:#17443e; color:#f6fff9; padding:35px 0 14px; }
body.pwa-site .pwa-footer-grid { display:grid; grid-template-columns:1.45fr 1fr 1.05fr 1.12fr; gap:38px; }
body.pwa-site .pwa-brand-footer { justify-content:flex-start; }
body.pwa-site .pwa-brand-footer img { width:66px; height:66px; }
body.pwa-site .pwa-brand-footer span { font-size:21px; color:#fff !important; }
body.pwa-site .pwa-brand-footer strong { color:#ff987f !important; }
body.pwa-site .pwa-footer h2 { font-family:'DM Sans',sans-serif; font-size:14px; font-weight:900; color:#fff; margin:3px 0 12px; letter-spacing:0; }
body.pwa-site .pwa-footer p { font-size:12px; color:#e2efe7; line-height:1.65; margin-top:10px; }
body.pwa-site .pwa-footer ul { padding:0; margin:0; list-style:none; }
body.pwa-site .pwa-footer li { padding:3px 0; font-size:12px; }
body.pwa-site .pwa-footer li a:before { content:'›'; color:#f6be6f; margin-right:8px; }
body.pwa-site .pwa-footer a { color:#fff; }
body.pwa-site .pwa-footer a:hover { color:#fac6a1; }
body.pwa-site .pwa-footer-explore { display:inline-flex; align-items:center; justify-content:space-between; gap:8px; padding:10px 14px; border-radius:100px; background:#f6f7ed; color:#24564a !important; font-weight:800; font-size:12px; margin-top:12px; }
body.pwa-site .pwa-footer-explore svg { width:17px; }
body.pwa-site .pwa-footer-social { margin-top:12px; font-size:22px; letter-spacing:12px; opacity:.83; }
body.pwa-site .pwa-footer-bottom { display:flex; justify-content:space-between; gap:20px; align-items:center; border-top:1px solid #ffffff20; padding-top:16px; margin-top:29px; font-size:11px; color:#c0ded2; }
body.pwa-site .pwa-statlink { border-top:1px solid #ffffff20; padding:11px 0 0; margin-top:11px; display:flex; flex-wrap:wrap; gap:10px; font-size:12px; overflow-wrap:anywhere; }
body.pwa-site .pwa-statlink strong { display:flex; gap:12px; flex-wrap:wrap; font-weight:800; }
body.pwa-site .pwa-statlink a { text-decoration:underline; text-underline-offset:2px; }
/* Responsive */
@media (max-width:1200px) {
 body.pwa-site .pwa-header-inner { gap:18px; }
 body.pwa-site .pwa-main-nav { gap:6px 13px; }
 body.pwa-site .pwa-brand span { font-size:21px; }
 body.pwa-site .pwa-brand img { width:65px; height:65px; }
 body.pwa-site .pwa-hero-copy { padding-left:34px; }
 body.pwa-site .pwa-home-hero h1 { font-size:clamp(30px,4.3vw,48px); }
}
@media (max-width:1100px) {
 body.pwa-site .pwa-header-inner { position:relative; min-height:84px; }
 body.pwa-site .pwa-menu-toggle { display:inline-flex; margin-left:auto; }
 body.pwa-site .pwa-main-nav { display:none; position:absolute; top:calc(100% - 2px); left:0; right:0; background:#fffaf0; border:1px solid #ecddc9; border-radius:0 0 14px 14px; box-shadow:0 18px 24px #0c3e282a; padding:13px 19px; flex-direction:column; align-items:stretch; z-index:30; }
 body.pwa-site .pwa-main-nav.pwa-nav-open { display:flex; }
 body.pwa-site .pwa-main-nav a { padding:10px; border-bottom:1px solid #e7e2d6; font-size:14px; }
 body.pwa-site .pwa-home-hero { grid-template-columns:48% 52%; }
 body.pwa-site .pwa-layout { grid-template-columns:minmax(0,1fr) 275px; gap:25px; }
 body.pwa-site .pwa-topic-grid { gap:11px; }
 body.pwa-site .pwa-topic-title h3 { font-size:16px; }
 body.pwa-site .pwa-topic-body { padding:12px; }
 body.pwa-site .pwa-footer-grid { gap:24px; }
}
@media (max-width:850px) {
 body.pwa-site .pwa-home-hero { display:flex; flex-direction:column; }
 body.pwa-site .pwa-hero-copy { padding:35px 30px 27px; }
 body.pwa-site .pwa-home-hero h1 { font-size:clamp(35px,7vw,54px); }
 body.pwa-site .pwa-hero-photo { border-radius:28% 0 0 0 / 15% 0 0 0; height:340px; }
 body.pwa-site .pwa-topic-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
 body.pwa-site .pwa-featured-grid { gap:12px; }
 body.pwa-site .pwa-post-card .pwa-card-media { height:160px; }
 body.pwa-site .pwa-post-card h3 { font-size:17px; }
 body.pwa-site .pwa-latest-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 body.pwa-site .pwa-layout { grid-template-columns:minmax(0,1fr); }
 body.pwa-site .pwa-sidebar { position:static; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); align-items:start; }
 body.pwa-site .pwa-footer-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:29px; }
 body.pwa-site .pwa-archive-art { width:200px; }
 body.pwa-site .pwa-bottom-cta { gap:25px; }
 body.pwa-site .pwa-cta-doodle { font-size:45px; }
}
@media (max-width:620px) {
 body.pwa-site .pwa-container,body.pwa-site .pwa-home-sections { width:min(100% - 30px,1180px); }
 body.pwa-site .pwa-topbar-inner { justify-content:center; font-size:10px; }
 body.pwa-site .pwa-topbar-right { display:none; }
 body.pwa-site .pwa-brand img { width:56px; height:56px; }
 body.pwa-site .pwa-brand span { font-size:18px; }
 body.pwa-site .pwa-header-inner { gap:8px; min-height:74px; }
 body.pwa-site .pwa-menu-toggle { font-size:12px; gap:4px; }
 body.pwa-site .pwa-menu-toggle svg,body.pwa-site .pwa-search-toggle svg { width:20px; }
 body.pwa-site .pwa-search-toggle { padding:7px; }
 body.pwa-site .pwa-hero-copy { padding:27px 18px; }
 body.pwa-site .pwa-eyebrow { font-size:11px; }
 body.pwa-site .pwa-home-hero h1 { font-size:clamp(33px,10vw,49px); }
 body.pwa-site .pwa-sun { font-size:30px; }
 body.pwa-site .pwa-hero-copy > p { font-size:16px; }
 body.pwa-site .pwa-hero-trust { gap:11px; font-size:10px; }
 body.pwa-site .pwa-hero-photo { height:260px; }
 body.pwa-site .pwa-section { padding-top:27px; }
 body.pwa-site .pwa-section-heading { align-items:flex-start; flex-direction:column; gap:4px; margin-bottom:15px; }
 body.pwa-site .pwa-section-heading h2 { font-size:28px; }
 body.pwa-site .pwa-topic-grid { gap:10px; }
 body.pwa-site .pwa-topic { min-height:300px; }
 body.pwa-site .pwa-topic-illustration { height:110px; }
 body.pwa-site .pwa-topic-body { padding:10px; }
 body.pwa-site .pwa-topic-title { gap:5px; align-items:flex-start; }
 body.pwa-site .pwa-topic-emoji { width:31px; height:31px; font-size:16px; }
 body.pwa-site .pwa-topic-title h3 { font-size:15px; }
 body.pwa-site .pwa-topic-body p { font-size:12px; }
 body.pwa-site .pwa-topic-link { font-size:11px; }
 body.pwa-site .pwa-featured-grid { grid-template-columns:1fr; gap:15px; }
 body.pwa-site .pwa-post-card .pwa-card-media { height:205px; }
 body.pwa-site .pwa-latest-grid { grid-template-columns:1fr; }
 body.pwa-site .pwa-mini .pwa-card-media { flex-basis:27%; }
 body.pwa-site .pwa-mini .pwa-card-copy h3 { font-size:14px; }
 body.pwa-site .pwa-about { grid-template-columns:1fr; padding:23px; gap:13px; }
 body.pwa-site .pwa-about h2 { font-size:23px; }
 body.pwa-site .pwa-bottom-cta { padding:23px; gap:16px; flex-direction:column; text-align:center; }
 body.pwa-site .pwa-bottom-cta h2 { font-size:25px; }
 body.pwa-site .pwa-cta-doodle { font-size:40px; }
 body.pwa-site .pwa-inner { padding-top:20px; padding-bottom:40px; }
 body.pwa-site .pwa-article-header h1 { font-size:31px; }
 body.pwa-site .pwa-prose { font-size:16px; }
 body.pwa-site .pwa-prose h2 { font-size:25px; }
 body.pwa-site .pwa-prose h3 { font-size:21px; }
 body.pwa-site .pwa-sidebar { grid-template-columns:1fr; }
 body.pwa-site .pwa-archive-head { padding:25px 20px; min-height:220px; }
 body.pwa-site .pwa-archive-head h1 { font-size:31px; }
 body.pwa-site .pwa-archive-art { display:none; }
 body.pwa-site .pwa-archive-grid { grid-template-columns:1fr; }
 body.pwa-site .pwa-footer-grid { grid-template-columns:1fr 1fr; gap:28px 16px; }
 body.pwa-site .pwa-footer-intro { grid-column:1/-1; }
 body.pwa-site .pwa-footer-grid > div:last-child { grid-column:1/-1; }
 body.pwa-site .pwa-footer-bottom { align-items:flex-start; flex-direction:column; }
}
@media (prefers-reduced-motion:reduce) { body.pwa-site .pwa-shell *,body.pwa-site .pwa-shell *::before,body.pwa-site .pwa-shell *::after { scroll-behavior:auto!important; animation-duration:.01ms!important; transition-duration:.01ms!important; } }
