
:root{--layout-max:1180px;--atomic-header-end:#66D1FF;--atomic-header-start:#3075A5;
  --atomic-accent-700:#15803d;
  --atomic-bg:#ffffff;
  --atomic-surface:#ffffff;
  --atomic-surface-2:#f7fafc;
  --atomic-text:#0f172a;
  --atomic-muted:#64748b;
  --atomic-link:#0a66cc;     /* brand blue */
  --atomic-link-hover:#0856ad;
  --atomic-accent:#16a34a;   /* brand green */
  --atomic-border:#e5e7eb;
}


body{background:var(--atomic-bg);color:var(--atomic-text);}
a{color:var(--atomic-link);}
a:hover{color:var(--atomic-link-hover);text-decoration:underline;}
.site-header,.header,.navbar,header{background:var(--atomic-surface);border-bottom:1px solid var(--atomic-border);}
.site-footer,footer{background:var(--atomic-surface);border-top:1px solid var(--atomic-border);}
.widget,.card,.post,.hentry{background:var(--atomic-surface);border:1px solid var(--atomic-border);border-radius:12px;padding:1rem;}
button,.button,input[type=submit],.btn{background:var(--atomic-accent);color:#00110a;border:none;border-radius:10px;padding:.6rem 1rem;}
input,select,textarea{background:var(--atomic-surface-2);color:var(--atomic-text);border:1px solid var(--atomic-border);}
.menu a,.nav a,.nav-menu a{color:var(--atomic-link);}
.menu a:hover,.nav a:hover,.nav-menu a:hover{color:var(--atomic-link-hover);text-decoration:underline;}
.page-title,.entry-title,h1,h2,h3{color:#0f172a;}
.site-branding .site-title a{color:#0f172a;}

/* === v17.3: footer/overflow/hr fixes (no layout or color changes) === */

/* 1) Footer visibility: clear classic floats */
#footer, .site-footer { clear: both; display: block; }
#page::after, #content::after, .site-content::after { content: ""; display: block; clear: both; }

/* 2) Keep sidebar banner inside the page */
.sidebar, #secondary { overflow: hidden; }
.sidebar img, #secondary img, .widget img,
.sidebar iframe, #secondary iframe { max-width: 100% !important; height: auto !important; display: block; }
.banner, .ad, .advert, .widget_media_image img { max-width: 100% !important; height: auto !important; display: block; }

/* 3) Remove stray horizontal lines at top and before footer */
.site-header + .wp-block-separator,
#header + .wp-block-separator,
.site-header + hr, #header + hr,
.entry-content > .wp-block-separator:first-child,
.site-main > .wp-block-separator:first-child,
.entry-content > hr:first-child,
.site-main > hr:first-child { display: none !important; }

/* Normalize all other separators */
hr, .wp-block-separator {
  border: 0;
  border-top: 1px solid var(--atomic-border);
  height: 0;
  margin: 1rem 0;
}

/* 4) Prevent horizontal scroll from any wide element */
html, body { overflow-x: hidden; }


/* === v17.4: expanded horizontal-line suppression (no layout/color changes) === */

/* Hide leading separators in common containers */
#page > hr:first-child,
#page > .wp-block-separator:first-child,
.wrap > hr:first-child,
.wrap > .wp-block-separator:first-child,
.site-content > hr:first-child,
.site-content > .wp-block-separator:first-child,
#content > hr:first-child,
#content > .wp-block-separator:first-child,
.hentry > hr:first-child,
.hentry > .wp-block-separator:first-child,
.post > hr:first-child,
.post > .wp-block-separator:first-child,
.type-page > hr:first-child,
.type-page > .wp-block-separator:first-child,
.entry > hr:first-child,
.entry > .wp-block-separator:first-child { display:none !important; }

/* If two separators start the content, hide both */
.site-content > hr:nth-child(-n+2),
.site-content > .wp-block-separator:nth-child(-n+2),
#content > hr:nth-child(-n+2),
#content > .wp-block-separator:nth-child(-n+2) { display:none !important; }

/* Normalize all WP separator variants */
hr, .wp-block-separator,
.wp-block-separator.is-style-wide,
.wp-block-separator.is-style-dots,
.wp-block-separator.has-alpha-channel-opacity {
  border:0;
  border-top:1px solid var(--atomic-border);
  height:0;
  margin:1rem 0;
}

/* Remove any top borders used as faux separators on entries */
.post, .page, .hentry, .type-post, .type-page { border-top:0 !important; }
.entry-header, .page-header { border-top:0 !important; }

/* Do NOT affect separators inside widgets or footers */
.sidebar .wp-block-separator,
.sidebar hr,
.site-footer .wp-block-separator,
.site-footer hr { display:initial !important; }


/* === v17.5: empty-post and separator fixes === */

/* Hide truly empty post containers */
.post:empty { display:none !important; }

/* Hide posts with no common inner content (title, content, summary) */
.post:not(:has(.entry, .entry-content, .entry-summary, .entry-title, .post-content, article, > *)) {
  display: none !important;
}

/* If an empty .post preceded the first real one, remove the top border/margin on the first visible post */
.post:empty + .post,
.post:not(:has(.entry, .entry-content, .entry-summary, .entry-title, .post-content, article, > *)) + .post {
  border-top: 0 !important;
  margin-top: 0 !important;
}

/* Kill any top borders faking separators on post/page wrappers */
.post, .page, .hentry, .entry, .entry-header, .type-post, .type-page {
  border-top: 0 !important;
  background-image: none !important;
}

/* Remove leading HRs inside the first post on the page */
.post:first-child hr,
.post:first-of-type hr { display:none !important; }

/* Final catch-all: hide up to two initial separators inside #content/.site-content */
#content > hr:nth-child(-n+2),
#content > .wp-block-separator:nth-child(-n+2),
.site-content > hr:nth-child(-n+2),
.site-content > .wp-block-separator:nth-child(-n+2) { display:none !important; }


/* v17.6-redonly: accent switch to red (no layout changes) */
button, .button, input[type=submit], .wp-block-button__link{
  background: var(--atomic-accent) !important;
  border-color: var(--atomic-accent) !important;
  color: #fff !important;
}
button:hover, .button:hover, input[type=submit]:hover, .wp-block-button__link:hover{
  background: var(--atomic-accent-700) !important;
  border-color: var(--atomic-accent-700) !important;
  color: #fff !important;
}

/* v17.7-colors: link and CTA system */
a:hover{color:var(--atomic-link-hover);text-decoration:underline;}
a:focus{outline:2px solid var(--atomic-link-hover);outline-offset:2px;}
a:visited{color:var(--atomic-link);}

/* Buttons and CTA use red accent */
button,.button,input[type=submit],.wp-block-button__link{
  background:var(--atomic-accent) !important;
  border-color:var(--atomic-accent) !important;
  color:#fff !important;
}
button:hover,.button:hover,input[type=submit]:hover,.wp-block-button__link:hover{
  background:var(--atomic-accent-700) !important;
  border-color:var(--atomic-accent-700) !important;
  color:#fff !important;
}

/* Menus and pagination */
.primary-nav a, .menu a{color:var(--atomic-link);}
.primary-nav a:hover, .menu a:hover{color:var(--atomic-link-hover);text-decoration:underline;}

.pagination .current, .page-numbers.current{
  background:var(--atomic-accent); color:#fff; border-color:var(--atomic-accent);
}
.pagination a:hover, .page-numbers:hover{
  border-color:var(--atomic-accent);
}

/* Tag and category badges */
.tagcloud a, .post-tags a, .entry-meta .tags a, .cat-links a{
  display:inline-block; padding:.25rem .5rem; border:1px solid var(--atomic-accent);
  color:var(--atomic-accent); border-radius:999px; text-decoration:none;
}
.tagcloud a:hover, .post-tags a:hover, .entry-meta .tags a:hover, .cat-links a:hover{
  background:var(--atomic-accent); color:#fff; border-color:var(--atomic-accent);
}

/* Form controls keep neutral look */
input,select,textarea{background:#f7fafc;color:var(--atomic-text);border:1px solid var(--atomic-border);}

/* Keep HR and empty post fixes from previous builds */


/* v17.14.2 — header gradient per spec: #F4F7E7 → #3075A5 with rounded corners */
html body .site-header,
html body #header{
  background: linear-gradient(180deg, #F4F7E7 0%, #3075A5 100%) !important;
  border-bottom: 1px solid rgba(0,0,0,.12) !important;
  border-radius: 14px !important;
  overflow: hidden !important;
}
html body .site-header .site-title a,
html body #header .site-title a{ color:#ffffff !important; }
html body .site-header a,
html body #header a{ color:#eef6ff !important; }
html body .site-header a:hover,
html body #header a:hover{ color:#ffffff !important; }


/* v17.14.3 — flipped vibrant header gradient, larger radius, constrained width to page */
html body .site-header,
html body #header{
  background: linear-gradient(180deg, var(--atomic-header-start) 0%, var(--atomic-header-end) 100%) !important;
  border-bottom: 1px solid rgba(0,0,0,.12) !important;
  border-radius: 22px !important;      /* larger corners */
  overflow: hidden !important;
  max-width: var(--layout-max) !important;
  width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
/* header text colors remain legible */
html body .site-header .site-title a,
html body #header .site-title a{ color:#ffffff !important; }
html body .site-header a,
html body #header a{ color:#eef6ff !important; }
html body .site-header a:hover,
html body #header a:hover{ color:#ffffff !important; }
