/* ============================================================
   BRAND PAGE STYLES
   Used by page-brand.php, page-home.php, page-about.php
   ============================================================ */

.el-brand-page {
  background: var(--el-paper, #FAFAF7);
  color: var(--el-ink, #0A0F0D);
  font-family: var(--el-font-sans, 'Inter', -apple-system, sans-serif);
  min-height: 100vh;
}

/* --- Site header (top nav) --- */
.el-site-header {
  position: sticky;
  top: 0;
  z-index: 50;
  background: color-mix(in oklab, var(--el-paper, #FAFAF7) 92%, transparent);
  backdrop-filter: blur(14px) saturate(140%);
  -webkit-backdrop-filter: blur(14px) saturate(140%);
  border-bottom: 1px solid var(--el-fog, #C8CFCB);
}
.el-nav {
  max-width: 1320px;
  margin: 0 auto;
  padding: 0 clamp(20px, 4vw, 48px);
  height: 72px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 32px;
}
.el-nav-logo {
  display: inline-flex;
  align-items: center;
  gap: 12px;
}
.el-nav-logo img {
  height: 44px;
  width: auto;
}
.el-nav-links {
  display: flex;
  align-items: center;
  gap: 28px;
  list-style: none;
  margin: 0;
  padding: 0;
}
.el-nav-links a {
  font-size: 14px;
  font-weight: 500;
  color: var(--el-slate, #3D4744);
  text-decoration: none;
  transition: color 140ms ease;
}
.el-nav-links a:hover { color: var(--el-green-deep, #2E7D32); }
.el-nav-cta {
  padding: 10px 20px;
  background: var(--el-green-deep, #2E7D32);
  color: #FFFFFF !important;
  border-radius: 8px;
  font-weight: 500;
  transition: all 140ms ease;
}
.el-nav-cta:hover {
  background: var(--el-green-fresh, #66BB6A);
  transform: translateY(-1px);
  color: #FFFFFF !important;
}
@media (max-width: 900px) {
  .el-nav-links { display: none; }
}

/* --- Hero --- */
.el-brand-hero {
  padding: clamp(64px, 10vw, 140px) clamp(20px, 4vw, 48px) clamp(48px, 6vw, 80px);
  max-width: 1320px;
  margin: 0 auto;
}
.el-brand-hero .eyebrow {
  font-family: var(--el-font-mono, 'JetBrains Mono', monospace);
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--el-green-deep, #2E7D32);
  margin-bottom: 20px;
}
.el-brand-hero h1 {
  font-size: clamp(36px, 6vw, 72px);
  font-weight: 800;
  letter-spacing: -0.04em;
  line-height: 1.02;
  color: var(--el-ink, #0A0F0D);
  margin: 0 0 24px 0;
  text-wrap: balance;
  max-width: 22ch;
}
.el-brand-hero .lede {
  font-size: clamp(17px, 1.5vw, 22px);
  line-height: 1.55;
  color: var(--el-slate, #3D4744);
  max-width: 56ch;
  margin: 0 0 40px 0;
  text-wrap: pretty;
}
.el-cta-row {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: center;
}
/* ============================================================
   BUTTONS — force visible text on all .el-btn variants regardless
   of parent context (page body, header, footer, dark banners).
   Uses high-specificity + !important to defeat parent-theme link
   color rules that would otherwise make green text on green bg.
   ============================================================ */
a.el-btn,
.el-btn {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 8px;
  height: 48px;
  padding: 0 22px;
  border-radius: 10px;
  font-size: 15px;
  font-weight: 500;
  text-decoration: none !important;
  transition: all 140ms cubic-bezier(0.4, 0, 0.2, 1);
  line-height: 1;
  cursor: pointer;
  white-space: nowrap;
}
a.el-btn-primary,
.el-btn-primary,
.el-page-body a.el-btn-primary,
.el-brand-page a.el-btn-primary,
.el-contact-page a.el-btn-primary {
  background: var(--el-green-deep, #2E7D32) !important;
  background-color: #2E7D32 !important;
  color: #FFFFFF !important;
  border: none !important;
}
a.el-btn-primary:hover,
.el-btn-primary:hover,
.el-page-body a.el-btn-primary:hover,
.el-brand-page a.el-btn-primary:hover,
.el-contact-page a.el-btn-primary:hover {
  background: var(--el-green-fresh, #4CAF50) !important;
  background-color: #4CAF50 !important;
  color: #FFFFFF !important;
  transform: translateY(-1px);
  box-shadow: 0 10px 24px -10px rgba(76, 175, 80, 0.4);
  text-decoration: none !important;
}
a.el-btn-secondary,
.el-btn-secondary {
  background: transparent !important;
  color: var(--el-ink, #0A0F0D) !important;
  box-shadow: inset 0 0 0 1px var(--el-slate, #3D4744);
}
a.el-btn-secondary:hover,
.el-btn-secondary:hover {
  box-shadow: inset 0 0 0 1px var(--el-green-deep, #2E7D32);
  color: var(--el-green-deep, #2E7D32) !important;
  background: transparent !important;
}
.el-cta-meta {
  font-family: var(--el-font-mono, 'JetBrains Mono', monospace);
  font-size: 13px;
  color: var(--el-mist, #7A857F);
  margin-left: 4px;
}

/* --- Trust strip --- */
.el-trust-strip {
  background: var(--el-cloud, #FFFFFF);
  border-top: 1px solid var(--el-fog, #C8CFCB);
  border-bottom: 1px solid var(--el-fog, #C8CFCB);
}
.el-trust-inner {
  max-width: 1320px;
  margin: 0 auto;
  padding: 24px clamp(20px, 4vw, 48px);
  display: grid;
  grid-template-columns: auto repeat(auto-fit, minmax(160px, 1fr));
  gap: 32px;
  align-items: center;
}
.el-trust-key {
  font-family: var(--el-font-mono, 'JetBrains Mono', monospace);
  font-size: 11px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--el-mist, #7A857F);
}
.el-trust-item .top {
  font-family: var(--el-font-mono, 'JetBrains Mono', monospace);
  font-size: 10px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--el-mist, #7A857F);
}
.el-trust-item .bot {
  font-size: 13px;
  font-weight: 500;
  color: var(--el-ink, #0A0F0D);
}
.el-trust-item .bot strong {
  font-weight: 600;
  color: var(--el-ink, #0A0F0D);
}

/* Hot-button variant: cells are links to the right offering. Small hover lift + a
   sourced citation line so the pain-stat feels grounded, not just claimed. */
.el-trust-item-link {
  text-decoration: none !important;
  color: inherit !important;
  display: block;
  transition: transform 140ms ease, color 140ms ease;
}
.el-trust-item-link:hover {
  transform: translateY(-1px);
}
.el-trust-item-link:hover .bot,
.el-trust-item-link:hover .bot strong {
  color: var(--el-green-deep, #2E7D32) !important;
}
.el-trust-item .src {
  font-family: var(--el-font-mono, 'JetBrains Mono', monospace);
  font-size: 10px;
  color: var(--el-mist, #7A857F);
  letter-spacing: 0.06em;
  margin-top: 4px;
  text-transform: uppercase;
}

/* --- Standard content section --- */
.el-section {
  padding: clamp(64px, 8vw, 120px) clamp(20px, 4vw, 48px);
  max-width: 1320px;
  margin: 0 auto;
}
.el-section-head {
  margin-bottom: clamp(40px, 5vw, 64px);
  padding-bottom: 24px;
  border-bottom: 1px solid var(--el-fog, #C8CFCB);
}
.el-section-head .num {
  font-family: var(--el-font-mono, 'JetBrains Mono', monospace);
  font-size: 12px;
  color: var(--el-green-deep, #2E7D32);
  letter-spacing: 0.1em;
  margin-bottom: 8px;
}
.el-section-head h2 {
  font-size: clamp(28px, 4vw, 44px);
  font-weight: 700;
  letter-spacing: -0.03em;
  line-height: 1.05;
  color: var(--el-ink, #0A0F0D);
  margin: 0 0 12px 0;
  text-wrap: balance;
}
.el-section-head p {
  font-size: 17px;
  line-height: 1.55;
  color: var(--el-slate, #3D4744);
  max-width: 60ch;
  margin: 0;
}

/* --- Entity/card grid (used on Home, Ventures, About) --- */
.el-entity-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 20px;
}
.el-entity-card {
  padding: 32px 28px;
  background: var(--el-cloud, #FFFFFF);
  border: 1px solid var(--el-fog, #C8CFCB);
  border-radius: 14px;
  transition: transform 240ms ease, box-shadow 240ms ease, border-color 240ms ease;
  display: flex;
  flex-direction: column;
  gap: 12px;
  min-height: 240px;
}
.el-entity-card:hover {
  transform: translateY(-2px);
  border-color: var(--el-green-fresh, #66BB6A);
  box-shadow: 0 24px 50px -25px rgba(76, 175, 80, 0.25);
}
.el-entity-card .eyebrow {
  font-family: var(--el-font-mono, 'JetBrains Mono', monospace);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--el-green-deep, #2E7D32);
}
.el-entity-card h3 {
  font-size: 22px;
  font-weight: 700;
  letter-spacing: -0.02em;
  color: var(--el-ink, #0A0F0D);
  margin: 0;
  line-height: 1.15;
}
.el-entity-card p {
  font-size: 15px;
  line-height: 1.55;
  color: var(--el-slate, #3D4744);
  margin: 0;
  flex: 1;
}
.el-entity-card .link {
  font-family: var(--el-font-mono, 'JetBrains Mono', monospace);
  font-size: 13px;
  color: var(--el-green-deep, #2E7D32);
  text-decoration: none;
  margin-top: auto;
  font-weight: 500;
}
.el-entity-card .link:hover { color: var(--el-green-fresh, #66BB6A); }

/* --- In-formation pill --- */
.el-pill {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 3px 9px;
  font-family: var(--el-font-mono, 'JetBrains Mono', monospace);
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  border-radius: 999px;
}
.el-pill-in-formation {
  color: #B87200;
  background: rgba(245, 166, 35, 0.12);
  border: 1px solid rgba(245, 166, 35, 0.4);
}
.el-pill-in-formation::before {
  content: '';
  width: 6px; height: 6px;
  border-radius: 50%;
  background: #F5A623;
}
.el-pill-live {
  color: var(--el-green-deep, #2E7D32);
  background: rgba(46, 125, 50, 0.1);
  border: 1px solid rgba(46, 125, 50, 0.35);
}

/* --- 5-item stats row --- */
.el-stats-row {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 32px 40px;
  padding: 48px 0;
  border-top: 1px solid var(--el-fog, #C8CFCB);
  border-bottom: 1px solid var(--el-fog, #C8CFCB);
  margin: 48px 0;
}
.el-stat .num {
  font-size: clamp(40px, 5vw, 64px);
  font-weight: 800;
  letter-spacing: -0.035em;
  line-height: 1;
  color: var(--el-ink, #0A0F0D);
}
.el-stat .num .suffix {
  font-size: 0.4em;
  font-weight: 700;
  color: var(--el-green-deep, #2E7D32);
  letter-spacing: -0.02em;
  margin-left: 4px;
}
.el-stat .label {
  font-family: var(--el-font-mono, 'JetBrains Mono', monospace);
  font-size: 11px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--el-mist, #7A857F);
  margin-top: 10px;
}
.el-stat .sub {
  font-size: 13.5px;
  color: var(--el-slate, #3D4744);
  margin-top: 6px;
  line-height: 1.45;
}

/* --- Principles list --- */
.el-principles {
  display: grid;
  gap: 24px;
}
.el-principle {
  display: grid;
  grid-template-columns: 60px 1fr;
  gap: 24px;
  padding: 28px 0;
  border-top: 1px solid var(--el-fog, #C8CFCB);
  align-items: baseline;
}
.el-principle:first-child { border-top: 0; padding-top: 0; }
.el-principle .pnum {
  font-family: var(--el-font-mono, 'JetBrains Mono', monospace);
  font-size: 14px;
  color: var(--el-green-deep, #2E7D32);
  letter-spacing: 0.04em;
}
.el-principle h4 {
  font-size: 20px;
  font-weight: 700;
  letter-spacing: -0.015em;
  color: var(--el-ink, #0A0F0D);
  margin: 0 0 8px 0;
}
.el-principle p {
  font-size: 15.5px;
  line-height: 1.6;
  color: var(--el-slate, #3D4744);
  max-width: 60ch;
  margin: 0;
}

/* --- CTA banner (dark, aurora) --- */
.el-cta-banner {
  margin: 0 clamp(20px, 4vw, 48px) 80px;
  padding: clamp(48px, 6vw, 80px) clamp(24px, 4vw, 56px);
  background: #0A0F0D;
  border-radius: 16px;
  position: relative;
  overflow: hidden;
  display: grid;
  grid-template-columns: minmax(0, 1.6fr) auto;
  gap: 40px;
  align-items: end;
  max-width: 1272px;
  margin-inline: auto;
  color: #FBFCFD;
}
@media (max-width: 800px) {
  .el-cta-banner { grid-template-columns: 1fr; }
}
.el-cta-banner::before {
  content: '';
  position: absolute;
  bottom: -30%;
  left: -10%;
  right: -10%;
  height: 90%;
  background:
    radial-gradient(ellipse 30% 55% at 10% 100%, #1E4D3A, transparent 70%),
    radial-gradient(ellipse 35% 55% at 40% 105%, #2E7D32, transparent 70%),
    radial-gradient(ellipse 30% 50% at 75% 100%, #66BB6A, transparent 70%);
  filter: blur(50px) saturate(120%);
  opacity: 0.65;
  pointer-events: none;
}
.el-cta-banner .kicker {
  font-family: var(--el-font-mono, 'JetBrains Mono', monospace);
  font-size: 12px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #66BB6A;
  margin: 0 0 16px 0;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  position: relative; z-index: 1;
}
.el-cta-banner .kicker::before {
  content: ''; width: 24px; height: 1px; background: #66BB6A;
}
.el-cta-banner h2 {
  font-size: clamp(28px, 4vw, 48px);
  font-weight: 800;
  letter-spacing: -0.035em;
  line-height: 1.05;
  color: #FBFCFD;
  margin: 0 0 20px 0;
  position: relative; z-index: 1;
  text-wrap: balance;
}
.el-cta-banner p {
  font-size: 16.5px;
  line-height: 1.55;
  color: #A0A8B5;
  max-width: 56ch;
  margin: 0;
  position: relative; z-index: 1;
}
.el-cta-banner-cta {
  display: flex;
  flex-direction: column;
  gap: 10px;
  align-items: flex-start;
  position: relative; z-index: 2;
}
.el-cta-banner-cta .meta {
  font-family: var(--el-font-mono, 'JetBrains Mono', monospace);
  font-size: 12px;
  color: #6B7280;
}

/* --- Two-column list (About / Consultancy) --- */
.el-two-col {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 40px;
}
@media (max-width: 800px) {
  .el-two-col { grid-template-columns: 1fr; }
}
.el-two-col h3 {
  font-size: 22px;
  font-weight: 700;
  letter-spacing: -0.02em;
  color: var(--el-ink, #0A0F0D);
  margin: 0 0 16px 0;
}
.el-two-col p, .el-two-col ul {
  font-size: 15.5px;
  line-height: 1.6;
  color: var(--el-slate, #3D4744);
}
.el-two-col ul {
  padding-left: 20px;
}
.el-two-col li {
  margin-bottom: 8px;
}

/* --- Site footer --- */
.el-site-footer {
  background: #0A0F0D;
  color: #C8CFCB;
  padding: clamp(48px, 6vw, 80px) 0 24px;
  margin-top: 0;
}
.el-footer-inner {
  max-width: 1320px;
  margin: 0 auto;
  padding: 0 clamp(20px, 4vw, 48px);
}
.el-footer-grid {
  display: grid;
  grid-template-columns: 2fr 1fr 1.2fr 1fr 1fr;
  gap: clamp(24px, 4vw, 56px);
  margin-bottom: 48px;
}
@media (max-width: 900px) {
  .el-footer-grid { grid-template-columns: 1fr 1fr; }
  .el-footer-brand { grid-column: 1 / -1; }
}
.el-footer-brand .brand-logo { height: 40px; margin-bottom: 16px; }
.el-footer-brand p { font-size: 14px; color: #A0A8B5; margin: 0 0 20px 0; max-width: 34ch; line-height: 1.55; }
.el-footer-address {
  font-family: var(--el-font-mono, 'JetBrains Mono', monospace);
  font-size: 12px;
  color: #7A857F;
  line-height: 1.7;
}
.el-footer-address .city { color: #A0A8B5; }
.el-footer-col h5 {
  font-family: var(--el-font-mono, 'JetBrains Mono', monospace);
  font-size: 10px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #7A857F;
  padding-bottom: 12px;
  border-bottom: 1px solid #232B33;
  margin: 0 0 16px 0;
}
.el-footer-col ul { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 10px; }
.el-footer-col a {
  font-size: 13.5px;
  color: #C8CFCB;
  text-decoration: none;
  transition: color 140ms ease;
}
.el-footer-col a:hover { color: #66BB6A; }
.el-footer-col a.ext::after { content: ' \2197'; color: #7A857F; font-size: 11px; }
.el-footer-bar {
  padding-top: 20px;
  border-top: 1px solid #232B33;
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-family: var(--el-font-mono, 'JetBrains Mono', monospace);
  font-size: 12px;
  color: #7A857F;
  gap: 16px;
  flex-wrap: wrap;
}
.el-footer-bar .status {
  display: inline-flex; align-items: center; gap: 8px;
}
.el-footer-bar .status::before {
  content: '';
  width: 6px; height: 6px;
  background: #66BB6A;
  border-radius: 50%;
  box-shadow: 0 0 8px rgba(102, 187, 106, 0.5);
}

/* --- Skip link (WCAG) --- */
.el-skip-link {
  position: absolute; top: -40px; left: 12px;
  background: var(--el-green-deep, #2E7D32);
  color: #FFFFFF;
  padding: 10px 16px;
  border-radius: 6px;
  z-index: 9999;
  transition: top 140ms ease;
  text-decoration: none;
}
.el-skip-link:focus { top: 12px; }

/* --- Content body (for wp_content) --- */
.el-page-body h2 { font-size: 26px; font-weight: 700; letter-spacing: -0.02em; margin: 40px 0 16px; color: var(--el-ink, #0A0F0D); }
.el-page-body h3 { font-size: 20px; font-weight: 600; letter-spacing: -0.015em; margin: 32px 0 12px; color: var(--el-ink, #0A0F0D); }
.el-page-body h4 { font-size: 17px; font-weight: 600; margin: 24px 0 8px; color: var(--el-slate, #3D4744); }
.el-page-body p { font-size: 16px; line-height: 1.65; color: var(--el-slate, #3D4744); margin: 0 0 16px; }
.el-page-body ul, .el-page-body ol { font-size: 16px; line-height: 1.65; color: var(--el-slate, #3D4744); padding-left: 24px; margin: 0 0 16px; }
.el-page-body li { margin-bottom: 6px; }
.el-page-body strong { color: var(--el-ink, #0A0F0D); font-weight: 600; }
.el-page-body em { color: var(--el-mist, #7A857F); font-style: italic; }
.el-page-body a:not(.el-btn) { color: var(--el-green-deep, #2E7D32); text-decoration: underline; text-underline-offset: 3px; }
.el-page-body a:not(.el-btn):hover { color: var(--el-green-fresh, #66BB6A); }

/* ============================================================
   CONTACT PAGE — scoped under .el-contact-page to prevent
   Elementra parent theme + Elementor CSS from bleeding in.
   All selectors use the .el-contact-page prefix.
   ============================================================ */

.el-contact-page,
.el-contact-page * {
	box-sizing: border-box;
}

/* Reset stubborn parent-theme + form-plugin styles */
.el-contact-page,
.el-contact-page main,
.el-contact-page section,
.el-contact-page div,
.el-contact-page p,
.el-contact-page h1,
.el-contact-page h2,
.el-contact-page h3,
.el-contact-page h4,
.el-contact-page label,
.el-contact-page a,
.el-contact-page span,
.el-contact-page input,
.el-contact-page textarea,
.el-contact-page select,
.el-contact-page button {
	font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
}

.el-contact-page code,
.el-contact-page .el-eyebrow,
.el-contact-page .el-detail-label,
.el-contact-page .el-cta-kicker,
.el-contact-page .el-cta-meta,
.el-contact-page .el-form-note,
.el-contact-page .el-detail-hint {
	font-family: 'JetBrains Mono', ui-monospace, 'SF Mono', Consolas, monospace;
}

.el-contact-page .el-container {
	max-width: 1200px;
	margin-inline: auto;
	padding-inline: clamp(20px, 4vw, 48px);
	width: 100%;
}

/* --- Typography --- */
.el-contact-page .el-eyebrow {
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: #2E7D32;
	margin: 0 0 16px 0;
	line-height: 1;
}
.el-contact-page .el-h1 {
	font-size: clamp(40px, 6vw, 68px);
	font-weight: 800;
	letter-spacing: -0.035em;
	line-height: 1.02;
	color: #0A0F0D;
	margin: 0 0 20px 0;
	text-wrap: balance;
}
.el-contact-page .el-h2 {
	font-size: clamp(28px, 3.6vw, 40px);
	font-weight: 700;
	letter-spacing: -0.025em;
	line-height: 1.1;
	color: #0A0F0D;
	margin: 0 0 12px 0;
}
.el-contact-page .el-lede {
	font-size: clamp(16px, 1.4vw, 20px);
	line-height: 1.55;
	color: #3D4744;
	max-width: 56ch;
	margin: 0;
}

/* --- Hero --- */
.el-contact-page .el-contact-hero {
	padding: clamp(56px, 8vw, 112px) 0 clamp(40px, 5vw, 64px);
	background: #FAFAF7;
}

/* --- Body (form + details) --- */
.el-contact-page .el-contact-body {
	padding: 0 0 clamp(56px, 7vw, 96px);
	background: #FAFAF7;
}
.el-contact-page .el-contact-grid {
	display: grid !important;
	grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr) !important;
	gap: 40px !important;
	align-items: start !important;
	width: 100% !important;
}
@media (max-width: 900px) {
	.el-contact-page .el-contact-grid { grid-template-columns: 1fr !important; gap: 32px !important; }
}

/* --- Card (form container) --- */
.el-contact-page .el-card {
	background: #FFFFFF !important;
	border: 1px solid #E2E5DF !important;
	border-radius: 14px !important;
	padding: clamp(28px, 3.5vw, 40px) !important;
	box-shadow: 0 4px 24px -12px rgba(10, 15, 13, 0.08) !important;
	display: block !important;
	width: 100% !important;
}
.el-contact-page .el-card-title {
	font-size: 24px;
	font-weight: 700;
	letter-spacing: -0.02em;
	color: #0A0F0D;
	margin: 0 0 8px 0;
	line-height: 1.2;
}
.el-contact-page .el-card-sub {
	font-size: 15px;
	line-height: 1.5;
	color: #3D4744;
	margin: 0 0 28px 0;
}

/* --- Form --- */
.el-contact-page .el-form {
	display: flex;
	flex-direction: column;
	gap: 20px;
	margin: 0;
	padding: 0;
}
.el-contact-page .el-field {
	display: flex;
	flex-direction: column;
	gap: 6px;
	margin: 0;
}
.el-contact-page .el-field-row {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 16px;
}
@media (max-width: 560px) {
	.el-contact-page .el-field-row { grid-template-columns: 1fr; }
}
.el-contact-page .el-field label {
	font-size: 13px;
	font-weight: 500;
	color: #3D4744;
	letter-spacing: 0;
	line-height: 1.3;
	margin: 0;
}
.el-contact-page .el-field .req {
	color: #DC3545;
	margin-left: 2px;
	font-weight: 600;
}
/* Aggressive form input overrides — Elementra parent theme uses dark pill
   defaults for form controls, so we force our light rectangular styling. */
.el-contact-page .el-field input,
.el-contact-page .el-field select,
.el-contact-page .el-field textarea {
	width: 100% !important;
	height: 44px !important;
	padding: 10px 14px !important;
	font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif !important;
	font-size: 15px !important;
	font-weight: 400 !important;
	line-height: 1.4 !important;
	color: #0A0F0D !important;
	background: #FFFFFF !important;
	background-color: #FFFFFF !important;
	background-image: none !important;
	border: 1px solid #D5D9D2 !important;
	border-radius: 8px !important;
	transition: border-color 140ms ease, box-shadow 140ms ease, background-color 140ms ease;
	appearance: none !important;
	-webkit-appearance: none !important;
	-moz-appearance: none !important;
	margin: 0 !important;
	box-shadow: none !important;
	outline: none !important;
	text-transform: none !important;
	letter-spacing: normal !important;
	display: block !important;
	max-width: 100% !important;
}
.el-contact-page .el-field textarea {
	height: auto !important;
	min-height: 120px !important;
	resize: vertical !important;
	padding: 12px 14px !important;
	line-height: 1.55 !important;
}
.el-contact-page .el-field select {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='7' viewBox='0 0 12 7'%3E%3Cpath fill='%233D4744' d='M6 7L0 1l1.4-1L6 4.2 10.6 0 12 1z'/%3E%3C/svg%3E") !important;
	background-repeat: no-repeat !important;
	background-position: right 14px center !important;
	padding-right: 40px !important;
	cursor: pointer;
}
.el-contact-page .el-field input:focus,
.el-contact-page .el-field select:focus,
.el-contact-page .el-field textarea:focus {
	border-color: #2E7D32;
	background: #FFFFFF;
	box-shadow: 0 0 0 3px rgba(76, 175, 80, 0.15);
	outline: none;
}
.el-contact-page .el-field input::placeholder,
.el-contact-page .el-field textarea::placeholder {
	color: #A0A8A5;
	font-weight: 400;
	opacity: 1;
}
.el-contact-page .el-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	height: 48px;
	padding: 0 22px;
	font-family: inherit;
	font-size: 15px;
	font-weight: 500;
	letter-spacing: -0.005em;
	line-height: 1;
	border: none;
	border-radius: 10px;
	cursor: pointer;
	text-decoration: none;
	transition: background 140ms ease, transform 140ms ease, box-shadow 140ms ease;
}
.el-contact-page .el-btn-primary {
	background: #2E7D32;
	color: #FFFFFF;
}
.el-contact-page .el-btn-primary:hover {
	background: #388E3C;
	transform: translateY(-1px);
	box-shadow: 0 10px 20px -10px rgba(46, 125, 50, 0.4);
	color: #FFFFFF;
}
.el-contact-page .el-btn-full {
	width: 100%;
	margin-top: 8px;
}
.el-contact-page .el-form-note {
	font-size: 12px;
	line-height: 1.5;
	color: #8A9088;
	margin: 12px 0 0 0;
}
.el-contact-page .el-form-note code {
	background: #F4F5F0;
	padding: 2px 6px;
	border-radius: 4px;
	font-size: 11.5px;
	color: #3D4744;
}

/* --- Details column --- */
.el-contact-page .el-contact-details {
	display: flex;
	flex-direction: column;
	gap: 0;
	padding: 0;
	margin: 0;
	background: transparent;
}
.el-contact-page .el-detail-block {
	padding: 0 0 24px 0;
	margin: 0 0 24px 0;
	border-bottom: 1px solid #E2E5DF;
}
.el-contact-page .el-detail-block:last-of-type {
	border-bottom: 0;
	padding-bottom: 0;
	margin-bottom: 0;
}
.el-contact-page .el-detail-label {
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: #2E7D32;
	margin: 0 0 10px 0;
	line-height: 1;
}
.el-contact-page .el-detail-value {
	font-size: 15.5px;
	line-height: 1.55;
	color: #0A0F0D;
	margin: 0;
	font-style: normal;
}
.el-contact-page .el-detail-value strong {
	color: #0A0F0D;
	font-weight: 600;
}
.el-contact-page .el-detail-value a {
	color: #2E7D32;
	text-decoration: underline;
	text-underline-offset: 3px;
	transition: color 140ms ease;
}
.el-contact-page .el-detail-value a:hover {
	color: #4CAF50;
}
.el-contact-page .el-detail-hint {
	font-size: 12px;
	color: #7A857F;
	margin: 6px 0 0 0;
	letter-spacing: 0.02em;
}
.el-contact-page .el-detail-links {
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
	flex-direction: column;
	gap: 8px;
}
.el-contact-page .el-detail-links li { margin: 0; padding: 0; }
.el-contact-page .el-detail-links a {
	font-size: 14.5px;
	color: #2E7D32;
	text-decoration: none;
	display: inline-flex;
	align-items: center;
	gap: 4px;
}
.el-contact-page .el-detail-links a::after {
	content: '\2197';
	font-size: 11px;
	color: #7A857F;
	transition: transform 140ms ease;
}
.el-contact-page .el-detail-links a:hover { color: #4CAF50; text-decoration: underline; text-underline-offset: 3px; }
.el-contact-page .el-detail-links a:hover::after { transform: translate(2px, -2px); }
/* Booking-focused detail block: highlighted card */
.el-contact-page .el-detail-book {
	background: #F4FBF6 !important;
	border: 1px solid rgba(46, 125, 50, 0.25) !important;
	border-radius: 12px !important;
	padding: 20px !important;
	margin-bottom: 24px !important;
	border-bottom: 1px solid rgba(46, 125, 50, 0.25) !important;
}
.el-contact-page .el-detail-book .el-detail-value {
	margin: 0 0 8px 0;
}
.el-contact-page .el-detail-book .el-btn-full {
	width: 100% !important;
	justify-content: center !important;
	display: inline-flex !important;
	color: #FFFFFF !important;
	background: #2E7D32 !important;
	text-decoration: none !important;
	font-family: 'Inter', -apple-system, sans-serif !important;
	font-weight: 500 !important;
	font-size: 15px !important;
	height: 44px !important;
	padding: 0 20px !important;
	border-radius: 8px !important;
	border: none !important;
	transition: background 140ms ease, transform 140ms ease;
}
.el-contact-page .el-detail-book .el-btn-full:hover {
	background: #388E3C !important;
	transform: translateY(-1px);
	color: #FFFFFF !important;
	text-decoration: none !important;
}

.el-contact-page .el-detail-note {
	margin-top: 8px;
	padding: 14px 16px;
	background: rgba(245, 166, 35, 0.06);
	border: 1px solid rgba(245, 166, 35, 0.25);
	border-radius: 8px;
}
.el-contact-page .el-detail-note p {
	font-size: 12.5px;
	line-height: 1.55;
	color: #6B6250;
	margin: 0;
	font-style: italic;
}

/* --- FAQ --- */
.el-contact-page .el-contact-faq {
	padding: clamp(56px, 7vw, 96px) 0;
	background: #FFFFFF;
	border-top: 1px solid #E2E5DF;
	border-bottom: 1px solid #E2E5DF;
}
.el-contact-page .el-faq-head {
	max-width: 720px;
	margin: 0 0 32px 0;
}
.el-contact-page .el-faq-list {
	max-width: 820px;
	margin: 0;
	border-top: 1px solid #E2E5DF;
}
.el-contact-page .el-faq-list details {
	border-bottom: 1px solid #E2E5DF;
	padding: 0;
	margin: 0;
}
.el-contact-page .el-faq-list summary {
	list-style: none;
	cursor: pointer;
	padding: 20px 40px 20px 0;
	font-size: 17px;
	font-weight: 500;
	color: #0A0F0D;
	position: relative;
	transition: color 140ms ease;
	line-height: 1.4;
}
.el-contact-page .el-faq-list summary::-webkit-details-marker { display: none; }
.el-contact-page .el-faq-list summary::after {
	content: '+';
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 28px;
	height: 28px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #FFFFFF;
	border: 1px solid #D5D9D2;
	border-radius: 50%;
	font-size: 18px;
	line-height: 1;
	color: #3D4744;
	transition: all 140ms ease;
}
.el-contact-page .el-faq-list details[open] summary::after {
	content: '\2212';
	background: #2E7D32;
	color: #FFFFFF;
	border-color: #2E7D32;
}
.el-contact-page .el-faq-list summary:hover { color: #2E7D32; }
.el-contact-page .el-faq-answer {
	padding: 0 0 20px 0;
	max-width: 64ch;
}
.el-contact-page .el-faq-answer p {
	font-size: 15.5px;
	line-height: 1.65;
	color: #3D4744;
	margin: 0;
}

/* --- CTA banner --- */
.el-contact-page .el-contact-cta {
	padding: clamp(48px, 6vw, 80px) 0;
	background: #FAFAF7;
}
.el-contact-page .el-cta-inner {
	background: #0A0F0D;
	color: #FBFCFD;
	border-radius: 16px;
	padding: clamp(40px, 5vw, 64px);
	position: relative;
	overflow: hidden;
	display: grid;
	grid-template-columns: minmax(0, 1.5fr) auto;
	gap: 32px;
	align-items: center;
}
@media (max-width: 720px) {
	.el-contact-page .el-cta-inner { grid-template-columns: 1fr; padding: 32px 24px; }
}
.el-contact-page .el-cta-inner::before {
	content: '';
	position: absolute;
	bottom: -30%;
	left: -10%;
	right: -10%;
	height: 90%;
	background:
		radial-gradient(ellipse 30% 55% at 20% 100%, #1E4D3A, transparent 70%),
		radial-gradient(ellipse 35% 55% at 60% 105%, #2E7D32, transparent 70%),
		radial-gradient(ellipse 30% 50% at 90% 100%, #66BB6A, transparent 70%);
	filter: blur(50px) saturate(120%);
	opacity: 0.6;
	pointer-events: none;
}
.el-contact-page .el-cta-kicker {
	font-size: 12px;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: #66BB6A;
	margin: 0 0 12px 0;
	position: relative;
	z-index: 1;
	display: inline-flex;
	align-items: center;
	gap: 10px;
}
.el-contact-page .el-cta-kicker::before {
	content: '';
	width: 24px;
	height: 1px;
	background: #66BB6A;
}
.el-contact-page .el-cta-title {
	color: #FBFCFD !important;
	margin: 0 0 12px 0;
	position: relative;
	z-index: 1;
}
.el-contact-page .el-cta-body {
	font-size: 15.5px;
	line-height: 1.55;
	color: #A0A8A5;
	margin: 0;
	max-width: 52ch;
	position: relative;
	z-index: 1;
}
.el-contact-page .el-cta-actions {
	display: flex;
	flex-direction: column;
	gap: 10px;
	align-items: flex-start;
	position: relative;
	z-index: 2;
}
.el-contact-page .el-cta-meta {
	font-size: 12px;
	color: #7A857F;
	letter-spacing: 0.02em;
}

/* ============================================================
   WRITING ARCHIVE + SINGLE POST + SEARCH + 404
   All scoped under .el-brand-page.
   ============================================================ */

.el-writing-archive {
  padding: clamp(48px, 6vw, 96px) 0;
  background: #FAFAF7;
}
.el-post-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
  gap: 24px;
}
.el-post-card {
  background: #FFFFFF;
  border: 1px solid #E2E5DF;
  border-radius: 14px;
  overflow: hidden;
  transition: transform 240ms ease, box-shadow 240ms ease, border-color 240ms ease;
  display: flex;
  flex-direction: column;
}
.el-post-card:hover {
  transform: translateY(-2px);
  border-color: #66BB6A;
  box-shadow: 0 24px 50px -25px rgba(76, 175, 80, 0.25);
}
.el-post-card-thumb img {
  display: block;
  width: 100%;
  height: 200px;
  object-fit: cover;
}
.el-post-card-body {
  padding: 24px 24px 28px;
  display: flex;
  flex-direction: column;
  gap: 12px;
  flex: 1;
}
.el-post-meta {
  display: flex;
  align-items: center;
  gap: 10px;
  font-family: 'JetBrains Mono', monospace;
  font-size: 12px;
  color: #7A857F;
  flex-wrap: wrap;
}
.el-post-tag {
  padding: 3px 8px;
  border: 1px solid #E2E5DF;
  border-radius: 3px;
  color: #2E7D32;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}
.el-post-title {
  font-size: 20px;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: -0.02em;
  color: #0A0F0D;
  margin: 0;
}
.el-post-title a {
  color: inherit;
  text-decoration: none;
}
.el-post-title a:hover {
  color: #2E7D32;
}
.el-post-excerpt {
  font-size: 14.5px;
  line-height: 1.55;
  color: #3D4744;
  margin: 0;
  flex: 1;
}
.el-post-read {
  font-family: 'JetBrains Mono', monospace;
  font-size: 13px;
  color: #2E7D32;
  text-decoration: none;
  margin-top: auto;
  font-weight: 500;
}
.el-post-read:hover { color: #4CAF50; }

/* Pagination */
.el-pagination {
  display: flex;
  justify-content: center;
  margin-top: 48px;
}
.el-pagination .nav-links,
.el-pagination .navigation {
  display: inline-flex;
  gap: 8px;
  align-items: center;
  font-family: 'JetBrains Mono', monospace;
}
.el-pagination a,
.el-pagination span {
  padding: 8px 14px;
  border: 1px solid #E2E5DF;
  border-radius: 6px;
  color: #3D4744;
  font-size: 14px;
  text-decoration: none;
  transition: all 140ms ease;
}
.el-pagination a:hover {
  border-color: #2E7D32;
  color: #2E7D32;
}
.el-pagination .current {
  background: #2E7D32;
  color: #FFFFFF !important;
  border-color: #2E7D32;
}

/* Empty state */
.el-empty-state {
  max-width: 560px;
  margin: 40px auto;
  text-align: center;
  padding: 48px 24px;
}
.el-empty-state h2 { margin: 0 0 12px 0; }
.el-empty-state p { color: #3D4744; font-size: 16px; margin: 0 0 24px 0; }
.el-empty-links {
  list-style: none;
  padding: 0;
  margin: 24px 0 0 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
  text-align: left;
  max-width: 320px;
  margin-inline: auto;
}
.el-empty-links a {
  color: #2E7D32;
  text-decoration: none;
  padding: 8px 12px;
  border-radius: 6px;
  display: block;
  transition: background 140ms ease;
}
.el-empty-links a:hover { background: rgba(76, 175, 80, 0.08); text-decoration: underline; }

/* ============================================================
   SINGLE POST VIEW
   ============================================================ */
.el-single-post .el-post-header {
  background: #FAFAF7;
  padding: clamp(56px, 7vw, 112px) 0 clamp(32px, 4vw, 48px);
  border-bottom: 1px solid #E2E5DF;
}
.el-single-post .el-post-byline {
  font-family: 'JetBrains Mono', monospace;
  font-size: 13px;
  color: #7A857F;
  margin: 12px 0 0 0;
}
.el-post-body {
  background: #FFFFFF;
  padding: clamp(48px, 6vw, 80px) 0;
}
.el-post-hero-image {
  margin: 0 0 40px 0;
  border-radius: 14px;
  overflow: hidden;
}
.el-post-hero-image img {
  display: block;
  width: 100%;
  height: auto;
}
.el-post-content {
  font-size: 17px;
  line-height: 1.7;
}
.el-post-content h2 {
  font-size: 28px;
  margin: 48px 0 16px;
}
.el-post-content h3 {
  font-size: 22px;
  margin: 32px 0 12px;
}
.el-post-content blockquote {
  border-left: 3px solid #2E7D32;
  padding: 0 0 0 20px;
  margin: 32px 0;
  color: #0A0F0D;
  font-style: italic;
  background: rgba(76, 175, 80, 0.04);
}
.el-post-content pre {
  background: #0A0F0D;
  color: #E4E7EC;
  padding: 20px;
  border-radius: 10px;
  overflow-x: auto;
  font-family: 'JetBrains Mono', monospace;
  font-size: 14px;
  line-height: 1.6;
}
.el-post-tags {
  margin: 32px 0 0;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.el-post-tag-pill {
  padding: 4px 12px;
  border: 1px solid #E2E5DF;
  border-radius: 999px;
  font-family: 'JetBrains Mono', monospace;
  font-size: 12px;
  color: #3D4744;
}
.el-post-footer {
  margin-top: 48px;
  padding-top: 24px;
  border-top: 1px solid #E2E5DF;
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-family: 'JetBrains Mono', monospace;
  font-size: 13px;
  flex-wrap: wrap;
  gap: 12px;
}
.el-post-footer a { color: #2E7D32; text-decoration: none; }
.el-post-footer a:hover { color: #4CAF50; }

/* ============================================================
   SEARCH FORM
   ============================================================ */
.el-search-form {
  display: flex;
  gap: 8px;
  margin-top: 24px;
  max-width: 560px;
}
.el-search-form input[type="search"] {
  flex: 1;
  padding: 12px 16px;
  font-size: 15px;
  font-family: 'Inter', sans-serif;
  color: #0A0F0D;
  background: #FFFFFF;
  border: 1px solid #D5D9D2;
  border-radius: 8px;
  outline: none;
  transition: border-color 140ms ease, box-shadow 140ms ease;
}
.el-search-form input[type="search"]:focus {
  border-color: #2E7D32;
  box-shadow: 0 0 0 3px rgba(76, 175, 80, 0.15);
}

/* ============================================================
   404 PAGE
   ============================================================ */
.el-404-page .el-404-hero {
  padding: clamp(80px, 10vw, 160px) 0 clamp(64px, 8vw, 112px);
  text-align: center;
}
.el-404-num {
  font-size: clamp(96px, 18vw, 200px);
  font-weight: 800;
  letter-spacing: -0.05em;
  line-height: 0.86;
  color: #0A0F0D;
  margin: 24px 0;
  font-variant-numeric: tabular-nums;
}
.el-404-hero .el-h1 { max-width: none; margin-inline: auto; }
.el-404-hero .el-lede { margin-inline: auto; max-width: 52ch; }
.el-404-hero .el-cta-row { justify-content: center; margin-top: 32px; }
.el-404-links {
  margin-top: 48px;
  padding-top: 32px;
  border-top: 1px solid #E2E5DF;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px 16px;
  font-family: 'JetBrains Mono', monospace;
  font-size: 13px;
}
.el-404-links a { color: #3D4744; text-decoration: none; transition: color 140ms ease; }
.el-404-links a:hover { color: #2E7D32; }
.el-404-links .sep { color: #C8CFCB; }

/* ============================================================

/* ============================================================
   HOME PAGE — Delta AI notice bar (above header) + hero tertiary row
   Permanent, no longer test-gated. Delta AI is the primary product.
   ============================================================ */

/* Notice bar — dark strip above the sticky header announcing Delta AI */
.el-notice-bar {
	background: #0A0F0D;
	color: #FBFCFD;
	padding: 10px 20px;
	text-align: center;
	border-bottom: 1px solid rgba(102, 187, 106, 0.4);
	position: relative;
}
.el-notice-bar-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: #FBFCFD;
	text-decoration: none;
	font-family: 'Inter', sans-serif;
	font-size: 13.5px;
	line-height: 1.4;
	transition: color 140ms ease;
	max-width: 100%;
	flex-wrap: wrap;
	justify-content: center;
}
.el-notice-bar-link:hover { color: #66BB6A; }
.el-notice-bar-link .dot {
	width: 8px;
	height: 8px;
	background: #66BB6A;
	border-radius: 50%;
	box-shadow: 0 0 12px rgba(102, 187, 106, 0.7);
	animation: el-pulse 2s ease-in-out infinite;
	flex-shrink: 0;
}
.el-notice-bar-link strong {
	color: #66BB6A;
	font-weight: 600;
}
.el-notice-bar-link .arrow {
	color: #66BB6A;
	transition: transform 140ms ease;
}
.el-notice-bar-link:hover .arrow { transform: translateX(3px); }
@keyframes el-pulse {
	0%, 100% { opacity: 1; transform: scale(1); }
	50%      { opacity: 0.55; transform: scale(0.85); }
}

/* Hero tertiary row — small text links to ventures + consultancy */
.el-hero-tertiary {
	margin-top: 20px;
	padding-top: 16px;
	border-top: 1px solid rgba(200, 207, 203, 0.4);
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
	font-family: 'JetBrains Mono', monospace;
	font-size: 13px;
}
.el-hero-tertiary a {
	color: #7A857F;
	text-decoration: none;
	transition: color 140ms ease;
}
.el-hero-tertiary a:hover {
	color: #2E7D32;
	text-decoration: underline;
	text-underline-offset: 3px;
}

/* ============================================================
   CONTACT FORM — success + error + honeypot states
   Complements the existing .el-contact-page styles.
   ============================================================ */

/* Honeypot: invisible to humans, hidden from assistive tech */
.el-contact-page .el-honeypot {
	position: absolute !important;
	left: -9999px !important;
	top: -9999px !important;
	width: 1px !important;
	height: 1px !important;
	overflow: hidden !important;
	opacity: 0 !important;
	pointer-events: none !important;
}

/* Field error state */
.el-contact-page .el-field.has-error label {
	color: #DC3545 !important;
}
.el-contact-page .el-field.has-error input,
.el-contact-page .el-field.has-error select,
.el-contact-page .el-field.has-error textarea {
	border-color: #DC3545 !important;
	background: #FFF5F5 !important;
	box-shadow: 0 0 0 3px rgba(220, 53, 69, 0.1) !important;
}
.el-contact-page .el-field.has-error input:focus,
.el-contact-page .el-field.has-error select:focus,
.el-contact-page .el-field.has-error textarea:focus {
	border-color: #DC3545 !important;
	box-shadow: 0 0 0 3px rgba(220, 53, 69, 0.2) !important;
}

/* Error banner at top of the form */
.el-contact-page .el-form-error {
	padding: 16px 20px;
	background: #FFF5F5;
	border: 1px solid rgba(220, 53, 69, 0.3);
	border-left: 4px solid #DC3545;
	border-radius: 8px;
	margin-bottom: 24px;
	color: #7A2530;
	font-size: 14.5px;
	line-height: 1.55;
}
.el-contact-page .el-form-error strong {
	color: #DC3545;
	display: block;
	margin-bottom: 6px;
}
.el-contact-page .el-form-error p {
	margin: 6px 0 0 0;
	color: #3D4744;
}
.el-contact-page .el-form-error ul {
	margin: 8px 0 0 0;
	padding-left: 20px;
	color: #3D4744;
}
.el-contact-page .el-form-error li {
	margin-bottom: 4px;
}
.el-contact-page .el-form-error a {
	color: #2E7D32;
	text-decoration: underline;
	text-underline-offset: 3px;
}

/* Success confirmation replaces the whole form */
.el-contact-page .el-form-success {
	text-align: center;
	padding: 20px 12px;
}
.el-contact-page .el-form-success-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 64px;
	height: 64px;
	border-radius: 50%;
	background: #2E7D32;
	color: #FFFFFF;
	font-size: 32px;
	font-weight: 700;
	margin: 0 auto 20px;
	box-shadow: 0 12px 32px -12px rgba(46, 125, 50, 0.5);
}
.el-contact-page .el-form-success .el-card-title {
	color: #2E7D32;
	margin-bottom: 12px;
}
.el-contact-page .el-form-success .el-card-sub {
	max-width: 42ch;
	margin: 0 auto;
}

/* ============================================================
   POSITION-B (Delta AI elevated) — nav featured + entity featured
   Added: 2026-08-15 · Elevates Delta AI to a first-class entity
   without disrupting the studio narrative.
   ============================================================ */

/* Nav — Delta AI gets a subtle pigment-green pill outline */
.el-nav-links a.el-nav-featured {
	position: relative;
	padding: 6px 12px;
	border: 1px solid var(--el-green-fresh, #66BB6A);
	border-radius: 999px;
	color: var(--el-green-deep, #2E7D32) !important;
	font-weight: 600;
	transition: all 140ms ease;
}
.el-nav-links a.el-nav-featured:hover {
	background: var(--el-green-deep, #2E7D32);
	color: #FFFFFF !important;
	border-color: var(--el-green-deep, #2E7D32);
}

/* Entity grid — featured card breaks visual pattern with a green frame,
   soft pigment tint background, and a slightly larger presence. Not so
   loud that it swamps the other entities. */
.el-entity-card.el-entity-featured {
	border: 1.5px solid var(--el-green-deep, #2E7D32);
	background: linear-gradient(180deg, rgba(102, 187, 106, 0.06) 0%, var(--el-cloud, #FFFFFF) 60%);
	box-shadow: 0 8px 32px -16px rgba(46, 125, 50, 0.28);
}
.el-entity-card.el-entity-featured:hover {
	border-color: var(--el-green-deep, #2E7D32);
	transform: translateY(-3px);
	box-shadow: 0 20px 48px -20px rgba(46, 125, 50, 0.4);
}
.el-entity-card.el-entity-featured .eyebrow {
	color: var(--el-green-deep, #2E7D32);
}
.el-entity-card.el-entity-featured h3 {
	color: var(--el-green-deep, #2E7D32);
}

/* "Featured" pill next to the eyebrow — the small badge that tells
   the visitor at a glance which card is the flagship. */
.el-pill.el-pill-featured {
	background: var(--el-green-deep, #2E7D32);
	color: #FFFFFF;
	padding: 2px 8px;
	font-size: 9.5px;
	font-weight: 700;
	letter-spacing: 0.14em;
	border-radius: 999px;
	margin-left: 6px;
	vertical-align: 2px;
	text-transform: uppercase;
}

/* ============================================================
   COLD-LEAD COST CALCULATOR
   Ships as a bottom section on /delta-ai/ and via
   [elogik_cold_lead_calculator] shortcode.
   ============================================================ */

.el-calc {
	background: var(--el-cloud, #FFFFFF);
	border-top: 1px solid var(--el-fog, #C8CFCB);
	border-bottom: 1px solid var(--el-fog, #C8CFCB);
	padding: clamp(56px, 8vw, 96px) clamp(20px, 4vw, 48px);
	margin-top: 32px;
}
.el-calc-inner {
	max-width: 1080px;
	margin: 0 auto;
}
.el-calc-head {
	margin-bottom: 40px;
	max-width: 60ch;
}
.el-calc-eyebrow {
	font-family: var(--el-font-mono, 'JetBrains Mono', monospace);
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--el-green-deep, #2E7D32);
	margin-bottom: 14px;
}
.el-calc-title {
	font-size: clamp(28px, 4vw, 40px);
	font-weight: 700;
	line-height: 1.1;
	letter-spacing: -0.024em;
	color: var(--el-ink, #0A0F0D);
	margin: 0 0 14px 0;
	text-wrap: balance;
}
.el-calc-lede {
	font-size: 17px;
	line-height: 1.55;
	color: var(--el-slate, #3D4744);
	margin: 0;
	text-wrap: pretty;
}

/* Two-column layout: inputs left, output right */
.el-calc-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 40px;
	align-items: start;
}
@media (max-width: 820px) {
	.el-calc-grid { grid-template-columns: 1fr; gap: 32px; }
}

/* Inputs column */
.el-calc-inputs {
	display: flex;
	flex-direction: column;
	gap: 26px;
}
.el-calc-field label {
	display: block;
	font-family: var(--el-font-mono, 'JetBrains Mono', monospace);
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--el-slate, #3D4744);
	margin-bottom: 10px;
}
.el-calc-input-row {
	display: flex;
	align-items: center;
	gap: 12px;
}
.el-calc-input-row input[type="range"] {
	flex: 1;
	-webkit-appearance: none;
	appearance: none;
	background: transparent;
	height: 6px;
	margin: 0;
	padding: 0;
}
.el-calc-input-row input[type="range"]::-webkit-slider-runnable-track {
	height: 6px;
	background: var(--el-fog, #C8CFCB);
	border-radius: 3px;
}
.el-calc-input-row input[type="range"]::-moz-range-track {
	height: 6px;
	background: var(--el-fog, #C8CFCB);
	border-radius: 3px;
}
.el-calc-input-row input[type="range"]::-webkit-slider-thumb {
	-webkit-appearance: none;
	appearance: none;
	width: 20px;
	height: 20px;
	background: var(--el-green-deep, #2E7D32);
	border-radius: 50%;
	border: 3px solid var(--el-cloud, #FFFFFF);
	box-shadow: 0 2px 8px rgba(46, 125, 50, 0.35);
	cursor: pointer;
	margin-top: -7px;
	transition: transform 120ms ease;
}
.el-calc-input-row input[type="range"]::-webkit-slider-thumb:hover {
	transform: scale(1.15);
}
.el-calc-input-row input[type="range"]::-moz-range-thumb {
	width: 20px;
	height: 20px;
	background: var(--el-green-deep, #2E7D32);
	border-radius: 50%;
	border: 3px solid var(--el-cloud, #FFFFFF);
	box-shadow: 0 2px 8px rgba(46, 125, 50, 0.35);
	cursor: pointer;
}
.el-calc-input-row input[type="number"] {
	width: 110px;
	padding: 10px 14px;
	font-family: var(--el-font-mono, 'JetBrains Mono', monospace);
	font-size: 15px;
	font-weight: 600;
	color: var(--el-ink, #0A0F0D);
	background: var(--el-paper, #FAFAF7);
	border: 1px solid var(--el-fog, #C8CFCB);
	border-radius: 6px;
	text-align: right;
	transition: border-color 140ms ease;
	-moz-appearance: textfield;
}
.el-calc-input-row input[type="number"]::-webkit-outer-spin-button,
.el-calc-input-row input[type="number"]::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}
.el-calc-input-row input[type="number"]:focus {
	outline: none;
	border-color: var(--el-green-deep, #2E7D32);
	box-shadow: 0 0 0 3px rgba(46, 125, 50, 0.12);
}
.el-calc-prefix,
.el-calc-suffix {
	font-family: var(--el-font-mono, 'JetBrains Mono', monospace);
	font-size: 15px;
	font-weight: 600;
	color: var(--el-mist, #7A857F);
}
.el-calc-hint {
	font-size: 13px;
	color: var(--el-mist, #7A857F);
	line-height: 1.5;
	margin: 8px 0 0 0;
}

/* Output column — the money moment */
.el-calc-output {
	background: linear-gradient(180deg, rgba(184, 90, 52, 0.05) 0%, var(--el-cloud, #FFFFFF) 40%);
	border: 1px solid var(--el-fog, #C8CFCB);
	border-left: 3px solid #B85A34;
	border-radius: 8px;
	padding: 32px 28px;
}
.el-calc-output-label {
	font-family: var(--el-font-mono, 'JetBrains Mono', monospace);
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--el-mist, #7A857F);
	margin: 0 0 8px 0;
}
.el-calc-loss-num {
	font-family: var(--el-font-sans, 'Inter', sans-serif);
	font-size: clamp(44px, 6vw, 64px);
	font-weight: 800;
	line-height: 1;
	letter-spacing: -0.02em;
	color: #B85A34;
	margin: 0;
}
.el-calc-loss-suffix {
	font-size: 18px;
	font-weight: 500;
	color: var(--el-slate, #3D4744);
	margin-left: 8px;
	letter-spacing: 0;
}
.el-calc-output-sub {
	font-size: 15px;
	color: var(--el-slate, #3D4744);
	line-height: 1.5;
	margin: 10px 0 24px 0;
}
.el-calc-annual {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	padding: 14px 0;
	margin-bottom: 24px;
	border-top: 1px solid var(--el-fog, #C8CFCB);
	border-bottom: 1px solid var(--el-fog, #C8CFCB);
}
.el-calc-annual-label {
	font-family: var(--el-font-mono, 'JetBrains Mono', monospace);
	font-size: 12px;
	font-weight: 500;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--el-mist, #7A857F);
}
.el-calc-annual-num {
	font-family: var(--el-font-sans, 'Inter', sans-serif);
	font-size: 22px;
	font-weight: 700;
	color: var(--el-ink, #0A0F0D);
	letter-spacing: -0.01em;
}
.el-calc-recover-title {
	font-size: 16px;
	font-weight: 600;
	color: var(--el-ink, #0A0F0D);
	line-height: 1.45;
	margin: 0 0 6px 0;
}
.el-calc-recover-price {
	font-family: var(--el-font-mono, 'JetBrains Mono', monospace);
	font-size: 14px;
	font-weight: 600;
	color: var(--el-green-deep, #2E7D32);
	margin: 0 0 12px 0;
	letter-spacing: 0.02em;
}
.el-calc-recover-roi {
	font-size: 14.5px;
	color: var(--el-slate, #3D4744);
	line-height: 1.5;
	margin: 0 0 24px 0;
}
.el-calc-recover-roi span#calc-roi {
	color: var(--el-green-deep, #2E7D32);
	font-weight: 700;
}
.el-calc-cta {
	display: flex;
	flex-direction: column;
	gap: 10px;
}
.el-calc-cta .el-btn {
	width: 100%;
	justify-content: center;
}
.el-calc-footnote {
	font-size: 12.5px;
	color: var(--el-mist, #7A857F);
	line-height: 1.55;
	margin-top: 32px;
	padding-top: 22px;
	border-top: 1px solid var(--el-fog, #C8CFCB);
	max-width: 80ch;
}
.el-calc-footnote strong {
	color: var(--el-slate, #3D4744);
}

/* ============================================================
   CONTACT PAGE + MOBILE NAV REWORK · 2026-08-15
   Fixes: dead mobile nav (no hamburger), wrapping "Book a call"
   CTA on mobile, mono footnote font, .el-contact-details zero-
   padding overlap with cookie floating widget.
   ============================================================ */

/* --- Mobile nav toggle (hamburger) --- */
.el-nav-toggle {
	display: none; /* desktop: hidden; mobile: shown via breakpoint below */
	background: transparent;
	border: 0;
	padding: 10px;
	cursor: pointer;
	position: relative;
	width: 44px;
	height: 44px;
	margin: 0;
}
.el-nav-toggle-bar {
	display: block;
	width: 22px;
	height: 2px;
	background: var(--el-ink, #0A0F0D);
	margin: 5px auto;
	border-radius: 2px;
	transition: transform 200ms ease, opacity 200ms ease;
}
/* When menu is open, morph the three bars into an X */
body.el-nav-open .el-nav-toggle .el-nav-toggle-bar:nth-child(1) {
	transform: translateY(7px) rotate(45deg);
}
body.el-nav-open .el-nav-toggle .el-nav-toggle-bar:nth-child(2) {
	opacity: 0;
}
body.el-nav-open .el-nav-toggle .el-nav-toggle-bar:nth-child(3) {
	transform: translateY(-7px) rotate(-45deg);
}

/* Mobile-only inline CTA item inside the drawer (hidden on desktop) */
.el-nav-cta-mobile { display: none; }

@media (max-width: 900px) {
	/* Show the hamburger, hide the desktop-only inline CTA */
	.el-nav-toggle { display: block; }
	.el-nav-cta-desktop { display: none; }

	/* Convert the nav into a slide-down drawer below the sticky header */
	.el-nav-menu {
		position: absolute;
		top: 100%;
		left: 0;
		right: 0;
		background: var(--el-cloud, #FFFFFF);
		border-bottom: 1px solid var(--el-fog, #C8CFCB);
		box-shadow: 0 24px 40px -24px rgba(10, 15, 13, 0.20);
		max-height: 0;
		overflow: hidden;
		transition: max-height 240ms ease;
	}
	.el-nav-menu[data-open="true"] { max-height: 640px; }

	.el-nav-menu .el-nav-links {
		display: flex !important;
		flex-direction: column;
		gap: 0;
		padding: 12px 0;
	}
	.el-nav-menu .el-nav-links li {
		border-bottom: 1px solid var(--el-fog, #C8CFCB);
	}
	.el-nav-menu .el-nav-links li:last-child { border-bottom: 0; }
	.el-nav-menu .el-nav-links a {
		display: block;
		padding: 16px clamp(20px, 4vw, 32px);
		font-size: 16px;
		font-weight: 500;
	}
	/* Reset the pigment pill on Delta AI inside the drawer */
	.el-nav-menu .el-nav-links a.el-nav-featured {
		border: 0;
		border-radius: 0;
		padding: 16px clamp(20px, 4vw, 32px);
		color: var(--el-green-deep, #2E7D32) !important;
		background: rgba(102, 187, 106, 0.06);
	}
	.el-nav-menu .el-nav-links a.el-nav-featured::before {
		content: "// FEATURED";
		display: block;
		font-family: var(--el-font-mono, 'JetBrains Mono', monospace);
		font-size: 9.5px;
		letter-spacing: 0.16em;
		color: var(--el-mist, #7A857F);
		margin-bottom: 4px;
	}
	/* CTA row inside the drawer — visually distinct from nav links */
	.el-nav-menu .el-nav-cta-mobile {
		display: block;
		padding: 16px clamp(20px, 4vw, 32px);
		border-bottom: 0 !important;
		border-top: 1px solid var(--el-fog, #C8CFCB);
		margin-top: 4px;
	}
	.el-nav-menu .el-nav-cta-mobile .el-nav-cta {
		display: block;
		text-align: center;
		padding: 12px 20px;
		width: 100%;
	}
}

/* Ensure the sticky header positions its drawer correctly */
.el-site-header { position: sticky; top: 0; z-index: 100; }
.el-nav { position: relative; }

/* Prevent scroll when mobile menu is open */
body.el-nav-open { overflow: hidden; }


/* --- Contact page: form footnote should be body text, not mono --- */
.el-contact-page .el-form-note {
	font-family: var(--el-font-sans, 'Inter', -apple-system, sans-serif) !important;
	font-size: 13.5px !important;
	line-height: 1.5 !important;
	color: var(--el-mist, #7A857F) !important;
	letter-spacing: 0 !important;
	margin-top: 16px;
}


/* --- Contact-details aside: spacing + bottom cushion --- */
.el-contact-page .el-contact-details {
	padding: 4px 0 24px;
}
@media (max-width: 900px) {
	.el-contact-page .el-contact-details {
		margin-top: 40px;
		padding-top: 28px;
		border-top: 1px solid var(--el-fog, #C8CFCB);
		/* Bottom cushion so the floating cookie widget doesn't cover
		   the last detail block */
		padding-bottom: 96px;
	}
}


/* --- Extra bottom cushion on the whole page for the cookie floater --- */
@media (max-width: 900px) {
	.el-contact-page .el-contact-cta { padding-bottom: 80px; }
}

/* ============================================================
   VENTURE CARDS — used on /ventures/ portfolio page.
   Each card is a scannable summary of one venture with
   problem / approach / recognition / where-it-fits / honest-status.
   Two variants: primary (live ventures) and secondary
   (Labs, Foundation — non-commercial, minimal presentation).
   ============================================================ */
.el-brand-page .el-venture-card {
	padding: 32px 36px;
	background: var(--el-cloud, #FFFFFF);
	border: 1px solid var(--el-fog, #C8CFCB);
	border-radius: 12px;
	margin: 24px 0;
	transition: transform 240ms ease, box-shadow 240ms ease, border-color 240ms ease;
}
.el-brand-page .el-venture-card:hover {
	transform: translateY(-2px);
	border-color: var(--el-green-fresh, #66BB6A);
	box-shadow: 0 24px 50px -28px rgba(46, 125, 50, 0.22);
}
.el-brand-page .el-venture-card-secondary {
	background: transparent;
	padding: 22px 32px;
	border-style: dashed;
}
.el-brand-page .el-venture-card-secondary:hover {
	transform: none;
	box-shadow: none;
	border-color: var(--el-slate, #3D4744);
}

/* .el-venture-name is the h4 AND acts as the flex header row.
   Status span lives inside it so wpautop cannot wrap it in a stray <p>. */
.el-brand-page .el-venture-name {
	font-family: var(--el-font-sans, 'Inter', -apple-system, sans-serif);
	font-size: 28px;
	font-weight: 800;
	letter-spacing: -0.022em;
	color: var(--el-ink, #0A0F0D);
	line-height: 1.1;
	margin: 0 0 8px 0;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	flex-wrap: wrap;
}
.el-brand-page .el-venture-status {
	font-family: var(--el-font-mono, 'JetBrains Mono', monospace);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.14em;
	padding: 5px 12px;
	border-radius: 4px;
	white-space: nowrap;
	line-height: 1.4;
	text-transform: none;
}
.el-brand-page .el-venture-status.status-live {
	background: rgba(46, 125, 50, 0.12);
	color: var(--el-green-deep, #2E7D32);
}
.el-brand-page .el-venture-status.status-discovery {
	background: rgba(184, 90, 52, 0.10);
	color: #B85A34;
}
.el-brand-page .el-venture-status.status-forming {
	background: rgba(122, 133, 127, 0.14);
	color: var(--el-slate, #3D4744);
}

.el-brand-page .el-venture-tag {
	font-size: 16px;
	line-height: 1.5;
	color: var(--el-slate, #3D4744);
	margin: 0 0 22px 0;
	padding-bottom: 18px;
	border-bottom: 1px solid var(--el-fog, #C8CFCB);
}

.el-brand-page .el-venture-body {
	display: grid;
	gap: 14px;
	margin-bottom: 24px;
}
.el-brand-page .el-venture-body h5 {
	font-family: var(--el-font-mono, 'JetBrains Mono', monospace);
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--el-green-deep, #2E7D32);
	margin: 6px 0 2px 0;
}
.el-brand-page .el-venture-body p,
.el-brand-page .el-venture-body ul {
	font-size: 15.5px;
	line-height: 1.6;
	color: var(--el-ink, #0A0F0D);
	margin: 0;
}
.el-brand-page .el-venture-body ul {
	padding-left: 20px;
}
.el-brand-page .el-venture-body li {
	margin-bottom: 6px;
}
.el-brand-page .el-venture-body li:last-child {
	margin-bottom: 0;
}

/* Secondary cards get a tighter treatment (no body-block, one paragraph only). */
.el-brand-page .el-venture-card-secondary .el-venture-tag {
	margin-bottom: 12px;
	padding-bottom: 0;
	border-bottom: 0;
}

@media (max-width: 640px) {
	.el-brand-page .el-venture-card { padding: 24px 22px; }
	.el-brand-page .el-venture-card-secondary { padding: 20px 22px; }
	.el-brand-page .el-venture-name { font-size: 24px; }
}
