/* OnChain Aviation — secondary-page layer (loads after d2-prod.css) */

/* page hero: split, photo right, copy left */
.phero{position:relative;overflow:hidden;border-bottom:1px solid var(--rule-2)}
.phero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:var(--s-16);align-items:end;min-height:min(72vh,720px)}
.phero-copy{padding-block:clamp(72px,10vw,128px) clamp(48px,6vw,72px)}
.phero .crumb{display:flex;align-items:center;gap:var(--s-3);color:var(--mut);margin-bottom:var(--s-6)}
.phero .crumb a{color:var(--mut);transition:color var(--d-fast)}
.phero .crumb a:hover{color:var(--tx)}
.phero .crumb .sep{opacity:.5}
.phero .crumb .here{color:var(--accent)}
.phero h1{font-size:clamp(40px,1.2rem + 4.2vw,76px)}
.phero .lede{margin-top:var(--s-6)}
.phero .cta{margin-top:var(--s-10)}
.phero-fig{position:relative;align-self:stretch;min-height:360px;overflow:hidden;isolation:isolate}
.phero-fig img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:grayscale(.55) contrast(1.05);transform:scale(1.03);animation:settle 2.2s var(--ease-out) forwards}
.phero-fig .v{position:absolute;inset:0;background:linear-gradient(90deg,var(--bg),transparent 28%),linear-gradient(0deg,var(--bg),transparent 32%)}
[data-theme="light"] .phero-fig img{filter:grayscale(.45) contrast(1.02) brightness(1.04)}

/* the who / for whom strip */
.fit{border-bottom:1px solid var(--rule-2);background:var(--surface)}
.fit-in{display:grid;grid-template-columns:repeat(3,1fr)}
.fit-in>div{padding:var(--s-8) var(--s-6) var(--s-8) 0;border-right:1px solid var(--rule-2)}
.fit-in>div:last-child{border-right:0}
.fit .k{color:var(--accent);margin-bottom:var(--s-3)}
.fit .v{font-family:var(--f-serif);font-size:var(--t-h4);line-height:1.2}
.fit p{font-size:var(--t-sm);color:var(--tx-2);margin-top:var(--s-2);line-height:1.6;max-width:36ch}

/* service blocks — numbered, alternating */
.svc{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:var(--s-16);padding-block:var(--s-16);border-top:1px solid var(--rule-2);align-items:start}
.svc:first-of-type{border-top:0;padding-top:0}
.svc .n{font-family:var(--f-mono);font-size:11px;color:var(--mut);letter-spacing:.1em;display:block;margin-bottom:var(--s-4)}
.svc h2{font-family:var(--f-serif);font-weight:400;font-size:var(--t-h3);line-height:1.1;max-width:18ch}
.svc .sum{margin-top:var(--s-4);color:var(--tx-2);line-height:1.66;max-width:46ch}
.svc .for{margin-top:var(--s-5);font-size:var(--t-sm);color:var(--mut)}
.svc .for b{color:var(--tx-2);font-weight:500}
.svc .side{display:grid;gap:var(--s-8)}
.inc{border-top:1px solid var(--rule)}
.inc h3{font-family:var(--f-mono);font-size:var(--t-micro);letter-spacing:.18em;text-transform:uppercase;color:var(--mut);padding:var(--s-4) 0 var(--s-2)}
.inc li{display:grid;grid-template-columns:22px 1fr;gap:var(--s-3);padding:11px 0;border-bottom:1px solid var(--rule-2);font-size:var(--t-sm);line-height:1.55;color:var(--tx-2)}
.inc li::before{content:'';width:5px;height:5px;background:var(--accent);transform:rotate(45deg);margin-top:8px;justify-self:center}
.inc li b{color:var(--tx);font-weight:500}
.out{border:1px solid var(--rule);background:var(--surface)}
.out .h{display:flex;justify-content:space-between;align-items:center;gap:var(--s-3);padding:12px 16px;border-bottom:1px solid var(--rule-2);background:var(--surface-2);font-family:var(--f-mono);font-size:10.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--tx-2)}
.out .h span:last-child{color:var(--teal);letter-spacing:.08em}
.out ol{counter-reset:step}
.out li{display:grid;grid-template-columns:28px 1fr auto;gap:var(--s-3);align-items:baseline;padding:12px 16px;border-bottom:1px solid var(--rule-2);font-size:var(--t-sm)}
.out li:last-child{border-bottom:0}
.out li::before{counter-increment:step;content:counter(step,decimal-leading-zero);font-family:var(--f-mono);font-size:10px;color:var(--mut);letter-spacing:.08em}
.out li small{font-family:var(--f-mono);font-size:10px;color:var(--mut);letter-spacing:.06em;white-space:nowrap}
.out .f{padding:10px 16px;font-family:var(--f-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--mut);border-top:1px solid var(--rule-2)}

/* process */
.proc{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid var(--rule);margin-top:var(--s-10)}
.proc>div{padding:var(--s-6) var(--s-6) var(--s-6) 0;border-right:1px solid var(--rule-2)}
.proc>div:last-child{border-right:0}
.proc .n{font-family:var(--f-mono);font-size:11px;color:var(--mut);letter-spacing:.1em}
.proc h3{font-family:var(--f-serif);font-weight:400;font-size:var(--t-h4);line-height:1.15;margin-top:var(--s-3)}
.proc p{font-size:var(--t-sm);color:var(--tx-2);margin-top:var(--s-2);line-height:1.6;max-width:30ch}

/* quote / principle band */
.principle{background:var(--paper);color:var(--paper-ink);border-block:1px solid var(--rule-2)}
[data-theme="light"] .principle{background:#F8F6F1}
.principle .wrap{display:grid;grid-template-columns:1fr 1fr;gap:var(--s-16);align-items:center;padding-block:var(--sec-y)}
.principle .label{color:var(--cognac-dk)}
.principle blockquote{font-family:var(--f-serif);font-size:clamp(26px,1.2rem + 1.8vw,42px);line-height:1.12;letter-spacing:-.01em;text-wrap:balance}
.principle p{color:#4A4844;line-height:1.66;max-width:48ch}
.principle p+p{margin-top:var(--s-4)}

/* related + close */
.close{border-top:1px solid var(--rule-2);background:var(--surface)}
.close .wrap{display:grid;grid-template-columns:1.1fr .9fr;gap:var(--s-16);align-items:center;padding-block:var(--sec-y)}
.close .lede{margin-top:var(--s-5)}
.close .cta{margin-top:var(--s-8)}
.rel{border-top:1px solid var(--rule)}
.rel a{display:grid;grid-template-columns:1fr auto;gap:var(--s-4);padding:var(--s-5) 0;border-bottom:1px solid var(--rule-2);align-items:baseline;transition:color var(--d-fast)}
.rel a .t{font-family:var(--f-serif);font-size:var(--t-h4)}
.rel a .d{display:block;font-size:var(--t-sm);color:var(--mut);margin-top:4px}
.rel a .go{color:var(--mut);transition:transform var(--d-base) var(--ease-out),color var(--d-fast)}
.rel a:hover .go{transform:translateX(4px);color:var(--accent)}

/* page-level faq reuse */
.pfaq .fgrid{padding-top:0}

@media(max-width:1080px){
  .phero-grid,.svc,.principle .wrap,.close .wrap{gap:var(--s-12)}
  .proc{grid-template-columns:1fr 1fr}
  .proc>div:nth-child(2){border-right:0}
  .proc>div:nth-child(n+3){border-top:1px solid var(--rule-2)}
}
@media(max-width:900px){
  .phero-grid{grid-template-columns:1fr;gap:0;min-height:0}
  .phero-fig{order:-1;min-height:260px;aspect-ratio:16/9;margin-inline:calc(-1*var(--gutter))}
  .phero-fig .v{background:linear-gradient(0deg,var(--bg),transparent 55%)}
  .phero-copy{padding-top:var(--s-8)}
  .fit-in{grid-template-columns:1fr}
  .fit-in>div{border-right:0;border-bottom:1px solid var(--rule-2);padding:var(--s-6) 0}
  .fit-in>div:last-child{border-bottom:0}
  .svc{grid-template-columns:1fr;gap:var(--s-8);padding-block:var(--s-12)}
  .principle .wrap,.close .wrap{grid-template-columns:1fr;gap:var(--s-10)}
}
@media(max-width:480px){
  .proc{grid-template-columns:1fr}
  .proc>div{border-right:0;border-top:1px solid var(--rule-2)}
  .proc>div:first-child{border-top:0}
  .out li{grid-template-columns:28px 1fr}
  .out li small{grid-column:2}
}
@media print{.phero-fig,.close .cta{display:none!important}}

/* ---- phase 2 additions ---- */
.portrait{align-self:end;display:grid;grid-template-columns:minmax(0,300px) 1fr;gap:var(--s-6);align-items:end;padding-bottom:clamp(48px,6vw,72px)}
.portrait img{width:100%;height:auto;aspect-ratio:3/4;object-fit:cover;filter:grayscale(.35) contrast(1.04);border:1px solid var(--rule)}
.portrait dl{border-top:1px solid var(--rule)}
.portrait dl div{display:grid;grid-template-columns:92px 1fr;gap:var(--s-3);padding:9px 0;border-bottom:1px solid var(--rule-2);font-size:var(--t-sm)}
.portrait dt{font-family:var(--f-mono);font-size:var(--t-micro);letter-spacing:.16em;text-transform:uppercase;color:var(--mut);padding-top:3px}
.portrait dd{color:var(--tx-2)}
.about-hero .phero-grid{align-items:end}
.story{display:grid;grid-template-columns:.8fr 1.2fr;gap:var(--s-16);align-items:start}
.story-copy p{color:var(--tx-2);line-height:1.7;max-width:62ch;margin-top:var(--s-5);font-size:var(--t-lg)}
.story-copy p:first-child{margin-top:0}
.story-copy p strong{color:var(--tx);font-weight:500}
.story-copy blockquote{font-family:var(--f-serif);font-size:clamp(24px,1.1rem + 1.4vw,34px);line-height:1.15;margin:var(--s-10) 0;padding-left:var(--s-6);border-left:2px solid var(--accent);color:var(--tx)}
.story-copy blockquote strong{font-weight:400;color:var(--accent-lt)}
.cred-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:0;border-top:1px solid var(--rule);margin-top:var(--s-10)}
.cred{position:relative;padding:var(--s-8) var(--s-8) var(--s-8) 0;border-bottom:1px solid var(--rule-2)}
.cred:nth-child(odd){border-right:1px solid var(--rule-2)}
.cred:nth-child(even){padding-left:var(--s-8)}
.cred .k{color:var(--accent);margin-bottom:var(--s-3)}
.cred h3{font-family:var(--f-serif);font-weight:400;font-size:var(--t-h4);line-height:1.15}
.cred p:not(.k){font-size:var(--t-sm);color:var(--tx-2);line-height:1.6;margin-top:var(--s-2);max-width:46ch}
.cred .st{display:inline-block;margin-top:var(--s-4);font-family:var(--f-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--mut);border:1px solid var(--rule);padding:5px 10px}
.cred .st.ok{color:var(--teal);border-color:rgba(78,203,161,.3)}
[data-theme="light"] .cred .st.ok{border-color:rgba(28,114,89,.35)}
.fours{display:grid;gap:0;border-top:1px solid rgba(20,19,18,.14)}
.fours li{display:grid;grid-template-columns:40px 1fr;gap:var(--s-4);padding:var(--s-5) 0;border-bottom:1px solid rgba(20,19,18,.14)}
.fours .n{font-family:var(--f-mono);font-size:11px;color:#7C776E;letter-spacing:.1em;padding-top:5px}
.fours h3{font-family:var(--f-serif);font-weight:400;font-size:var(--t-h4);line-height:1.15}
.fours p{font-size:var(--t-sm);line-height:1.6;color:#5A5751;margin-top:6px;max-width:48ch}
.base{display:grid;grid-template-columns:1fr 1fr;gap:var(--s-16);align-items:start}
.base-facts{border-top:1px solid var(--rule)}
.base-facts div{display:grid;grid-template-columns:150px 1fr;gap:var(--s-4);padding:14px 0;border-bottom:1px solid var(--rule-2);font-size:15px}
.base-facts dt{font-family:var(--f-mono);font-size:var(--t-micro);letter-spacing:.16em;text-transform:uppercase;color:var(--mut);padding-top:3px}
.base-facts dd{color:var(--tx-2)}
.base-facts a:hover{color:var(--accent-lt)}
.fams{border-top:1px solid var(--rule);margin-top:var(--s-12)}
.fam{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr) auto;gap:var(--s-10);padding:var(--s-8) 0;border-bottom:1px solid var(--rule-2);align-items:start}
.fam-h h3{font-family:var(--f-serif);font-weight:400;font-size:var(--t-h3);line-height:1.05}
.fam-h .sub{display:block;margin-top:6px;font-family:var(--f-mono);font-size:var(--t-micro);letter-spacing:.16em;text-transform:uppercase;color:var(--accent)}
.fam>p{font-size:var(--t-base);color:var(--tx-2);line-height:1.62;max-width:48ch}
.fam-meta{display:grid;gap:var(--s-4);min-width:220px}
.fam-meta span{display:block;font-size:var(--t-sm);color:var(--tx-2);font-family:var(--f-serif);font-size:17px}
.fam-meta small{display:block;font-family:var(--f-mono);font-size:var(--t-micro);letter-spacing:.16em;text-transform:uppercase;color:var(--mut);margin-bottom:4px}
@media(max-width:1080px){.story,.base{gap:var(--s-12)}.fam{grid-template-columns:1fr 1fr;gap:var(--s-8)}.fam-meta{grid-column:1/-1;grid-template-columns:1fr 1fr}}
@media(max-width:900px){
  .portrait{grid-template-columns:1fr;padding-bottom:0;order:-1;margin-top:var(--s-8)}
  .portrait img{max-width:300px}
  .story,.base{grid-template-columns:1fr;gap:var(--s-8)}
  .cred-grid{grid-template-columns:1fr}
  .cred,.cred:nth-child(odd){border-right:0;padding-right:0}
  .cred:nth-child(even){padding-left:0}
  .fam{grid-template-columns:1fr;gap:var(--s-5);padding:var(--s-6) 0}
  .fam-meta{grid-template-columns:1fr 1fr;min-width:0}
  .base-facts div{grid-template-columns:1fr;gap:4px}
}

/* ---------- journal (Phase 3, 2026-10-06) ---------- */
.jhead{padding-block:clamp(64px,9vw,112px) clamp(40px,5vw,64px);border-bottom:1px solid var(--rule-2)}
.jhead h1{font-size:clamp(40px,1.2rem + 4.2vw,76px)}
.jhead .lede{margin-top:var(--s-5)}
.jlist{border-top:1px solid var(--rule)}
.jitem{display:grid;grid-template-columns:200px 1fr auto;gap:var(--s-10);align-items:start;padding-block:var(--s-9);border-bottom:1px solid var(--rule-2)}
.jitem .meta{font-family:var(--f-mono);font-size:var(--t-micro);letter-spacing:.16em;text-transform:uppercase;color:var(--mut);line-height:1.9}
.jitem .meta b{display:block;font-weight:400;color:var(--accent-lt)}
.jitem h2{font-family:var(--f-serif);font-weight:400;font-size:var(--t-h3);line-height:1.1;max-width:22ch}
.jitem h2 a{color:inherit;transition:color var(--d-fast)}
.jitem h2 a:hover{color:var(--accent-lt)}
.jitem p{margin-top:var(--s-3);color:var(--tx-2);line-height:1.62;max-width:58ch}
.jitem .go{font-family:var(--f-ui);font-size:14px;color:var(--mut);padding-top:6px;white-space:nowrap}
.jnote{margin-top:var(--s-10);padding:var(--s-6) var(--s-7);border:1px solid var(--rule);background:var(--surface);display:grid;grid-template-columns:1fr auto;gap:var(--s-6);align-items:center}
.jnote p{color:var(--tx-2);font-size:var(--t-sm);line-height:1.6;max-width:60ch}
/* article */
.ahead{padding-block:clamp(56px,8vw,96px) clamp(40px,5vw,56px);border-bottom:1px solid var(--rule-2)}
.ahead .crumb{display:flex;align-items:center;gap:var(--s-3);color:var(--mut);margin-bottom:var(--s-8);flex-wrap:wrap}
.ahead .crumb a{color:var(--mut)}.ahead .crumb a:hover{color:var(--tx)}.ahead .crumb .sep{opacity:.5}.ahead .crumb .here{color:var(--accent)}
.ahead h1{font-size:clamp(38px,1.1rem + 3.8vw,68px);max-width:20ch}
.ahead .dek{margin-top:var(--s-5);font-size:var(--t-lg);line-height:1.55;color:var(--tx-2);max-width:56ch}
.byline{display:flex;gap:var(--s-2) var(--s-6);flex-wrap:wrap;line-height:1.7;margin-top:var(--s-8);font-family:var(--f-mono);font-size:var(--t-micro);letter-spacing:.16em;text-transform:uppercase;color:var(--mut)}
.byline b{font-weight:400;color:var(--tx-2)}
.art{display:grid;grid-template-columns:minmax(0,66ch) 1fr;gap:var(--s-16);align-items:start}
.art-body>*+*{margin-top:var(--s-5)}
.art-body p{font-size:17px;line-height:1.72;color:var(--tx-2)}
.art-body p strong{color:var(--tx);font-weight:500}
.art-body h2{font-family:var(--f-serif);font-weight:400;font-size:var(--t-h3);line-height:1.12;color:var(--tx);margin-top:var(--s-12)}
.art-body h2 .n{font-family:var(--f-mono);font-size:11px;letter-spacing:.14em;color:var(--accent);display:block;margin-bottom:var(--s-3)}
.art-body ul{padding-left:0;display:grid;gap:var(--s-3)}
.art-body ul li{position:relative;padding-left:22px;font-size:16px;line-height:1.62;color:var(--tx-2)}
.art-body ul li::before{content:'';position:absolute;left:0;top:11px;width:8px;height:1px;background:var(--accent)}
.art-body blockquote{font-family:var(--f-serif);font-size:clamp(24px,1rem + 1.3vw,32px);line-height:1.25;color:var(--tx);padding-left:var(--s-6);border-left:2px solid var(--accent);margin-block:var(--s-10)}
.art-body blockquote strong{font-weight:400;color:var(--accent-lt)}
.art-aside{position:sticky;top:96px;display:grid;gap:var(--s-6)}
.keybox{border:1px solid var(--rule);background:var(--surface);padding:var(--s-6) var(--s-6)}
.keybox .k{color:var(--accent);margin-bottom:var(--s-4)}
.keybox ol{display:grid;gap:var(--s-3);counter-reset:kb}
.keybox ol li{display:grid;grid-template-columns:28px 1fr;gap:8px;font-size:var(--t-sm);line-height:1.5;color:var(--tx-2)}
.keybox ol li::before{counter-increment:kb;content:counter(kb,decimal-leading-zero);font-family:var(--f-mono);font-size:10px;color:var(--mut);padding-top:3px}
.art-cta{border:1px solid var(--accent-line);background:var(--accent-dim);padding:var(--s-6)}
.art-cta p{font-family:var(--f-serif);font-size:20px;line-height:1.25}
.art-cta p.label{font-family:var(--f-mono);font-size:var(--t-micro);letter-spacing:.2em;text-transform:uppercase;line-height:1.6}
.art-cta .btn{margin-top:var(--s-5)}
.art-foot{margin-top:var(--s-12);padding-top:var(--s-6);border-top:1px solid var(--rule-2);display:flex;justify-content:space-between;gap:var(--s-6);flex-wrap:wrap;font-family:var(--f-mono);font-size:var(--t-micro);letter-spacing:.16em;text-transform:uppercase;color:var(--mut)}
.art-foot a{color:var(--tx-2)}.art-foot a:hover{color:var(--accent-lt)}
@media(max-width:1080px){.art{grid-template-columns:1fr}.art-aside{position:static;grid-template-columns:1fr 1fr}}
@media(max-width:900px){.jitem{grid-template-columns:1fr;gap:var(--s-3)}.jitem .meta b{display:inline;margin-right:12px}.jitem .go{display:none}.jnote{grid-template-columns:1fr}}
@media(max-width:640px){.art-aside{grid-template-columns:1fr}.art-body p{font-size:16px}}
