/*
Theme Name: Ehman Earth Sciences
Theme URI: https://www.ehmanearthsciences.com
Author: Ehman Earth Sciences, LLC
Description: Custom block theme for Ehman Earth Sciences, LLC: sequence stratigraphic and subsurface interpretation.
Version: 1.0.0
Requires at least: 6.6
Requires PHP: 7.4
License: GNU General Public License v2 or later
Text Domain: ehman-earth-sciences
*/

/* ---------- Header ---------- */
.ees-header { position: sticky; top: 0; z-index: 50; border-bottom: 1px solid rgba(60, 36, 11, .08); }
.admin-bar .ees-header { top: 32px; }
@media (max-width: 782px) { .admin-bar .ees-header { top: 46px; } }
.ees-header .wp-block-navigation-item__content { padding: .35rem 0; border-bottom: 2px solid transparent; transition: border-color .2s; }
.ees-header .wp-block-navigation-item__content:hover,
.ees-header .current-menu-item > .wp-block-navigation-item__content { border-bottom-color: var(--wp--preset--color--light-brown); }
.ees-header .ees-nav-cta > .wp-block-navigation-item__content { background: var(--wp--preset--color--medium-brown); color: #fff; padding: .6rem 1.1rem; border-radius: 2px; border-bottom: 0; }
.ees-header .ees-nav-cta > .wp-block-navigation-item__content:hover { background: var(--wp--preset--color--dark-brown); }
.wp-block-navigation__responsive-container.is-menu-open { background: var(--wp--preset--color--dark-brown) !important; color: #fff !important; }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content { font-size: 1.25rem; }

/* ---------- Full-bleed sections stack flush (no white gaps between bands) ---------- */
.wp-site-blocks > * + *,
.wp-block-post-content > .alignfull,
.wp-block-post-content > .alignfull + *,
.ees-footer-wrap > * { margin-block-start: 0 !important; }
.wp-block-post-content > .alignfull { margin-block-end: 0 !important; }

/* ---------- Strata dividers (echo the banded layers in the logo) ---------- */
.ees-strata { position: relative; display: block; height: clamp(48px, 7vw, 110px); margin-block: 0 !important; line-height: 0; }
.ees-strata svg { position: absolute; inset: 0; width: 100%; height: 100%; display: block; }
.wp-block-post-content > .ees-strata--overlap { margin-top: calc(-1 * clamp(48px, 7vw, 110px)) !important; z-index: 2; }
/* Footer bands overlay the bottom of whichever section ends the page, so give that section room. */
.ees-strata--footer { margin-top: calc(-1 * clamp(48px, 7vw, 110px)) !important; z-index: 2; }
.wp-block-post-content > .alignfull:last-child { padding-bottom: calc(var(--wp--preset--spacing--50) + clamp(48px, 7vw, 110px)) !important; }
.ees-hero-logo { margin-bottom: var(--wp--preset--spacing--30); }
.ees-hero-logo img { width: min(300px, 70vw) !important; height: auto; }

/* ---------- Eyebrow / kicker text ---------- */
.ees-eyebrow { text-transform: uppercase; letter-spacing: .16em; font-weight: 600; font-size: .8125rem !important; }

/* ---------- Hero ---------- */
.ees-hero h1 { text-transform: uppercase; letter-spacing: .01em; text-wrap: balance; }
.ees-rule { width: 96px; height: 4px; background: var(--wp--preset--color--blue); border: 0; margin-inline: auto; }
.ees-ticker { text-transform: uppercase; letter-spacing: .12em; font-weight: 600; }
.ees-ticker span { color: var(--wp--preset--color--light-brown); margin: 0 .6em; }
.ees-page-hero h1 { text-wrap: balance; }
@media (max-width: 600px) { .ees-ticker { display: none; } }
.ees-email { overflow-wrap: anywhere; }

/* ---------- Cards ---------- */
.ees-card { height: 100%; box-sizing: border-box; background: #fff; border-top: 4px solid var(--wp--preset--color--light-brown); box-shadow: 0 1px 2px rgba(60, 36, 11, .06), 0 8px 24px rgba(60, 36, 11, .06); transition: transform .25s ease, box-shadow .25s ease, border-color .25s; }
.ees-card:hover { transform: translateY(-3px); border-top-color: var(--wp--preset--color--medium-brown); box-shadow: 0 2px 4px rgba(60, 36, 11, .08), 0 16px 36px rgba(60, 36, 11, .1); }
.ees-num { font-weight: 800; color: var(--wp--preset--color--light-brown); letter-spacing: .06em; }

/* ---------- Stats ---------- */
.ees-stat { border-left: 3px solid var(--wp--preset--color--light-brown); padding-left: 1.25rem; }
.ees-stat .ees-stat-num { font-size: clamp(2.25rem, 4vw, 3rem); font-weight: 800; line-height: 1; margin: 0; }
.ees-stat p:last-child { margin-top: .5rem; }

/* ---------- Checklists (bars echo the logo's strata) ---------- */
ul.ees-list { list-style: none; padding-left: 0; }
ul.ees-list li { position: relative; padding-left: 1.6rem; margin-bottom: .6rem; }
ul.ees-list li::before { content: ""; position: absolute; left: 0; top: .55em; width: .75rem; height: .28rem; background: var(--wp--preset--color--light-brown); border-radius: 1px; box-shadow: 0 .4rem 0 var(--wp--preset--color--medium-brown); }

/* ---------- Timeline ---------- */
.ees-timeline { border-left: 3px solid var(--wp--preset--color--light-brown); padding-left: 2rem !important; }
.ees-timeline > .wp-block-group { position: relative; }
.ees-timeline > .wp-block-group::before { content: ""; position: absolute; left: calc(-2rem - 10px); top: .3rem; width: 17px; height: 17px; box-sizing: border-box; border-radius: 50%; background: #fff; border: 4px solid var(--wp--preset--color--medium-brown); }
.ees-dates { color: var(--wp--preset--color--medium-brown); font-weight: 700; letter-spacing: .08em; text-transform: uppercase; font-size: .8125rem !important; }

/* ---------- Publications ---------- */
.ees-pubs { padding-left: 1.25rem; }
.ees-pubs li { margin-bottom: 1rem; padding-left: .25rem; }
.ees-pubs li::marker { color: var(--wp--preset--color--medium-brown); font-weight: 700; }
.wp-block-details { border-top: 1px solid rgba(60, 36, 11, .15); padding-block: 1rem; }
.wp-block-details summary { font-weight: 700; color: var(--wp--preset--color--dark-brown); cursor: pointer; }

/* ---------- Pills ---------- */
ul.ees-pills { display: flex; flex-wrap: wrap; gap: .5rem; padding: 0; list-style: none; }
ul.ees-pills li { padding: .35rem .9rem; border: 1px solid rgba(255, 255, 255, .4); border-radius: 999px; font-size: .875rem; margin: 0; }
.has-sand-background-color ul.ees-pills li,
.has-white-background-color ul.ees-pills li { border-color: rgba(60, 36, 11, .25); }

/* ---------- Headshot ---------- */
.ees-headshot img { box-shadow: 14px 14px 0 var(--wp--preset--color--light-brown); }

/* ---------- Footer ---------- */
.ees-footer a { color: #fff; text-decoration: none; }
.ees-footer a:hover { color: var(--wp--preset--color--light-brown); text-decoration: underline; }

/* ---------- Motion & focus ---------- */
@media (prefers-reduced-motion: reduce) { .ees-card { transition: none; } .ees-card:hover { transform: none; } }
:where(a, button, summary):focus-visible { outline: 3px solid var(--wp--preset--color--blue); outline-offset: 3px; }

/* ---------- Contact form (Jetpack Forms) ---------- */
.ees-form { gap: 1.1rem 1.25rem; }
.ees-form .grunion-field-label, .ees-form label { font-weight: 600; font-size: .875rem; color: var(--wp--preset--color--dark-brown); }
.ees-form input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]),
.ees-form select, .ees-form textarea {
	font: inherit; font-size: 1rem; color: var(--wp--preset--color--ink); background: #fff;
	border: 1px solid rgba(60, 36, 11, .28); border-radius: 2px; padding: .75rem .9rem; transition: border-color .2s, box-shadow .2s;
}
.ees-form input:focus, .ees-form select:focus, .ees-form textarea:focus {
	outline: none; border-color: var(--wp--preset--color--medium-brown); box-shadow: 0 0 0 3px rgba(210, 149, 75, .3);
}
.ees-form textarea { min-height: 9rem; }
.ees-form .wp-block-button__link { background: var(--wp--preset--color--medium-brown); color: #fff; }
.ees-form .wp-block-button__link:hover { background: var(--wp--preset--color--dark-brown); }
.ees-form input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]), .ees-form select { box-sizing: border-box; min-height: 3.25rem; }
.ees-form ::placeholder { color: rgba(42, 27, 12, .42); }
/* A card that follows other content in a column sizes to its content instead of stretching. */
.wp-block-column > * + .ees-card { height: auto; }
/* Form confirmation: match brand headings and align with the form column. */
.contact-form-submission { padding: var(--wp--preset--spacing--40) !important; margin: 0 !important; background: var(--wp--preset--color--sand); border-top: 4px solid var(--wp--preset--color--light-brown); }
.contact-form-submission h4 { font-size: var(--wp--preset--font-size--x-large) !important; font-weight: 700 !important; letter-spacing: -0.01em !important; text-transform: none !important; color: var(--wp--preset--color--dark-brown); margin: .5rem 0 1rem; }
.wp-block-jetpack-contact-form.ees-form input::placeholder,
.wp-block-jetpack-contact-form.ees-form textarea::placeholder { color: rgba(42, 27, 12, .42) !important; opacity: 1; }
