:root {
  --geo-ink: #17130f;
  --geo-cream: #f6f1e8;
  --geo-paper: #fffdf8;
  --geo-gold: #b89358;
  --geo-line: rgba(184, 147, 88, .28);
}

.executive-geo {
  position: relative;
  padding: clamp(4.75rem, 8vw, 8.5rem) 0;
  color: var(--geo-ink);
  background: var(--geo-paper);
  overflow: hidden;
}

.executive-geo .container,
.executive-related .container {
  width: min(1180px, calc(100% - 3rem));
  margin-inline: auto;
}

.executive-geo h2,
.executive-geo h3 {
  color: var(--geo-ink);
}

.executive-geo p {
  color: #655d52;
  line-height: 1.75;
}

.executive-geo-shell {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(290px, .65fr);
  gap: clamp(3rem, 7vw, 7rem);
  align-items: center;
}

.executive-answer {
  background:
    radial-gradient(circle at 78% 18%, rgba(184, 147, 88, .12), transparent 35%),
    var(--geo-cream);
}

.executive-answer-copy h2,
.executive-section-heading h2 {
  max-width: 18ch;
  margin: 1rem 0 1.5rem;
  font-family: var(--font-heading, Georgia, serif);
  font-size: clamp(2.35rem, 4.8vw, 5rem);
  font-weight: 400;
  line-height: .98;
  letter-spacing: -.035em;
}

.executive-answer-copy > p {
  max-width: 64ch;
  margin: 0 0 1rem;
}

.executive-answer-copy .executive-answer-lead {
  color: #312a23;
  font-size: clamp(1.05rem, 1.4vw, 1.25rem);
}

.executive-fact-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  border-top: 1px solid var(--geo-line);
  border-left: 1px solid var(--geo-line);
  background: rgba(255, 253, 248, .54);
}

.executive-fact-grid > div {
  min-height: 132px;
  padding: 1.45rem;
  border-right: 1px solid var(--geo-line);
  border-bottom: 1px solid var(--geo-line);
}

.executive-fact-grid dt {
  margin-bottom: .7rem;
  color: #8b6b3d;
  font-size: .7rem;
  font-weight: 700;
  letter-spacing: .15em;
  text-transform: uppercase;
}

.executive-fact-grid dd {
  margin: 0;
  color: var(--geo-ink);
  font-family: var(--font-heading, Georgia, serif);
  font-size: clamp(1.2rem, 2vw, 1.75rem);
  line-height: 1.15;
}

.executive-formats {
  background: #15110d;
  color: #f7f1e7;
}

.executive-formats .executive-section-heading h2,
.executive-formats .executive-card h3 {
  color: #f7f1e7;
}

.executive-formats .executive-section-heading > p,
.executive-formats .executive-card p {
  color: rgba(247, 241, 231, .68);
}

.executive-section-heading {
  max-width: 760px;
  margin-bottom: clamp(2.5rem, 5vw, 4.5rem);
}

.executive-section-heading > p {
  max-width: 58ch;
  margin: 0;
  font-size: 1.02rem;
}

.executive-card-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  border-top: 1px solid rgba(184, 147, 88, .3);
  border-left: 1px solid rgba(184, 147, 88, .3);
}

.executive-card {
  min-height: 310px;
  padding: clamp(1.7rem, 3vw, 2.7rem);
  border-right: 1px solid rgba(184, 147, 88, .3);
  border-bottom: 1px solid rgba(184, 147, 88, .3);
}

.executive-card > span {
  color: var(--geo-gold);
  font-size: .75rem;
  font-weight: 700;
  letter-spacing: .14em;
}

.executive-card h3 {
  margin: 4rem 0 1rem;
  font-family: var(--font-heading, Georgia, serif);
  font-size: clamp(1.65rem, 2.4vw, 2.35rem);
  font-weight: 400;
}

.executive-agenda {
  background: #efe7da;
}

.executive-agenda-layout {
  display: grid;
  grid-template-columns: minmax(280px, .75fr) minmax(0, 1.25fr);
  gap: clamp(3rem, 8vw, 8rem);
}

.executive-timeline {
  margin: 0;
  padding: 0;
  list-style: none;
  border-top: 1px solid rgba(23, 19, 15, .18);
}

.executive-timeline li {
  display: grid;
  grid-template-columns: 92px 1fr;
  gap: 1.5rem;
  padding: 2rem 0;
  border-bottom: 1px solid rgba(23, 19, 15, .18);
}

.executive-timeline li > span {
  color: #8b6b3d;
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.executive-timeline h3 {
  margin: -.2rem 0 .65rem;
  font-family: var(--font-heading, Georgia, serif);
  font-size: 1.65rem;
  font-weight: 400;
}

.executive-timeline p {
  margin: 0;
}

.executive-practical-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1px;
  background: var(--geo-line);
  border: 1px solid var(--geo-line);
}

.executive-practical-grid article {
  padding: clamp(1.7rem, 3.5vw, 3rem);
  background: var(--geo-paper);
}

.executive-practical-grid h3 {
  margin: 0 0 .85rem;
  font-family: var(--font-heading, Georgia, serif);
  font-size: 1.75rem;
  font-weight: 400;
}

.executive-practical-grid p {
  margin: 0;
}

.executive-faq {
  background: var(--geo-cream);
}

.executive-faq-layout {
  display: grid;
  grid-template-columns: minmax(280px, .72fr) minmax(0, 1.28fr);
  gap: clamp(3rem, 8vw, 8rem);
}

.executive-faq-list {
  border-top: 1px solid rgba(23, 19, 15, .2);
}

.executive-faq-list details {
  border-bottom: 1px solid rgba(23, 19, 15, .2);
}

.executive-faq-list summary {
  position: relative;
  padding: 1.45rem 3rem 1.45rem 0;
  color: var(--geo-ink);
  cursor: pointer;
  font-size: 1.02rem;
  font-weight: 600;
  line-height: 1.45;
  list-style: none;
}

.executive-faq-list summary::-webkit-details-marker { display: none; }

.executive-faq-list summary::after {
  content: '+';
  position: absolute;
  top: 1.25rem;
  right: .2rem;
  color: #8b6b3d;
  font-family: Georgia, serif;
  font-size: 1.6rem;
  font-weight: 400;
}

.executive-faq-list details[open] summary::after { content: '−'; }

.executive-faq-list details > div {
  padding: 0 3rem 1.45rem 0;
}

.executive-faq-list p { margin: 0; }

.executive-related {
  padding: 1.5rem 0;
  background: #211a14;
  color: rgba(255, 255, 255, .72);
  text-align: center;
}

.executive-related p { margin: 0; line-height: 1.7; }

.executive-related a {
  color: #e0bd85;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: .22em;
}

@media (max-width: 900px) {
  .executive-geo-shell,
  .executive-agenda-layout,
  .executive-faq-layout {
    grid-template-columns: 1fr;
    gap: 3rem;
  }

  .executive-card-grid { grid-template-columns: 1fr; }
  .executive-card { min-height: 0; }
  .executive-card h3 { margin-top: 2rem; }
}

@media (max-width: 640px) {
  .executive-geo { padding: 4rem 0; }
  .executive-geo .container,
  .executive-related .container { width: min(100% - 2rem, 1180px); }
  .executive-answer-copy h2,
  .executive-section-heading h2 { font-size: clamp(2.2rem, 12vw, 3.35rem); }
  .executive-fact-grid,
  .executive-practical-grid { grid-template-columns: 1fr; }
  .executive-fact-grid > div { min-height: 0; padding: 1.25rem; }
  .executive-timeline li { grid-template-columns: 72px 1fr; gap: 1rem; }
  .executive-faq-list summary { padding-right: 2.25rem; }
  .executive-faq-list details > div { padding-right: 1rem; }
}

@media (prefers-reduced-motion: reduce) {
  .executive-geo *, .executive-related * { scroll-behavior: auto !important; }
}
