/* Into Bolivia — shared brand styles.
   Identity drawn from the cover of "Why Not Bolivia?": six earth bands
   (cream, sand, ochre, terracotta, sage, forest), a Garamond display face,
   spaced capitals. The mark is a stepped cross in the four corn colours.
   Layout: editorial grid, hairline rules, one accent per page set on <body>. */

:root{
  /* brand bands — constant in both themes */
  --band-cream:#EFE6D3;
  --band-sand:#E2D3B2;
  --band-ochre:#C29658;
  --band-terra:#974F33;
  --band-sage:#617A62;
  --band-forest:#22352A;

  /* surfaces + text */
  --paper:#F5EFE3;
  --paper-2:#FBF7EE;
  --ink:#1F2A22;
  --body:#3A3A30;
  --muted:#6E6A5C;
  --faint:#A49C8A;
  --rule:rgba(31,42,34,0.15);
  --rule-soft:rgba(31,42,34,0.08);

  /* page accents (text-safe on paper) */
  --terra:#94482C;
  --ochre:#86621F;
  --sage:#4F6A52;
  --forest:#22352A;
  --accent:var(--terra);

  --serif:'Cormorant Garamond','EB Garamond','Garamond','Georgia',serif;
  --sans:'Mulish','Helvetica Neue',Arial,sans-serif;
}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){
    --paper:#141A16; --paper-2:#1A211C; --ink:#EFE6D3; --body:#D5CCBA; --muted:#A39B89; --faint:#77705F;
    --rule:rgba(239,230,211,0.16); --rule-soft:rgba(239,230,211,0.08);
    --terra:#DB8A65; --ochre:#D8B06C; --sage:#9DB89D; --forest:#B9CDB4;
    color-scheme:dark;
  }
}
:root[data-theme="dark"]{
  --paper:#141A16; --paper-2:#1A211C; --ink:#EFE6D3; --body:#D5CCBA; --muted:#A39B89; --faint:#77705F;
  --rule:rgba(239,230,211,0.16); --rule-soft:rgba(239,230,211,0.08);
  --terra:#DB8A65; --ochre:#D8B06C; --sage:#9DB89D; --forest:#B9CDB4;
  color-scheme:dark;
}
body.p-visit{ --accent:var(--terra); }
body.p-short{ --accent:var(--ochre); }
body.p-long { --accent:var(--sage); }
body.p-law, body.p-home{ --accent:var(--forest); }

*,*::before,*::after{ box-sizing:border-box; }
html{ scroll-behavior:smooth; -webkit-text-size-adjust:100%; }
body{
  margin:0; background:var(--paper); color:var(--body);
  font-family:var(--sans); font-weight:400; font-size:17px; line-height:1.75;
  -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility; overflow-x:hidden;
}
body::before{ content:""; position:fixed; inset:0 0 auto; height:env(safe-area-inset-top,0px); z-index:60; background:var(--paper); }
::selection{ background:var(--accent); color:var(--paper); }
a{ color:inherit; }
img{ max-width:100%; display:block; }
:focus-visible{ outline:2px solid var(--accent); outline-offset:3px; }
.wrap{ max-width:1180px; margin:0 auto; padding-left:max(22px,env(safe-area-inset-left,0px)); padding-right:max(22px,env(safe-area-inset-right,0px)); }

.eyebrow{ font-size:0.68rem; font-weight:700; letter-spacing:0.24em; text-transform:uppercase; color:var(--accent); }
.kicker{ font-size:0.62rem; font-weight:700; letter-spacing:0.22em; text-transform:uppercase; color:var(--muted); }
h1,h2,h3{ font-family:var(--serif); font-weight:500; color:var(--ink); margin:0; text-wrap:balance; }
em{ font-style:italic; }

/* ── STRATA: the cover's six bands ── */
.strata{ display:flex; flex-direction:column; }
.strata i{ display:block; height:var(--h,4px); }
.strata i:nth-child(1){ background:var(--band-cream); }
.strata i:nth-child(2){ background:var(--band-sand); }
.strata i:nth-child(3){ background:var(--band-ochre); }
.strata i:nth-child(4){ background:var(--band-terra); }
.strata i:nth-child(5){ background:var(--band-sage); }
.strata i:nth-child(6){ background:var(--band-forest); }
.strata.thin{ --h:3px; }

/* ── MARK: stepped cross, four corn colours in birth order ── */
.mark{ display:block; width:var(--s,30px); height:var(--s,30px); flex:none; }
.mark .q1{ fill:var(--band-terra); }   /* red */
.mark .q2{ fill:var(--band-forest); }  /* black */
.mark .q3{ fill:var(--band-ochre); }   /* yellow */
.mark .q4{ fill:var(--band-cream); }   /* white */
.mark .edge{ fill:none; stroke:var(--ink); stroke-width:1.2px; vector-effect:non-scaling-stroke; }
.mark .eye{ fill:var(--paper); stroke:var(--ink); stroke-width:1.2px; vector-effect:non-scaling-stroke; }

/* ── MASTHEAD ── */
.masthead{ position:sticky; top:env(safe-area-inset-top,0px); z-index:50; background:var(--paper); border-bottom:1px solid var(--rule); }
.logo{ display:flex; align-items:center; justify-content:center; gap:0.8rem; text-decoration:none; color:var(--ink); padding:1.05rem 0 0.1rem; }
.logo span{ font-family:var(--serif); font-weight:600; font-size:clamp(1.35rem,3vw,1.85rem); letter-spacing:0.2em; text-transform:uppercase; line-height:1; padding-top:0.15em; }
.navbar{ display:flex; justify-content:center; flex-wrap:wrap; gap:0.4rem 1.8rem; padding:0.55rem 0 0.9rem; }
.navbar a{ font-size:0.7rem; font-weight:700; letter-spacing:0.18em; text-transform:uppercase; color:var(--muted); text-decoration:none; padding-bottom:3px; border-bottom:1.5px solid transparent; transition:color .2s ease,border-color .2s ease; }
.navbar a:hover{ color:var(--ink); }
.navbar a.active{ color:var(--ink); border-color:var(--accent); }

/* ── BUTTONS ── */
.btn{ display:inline-flex; align-items:center; gap:0.7rem; cursor:pointer; font-family:var(--sans); font-size:0.72rem; font-weight:700; letter-spacing:0.16em; text-transform:uppercase; padding:1rem 1.7rem; background:var(--ink); color:var(--paper); border:1px solid var(--ink); text-decoration:none; transition:background .25s ease,color .25s ease,border-color .25s ease; }
.btn:hover{ background:var(--accent); border-color:var(--accent); color:var(--paper); }
.btn svg,.btn-line svg{ width:15px; height:15px; }
.btn-line{ display:inline-flex; align-items:center; gap:0.6rem; text-decoration:none; font-size:0.72rem; font-weight:700; letter-spacing:0.16em; text-transform:uppercase; color:var(--ink); border-bottom:1px solid var(--accent); padding-bottom:4px; }
.btn-line svg{ color:var(--accent); }

/* ── HERO ── */
.hero{ padding-block:clamp(3.5rem,8vw,7rem) clamp(2.5rem,5vw,4rem); }
.hero .eyebrow{ display:block; margin-bottom:1.5rem; }
.hero h1{ font-size:clamp(3rem,7.2vw,5.6rem); line-height:1; letter-spacing:-0.01em; max-width:15ch; }
.hero h1 em{ color:var(--accent); }
.hero-sub{ margin:1.8rem 0 0; font-size:1.12rem; line-height:1.7; max-width:54ch; }
.hero-actions{ margin-top:2.4rem; display:flex; gap:1.6rem; align-items:center; flex-wrap:wrap; }
.aside{ margin-top:2rem; max-width:62ch; font-size:0.95rem; color:var(--muted); border-left:2px solid var(--accent); padding-left:1.2rem; }
hr.rule{ border:none; border-top:1px solid var(--rule); margin:0; }

/* ── SECTIONS ── */
section{ padding-block:clamp(3rem,6vw,5.5rem); }
.sec-head{ display:flex; align-items:baseline; gap:1.2rem; margin-bottom:2.6rem; }
.sec-head .eyebrow{ white-space:nowrap; }
.sec-head .line{ flex:1; height:1px; background:var(--rule); }

.grid{ display:grid; grid-template-columns:repeat(3,1fr); }
.cell{ padding:1.9rem 2rem 2.2rem 0; border-top:1px solid var(--rule); min-width:0; }
.grid .cell:nth-child(-n+3){ border-top-color:var(--ink); }
.cell h3{ font-size:1.7rem; font-weight:600; line-height:1.1; margin:0 0 0.7rem; }
.cell h3::before{ content:""; display:block; width:22px; height:2px; background:var(--accent); margin-bottom:1rem; }
.cell p{ margin:0; font-size:0.98rem; line-height:1.7; color:var(--muted); }
.cell.law{ background:var(--paper-2); padding-left:1.6rem; }
.cell.law h3::before{ background:linear-gradient(90deg,var(--band-terra) 0 25%,var(--band-forest) 25% 50%,var(--band-ochre) 50% 75%,var(--band-sand) 75%); }
.cell.law a{ color:var(--ink); font-weight:600; text-decoration:none; border-bottom:1px solid var(--accent); }

.statement{ display:grid; grid-template-columns:1.1fr 1fr; gap:2.5rem 4rem; align-items:start; border-top:1px solid var(--ink); padding-top:2.6rem; }
.statement > *{ min-width:0; }
.statement h2{ font-size:clamp(2.3rem,4.4vw,3.5rem); line-height:1.04; }
.statement h2 em{ color:var(--accent); }
.statement .body p{ margin:0 0 1.1rem; font-size:1.03rem; }

.detail{ display:grid; grid-template-columns:1fr 1fr; gap:3.5rem; }
.detail > *{ min-width:0; }
.detail h3{ font-size:2rem; font-weight:600; line-height:1.08; margin-bottom:1.1rem; }
.detail p{ margin:0 0 1.1rem; font-size:1.02rem; }
.note{ margin-top:1.6rem; padding:0.2rem 0 0.2rem 1.4rem; border-left:2px solid var(--accent); }
.note .kicker{ display:block; margin-bottom:0.5rem; color:var(--accent); }
.note p{ font-size:0.96rem; color:var(--muted); margin:0; }
.factlist{ margin:0.4rem 0 0; display:grid; grid-template-columns:1fr 1fr; gap:0.2rem 1.8rem; }
.factlist.one{ grid-template-columns:1fr; }
.fact{ font-size:0.96rem; padding:0.5rem 0; border-bottom:1px solid var(--rule-soft); display:flex; gap:0.7rem; align-items:baseline; }
.fact::before{ content:""; width:16px; height:1px; background:var(--accent); flex:none; position:relative; top:-0.3em; }

.stats{ display:flex; gap:2rem 3.5rem; flex-wrap:wrap; }
.stat .num{ font-family:var(--serif); font-weight:500; font-size:clamp(2.8rem,5vw,3.8rem); line-height:1; color:var(--ink); font-variant-numeric:tabular-nums lining-nums; }
.stat .num span{ color:var(--accent); }
.stat .lab{ font-size:0.66rem; font-weight:700; letter-spacing:0.14em; text-transform:uppercase; color:var(--muted); margin-top:0.6rem; max-width:22ch; }

/* ── ROUTE: a real west-to-east sequence ── */
.route{ list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(5,1fr); border-top:1px solid var(--ink); }
.route li{ padding:1.6rem 1.4rem 1.8rem 0; min-width:0; position:relative; }
.route li + li{ padding-left:1.4rem; border-left:1px solid var(--rule); }
.route .step{ font-family:var(--serif); font-style:italic; font-size:1.05rem; color:var(--accent); }
.route h3{ font-size:1.45rem; font-weight:600; line-height:1.1; margin:0.35rem 0 0.6rem; }
.route p{ margin:0; font-size:0.93rem; line-height:1.65; color:var(--muted); }
.route-foot{ margin-top:1.4rem; font-size:0.9rem; color:var(--muted); display:flex; align-items:center; gap:0.8rem; }
.route-foot::before{ content:""; height:1px; width:40px; background:var(--accent); }

/* ── LAW PAGE ── */
.acts{ display:grid; grid-template-columns:repeat(3,1fr); gap:0 2.6rem; border-top:1px solid var(--ink); }
.act{ padding-top:1.8rem; min-width:0; }
.act .num{ font-family:var(--serif); font-size:3.4rem; line-height:1; color:var(--accent); font-weight:500; }
.act h3{ font-size:1.8rem; font-weight:600; line-height:1.1; margin:0.6rem 0 0.8rem; }
.act p{ margin:0 0 0.9rem; font-size:0.99rem; }

.tenets{ display:grid; grid-template-columns:1fr 1fr; gap:0 3.5rem; }
.tenet{ display:grid; grid-template-columns:auto 1fr; gap:0 1.2rem; padding:1.6rem 0; border-top:1px solid var(--rule); min-width:0; }
.tenet .sw{ width:14px; height:14px; margin-top:0.55rem; border:1px solid var(--ink); }
.tenet h3{ font-size:1.6rem; font-weight:600; line-height:1.12; margin-bottom:0.45rem; }
.tenet p{ margin:0; font-size:0.98rem; color:var(--muted); }
.tenet > div{ min-width:0; }

.corn{ display:grid; grid-template-columns:repeat(4,1fr); border:1px solid var(--ink); min-height:220px; }
.corn div{ display:flex; align-items:flex-end; padding:1rem; font-size:0.66rem; font-weight:700; letter-spacing:0.2em; text-transform:uppercase; }
.corn .c-red{ background:var(--band-terra); color:var(--band-cream); }
.corn .c-black{ background:var(--band-forest); color:var(--band-cream); }
.corn .c-yellow{ background:var(--band-ochre); color:var(--band-forest); }
.corn .c-white{ background:var(--band-cream); color:var(--band-forest); }
.corn-cap{ margin:1rem 0 0; font-family:var(--serif); font-style:italic; font-size:1.2rem; color:var(--muted); }

.quote{ border-top:1px solid var(--ink); padding-top:2.6rem; text-align:left; }
.quote blockquote{ margin:0; font-family:var(--serif); font-size:clamp(2rem,4.6vw,3.6rem); line-height:1.08; color:var(--ink); max-width:22ch; }
.quote blockquote em{ color:var(--accent); }
.quote cite{ display:block; margin-top:1.4rem; font-style:normal; font-size:0.66rem; font-weight:700; letter-spacing:0.2em; text-transform:uppercase; color:var(--muted); }

/* ── HOME ── */
.home-hero{ padding-block:clamp(3rem,7vw,5.5rem) clamp(2.4rem,5vw,3.6rem); text-align:center; }
.home-hero .mark{ --s:clamp(64px,9vw,92px); margin:0 auto 1.8rem; }
.home-hero .wordmark{ margin:0; font-family:var(--serif); color:var(--ink);  font-weight:600; font-size:clamp(2.6rem,8vw,5.4rem); letter-spacing:0.18em; text-transform:uppercase; line-height:1; padding-left:0.18em; }
.home-hero .tag{ margin:1.2rem auto 0; font-family:var(--serif); font-style:italic; font-size:clamp(1.35rem,2.6vw,1.9rem); color:var(--band-terra); line-height:1.3; }
:root[data-theme="dark"] .home-hero .tag{ color:var(--terra); }
@media (prefers-color-scheme: dark){ :root:not([data-theme="light"]) .home-hero .tag{ color:var(--terra); } }
.home-hero p.lede{ margin:1.6rem auto 0; max-width:56ch; font-size:1.06rem; }
.doors{ display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--ink); border-bottom:1px solid var(--rule); }
.door{ --c:var(--terra); position:relative; text-decoration:none; color:var(--ink); padding:2.4rem 2rem 2.6rem; display:flex; flex-direction:column; gap:0.9rem; min-width:0; border-right:1px solid var(--rule); transition:background .3s ease; }
.door:last-child{ border-right:none; }
.door::after{ content:""; position:absolute; left:0; right:0; bottom:-1px; height:3px; background:var(--c); transform:scaleX(0); transform-origin:left; transition:transform .35s ease; }
.door:hover,.door:focus-visible{ background:var(--paper-2); }
.door:hover::after,.door:focus-visible::after{ transform:scaleX(1); }
.door--short{ --c:var(--ochre); } .door--long{ --c:var(--sage); }
.door .when{ font-size:0.64rem; font-weight:700; letter-spacing:0.22em; text-transform:uppercase; color:var(--c); }
.door .label{ font-family:var(--serif); font-weight:500; font-size:clamp(2.4rem,4.4vw,3.4rem); line-height:0.95; }
.door .say{ color:var(--muted); font-size:0.98rem; max-width:32ch; }
.door .go{ margin-top:auto; padding-top:0.6rem; display:inline-flex; align-items:center; gap:0.6rem; font-size:0.66rem; font-weight:700; letter-spacing:0.2em; text-transform:uppercase; }
.door .go svg{ width:14px; height:14px; transition:transform .3s ease; }
.door:hover .go svg{ transform:translateX(5px); }

/* ── BOOK ── */
.book{ display:grid; grid-template-columns:0.8fr 1.2fr; gap:4rem; align-items:center; }
.book > *{ min-width:0; }
.book-cover{ box-shadow:0 22px 50px -26px rgba(0,0,0,0.55); }
.book-text h2{ font-size:clamp(2.3rem,4.4vw,3.4rem); line-height:1.04; }
.book-text h2 em{ color:var(--accent); }
.book-text p{ font-size:1.02rem; margin:1.1rem 0; }
.book-text .meta{ font-size:0.72rem; letter-spacing:0.12em; text-transform:uppercase; color:var(--faint); margin:1.4rem 0 1.8rem; }

/* ── INQUIRY ── */
.cta-band{ background:var(--paper-2); border-top:1px solid var(--ink); }
.cta-inner{ max-width:660px; margin:0 auto; text-align:center; }
.cta-inner h2{ font-size:clamp(2.4rem,4.8vw,3.4rem); line-height:1.02; margin:1rem 0 0.9rem; }
.cta-inner > p{ font-size:1.05rem; margin:0 auto 2.4rem; max-width:48ch; }
form.inq{ text-align:left; }
.inq-row{ display:flex; gap:0 1.6rem; flex-wrap:wrap; }
.inq-field{ flex:1 1 220px; display:flex; flex-direction:column; gap:0.5rem; margin-bottom:1.5rem; min-width:0; }
.inq-field.full{ flex-basis:100%; }
.inq label{ font-size:0.62rem; font-weight:700; letter-spacing:0.16em; text-transform:uppercase; color:var(--muted); }
.inq input,.inq select,.inq textarea{ font-family:var(--sans); font-size:1rem; color:var(--ink); background:transparent; border:none; border-bottom:1px solid var(--rule); border-radius:0; padding:0.55rem 0; outline:none; width:100%; }
.inq select option{ background:var(--paper); color:var(--ink); }
.inq input::placeholder,.inq textarea::placeholder{ color:var(--faint); }
.inq input:focus,.inq select:focus,.inq textarea:focus{ border-bottom-color:var(--accent); }
.inq textarea{ min-height:96px; resize:vertical; }
.inq select{ appearance:none; cursor:pointer; }
.inq .btn{ width:100%; justify-content:center; margin-top:0.6rem; }
.cta-direct{ font-size:0.85rem; color:var(--muted); margin-top:1.6rem; }
.cta-direct a{ color:var(--accent); text-decoration:none; border-bottom:1px solid var(--rule); }

/* ── FOOTER ── */
footer .foot-inner{ display:grid; grid-template-columns:1.2fr 1fr auto; align-items:center; gap:1.2rem 2rem; padding-block:2rem; }
.foot-brand{ display:flex; align-items:center; gap:0.8rem; }
.foot-brand .name{ font-family:var(--serif); font-weight:600; font-size:1.15rem; letter-spacing:0.16em; text-transform:uppercase; color:var(--ink); line-height:1.1; }
.foot-brand .motto{ display:block; font-family:var(--serif); font-style:italic; font-size:1rem; letter-spacing:0; text-transform:none; color:var(--muted); font-weight:500; }
.foot-nav{ display:flex; flex-wrap:wrap; gap:0.3rem 1.4rem; }
.foot-nav a,.foot-mail{ font-size:0.64rem; font-weight:700; letter-spacing:0.16em; text-transform:uppercase; color:var(--muted); text-decoration:none; }
.foot-nav a:hover{ color:var(--ink); }

/* ── RESPONSIVE ── */
@media (max-width:980px){
  .route{ grid-template-columns:1fr 1fr; }
  .route li,.route li + li{ padding:1.4rem 1.2rem 1.6rem 0; border-left:none; border-bottom:1px solid var(--rule); }
  .route li:nth-child(even){ padding-left:1.2rem; border-left:1px solid var(--rule); }
}
@media (max-width:860px){
  body{ font-size:16px; }
  .grid,.acts,.tenets,.doors{ grid-template-columns:1fr; }
  .cell,.cell.law{ padding:1.6rem 0 1.8rem; border-top:1px solid var(--rule) !important; }
  .cell.law{ padding-inline:1.2rem; }
  .grid .cell:first-child{ border-top-color:var(--ink) !important; }
  .act{ padding-bottom:1.4rem; }
  .act + .act{ border-top:1px solid var(--rule); }
  .statement,.detail,.book{ grid-template-columns:1fr; gap:2rem; }
  .book-cover{ max-width:280px; margin:0 auto; }
  .factlist{ grid-template-columns:1fr; }
  .door{ border-right:none; border-bottom:1px solid var(--rule); padding:2rem 0 2.2rem; }
  .door:last-child{ border-bottom:none; }
  footer .foot-inner{ grid-template-columns:1fr; }
}
@media (max-width:560px){
  .route{ grid-template-columns:1fr; }
  .route li:nth-child(even){ padding-left:0; border-left:none; }
  .corn{ min-height:160px; }
  .corn div{ padding:0.7rem 0.5rem; font-size:0.56rem; letter-spacing:0.12em; }
  .navbar{ gap:0.3rem 1.1rem; }
}
@media (prefers-reduced-motion:reduce){ *{ transition:none !important; } html{ scroll-behavior:auto; } }

/* fixes */
.book-cover{ max-width:340px; width:100%; justify-self:center; }
.cell p .btn-line{ display:flex; width:fit-content; margin-top:1rem; }
body.p-buy{ --accent:var(--forest); }
.door--buy{ --c:var(--forest); }
.doors{ grid-template-columns:repeat(4,1fr); }
.door{ padding:2.2rem 1.6rem 2.4rem; }
.door .label{ font-size:clamp(2.2rem,3.4vw,3rem); }
@media (max-width:1100px) and (min-width:861px){
  .doors{ grid-template-columns:1fr 1fr; }
  .door:nth-child(2){ border-right:none; }
  .door:nth-child(-n+2){ border-bottom:1px solid var(--rule); }
}
@media (max-width:860px){ .doors{ grid-template-columns:1fr; } .door{ padding:2rem 0 2.2rem; } }

/* ── AUTHOR EXPEDITIONS ── */
body.p-exp{ --accent:var(--terra); }
.feature{ display:flex; align-items:center; justify-content:space-between; gap:1.6rem 3rem; flex-wrap:wrap; margin-top:2.4rem; padding:2.4rem 2.4rem 2.6rem; background:var(--band-forest); color:var(--band-cream); text-decoration:none; border:1px solid var(--rule); position:relative; overflow:hidden; }
.feature::before{ content:""; position:absolute; left:0; top:0; bottom:0; width:6px; background:linear-gradient(180deg,var(--band-cream) 0 16.6%,var(--band-sand) 16.6% 33.3%,var(--band-ochre) 33.3% 50%,var(--band-terra) 50% 66.6%,var(--band-sage) 66.6% 83.3%,var(--band-cream) 83.3%); }
.feature-text{ display:flex; flex-direction:column; gap:0.7rem; min-width:0; flex:1 1 420px; }
.feature .when{ font-size:0.64rem; font-weight:700; letter-spacing:0.22em; text-transform:uppercase; color:var(--band-ochre); }
.feature .label{ font-family:var(--serif); font-weight:500; font-size:clamp(2.2rem,4.2vw,3.2rem); line-height:1; color:var(--band-cream); }
.feature .label em{ color:var(--band-ochre); }
.feature .say{ color:rgba(239,230,211,0.78); max-width:58ch; }
.feature-btn{ background:var(--band-cream); color:var(--band-forest); border-color:var(--band-cream); }
.feature:hover .feature-btn{ background:var(--band-ochre); border-color:var(--band-ochre); color:var(--band-forest); }

.cal{ list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--ink); }
.cal-item{ padding:1.8rem 1.8rem 2rem 0; border-bottom:1px solid var(--rule); min-width:0; display:flex; flex-direction:column; gap:0.55rem; }
.cal-item:not(:nth-child(3n+1)){ padding-left:1.8rem; border-left:1px solid var(--rule); }
.cal-when{ display:flex; align-items:baseline; gap:0.7rem; }
.cal-m{ font-size:0.66rem; font-weight:700; letter-spacing:0.22em; text-transform:uppercase; color:var(--accent); }
.cal-n{ font-family:var(--serif); font-size:2.4rem; line-height:1; color:var(--ink); font-variant-numeric:lining-nums tabular-nums; }
.cal-item h3{ font-size:1.6rem; font-weight:600; line-height:1.1; }
.cal-item p{ margin:0; font-size:0.95rem; line-height:1.65; color:var(--muted); }
.cal-item .cal-route{ font-size:0.8rem; color:var(--body); letter-spacing:0.02em; margin-top:0.2rem; }
.chips{ display:flex; flex-wrap:wrap; gap:0.4rem; margin-top:auto; padding-top:0.5rem; }
.chip{ font-size:0.6rem; font-weight:700; letter-spacing:0.16em; text-transform:uppercase; color:var(--muted); border:1px solid var(--rule); padding:0.25rem 0.55rem; }
.tenet .kicker{ display:block; margin-bottom:0.3rem; }

.author{ display:grid; grid-template-columns:0.8fr 1.2fr; gap:4rem; align-items:start; }
.author > *{ min-width:0; }
.profile{ background:var(--paper-2); border-top:3px solid var(--accent); padding:2rem; display:flex; flex-direction:column; gap:1.4rem; }
.profile p{ margin:0; }
.profile ul{ list-style:none; padding:0; margin:0; }
.profile-name{ font-family:var(--serif); font-size:2rem; font-weight:600; color:var(--ink); line-height:1.05; }
.profile-role{ font-size:0.66rem; font-weight:700; letter-spacing:0.2em; text-transform:uppercase; color:var(--accent); margin-top:0.4rem !important; }
.profile-tag{ font-family:var(--serif); font-style:italic; font-size:1.2rem; color:var(--muted); margin-top:0.3rem !important; }
.author-text h2{ font-size:clamp(2.4rem,4.6vw,3.6rem); line-height:1.02; margin-bottom:1.4rem; }
.author-text h2 em{ color:var(--accent); }
.author-text p{ margin:0 0 1.1rem; font-size:1.04rem; }

@media (max-width:980px){
  .cal{ grid-template-columns:1fr 1fr; }
  .cal-item:not(:nth-child(3n+1)){ padding-left:0; border-left:none; }
  .cal-item:nth-child(even){ padding-left:1.6rem; border-left:1px solid var(--rule); }
}
@media (max-width:860px){
  .author{ grid-template-columns:1fr; gap:2.4rem; }
  .feature{ padding:2rem 1.4rem 2.2rem 1.8rem; }
}
@media (max-width:560px){
  .cal{ grid-template-columns:1fr; }
  .cal-item:nth-child(even){ padding-left:0; border-left:none; }
}
@media (max-width:560px){ .sec-head .eyebrow{ white-space:normal; } }
.book-cover{ height:auto; }
.profile-photo{ width:120px; height:120px; object-fit:cover; object-position:center 25%; border-radius:50%; border:1px solid var(--rule); display:block; }
.home-hero h1.tag{ font-weight:500; text-transform:none; letter-spacing:0; padding-left:0; max-width:none; }

/* ── PRICING ── */
.door .price{ margin-top:auto; padding-top:0.8rem; border-top:1px solid var(--rule); font-size:0.86rem; font-weight:700; color:var(--ink); font-variant-numeric:tabular-nums lining-nums; }
.door .price + .go{ margin-top:0; }
.fee{ margin-top:2.2rem; max-width:62ch; display:grid; grid-template-columns:auto 1fr; gap:0.5rem 1.6rem; align-items:baseline; padding-top:1.3rem; border-top:1px solid var(--rule); }
.fee .kicker{ grid-column:1 / -1; color:var(--accent); }
.fee .amt{ font-family:var(--serif); font-weight:500; font-size:clamp(2rem,3.6vw,2.6rem); line-height:1; color:var(--ink); font-variant-numeric:lining-nums tabular-nums; white-space:nowrap; }
.fee .amt span{ color:var(--accent); }
.fee p{ margin:0; font-size:0.95rem; line-height:1.6; color:var(--muted); }
.call-terms{ display:inline-block; margin:-1.2rem auto 2.4rem; font-size:0.66rem; font-weight:700; letter-spacing:0.18em; text-transform:uppercase; color:var(--accent); }
.statement .actions{ display:flex; gap:1.6rem; flex-wrap:wrap; }
@media (max-width:560px){ .fee{ grid-template-columns:1fr; } }

/* ── NEWSLETTER ── */
.sr{ position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; }
.notes{ display:flex; align-items:center; justify-content:space-between; gap:1.2rem 3rem; flex-wrap:wrap; padding-block:2.2rem; border-bottom:1px solid var(--rule); }
.notes-text{ min-width:0; }
.notes-text .kicker{ display:block; color:var(--accent); margin-bottom:0.3rem; }
.notes-text p{ margin:0; font-family:var(--serif); font-style:italic; font-size:1.3rem; line-height:1.3; color:var(--ink); }
.notes-form{ display:flex; gap:0.8rem; flex:0 1 440px; min-width:0; }
.notes-form input[type=email]{ flex:1; min-width:0; font-family:var(--sans); font-size:1rem; color:var(--ink); background:transparent; border:none; border-bottom:1px solid var(--rule); padding:0.55rem 0; outline:none; border-radius:0; }
.notes-form input[type=email]:focus{ border-bottom-color:var(--accent); }
.notes-form input::placeholder{ color:var(--faint); }
.notes-form .btn{ padding:0.85rem 1.3rem; white-space:nowrap; }
@media (max-width:560px){ .notes-form{ flex-basis:100%; } }

/* ── WHY NOW ── */
.whynow-grid{ margin-top:2.6rem; }
.whynow-note{ max-width:70ch; margin-top:2.2rem; }
.whynow-note p{ font-size:1.02rem; color:var(--body); }
.home-hero .tag em{ font-style:normal; color:var(--ink); }
.whynow{ --accent:var(--terra); }
.whynow .statement{ border-top:none; padding-top:0; }
.whynow-note + .whynow-grid{ margin-top:2.2rem; }

/* ── THREE PATHS (2026-10 refresh) ── */
body.p-invest{ --accent:var(--sage); }
.door--invest{ --c:var(--sage); }
.doors.three{ grid-template-columns:repeat(3,1fr); }
@media (max-width:1100px) and (min-width:861px){
  .doors.three{ grid-template-columns:repeat(3,1fr); }
  .doors.three .door:nth-child(2){ border-right:1px solid var(--rule); }
  .doors.three .door:nth-child(-n+2){ border-bottom:none; }
}
@media (max-width:860px){ .doors.three{ grid-template-columns:1fr; } .doors.three .door{ border-right:none; } }

/* ── JOURNEYS ── */
.cal.four{ grid-template-columns:repeat(4,1fr); }
.cal.four .cal-item:not(:nth-child(3n+1)){ padding-left:0; border-left:none; }
.cal.four .cal-item + .cal-item{ padding-left:1.6rem; border-left:1px solid var(--rule); }
.cal-sub{ margin:2.8rem 0 0; }
.cal-sub:first-of-type{ margin-top:0; }
.cal-sub .kicker{ display:block; margin-bottom:1rem; color:var(--accent); }
.cal-base{ font-size:0.8rem; color:var(--body); }
.cal-base b{ font-weight:700; letter-spacing:0.14em; text-transform:uppercase; font-size:0.62rem; color:var(--muted); margin-right:0.4rem; }
@media (max-width:980px){
  .cal.four{ grid-template-columns:1fr 1fr; }
  .cal.four .cal-item + .cal-item{ padding-left:0; border-left:none; }
  .cal.four .cal-item:nth-child(even){ padding-left:1.6rem; border-left:1px solid var(--rule); }
}
@media (max-width:560px){
  .cal.four{ grid-template-columns:1fr; }
  .cal.four .cal-item:nth-child(even){ padding-left:0; border-left:none; }
}

/* ── LISTING PLACEHOLDER ── */
.listing{ display:grid; grid-template-columns:1fr 1fr; border:1px solid var(--rule); background:var(--paper-2); }
.listing > *{ min-width:0; }
.listing-img{ min-height:280px; display:flex; align-items:center; justify-content:center; background:
  repeating-linear-gradient(135deg, var(--rule-soft) 0 12px, transparent 12px 24px); border-right:1px solid var(--rule); }
.listing-img .mark{ --s:64px; opacity:0.55; }
.listing-body{ padding:2.2rem 2.2rem 2.4rem; display:flex; flex-direction:column; gap:0.9rem; }
.listing-body h3{ font-size:2rem; font-weight:600; line-height:1.08; }
.listing-body p{ margin:0; color:var(--muted); }
.listing-body .btn-line{ margin-top:auto; width:fit-content; }
@media (max-width:860px){ .listing{ grid-template-columns:1fr; } .listing-img{ border-right:none; border-bottom:1px solid var(--rule); min-height:200px; } }

/* ── HOME BOOKS ── */
.feature + .feature{ margin-top:1.2rem; }
.feature.light{ background:var(--paper-2); color:var(--ink); }
.feature.light .label{ color:var(--ink); }
.feature.light .label em{ color:var(--accent); }
.feature.light .when{ color:var(--accent); }
.feature.light .say{ color:var(--muted); }
.feature.light .feature-btn{ background:var(--ink); color:var(--paper); border-color:var(--ink); }
.feature.light:hover .feature-btn{ background:var(--accent); border-color:var(--accent); color:var(--paper); }

/* ── FOUNDING EXPEDITION ── */
.fx-hero{ background:var(--band-forest); color:var(--band-cream); padding-block:clamp(3.5rem,8vw,6.5rem) clamp(2.6rem,5vw,4rem); position:relative; }
.fx-hero::before{ content:""; position:absolute; left:0; right:0; bottom:0; height:6px; background:linear-gradient(90deg,var(--band-terra) 0 25%,var(--band-forest) 25% 50%,var(--band-ochre) 50% 75%,var(--band-cream) 75%); }
.fx-hero .eyebrow{ display:block; margin-bottom:1.5rem; color:var(--band-ochre); }
.fx-hero h1{ font-size:clamp(2.8rem,6.6vw,5.2rem); line-height:1.02; letter-spacing:-0.01em; max-width:16ch; color:var(--band-cream); }
.fx-hero h1 em{ color:var(--band-ochre); }
.fx-hero .hero-sub{ color:rgba(239,230,211,0.82); }
.fx-btn{ background:var(--band-cream); color:var(--band-forest); border-color:var(--band-cream); }
.fx-btn:hover{ background:var(--band-ochre); border-color:var(--band-ochre); color:var(--band-forest); }
.fx-facts{ margin:3rem 0 0; display:grid; grid-template-columns:repeat(5,auto); justify-content:start; gap:1.4rem 3rem; padding-top:1.6rem; border-top:1px solid rgba(239,230,211,0.2); }
.fx-facts div{ min-width:0; }
.fx-facts dt{ font-size:0.62rem; font-weight:700; letter-spacing:0.2em; text-transform:uppercase; color:var(--band-ochre); }
.fx-facts dd{ margin:0.35rem 0 0; font-family:var(--serif); font-size:1.5rem; line-height:1.1; color:var(--band-cream); }
.fx-route{ grid-template-columns:repeat(4,1fr); }
.announce{ display:block; background:var(--band-forest); color:var(--band-cream); text-decoration:none; text-align:center; font-size:0.86rem; padding:0.7rem 22px; line-height:1.5; }
.announce b{ font-size:0.64rem; font-weight:700; letter-spacing:0.2em; text-transform:uppercase; color:var(--band-ochre); margin-right:0.6rem; }
.announce span{ border-bottom:1px solid var(--band-ochre); white-space:nowrap; }
.announce:hover span{ color:var(--band-ochre); }
.fx-callout{ margin-top:2.4rem; display:flex; align-items:center; justify-content:space-between; gap:1rem 2rem; flex-wrap:wrap; padding:1.4rem 1.6rem; background:var(--paper-2); border-left:3px solid var(--accent); }
.fx-callout p{ margin:0; max-width:60ch; }
@media (max-width:980px){ .fx-route{ grid-template-columns:1fr 1fr; } .fx-facts{ grid-template-columns:repeat(3,auto); } }
@media (max-width:560px){ .fx-route{ grid-template-columns:1fr; } .fx-facts{ grid-template-columns:1fr 1fr; gap:1.2rem 1.6rem; } }
.fx-hero{ margin-bottom:6px; }
.fx-hero::before{ bottom:-6px; }
