/*
Theme Name: EQ for High IQ
Theme URI: https://eqforhighiq.com
Author: EQ for High IQ
Description: Block theme for EQ for High IQ — conflict consulting, EQ mediation and divorce coaching.
Version: 2.0.1
Requires at least: 6.4
Tested up to: 6.7
Requires PHP: 7.4
License: GNU General Public License v2 or later
Text Domain: eqhiq
*/
body { -webkit-font-smoothing: antialiased; }
.wp-site-blocks > * { margin-block-start: 0; }
.eyebrow { font-size: 13px; font-weight: 600; letter-spacing: .16em; text-transform: uppercase; color: var(--wp--preset--color--green); margin: 0; }
.wrap { max-width: 1200px; margin-left: auto !important; margin-right: auto !important; padding-left: 32px; padding-right: 32px; box-sizing: border-box; }
.section { padding-top: 96px; padding-bottom: 96px; }
.bg-cream { background: var(--wp--preset--color--cream); }
.bg-green { background: var(--wp--preset--color--green); color: #fff; }
.bg-green h2, .bg-green h3 { color: #fff; }
.green-title { color: var(--wp--preset--color--green); }

.site-header { position: sticky; top: 0; z-index: 50; background: #fff; border-bottom: 1px solid var(--wp--preset--color--line); }
.site-header .wrap { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px 32px; padding-top: 18px; padding-bottom: 18px; }
.site-header .wp-block-site-title { font-family: var(--wp--preset--font-family--serif); font-size: 26px; font-weight: 500; margin: 0; }
.site-header .wp-block-site-title a { color: var(--wp--preset--color--green); text-decoration: none; }
.nav-row { gap: 12px 26px !important; align-items: center; }
.site-header .wp-block-navigation { gap: 26px; font-size: 15px; font-weight: 500; }
.site-header .wp-block-navigation a { text-decoration: none; }
.nav-phone { margin: 0; font-size: 15px; font-weight: 600; white-space: nowrap; }
.nav-phone a { text-decoration: none; }
.nav-cta .wp-block-button__link { padding: 10px 18px; }

.hero { display: grid; grid-template-columns: minmax(0, 1fr); padding-top: 48px; padding-bottom: 0; }
.hero > * { margin: 0 !important; }
.hero-photo { min-height: 520px; background: #C9C8CC; position: relative; overflow: hidden; }
.hero-photo img { position: absolute; top: 0; left: 0; width: 100%; height: 124% !important; object-fit: cover; object-position: 56% 0; }
.hero-panel { background: var(--wp--preset--color--green); color: #fff; min-height: 480px; padding: clamp(44px, 7vw, 96px); display: flex; flex-direction: column; justify-content: center; gap: 28px; }
.hero-panel > * { margin: 0 !important; }
.hero-panel .eyebrow { color: #BFD9CB; }
.hero-panel h1 { color: #fff; font-size: clamp(36px, 4.4vw, 58px); line-height: 1.05; }
.hero-sub { font-family: var(--wp--preset--font-family--serif); font-style: italic; font-size: 24px; color: #DCEBE2; }
.hero-tag { font-size: 18px; border-top: 1px solid rgba(255,255,255,.3); padding-top: 24px; max-width: 420px; }
.hero-panel .wp-block-button__link { background: #fff; color: var(--wp--preset--color--green); }
.hero-panel .btn-ghost .wp-block-button__link { background: transparent; color: #fff; border: 1px solid rgba(255,255,255,.6); }

/* Flyer motif: cream stripe + concentric rings */
.flyer { position: relative; overflow: hidden; background-color: var(--wp--preset--color--green); color: #fff;
  background-image: repeating-radial-gradient(circle at 100% 0%, transparent 0 69px, rgba(247,244,238,.15) 70px 71px); }
.flyer::before { content: ""; position: absolute; left: 24px; top: 0; bottom: 0; width: 6px; background: #F7F4EE; }
.flyer h2, .flyer h3 { color: #fff; }
.flyer .eyebrow { color: #BFD9CB; }
.band { padding: 56px 48px 56px 72px; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 28px 48px; }
.band > * { margin: 0 !important; }
.band .wp-block-button__link, .flyer .btn-light .wp-block-button__link { background: #F7F4EE; color: var(--wp--preset--color--green); }
.flyer-sub { font-family: var(--wp--preset--font-family--serif); font-style: italic; font-size: 22px; color: #DCEBE2; margin: 0; }
.flyer-strong { font-size: 20px; font-weight: 600; color: #fff; }
.flyer-inner { padding: 88px 32px 80px 64px; }
.leave { border-top: 1px solid rgba(247,244,238,.2); padding-top: 28px; margin: 28px 0 40px !important; gap: 24px 64px !important; }
.leave p { color: #F7F4EE; margin: 0 0 8px; }
.dcards { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 380px), 1fr)); gap: 16px; }
.dcard { background: #06352A; padding: 28px 24px; display: flex; flex-direction: column; gap: 14px; margin: 0 !important; }
.dcard > * { margin: 0 !important; }
.dcard.light { background: #fff; color: var(--wp--preset--color--ink); }
.dcard.light h3 { color: var(--wp--preset--color--ink); }
.dcard .price { font-family: var(--wp--preset--font-family--serif); font-size: 40px; line-height: 1; }
.dcard .meta { font-size: 14px; opacity: .8; }
.dcard .wp-block-button__link { background: #fff; color: var(--wp--preset--color--green); }
.dcard.light .wp-block-button__link { background: var(--wp--preset--color--green); color: #fff; }
.dcard p.tag { font-size: 12px; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; opacity: .75; }
.fine { font-size: 14px; color: #BFD9CB; margin-top: 16px !important; }

.lead { font-family: var(--wp--preset--font-family--serif); font-size: 28px; line-height: 1.35; }
.split { gap: 48px !important; }
.cards { gap: 48px 40px !important; }
.cards figure { margin: 0 0 16px; }
.cards img { aspect-ratio: 3/4; object-fit: cover; width: 100%; }
.card-title { color: var(--wp--preset--color--green); font-weight: 500 !important; font-size: 26px !important; }

.quotes { gap: 40px !important; }
.quotes .wp-block-column { display: flex; flex-direction: column; gap: 40px; }
.quotes .wp-block-quote { border: 0; border-top: 1px solid rgba(255,255,255,.3); padding: 20px 0 0; margin: 0; display: flex; flex-direction: column; }
.quotes .wp-block-quote p { font-size: 16px; line-height: 1.6; color: #fff; }
.quotes .wp-block-quote cite { order: -1; display: block; margin-bottom: 14px; font-size: 14px; font-weight: 600; font-style: normal; color: #fff; }

.consults { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 200px), 1fr)); gap: 16px; }
.consult { border: 1px solid var(--wp--preset--color--line); background: var(--wp--preset--color--cream); padding: 22px; margin: 0 !important; display: flex; flex-direction: column; gap: 10px; }
.consult > * { margin: 0 !important; }
.consult .meta { font-size: 13px; color: var(--wp--preset--color--muted); }
.consult h3 { font-size: 22px; flex: 1; }
.tier { display: flex; flex-wrap: wrap; gap: 24px 48px; padding-top: 72px; }
.tier > * { margin: 0 !important; }
.tier-head { flex: 1 1 240px; }
.tier-head h2 { font-size: 36px; margin: 8px 0; }
.tier-head .meta { color: var(--wp--preset--color--muted); font-size: 15px; }
.tier-list { flex: 3 1 520px; border-top: 2px solid var(--wp--preset--color--green); }
.offer { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 16px 40px; padding: 28px 0; border-bottom: 1px solid var(--wp--preset--color--line); margin: 0 !important; }
.offer > * { margin: 0 !important; }
.offer-text { flex: 1 1 440px; max-width: 720px; }
.offer-text h3 { font-family: var(--wp--preset--font-family--sans); font-size: 20px; font-weight: 600; margin: 0 0 8px; }
.offer-text .meta { font-size: 14px; font-weight: 500; color: var(--wp--preset--color--green); margin: 0 0 8px; }
.offer-text p { margin: 0; }
.offer-side { flex: 0 0 160px; display: flex; flex-direction: column; gap: 12px; }
.offer-side > * { margin: 0 !important; }
.offer-side .price { font-family: var(--wp--preset--font-family--serif); font-size: 30px; line-height: 1; }
.page-intro { padding-top: 72px; padding-bottom: 56px; max-width: 760px; }

.media-title a { color: var(--wp--preset--color--green); text-underline-offset: 6px; text-decoration-thickness: 1px; }
.video-grid { gap: 40px !important; }

.site-footer { background: #06352A; color: #DCEBE2; }
.site-footer .wrap { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 20px; padding-top: 40px; padding-bottom: 40px; }
.site-footer a { color: #DCEBE2; }
.site-footer p { margin: 0; font-size: 14px; }
.footer-name { font-family: var(--wp--preset--font-family--serif); font-size: 22px !important; color: #fff; }
.li-icon { display: inline-flex; align-items: center; justify-content: center; width: 32px; height: 32px; border: 1px solid rgba(220,235,226,.5); border-radius: 2px; text-decoration: none; font-weight: 700; margin-left: 16px; }

.creds { display: flex; flex-wrap: wrap; border-top: 1px solid var(--wp--preset--color--line); border-bottom: 1px solid var(--wp--preset--color--line); margin-bottom: 64px !important; }
.creds > * { margin: 0 !important; }
.cred { flex: 1 1 150px; min-width: 0; padding: 22px 20px; border-left: 1px solid var(--wp--preset--color--line); }
.cred:first-child { padding-left: 0; border-left: 0; }
.cred p { margin: 0; }
.cred-title { font-family: var(--wp--preset--font-family--serif); font-size: 19px; line-height: 1.25; color: var(--wp--preset--color--green); }
.cred-sub { font-size: 13px; color: var(--wp--preset--color--muted); margin-top: 4px !important; }
.wrap > .band, .wrap.band-wrap { margin-bottom: 80px; }

.about-photo { aspect-ratio: 6/5; position: relative; overflow: hidden; background: #C9C8CC; margin: 0; }
.about-photo img { position: absolute; top: 0; left: 0; width: 100%; height: 100% !important; object-fit: cover; object-position: 45% 50%; }

.cards .mens img, .cards img[src*="mens-sana"] { object-fit: contain; background: var(--wp--preset--color--cream); }

.cards .wp-block-column:nth-child(1) img { aspect-ratio: 100/96; }
.cards .wp-block-column:nth-child(2) img { aspect-ratio: 100/125; }
.cards .wp-block-column:nth-child(3) img { aspect-ratio: 100/95; }

.ig-link { display: inline-flex; align-items: center; gap: 8px; margin-left: 16px; text-decoration: none; }
.ig-link .li-icon { margin-left: 0; }

.quotes .wp-block-quote p { text-align: justify; hyphens: auto; -webkit-hyphens: auto; }

.bio p { text-align: justify; hyphens: auto; -webkit-hyphens: auto; }

.cards p { text-align: justify; hyphens: auto; -webkit-hyphens: auto; }
.media-title { margin-top: 72px !important; }

/* Contact form (Contact Form 7) */
.wpcf7-form p { margin: 0 0 18px; font-size: 14px; font-weight: 500; color: var(--wp--preset--color--ink); }
.wpcf7-form input[type=text], .wpcf7-form input[type=email], .wpcf7-form textarea {
  width: 100%; box-sizing: border-box; margin-top: 6px; padding: 12px 14px; font: inherit; font-size: 16px; font-weight: 400;
  color: var(--wp--preset--color--ink); background: var(--wp--preset--color--cream); border: 1px solid var(--wp--preset--color--line); border-radius: 2px; }
.wpcf7-form textarea { height: 160px; resize: vertical; }
.wpcf7-form input:focus, .wpcf7-form textarea:focus { outline: none; border-color: var(--wp--preset--color--green); background: #fff; }
.wpcf7-form input[type=submit] { background: var(--wp--preset--color--green); color: #fff; border: 0; border-radius: 2px; padding: 12px 22px; font: inherit; font-size: 15px; font-weight: 600; cursor: pointer; }
.wpcf7-form input[type=submit]:hover { background: var(--wp--preset--color--green-dark); }
.wpcf7-form .wpcf7-spinner { vertical-align: middle; }
.wpcf7-not-valid-tip { font-size: 13px; font-weight: 400; margin-top: 4px; }
.wpcf7 form .wpcf7-response-output { margin: 8px 0 0; padding: 10px 14px; font-size: 14px; }
