:root { --ink: #f5f8ff; --muted: #98a4b8; --line: rgba(255,255,255,.12); --accent: #8ebdff; --background: #05070b; }
* { box-sizing: border-box; }
html, body { margin: 0; min-height: 100%; }
html { scroll-behavior:smooth; }
body { background: #f0f1ed; color:#101821; font-family: Arial, Helvetica, sans-serif; overflow-x:hidden; }
img { display:block; width:100%; }
.menu-toggle,.mobile-menu { display:none; }
.site-header { position:relative; z-index:10; top:0; left:0; right:0; display:grid; grid-template-columns:1fr auto 1fr; align-items:center; padding:1.2rem clamp(1.2rem,4vw,4rem); border-bottom:1px solid #bcc5c8; background:#edf0ee; }
.wordmark { display:flex; align-items:center; gap:.8rem; color:#0b1a24; text-decoration:none; }
.wordmark>span { display:grid; place-items:center; width:2.6rem; height:2.6rem; border:1px solid rgba(255,255,255,.55); border-radius:50%; font-family:Georgia,serif; font-size:1.15rem; }
.wordmark strong { font-family:Georgia,serif; letter-spacing:.04em; font-size:.95rem; line-height:.9; }
.wordmark small { display:block; margin-top:.45rem; font-family:Arial,sans-serif; font-size:.5rem; font-weight:500; letter-spacing:.42em; }
.site-header nav { display:flex; gap:clamp(1.2rem,3vw,3rem); }
.site-header nav a,.nav-cta { color:#203442; font-size:.7rem; font-weight:700; letter-spacing:.15em; text-decoration:none; text-transform:uppercase; }
.nav-cta { justify-self:end; padding:.85rem 1.1rem; border:1px solid #8598a3; }
.viewer-status { display:none; }
.viewer-page { --pan-x: 0px; --pan-y: 0px; position: relative; display: grid; width:100%; height:100svh; min-height:100svh; max-height:100svh; overflow:hidden; isolation:isolate; background:#030407; }
.background-slider { position: absolute; inset: -5%; z-index: -3; transform: translate3d(var(--pan-x),var(--pan-y),0) scale(1.08); will-change: transform; }
.hero-background { position: absolute; inset: 0; opacity: 0; background-position: center; background-size: cover; background-repeat: no-repeat; transition: opacity .8s cubic-bezier(.22,.61,.36,1); }
.hero-background.is-active { opacity: 1; }
.hero-shade { position: absolute; inset: 0; z-index: -2; background: radial-gradient(circle at 50% 46%, rgba(4,11,23,.12), rgba(2,5,10,.55) 58%, rgba(1,3,7,.82)), linear-gradient(90deg, rgba(2,5,10,.55), transparent 38%, transparent 65%, rgba(2,5,10,.42)); pointer-events: none; }
.viewer-page::before { content: ""; position: absolute; inset: 0; z-index: -1; opacity: .28; background-image: linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px); background-size: 72px 72px; mask-image: radial-gradient(circle at center,black,transparent 68%); }
.viewer-copy { position: absolute; z-index: 2; top:50%; left: clamp(1.25rem,6vw,6rem); width:min(36rem,44vw); transform:translateY(-42%); pointer-events: none; }
.eyebrow { margin: 0 0 .8rem; color: var(--accent); font-size: .7rem; font-weight: 700; letter-spacing: .24em; }
h1 { margin: 0; font-family:Georgia,serif; font-size: clamp(3rem,7vw,7.4rem); font-weight: 400; line-height:.82; letter-spacing: -.065em; }
h1 em { color:#98c8ff; font-weight:400; }
.instruction { max-width:29rem; margin:1.5rem 0 0; color:#c7d0dc; font-size:clamp(.9rem,1.25vw,1.05rem); line-height:1.7; }
.hero-cta { pointer-events:auto; display:inline-flex; align-items:center; gap:2rem; margin-top:2rem; padding:.95rem 1.1rem .95rem 1.35rem; background:#e85416; color:#fff; font-size:.72rem; font-weight:800; letter-spacing:.13em; text-decoration:none; text-transform:uppercase; }
.hero-cta span { font-size:1.2rem; }
.hero-index { position:absolute; z-index:4; right:clamp(1.5rem,4vw,4rem); top:50%; display:flex; align-items:center; gap:.7rem; color:#fff; font-size:.6rem; letter-spacing:.1em; transform:rotate(90deg); transform-origin:right center; }
.hero-index i { display:block; width:5rem; height:1px; background:rgba(255,255,255,.5); }
.viewer-stage { position:absolute; inset:0; width:100%; height:100%; min-height:0; overflow:hidden; }
.canvas-host { position:absolute; inset:0; width:100%; height:100%; min-height:0; overflow:hidden; contain:strict; cursor:default; touch-action:auto; pointer-events:none; }
.canvas-host[data-dragging="true"] { cursor: grabbing; }
.canvas-host canvas { position:absolute; inset:0; display:block; width:100%!important; height:100%!important; max-width:100%; max-height:100%; outline:none; pointer-events:none; }
.canvas-host canvas:focus-visible { box-shadow: inset 0 0 0 2px var(--accent); }
.model-interaction-zone {
  position:absolute;
  z-index:3;
  left:50%;
  top:50%;
  width:min(72vw,80rem);
  height:76%;
  cursor:grab;
  touch-action:pan-y;
  user-select:none;
  -webkit-user-select:none;
  transform:translate(-50%,-50%);
}
.canvas-host[data-dragging="true"] + .model-interaction-zone { cursor:grabbing; }
@media (max-width:760px) {
  .model-interaction-zone {
    top:47%;
    width:78vw;
    height:min(54svh,30rem);
  }
}
.model-instruction { position:absolute; z-index:4; left:50%; bottom:calc(clamp(4.25rem,7vw,5.25rem) + 3.1rem + 20px); display:flex; align-items:center; gap:.65rem; margin:0; padding:.55rem .85rem; border:1px solid rgba(255,255,255,.16); border-radius:999px; background:rgba(3,7,13,.42); color:rgba(226,239,250,.76); font-size:.58rem; font-weight:700; letter-spacing:.14em; text-transform:uppercase; white-space:nowrap; pointer-events:none; backdrop-filter:blur(8px); transform:translateX(-50%); }
.model-instruction span { color:#98c8ff; font-size:.9rem; animation:model-hint 2.2s ease-in-out infinite; }
.model-instruction i { width:2px; height:2px; border-radius:50%; background:#98c8ff; box-shadow:0 0 .5rem #98c8ff; }
@keyframes model-hint { 0%,100% { transform:translateX(-.18rem); opacity:.65; } 50% { transform:translateX(.18rem); opacity:1; } }
.viewer-status { position: absolute; right: clamp(1rem,4vw,3rem); bottom: clamp(1rem,4vw,2.5rem); margin: 0; color: var(--muted); font-size: .68rem; letter-spacing: .11em; text-transform: uppercase; }
.slider-dots { position: absolute; z-index: 5; left: 50%; bottom: clamp(4.25rem,7vw,5.25rem); display: flex; gap: .1rem; padding: .3rem .45rem; border: 1px solid rgba(255,255,255,.2); border-radius: 999px; background: rgba(3,7,13,.62); box-shadow: 0 .75rem 2rem rgba(0,0,0,.28); backdrop-filter: blur(12px); transform: translateX(-50%); }
.slider-dots button { position: relative; width: 2.5rem; height: 2.5rem; padding: 0; border: 0; border-radius: 50%; background: transparent; cursor: pointer; }
.slider-dots button::before { content: ""; position: absolute; top: 50%; left: 50%; width: .65rem; height: .65rem; border: 1px solid rgba(255,255,255,.85); border-radius: 50%; background: rgba(255,255,255,.16); transform: translate(-50%,-50%); transition: width .25s ease, border-radius .25s ease, background-color .25s ease, box-shadow .25s ease; }
.slider-dots button:hover::before,.slider-dots button:focus-visible::before { background: rgba(255,255,255,.68); box-shadow: 0 0 0 .3rem rgba(255,255,255,.1); }
.slider-dots button:focus-visible { outline: 2px solid var(--accent); outline-offset: -2px; }
.slider-dots button.is-active::before { width: 1.55rem; border-radius: 999px; background: #fff; box-shadow: 0 0 1rem rgba(142,189,255,.5); }
.background-instruction { position:absolute; z-index:5; left:50%; bottom:clamp(2.75rem,5vw,3.7rem); margin:0; color:rgba(226,239,250,.56); font-size:.5rem; font-weight:700; letter-spacing:.16em; text-transform:uppercase; white-space:nowrap; pointer-events:none; transform:translateX(-50%); }
@media (max-width: 760px) { .site-header { grid-template-columns:1fr auto; } .site-header nav { display:none; } .nav-cta { font-size:.58rem; } .viewer-copy { top:30%; width:calc(100% - 2.5rem); } .viewer-copy h1 { font-size:clamp(3.5rem,18vw,5.5rem); } .instruction { max-width:18rem; } .hero-index { display:none; } .viewer-status { left:1.25rem; right:auto; } }
@media (prefers-reduced-motion: reduce) { *,*::before,*::after { scroll-behavior: auto !important; } }
@media (prefers-reduced-motion: reduce) { .hero-background,.slider-dots button { transition: none; } }

.manifesto,.asset-section,.approach,.leadership,.impact { position:relative; padding:clamp(5rem,10vw,10rem) clamp(1.25rem,6vw,6rem); }
.section-kicker { display:flex; align-items:center; gap:1rem; margin-bottom:clamp(3rem,6vw,6rem); color:#486277; font-size:.68rem; font-weight:800; letter-spacing:.18em; text-transform:uppercase; }
.section-kicker span { color:#e85416; }
.section-kicker::after { content:""; width:4rem; height:1px; background:#a7b0b5; }
.manifesto { background:#f0f1ed; }
.manifesto-grid { display:grid; grid-template-columns:1.2fr .8fr; gap:clamp(3rem,9vw,10rem); align-items:start; }
.manifesto h2,.asset-copy h2,.approach h2,.impact h2,.contact h2 { margin:0; font-family:Georgia,serif; font-size:clamp(3rem,6.5vw,7.5rem); font-weight:400; line-height:.9; letter-spacing:-.06em; }
.manifesto h2 em,.asset-copy h2 em,.impact h2 em,.contact h2 em { color:#1476b8; font-weight:400; }
.manifesto .lead { margin:0 0 1.8rem; color:#102433; font-family:Georgia,serif; font-size:clamp(1.3rem,2vw,2rem); line-height:1.35; }
.manifesto-grid p:not(.lead),.asset-copy>p,.leadership-copy>p,.impact-grid p { color:#59666d; font-size:.98rem; line-height:1.8; }
.text-link { display:inline-flex; gap:3rem; margin-top:2rem; padding-bottom:.6rem; border-bottom:1px solid #17232d; color:#17232d; font-size:.72rem; font-weight:800; letter-spacing:.14em; text-decoration:none; text-transform:uppercase; }
.metrics { display:grid; grid-template-columns:repeat(4,1fr); margin-top:clamp(5rem,9vw,9rem); border-top:1px solid #c7ccca; border-bottom:1px solid #c7ccca; }
.metrics div { padding:2.5rem 1.5rem; border-right:1px solid #c7ccca; }
.metrics div:last-child { border:0; }
.metrics strong { display:block; color:#1476b8; font-family:Georgia,serif; font-size:clamp(2.6rem,5vw,5rem); font-weight:400; }
.metrics span { display:block; margin-top:.8rem; color:#647079; font-size:.7rem; line-height:1.5; letter-spacing:.12em; text-transform:uppercase; }
.asset-section { display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:clamp(3rem,7vw,8rem); min-height:100vh; background:#e6e9e7; }
.asset-image { position:relative; min-height:60rem; overflow:hidden; }
.asset-image img { height:100%; object-fit:cover; filter:grayscale(1) contrast(1.08); }
.image-code { position:absolute; right:1.2rem; bottom:1.2rem; color:#fff; font-size:.58rem; letter-spacing:.18em; writing-mode:vertical-rl; }
.asset-copy { padding-top:2rem; }
.asset-copy>p { max-width:38rem; margin:2.2rem 0 3rem; }
.asset-cards { border-top:1px solid #abb4b7; }
.asset-cards article { display:grid; grid-template-columns:2.5rem 1fr; gap:0 1.2rem; padding:1.8rem 0; border-bottom:1px solid #abb4b7; }
.asset-cards article small { grid-row:1/4; color:#e85416; font-weight:800; }
.asset-cards h3 { margin:0 0 .55rem; font-family:Georgia,serif; font-size:1.6rem; font-weight:400; }
.asset-cards p { margin:0 0 .8rem; color:#637079; font-size:.86rem; line-height:1.65; }
.asset-cards article>span { color:#1476b8; font-size:.62rem; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.approach { overflow:hidden; background:#07131e; color:#fff; }
.section-kicker.light { color:#a9bbc9; }
.approach h2 { position:relative; z-index:2; max-width:60rem; color:#f1f5f6; }
.process { position:relative; z-index:2; display:grid; grid-template-columns:repeat(4,1fr); margin-top:clamp(4rem,8vw,8rem); border-top:1px solid rgba(255,255,255,.2); }
.process article { min-height:20rem; padding:2rem 1.5rem; border-right:1px solid rgba(255,255,255,.2); }
.process article>span { color:#e85416; font-size:.68rem; font-weight:800; }
.process h3 { margin:5rem 0 1rem; font-family:Georgia,serif; font-size:1.5rem; font-weight:400; }
.process p { color:#9aacb9; font-size:.85rem; line-height:1.7; }
.approach-photo { width:60%; height:34rem; margin:7rem 0 -16rem auto; opacity:.75; }
.approach-photo img { height:100%; object-fit:cover; filter:grayscale(1); }
.leadership { display:grid; grid-template-columns:1fr 1fr; gap:clamp(3rem,8vw,9rem); padding-top:18rem; background:#dbe2e4; }
.leadership-photo { min-height:45rem; }
.leadership-photo img { height:100%; object-fit:cover; }
.leadership-copy { align-self:center; padding-right:5vw; }
.leadership-copy blockquote { margin:0 0 2.5rem; font-family:Georgia,serif; font-size:clamp(2rem,3.4vw,4rem); line-height:1.16; letter-spacing:-.04em; }
.leadership-copy strong,.leadership-copy small { display:block; margin-top:2rem; }
.leadership-copy small { margin-top:.35rem; color:#61727d; letter-spacing:.12em; text-transform:uppercase; }
.impact { background:#e85416; color:#fff; }
.impact .section-kicker::after { background:rgba(255,255,255,.5); }
.impact-grid { display:grid; grid-template-columns:1.2fr .8fr; gap:clamp(3rem,9vw,10rem); align-items:end; }
.impact h2 em { color:#101821; }
.impact-grid p { color:#fff; }
.impact-cards { display:grid; grid-template-columns:1fr 1fr; gap:1px; margin-top:6rem; background:rgba(255,255,255,.35); }
.impact-cards article { padding:clamp(2rem,4vw,4rem); background:#e85416; }
.impact-cards small { font-size:.65rem; font-weight:800; letter-spacing:.17em; text-transform:uppercase; }
.impact-cards h3 { max-width:26rem; margin:3rem 0 1.2rem; font-family:Georgia,serif; font-size:clamp(1.7rem,3vw,3rem); font-weight:400; }
.impact-cards p { max-width:35rem; color:#ffe5da; line-height:1.75; }
.contact { position:relative; display:grid; min-height:90vh; place-items:center; overflow:hidden; color:#fff; }
.contact-image,.contact-shade { position:absolute; inset:0; }
.contact-image img { height:100%; object-fit:cover; filter:grayscale(1); }
.contact-shade { background:linear-gradient(90deg,rgba(2,8,14,.92),rgba(3,11,18,.58)); }
.contact-inner { position:relative; z-index:1; width:88%; }
.contact-inner>p { color:#9fc5e3; font-size:.7rem; font-weight:800; letter-spacing:.2em; text-transform:uppercase; }
.contact h2 em { color:#8cc9f4; }
.contact-actions { display:flex; gap:1rem; margin-top:3rem; }
.contact-actions a { display:flex; justify-content:space-between; width:min(23rem,48%); padding:1.25rem; border:1px solid rgba(255,255,255,.4); color:#fff; font-size:.72rem; font-weight:800; letter-spacing:.11em; text-decoration:none; text-transform:uppercase; }
footer { display:grid; grid-template-columns:1.3fr 1fr 1fr 1fr; gap:3rem; padding:4rem clamp(1.25rem,6vw,6rem) 2rem; background:#03080d; color:#fff; }
footer p { color:#6e8595; font-size:.6rem; font-weight:800; letter-spacing:.15em; text-transform:uppercase; }
footer address,footer>div a { display:block; margin:.35rem 0; color:#b8c4cc; font-size:.75rem; font-style:normal; line-height:1.8; text-decoration:none; }
.copyright { grid-column:1/-1; margin-top:3rem; padding-top:1.5rem; border-top:1px solid rgba(255,255,255,.12); color:#60727f; font-size:.58rem; letter-spacing:.1em; }
[data-reveal] { opacity:0; transform:translateY(2rem); transition:opacity .8s ease,transform .8s cubic-bezier(.2,.75,.25,1); }
[data-reveal].is-visible { opacity:1; transform:none; }

@media (max-width: 900px) {
  .site-header nav,.nav-cta { display:none; }
  .site-header { grid-template-columns:1fr; }
  .menu-toggle { position:absolute; z-index:30; top:1.35rem; right:1.25rem; display:flex; flex-direction:column; gap:.35rem; width:3.4rem; padding:.6rem; border:0; background:transparent; color:#fff; }
  .menu-toggle span { display:block; height:1px; background:#fff; }
  .menu-toggle b { margin-top:.2rem; font-size:.48rem; letter-spacing:.15em; text-transform:uppercase; }
  .mobile-menu { position:fixed; z-index:25; inset:0; display:flex; flex-direction:column; justify-content:center; padding:5rem 10vw; background:#07131e; opacity:0; pointer-events:none; transform:translateY(-2rem); transition:.35s ease; }
  .mobile-menu.is-open { opacity:1; pointer-events:auto; transform:none; }
  .mobile-menu a { display:flex; align-items:center; gap:1rem; padding:.7rem 0; color:#fff; font-family:Georgia,serif; font-size:clamp(2rem,10vw,4rem); text-decoration:none; }
  .mobile-menu small { color:#e85416; font-family:Arial,sans-serif; font-size:.65rem; }
  .manifesto-grid,.asset-section,.leadership,.impact-grid { grid-template-columns:1fr; }
  .metrics,.process { grid-template-columns:1fr 1fr; }
  .asset-image { min-height:55vh; }
  .process article:nth-child(2) { border-right:0; }
  .leadership { padding-top:16rem; }
  .leadership-photo { min-height:55vh; }
  footer { grid-template-columns:1fr 1fr; }
}

@media (max-width: 600px) {
  .viewer-copy { top:28%; }
  .viewer-copy h1 { font-size:clamp(3.3rem,18vw,5rem); }
  .hero-cta { margin-top:1.2rem; }
  .slider-dots { bottom:3.2rem; }
  .metrics { grid-template-columns:1fr 1fr; }
  .metrics div:nth-child(2) { border-right:0; }
  .process { grid-template-columns:1fr; }
  .process article { min-height:0; border-right:0; }
  .process h3 { margin:2.5rem 0 1rem; }
  .approach-photo { width:100%; height:25rem; }
  .leadership { padding-top:14rem; }
  .impact-cards { grid-template-columns:1fr; }
  .contact-actions { flex-direction:column; }
  .contact-actions a { width:100%; }
  footer { grid-template-columns:1fr; }
  .copyright { grid-column:1; }
}

/* Aviation dossier experience */
.dossier-nav { position:fixed; top:0; left:0; right:0; width:100%; height:5.5rem; padding:.8rem clamp(1.2rem,4vw,4rem); border:0; border-radius:0; background:transparent; box-shadow:none; transform:none; transition:height .4s ease,background-color .45s ease,box-shadow .45s ease; }
.dossier-nav.is-scrolled { height:4.65rem; background:#03070a; box-shadow:0 .8rem 2.5rem rgba(0,0,0,.24); }
.brand-logo { display:flex; align-items:center; width:clamp(11rem,17vw,15rem); height:100%; overflow:hidden; }
.brand-logo img { width:auto; height:3.35rem; max-width:100%; object-fit:contain; object-position:left center; transform:translateY(-1px); transition:height .4s ease; }
.dossier-nav.is-scrolled .brand-logo img { height:2.85rem; }
.dossier-nav nav { align-self:stretch; gap:.4rem; }
.dossier-nav nav a { position:relative; display:grid; place-items:center; min-width:6.2rem; height:100%; padding:0 .8rem; overflow:hidden; color:rgba(255,255,255,.78); transition:color .3s ease,letter-spacing .35s ease; }
.dossier-nav nav a::before { content:""; position:absolute; left:14%; right:14%; bottom:.62rem; height:1px; background:linear-gradient(90deg,transparent,#79c7f5 30% 70%,transparent); opacity:0; transform:scaleX(.15) translateY(.35rem); transition:opacity .3s ease,transform .45s cubic-bezier(.2,.8,.2,1); }
.dossier-nav nav a::after { content:""; position:absolute; right:15%; bottom:.47rem; width:.28rem; height:.28rem; border-radius:50%; background:#b8e3ff; box-shadow:0 0 .8rem #79c7f5; opacity:0; transform:translateX(-4rem); transition:opacity .25s ease,transform .55s cubic-bezier(.2,.8,.2,1); }
.dossier-nav nav a:hover,.dossier-nav nav a:focus-visible { color:#fff; letter-spacing:.21em; }
.dossier-nav nav a:hover::before,.dossier-nav nav a:focus-visible::before { opacity:1; transform:scaleX(1) translateY(0); }
.dossier-nav nav a:hover::after,.dossier-nav nav a:focus-visible::after { opacity:1; transform:translateX(0); }
.dossier-nav .nav-cta { position:relative; overflow:hidden; color:#fff; border:1px solid rgba(151,209,244,.55); border-radius:.35rem; background:rgba(7,102,158,.2); transition:background .35s ease,box-shadow .35s ease; }
.dossier-nav .nav-cta:hover { background:rgba(7,119,184,.55); box-shadow:0 0 2rem rgba(61,165,226,.25); }
.dossier-nav .nav-linkedin {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.65rem;
  padding:.5rem 0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  white-space:nowrap;
  transition:color .25s ease;
}
.dossier-nav .nav-linkedin svg { flex:0 0 auto; width:1.2rem; height:1.2rem; transition:transform .25s ease; }
.dossier-nav .nav-linkedin svg rect { fill:#0a66c2; }
.dossier-nav .nav-linkedin svg path { fill:#fff; }
.dossier-nav .nav-linkedin:hover,.dossier-nav .nav-linkedin:focus-visible {
  background:transparent;
  box-shadow:none;
  color:#55b7ee;
  outline:0;
}
.dossier-nav .nav-linkedin:hover svg,
.dossier-nav .nav-linkedin:focus-visible svg { transform:translateY(-2px); }
.footer-logo { width:min(17rem,90%); }
.footer-logo img { height:auto; transform:none; }
.telemetry { overflow:hidden; padding:.75rem 0; background:#1b2831; color:#fff; font-size:.58rem; font-weight:800; letter-spacing:.2em; white-space:nowrap; }
.telemetry-track { display:flex; width:max-content; animation:telemetry 24s linear infinite; will-change:transform; }
.telemetry-track span { flex:none; }
.telemetry i { display:inline-block; width:5rem; height:1px; margin:0 2rem .2rem; background:rgba(255,255,255,.65); }
@keyframes telemetry { to { transform:translateX(-25%); } }
.opening-statement { position:relative; display:grid; grid-template-columns:1fr minmax(17rem,.34fr); gap:8vw; min-height:105vh; padding:12vw 9vw 10vw 12vw; overflow:hidden; background:#e9edeb; }
.opening-statement::before { content:""; position:absolute; inset:0; background-image:linear-gradient(rgba(22,52,69,.1) 1px,transparent 1px),linear-gradient(90deg,rgba(22,52,69,.1) 1px,transparent 1px); background-size:8vw 8vw; mask-image:linear-gradient(to bottom,transparent,#000 18%,#000 82%,transparent); }
.statement-number { position:absolute; top:3rem; right:4vw; color:#78909e; font-size:.58rem; letter-spacing:.2em; }
.vertical-note { position:absolute; left:3vw; top:50%; margin:0; color:#71848f; font-size:.55rem; letter-spacing:.22em; writing-mode:vertical-rl; transform:rotate(180deg) translateY(50%); }
.statement-copy,.statement-side { position:relative; z-index:1; align-self:center; }
.statement-copy>p { margin:0 0 2.5rem; color:#0878bd; font-size:.7rem; font-weight:800; letter-spacing:.18em; text-transform:uppercase; }
.statement-copy h1 { color:#0d1f2a; font-family:Arial,sans-serif; font-size:clamp(3.7rem,8.4vw,10rem); font-weight:900; line-height:.78; letter-spacing:-.08em; text-transform:uppercase; }
.statement-copy h1 span { color:transparent; -webkit-text-stroke:1.5px #0d1f2a; }
.statement-side>p { color:#475c67; font-size:clamp(.95rem,1.25vw,1.2rem); line-height:1.85; }
.coordinate { margin-top:5rem; padding-top:1.5rem; border-top:1px solid #8da0aa; }
.coordinate b,.coordinate small { display:block; font-size:.7rem; letter-spacing:.16em; line-height:1.8; }
.coordinate small { margin-top:1rem; color:#0878bd; font-size:.55rem; }
.flight-window { position:relative; height:110vh; overflow:hidden; background:#07131e; color:#fff; }
.window-media { position:absolute; inset:0; }
.window-media img { width:100%; height:100%; object-fit:cover; filter:grayscale(1) contrast(1.2); }
.window-media::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(4,12,18,.86) 0 30%,rgba(4,12,18,.2) 60%,rgba(4,12,18,.64)); }
.window-mask { position:absolute; inset:8%; display:grid; grid-template-columns:repeat(3,1fr); gap:2rem; }
.window-mask span { border:1px solid rgba(255,255,255,.28); border-radius:48% 48% 42% 42% / 25% 25% 18% 18%; box-shadow:0 0 0 4rem rgba(2,8,12,.4); }
.window-caption { position:absolute; z-index:2; left:8vw; bottom:11vw; }
.window-caption small { color:#79c7f5; font-size:.58rem; font-weight:900; letter-spacing:.2em; }
.window-caption p { margin:1.2rem 0 0; font-family:Georgia,serif; font-size:clamp(2.5rem,5.5vw,6rem); line-height:.94; }
.window-data { position:absolute; z-index:2; top:3rem; right:4vw; display:flex; gap:2rem; font-size:.52rem; letter-spacing:.16em; }
.asset-ledger { padding:10vw 0 8vw; background:#f1f1ec; color:#0c1c26; }
.ledger-head { display:grid; grid-template-columns:.5fr 1.5fr .5fr; gap:4vw; align-items:end; padding:0 5vw 7vw; }
.ledger-head>p,.ledger-head>span { color:#657984; font-size:.56rem; font-weight:800; letter-spacing:.16em; }
.ledger-head>span { text-align:right; }
.ledger-head h2 { margin:0; font-family:Georgia,serif; font-size:clamp(3rem,6.2vw,7rem); font-weight:400; line-height:.9; letter-spacing:-.06em; }
.ledger-head h2 em { color:#1377b8; font-weight:400; }
.ledger-records { border-top:1px solid #9da9aa; }
.ledger-row { display:grid; grid-template-columns:.35fr .7fr 1fr 3rem; padding:2rem 5vw; border-bottom:1px solid #9da9aa; overflow:hidden; transition:background .45s,color .45s; }
.record-id { color:#0878bd; font-size:.62rem; font-weight:900; letter-spacing:.15em; }
.ledger-row h3 { margin:0; font-family:Arial,sans-serif; font-size:clamp(3rem,7vw,7.8rem); font-weight:900; line-height:.75; letter-spacing:-.08em; }
.record-label { align-self:center; font-family:Georgia,serif; font-size:clamp(1.2rem,2vw,2.2rem); }
.record-arrow { align-self:center; font-size:1.5rem; transition:transform .4s; }
.record-detail { grid-column:2/4; display:flex; align-items:center; gap:1rem; max-height:0; opacity:0; transition:max-height .55s ease,opacity .4s,padding .45s; }
.record-detail p { flex:1; max-width:36rem; color:inherit; line-height:1.6; }
.record-detail span { padding:.55rem .7rem; border:1px solid currentColor; font-size:.52rem; letter-spacing:.1em; }
.ledger-row:hover { background:#0a65a0; color:#fff; }
.ledger-row:hover .record-detail { max-height:12rem; padding-top:1.8rem; opacity:1; }
.ledger-row:hover .record-id { color:#b9e2fb; }
.ledger-row:hover .record-arrow { transform:rotate(45deg); }
.runway-break { position:relative; height:100vh; overflow:hidden; background:#090e12; color:#fff; }
.runway-image,.runway-image::after { position:absolute; inset:0; }
.runway-image img { height:100%; object-fit:cover; filter:grayscale(1) contrast(1.15); }
.runway-image::after { content:""; background:rgba(2,7,10,.48); }
.runway-line { position:absolute; z-index:2; left:5vw; right:5vw; top:50%; display:grid; grid-template-columns:auto 1fr auto 1fr auto; gap:1.5rem; align-items:center; transform:translateY(-50%); }
.runway-line b { font-size:2rem; }
.runway-line i { height:2px; background:repeating-linear-gradient(90deg,#fff 0 5rem,transparent 5rem 8rem); }
.runway-line span { font-size:.65rem; letter-spacing:.25em; }
.runway-break>p { position:absolute; z-index:3; left:8vw; bottom:8vw; margin:0; font-family:Georgia,serif; font-size:clamp(2rem,4.7vw,5rem); line-height:1.05; }
.runway-break>p strong { color:#8dccf4; font-weight:400; }
.control-system { position:relative; min-height:120vh; padding:9vw 6vw; overflow:hidden; background:#07131e; color:#fff; }
.system-intro { position:relative; z-index:2; }
.system-intro small { color:#79c7f5; font-size:.56rem; font-weight:900; letter-spacing:.19em; }
.system-intro h2 { margin:1.5rem 0 0; font-family:Arial,sans-serif; font-size:clamp(3.4rem,7vw,8rem); font-weight:900; line-height:.82; letter-spacing:-.075em; text-transform:uppercase; }
.system-intro h2 span { color:transparent; -webkit-text-stroke:1px #8dccf4; }
.radar { position:absolute; right:-10vw; top:5vw; width:min(62vw,55rem); aspect-ratio:1; border:1px solid rgba(122,196,240,.25); border-radius:50%; }
.radar i { position:absolute; inset:12.5%; border:1px solid rgba(122,196,240,.22); border-radius:50%; }
.radar i:nth-child(2){inset:25%}.radar i:nth-child(3){inset:37.5%}.radar i:nth-child(4){inset:50%;background:#e85416;border:0;box-shadow:0 0 1.2rem rgba(232,84,22,.75)}
.radar b { position:absolute; left:50%; top:50%; width:50%; height:1px; background:linear-gradient(90deg,#e85416,transparent); transform-origin:left; animation:sweep 7s linear infinite; }
@keyframes sweep { to { transform:rotate(360deg); } }
.system-grid { position:relative; z-index:2; display:grid; grid-template-columns:repeat(4,1fr); margin-top:18vw; border-top:1px solid rgba(255,255,255,.25); }
.system-grid article { padding:2rem 2rem 4rem 0; }
.system-grid article+article { padding-left:2rem; border-left:1px solid rgba(255,255,255,.25); }
.system-grid b { color:#79c7f5; font-size:.62rem; }
.system-grid h3 { margin:4rem 0 1rem; font-family:Georgia,serif; font-size:2rem; font-weight:400; }
.system-grid p { color:#91a8b6; font-size:.85rem; line-height:1.7; }
.founder-frame { position:relative; min-height:110vh; padding:9vw; background:#dbe2e4; }
.founder-image { width:66%; height:72vh; margin-left:auto; overflow:hidden; clip-path:polygon(8% 0,100% 0,100% 88%,92% 100%,0 100%,0 12%); }
.founder-image img { height:100%; object-fit:cover; }
.founder-stamp { position:absolute; top:12vw; left:7vw; display:grid; place-items:center; width:11rem; aspect-ratio:1; border:1px solid #0878bd; border-radius:50%; color:#0878bd; font-family:Georgia,serif; font-size:4rem; transform:rotate(-10deg); }
.founder-stamp small { display:block; width:7rem; font-family:Arial,sans-serif; font-size:.48rem; letter-spacing:.13em; text-align:center; }
.founder-note { position:relative; z-index:2; width:min(50rem,72%); margin:-8rem 0 0 0; padding:3rem 4rem; background:#f1f1ec; box-shadow:0 2rem 5rem rgba(0,20,30,.12); }
.founder-note .tag { color:#0878bd; font-size:.55rem; font-weight:900; letter-spacing:.16em; }
.founder-note blockquote { margin:2rem 0; font-family:Georgia,serif; font-size:clamp(1.8rem,3.2vw,3.7rem); line-height:1.12; }
.founder-note>p:last-child { max-width:42rem; color:#5d6e77; line-height:1.75; }
.impact-signal { position:relative; display:grid; grid-template-columns:1.2fr .8fr; gap:5vw; padding:10vw 8vw; overflow:hidden; background:#18313f; color:#fff; }
.impact-signal::after { content:""; position:absolute; z-index:0; right:clamp(-8rem,-4vw,-2rem); top:0; bottom:0; width:min(58vw,72rem); border:0; border-radius:0; box-shadow:none; background:url("../images/cut-logo-for-panel.png") right top/contain no-repeat; opacity:.24; pointer-events:none; }
.signal-code { position:absolute; top:2rem; left:2rem; font-size:.5rem; letter-spacing:.2em; }
.signal-title,.signal-copy,.signal-orgs { position:relative; z-index:1; }
.signal-title small { font-size:.56rem; font-weight:900; letter-spacing:.18em; }
.signal-title h2 { margin:2rem 0; font-family:Arial,sans-serif; font-size:clamp(3.8rem,7.4vw,8.5rem); font-weight:900; line-height:.8; letter-spacing:-.07em; text-transform:uppercase; }
.signal-copy { align-self:end; padding-bottom:2rem; }
.signal-copy p { max-width:30rem; font-family:Georgia,serif; font-size:clamp(1.3rem,2.2vw,2.2rem); line-height:1.4; }
.signal-orgs { grid-column:1/-1; display:grid; grid-template-columns:1fr 1fr; margin-top:7vw; border-top:1px solid rgba(255,255,255,.55); }
.signal-orgs article { display:grid; grid-template-columns:3rem 1fr 1fr; gap:2rem; padding:3rem 2rem 3rem 0; }
.signal-orgs article+article { padding-left:3rem; border-left:1px solid rgba(255,255,255,.55); }
.signal-orgs span { font-size:.6rem; }
.signal-orgs h3 { margin:0; font-family:Georgia,serif; font-size:clamp(1.5rem,2.3vw,2.7rem); font-weight:400; }
.signal-orgs p { margin:0; color:#ffe8df; font-size:.82rem; line-height:1.7; }
.contact-tower { position:relative; display:grid; grid-template-columns:1fr 1fr; align-items:end; min-height:100vh; padding:8vw; overflow:hidden; color:#fff; }
.tower-bg,.tower-bg::after,.tower-grid { position:absolute; inset:0; }
.tower-bg img { height:100%; object-fit:cover; filter:grayscale(1) contrast(1.2); }
.tower-bg::after { content:""; background:linear-gradient(90deg,rgba(3,9,14,.9),rgba(3,9,14,.45)); }
.tower-grid { background-image:linear-gradient(rgba(255,255,255,.1) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.1) 1px,transparent 1px); background-size:6vw 6vw; }
.tower-copy,.tower-links { position:relative; z-index:2; }
.tower-copy small { color:#8dccf4; font-size:.56rem; font-weight:900; letter-spacing:.18em; }
.tower-copy h2 { margin:2rem 0 0; font-family:Arial,sans-serif; font-size:clamp(4rem,8vw,9rem); font-weight:900; line-height:.8; letter-spacing:-.07em; text-transform:uppercase; }
.tower-links a { display:grid; grid-template-columns:1fr 2fr auto; gap:1rem; padding:1.5rem 0; border-top:1px solid rgba(255,255,255,.55); color:#fff; text-decoration:none; }
.tower-links a:last-child { border-bottom:1px solid rgba(255,255,255,.55); }
.tower-links span { color:#8dccf4; font-size:.55rem; letter-spacing:.15em; text-transform:uppercase; }
.tower-links b { font-size:.8rem; letter-spacing:.08em; }
.tower-links i { font-style:normal; }
.dossier-footer { grid-template-columns:1.3fr 1fr 1fr; }

@media (max-width:900px) {
  .opening-statement,.impact-signal,.contact-tower { grid-template-columns:1fr; }
  .opening-statement { padding:9rem 8vw; }
  .statement-side { max-width:32rem; }
  .ledger-head { grid-template-columns:1fr; }
  .ledger-head>span { text-align:left; }
  .ledger-row { grid-template-columns:.25fr .7fr 1fr 2rem; }
  .record-detail { grid-column:1/-1; flex-wrap:wrap; max-height:15rem; padding-top:1.5rem; opacity:1; }
  .system-grid { grid-template-columns:1fr 1fr; }
  .founder-image { width:88%; }
  .founder-note { width:88%; }
  .signal-orgs { grid-template-columns:1fr; }
  .signal-orgs article+article { padding-left:0; border-left:0; border-top:1px solid rgba(255,255,255,.55); }
  .contact-tower { gap:6rem; }
  .dossier-footer { grid-template-columns:1fr 1fr; }
}
@media (max-width:600px) {
  .dossier-nav { top:0; height:4.6rem; padding:.65rem 1rem; }
  .dossier-nav.is-scrolled { height:4.2rem; }
  .dossier-nav .brand-logo { width:11rem; }
  .dossier-nav .brand-logo img { height:2.85rem; }
  .dossier-nav.is-scrolled .brand-logo img { height:2.55rem; }
  .viewer-page { min-height:100svh; }
  .dossier-nav { padding:.9rem 1.1rem; }
  .menu-toggle { position:fixed; top:auto; bottom:1rem; right:1rem; width:4rem; height:4rem; justify-content:center; padding:1rem; border-radius:50%; background:#e85416; box-shadow:0 .8rem 2rem rgba(0,0,0,.28); }
  .opening-statement { min-height:100vh; padding:8rem 1.25rem 5rem 3rem; }
  .vertical-note { left:.8rem; }
  .statement-copy h1 { font-size:13.2vw; }
  .flight-window { height:90vh; }
  .window-mask { inset:5%; gap:.5rem; }
  .window-caption { bottom:18vw; }
  .window-data { display:none; }
  .ledger-head { padding:5rem 1.25rem; }
  .ledger-row { grid-template-columns:3rem 1fr 2rem; padding:1.5rem 1.25rem; }
  .ledger-row h3 { font-size:18vw; }
  .record-label { grid-column:2; }
  .record-arrow { grid-column:3; grid-row:1/3; }
  .record-detail { grid-column:1/-1; }
  .runway-line { gap:.5rem; }
  .runway-line i { background:repeating-linear-gradient(90deg,#fff 0 1.4rem,transparent 1.4rem 2.2rem); }
  .runway-break>p { bottom:15vw; }
  .control-system { padding:6rem 1.25rem; }
  .system-grid { grid-template-columns:1fr; margin-top:12rem; }
  .system-grid article+article { padding-left:0; border-left:0; border-top:1px solid rgba(255,255,255,.25); }
  .radar { width:85vw; top:18rem; }
  .founder-frame { padding:5rem 1.25rem; }
  .founder-image { width:100%; height:55vh; }
  .founder-stamp { top:2rem; width:8rem; font-size:3rem; }
  .founder-note { width:100%; margin-top:-3rem; padding:2rem 1.5rem; }
  .impact-signal { padding:7rem 1.25rem 5rem; }
  .signal-title h2 { font-size:13vw; }
  .signal-orgs article { grid-template-columns:2rem 1fr; gap:1rem; }
  .signal-orgs p { grid-column:2; }
  .contact-tower { padding:6rem 1.25rem; }
  .tower-copy h2 { font-size:17vw; }
  .tower-links a { grid-template-columns:1fr auto; }
  .tower-links b { grid-column:1; }
  .tower-links i { grid-column:2; grid-row:1/3; }
  .dossier-footer { grid-template-columns:1fr; }
}


/* Delicate one-time typography motion */
[data-reveal].is-visible h1,[data-reveal].is-visible h2,[data-reveal].is-visible blockquote { animation:home-type-settle 1.05s cubic-bezier(.2,.72,.2,1) both; }
[data-reveal].is-visible h1 span,[data-reveal].is-visible h2 span,[data-reveal].is-visible h2 em { animation:home-accent-breathe 1.2s .12s ease both; }
@keyframes home-type-settle { from { opacity:0; transform:translateY(1rem); filter:blur(3px); } to { opacity:1; transform:none; filter:none; } }
@keyframes home-accent-breathe { from { opacity:.35; } to { opacity:1; } }
@media (prefers-reduced-motion:reduce) { [data-reveal].is-visible h1,[data-reveal].is-visible h2,[data-reveal].is-visible blockquote,[data-reveal].is-visible h1 span,[data-reveal].is-visible h2 span,[data-reveal].is-visible h2 em { animation:none!important; } }



/* ================================================================
   FOUNDER IMAGE REFINEMENT / 2026-08-20
   Badge overlays the image; drop shadow creates visual separation.
   ================================================================ */
.founder-image { filter:drop-shadow(0 2.25rem 3.5rem rgba(5,24,34,.24)); }
.founder-frame .founder-stamp { z-index:4; left:clamp(18rem,35vw,48rem); top:clamp(5rem,10vw,9rem); background:rgba(241,241,236,.82); box-shadow:0 1.25rem 3.5rem rgba(5,26,38,.2); backdrop-filter:blur(14px); }
@media (max-width:900px) { .founder-frame .founder-stamp { left:clamp(2rem,31vw,16rem); top:4rem; } }
@media (max-width:600px) { .founder-frame .founder-stamp { left:2rem; top:4rem; } }


/* Compact internal-page heroes: full composition remains visible within one viewport. */
.inner-page .page-hero { min-height:clamp(30rem,68svh,44rem); padding:clamp(7.25rem,11vw,9rem) clamp(1.25rem,8vw,8rem) clamp(2.75rem,5vw,4rem); }
.inner-page .page-hero h1 { max-width:58rem; font-size:clamp(3rem,7.2vw,7rem); line-height:.82; }
.inner-page .page-hero__lead { max-width:40rem; margin-top:1.35rem; font-size:clamp(1rem,1.55vw,1.35rem); line-height:1.42; }
@media (max-width:600px) { .model-instruction { bottom:calc(3.2rem + 3.1rem + 20px); font-size:.5rem; letter-spacing:.1em; } .background-instruction { bottom:1.9rem; font-size:.46rem; } }
@media (prefers-reduced-motion:reduce) { .model-instruction span { animation:none; } }




/* ================================================================
   COMPACT HOMEPAGE SECTION RHYTHM / 2026-08-20
   Reduces oversized vertical gaps while preserving each composition.
   ================================================================ */
.opening-statement {
  min-height:auto;
  padding:clamp(5.5rem,7vw,7.5rem) 9vw clamp(5rem,7vw,7rem) 12vw;
}
.flight-window {
  height:clamp(36rem,80svh,52rem);
}
.asset-ledger {
  padding:clamp(5rem,7vw,7rem) 0 clamp(4.5rem,6vw,6rem);
}
.ledger-head {
  padding-bottom:clamp(3rem,4.5vw,5rem);
}
.runway-break {
  height:clamp(34rem,78svh,50rem);
}
.control-system {
  min-height:auto;
  padding:clamp(5.5rem,7vw,7.5rem) 6vw;
}
.founder-frame {
  min-height:auto;
  padding:clamp(5.5rem,7vw,7.5rem) 9vw;
}
.founder-image {
  height:clamp(34rem,62svh,46rem);
}
.impact-signal {
  padding:clamp(5.5rem,7vw,7.5rem) 8vw;
}
.signal-orgs {
  margin-top:clamp(3rem,4vw,5rem);
}
.contact-tower {
  min-height:clamp(36rem,82svh,52rem);
  padding:clamp(4.5rem,6vw,6.5rem) 8vw;
}
@media (max-width:900px) {
  .opening-statement,.control-system,.founder-frame,.impact-signal { padding-top:5rem; padding-bottom:5rem; }
  .founder-image { height:clamp(30rem,58svh,40rem); }
}
@media (max-width:600px) {
  .opening-statement,.control-system,.founder-frame,.impact-signal { padding-top:4rem; padding-bottom:4rem; }
  .flight-window,.runway-break,.contact-tower { min-height:32rem; height:72svh; }
  .asset-ledger { padding-top:4rem; padding-bottom:4rem; }
}

/* Prevent WebGL resize feedback when the browser is restored or maximized. */
.viewer-page,.viewer-stage,.canvas-host { box-sizing:border-box; }


/* ================================================================
   COMPACT FOUNDER FEATURE / 2026-08-20
   Side-by-side image and note with contained editorial motion.
   ================================================================ */
.founder-frame {
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1.06fr) minmax(22rem,.94fr);
  gap:clamp(1.5rem,3.5vw,4rem);
  align-items:stretch;
  min-height:0;
  padding:clamp(3.5rem,5vw,5.5rem) clamp(1.5rem,7vw,7rem);
  overflow:hidden;
}
.founder-image {
  position:relative;
  grid-column:1;
  width:100%;
  height:clamp(29rem,58svh,39rem);
  min-height:0;
  margin:0;
  overflow:hidden;
  clip-path:polygon(5% 0,100% 0,100% 94%,95% 100%,0 100%,0 6%);
  filter:drop-shadow(0 1.5rem 2.5rem rgba(5,24,34,.2));
}
.founder-image::after {
  content:"";
  position:absolute;
  inset:0;
  border:1px solid rgba(255,255,255,.55);
  background:linear-gradient(125deg,rgba(255,255,255,.16),transparent 35%);
  pointer-events:none;
}
.founder-image img {
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform 1.2s cubic-bezier(.2,.72,.2,1),filter .8s ease;
}
.founder-frame:hover .founder-image img {
  transform:scale(1.025);
  filter:saturate(.9) contrast(1.03);
}
.founder-frame .founder-stamp {
  z-index:4;
  top:clamp(4.5rem,6vw,6.5rem);
  left:clamp(2.5rem,8vw,8rem);
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  gap:.45rem;
  width:clamp(7.5rem,10vw,9rem);
  margin:0;
  padding:0;
  background:rgba(241,241,236,.9);
  font-size:clamp(2.7rem,4vw,3.8rem);
  line-height:.78;
  transform:rotate(-7deg);
  box-shadow:0 1rem 2.5rem rgba(5,26,38,.18);
  backdrop-filter:blur(12px);
}
.founder-frame .founder-stamp small {
  width:auto;
  margin:0;
  font-size:.43rem;
  line-height:1.3;
  letter-spacing:.12em;
}
.founder-note {
  position:relative;
  z-index:2;
  grid-column:2;
  display:flex;
  flex-direction:column;
  justify-content:center;
  width:auto;
  min-width:0;
  margin:0;
  padding:clamp(2.25rem,3.5vw,4rem);
  overflow:hidden;
  background:#f1f1ec;
  box-shadow:0 1.25rem 3.5rem rgba(0,20,30,.1);
}
.founder-note::before {
  content:"“";
  position:absolute;
  right:1.5rem;
  top:-1.5rem;
  color:rgba(8,120,189,.07);
  font-family:Georgia,serif;
  font-size:12rem;
  line-height:1;
}
.founder-note .tag {
  position:relative;
  display:flex;
  align-items:center;
  gap:.75rem;
  margin:0;
}
.founder-note .tag::after {
  content:"";
  width:3rem;
  height:1px;
  background:#0878bd;
  transform-origin:left;
}
.founder-note blockquote {
  position:relative;
  margin:clamp(1.4rem,2vw,2rem) 0;
  font-size:clamp(1.75rem,2.65vw,3.1rem);
  line-height:1.08;
  letter-spacing:-.035em;
}
.founder-note>p:last-child {
  margin:0;
  font-size:clamp(.88rem,1vw,1rem);
  line-height:1.65;
}
.founder-note.is-visible .tag {
  animation:founder-tag-in .8s .08s cubic-bezier(.2,.72,.2,1) both;
}
.founder-note.is-visible .tag::after {
  animation:founder-line-in 1s .35s cubic-bezier(.2,.72,.2,1) both;
}
.founder-note.is-visible blockquote {
  animation:founder-quote-in 1.05s .16s cubic-bezier(.18,.72,.2,1) both;
}
.founder-note.is-visible>p:last-child {
  animation:founder-copy-in .9s .38s ease both;
}
@keyframes founder-tag-in { from { opacity:0; transform:translateX(-1rem); letter-spacing:.1em; } to { opacity:1; transform:none; letter-spacing:.16em; } }
@keyframes founder-line-in { from { transform:scaleX(0); } to { transform:scaleX(1); } }
@keyframes founder-quote-in { from { opacity:0; transform:translateY(1.25rem); clip-path:inset(0 0 100% 0); } to { opacity:1; transform:none; clip-path:inset(0); } }
@keyframes founder-copy-in { from { opacity:0; transform:translateY(.75rem); } to { opacity:1; transform:none; } }
@media (max-width:900px) {
  .founder-frame { grid-template-columns:minmax(0,1fr) minmax(19rem,.9fr); gap:1.25rem; padding:4rem 2rem; }
  .founder-image { height:32rem; }
  .founder-note { padding:2.25rem; }
  .founder-frame .founder-stamp { left:3rem; top:5rem; }
}
@media (max-width:720px) {
  .founder-frame { grid-template-columns:1fr; padding:3.5rem 1.25rem; }
  .founder-image,.founder-note { grid-column:1; }
  .founder-image { height:clamp(24rem,58svh,32rem); }
  .founder-frame .founder-stamp { left:2rem; top:4.5rem; }
  .founder-note { padding:2rem 1.5rem; }
  .founder-note blockquote { font-size:clamp(1.75rem,8vw,2.5rem); }
}
@media (prefers-reduced-motion:reduce) {
  .founder-image img,.founder-note.is-visible .tag,.founder-note.is-visible .tag::after,.founder-note.is-visible blockquote,.founder-note.is-visible>p:last-child { animation:none!important; transition:none!important; transform:none!important; clip-path:none!important; }
}

/* Responsive positioning for the transparent charity-panel emblem. */
@media (max-width:900px) { .impact-signal::after { right:-10rem; width:48rem; opacity:.18; background-position:right top; } }
@media (max-width:600px) { .impact-signal::after { right:-12rem; width:36rem; opacity:.12; background-position:right top; } }



/* Compact operation-section handoff from headline to process cards. */
.control-system .system-grid {
  margin-top:clamp(3.5rem,6vw,6rem);
}
.control-system .system-grid article {
  padding-top:clamp(1.5rem,2vw,2rem);
  padding-bottom:clamp(2.25rem,3vw,3.25rem);
}
.control-system .system-grid h3 {
  margin:clamp(2rem,3vw,3rem) 0 1rem;
}
@media (max-width:900px) {
  .control-system .system-grid { margin-top:4rem; }
}
@media (max-width:600px) {
  .control-system .system-grid { margin-top:3rem; }
}

/* Footer developer credit. */
.copyright {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:1.5rem;
}
.developer-credit {
  margin-left:auto;
  color:#60727f;
  text-align:right;
  white-space:nowrap;
}
.developer-credit a {
  color:#8dccf4;
  text-decoration:none;
  transition:color .25s ease;
}
.developer-credit a:hover,.developer-credit a:focus-visible {
  color:#fff;
  text-decoration:underline;
  text-underline-offset:.2em;
}
@media (max-width:600px) {
  .copyright { align-items:flex-start; flex-direction:column; }
  .developer-credit { margin-left:0; text-align:left; white-space:normal; }
}

/* ================================================================
   SHARED BACK-TO-TOP CONTROL
   Appears only after the visitor has moved down the page.
   ================================================================ */
.back-to-top {
  position:fixed;
  z-index:80;
  right:clamp(1rem,2vw,1.75rem);
  bottom:clamp(1rem,2vw,1.75rem);
  display:grid;
  grid-template-rows:auto auto;
  place-items:center;
  width:3.65rem;
  height:3.65rem;
  padding:.45rem;
  border:1px solid rgba(141,204,244,.55);
  border-radius:50%;
  background:rgba(7,19,30,.88);
  box-shadow:0 .8rem 2rem rgba(0,0,0,.22);
  color:#fff;
  cursor:pointer;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  backdrop-filter:blur(10px);
  transform:translateY(1rem) scale(.92);
  transition:opacity .3s ease,visibility .3s ease,transform .35s cubic-bezier(.2,.72,.2,1),background-color .25s ease;
}
.back-to-top.is-visible {
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transform:none;
}
.back-to-top span {
  color:#8dccf4;
  font-size:1.15rem;
  line-height:.9;
  transition:transform .25s ease;
}
.back-to-top small {
  font-size:.45rem;
  font-weight:900;
  letter-spacing:.13em;
  line-height:1;
  text-transform:uppercase;
}
.back-to-top:hover,.back-to-top:focus-visible {
  background:#0878bd;
  outline:0;
  box-shadow:0 0 0 3px rgba(141,204,244,.18),0 1rem 2.5rem rgba(0,0,0,.28);
}
.back-to-top:hover span,.back-to-top:focus-visible span { transform:translateY(-.15rem); }
@media (max-width:760px) {
  .back-to-top { right:1.1rem; bottom:5.8rem; width:3.35rem; height:3.35rem; }
}
@media (prefers-reduced-motion:reduce) {
  .back-to-top,.back-to-top span { transition:none!important; }
}

/* Footer LinkedIn profile. */
.footer-social {
  align-self:start;
  justify-self:end;
  display:inline-flex;
  align-items:center;
  gap:.65rem;
  padding:.75rem .9rem;
  border:1px solid rgba(141,204,244,.3);
  color:#8dccf4;
  font-size:.55rem;
  font-weight:800;
  letter-spacing:.14em;
  text-decoration:none;
  text-transform:uppercase;
  transition:border-color .25s ease,background-color .25s ease,color .25s ease,transform .25s ease;
}
.footer-social svg {
  width:1.15rem;
  height:1.15rem;
  fill:currentColor;
}
.footer-social:hover,.footer-social:focus-visible {
  border-color:#8dccf4;
  background:#8dccf4;
  color:#07131e;
  outline:0;
  transform:translateY(-2px);
}
@media (max-width:900px) {
  .footer-social { justify-self:start; }
}

/* LinkedIn profile grouped directly beneath the footer brand. */
.footer-brand-group {
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:1.15rem;
  min-width:0;
}
.footer-brand-group .footer-social {
  align-self:auto;
  justify-self:auto;
  gap:.7rem;
  padding:0;
  border:0;
  background:transparent;
  color:#8dccf4;
  font-size:.52rem;
  line-height:1.35;
  letter-spacing:.1em;
  text-align:left;
  text-transform:uppercase;
}
.footer-brand-group .footer-social svg {
  flex:0 0 auto;
  width:1.45rem;
  height:1.45rem;
}
.footer-brand-group .footer-social svg rect { fill:#0a66c2; }
.footer-brand-group .footer-social svg path { fill:#fff; }
.footer-brand-group .footer-social:hover,.footer-brand-group .footer-social:focus-visible {
  border:0;
  background:transparent;
  color:#fff;
  box-shadow:none;
  transform:none;
}
.footer-brand-group .footer-social:hover svg,.footer-brand-group .footer-social:focus-visible svg {
  filter:brightness(1.16);
}

/* ================================================================
   HOMEPAGE PROPOSITION + PERFORMANCE INDEX / 2026-08-20
   Core leasing proposition, actions, and outcome areas.
   ================================================================ */
.home-proposition {
  position:relative;
  padding:clamp(4.5rem,7vw,7rem) clamp(1.5rem,7vw,7rem) clamp(4rem,6vw,6rem);
  overflow:hidden;
  background:#e9edeb;
  color:#0d1f2a;
  isolation:isolate;
}
.home-proposition::before {
  content:"";
  position:absolute;
  z-index:-1;
  inset:0;
  background-image:linear-gradient(rgba(22,52,69,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(22,52,69,.08) 1px,transparent 1px);
  background-size:8vw 8vw;
  mask-image:linear-gradient(to bottom,transparent,#000 14%,#000 86%,transparent);
}
.home-proposition::after {
  content:"";
  position:absolute;
  z-index:-1;
  right:-10rem;
  top:7rem;
  width:30rem;
  aspect-ratio:1;
  border:1px solid rgba(8,120,189,.13);
  border-radius:50%;
  box-shadow:0 0 0 5rem transparent,0 0 0 calc(5rem + 1px) rgba(8,120,189,.09);
}
.proposition-code {
  position:absolute;
  right:clamp(1.5rem,4vw,4rem);
  top:2rem;
  color:#6e838f;
  font-size:.5rem;
  font-weight:800;
  letter-spacing:.2em;
}
.proposition-head {
  display:grid;
  grid-template-columns:minmax(0,1.3fr) minmax(19rem,.7fr);
  gap:clamp(2.5rem,7vw,8rem);
  align-items:end;
}
.proposition-kicker,.performance-intro small {
  margin:0 0 1.4rem;
  color:#0878bd;
  font-size:.6rem;
  font-weight:900;
  letter-spacing:.2em;
  text-transform:uppercase;
}
.proposition-title h1 {
  margin:0;
  color:#0d1f2a;
  font-family:Arial,sans-serif;
  font-size:clamp(3.4rem,7.5vw,8.2rem);
  font-weight:900;
  line-height:.8;
  letter-spacing:-.075em;
  text-transform:uppercase;
}
.proposition-title h1 span {
  color:transparent;
  -webkit-text-stroke:1.5px #0878bd;
}
.proposition-summary>p {
  margin:0;
  color:#334c5a;
  font-family:Georgia,serif;
  font-size:clamp(1.3rem,2vw,2rem);
  line-height:1.35;
}
.proposition-actions {
  display:flex;
  flex-wrap:wrap;
  gap:.75rem;
  margin-top:2rem;
}
.proposition-actions a {
  display:inline-flex;
  justify-content:space-between;
  align-items:center;
  gap:2rem;
  min-width:12rem;
  padding:1rem 1.15rem;
  border:1px solid #0878bd;
  font-size:.62rem;
  font-weight:900;
  letter-spacing:.14em;
  text-decoration:none;
  text-transform:uppercase;
  transition:transform .25s ease,background-color .25s ease,color .25s ease;
}
.proposition-actions .action-primary { background:#e85416; border-color:#e85416; color:#fff; }
.proposition-actions .action-secondary { color:#0d1f2a; }
.proposition-actions a:hover,.proposition-actions a:focus-visible { transform:translateY(-2px); outline:0; }
.proposition-actions .action-secondary:hover,.proposition-actions .action-secondary:focus-visible { background:#0878bd; color:#fff; }
.performance-intro {
  display:grid;
  grid-template-columns:minmax(0,1.25fr) minmax(18rem,.75fr);
  gap:clamp(2.5rem,7vw,8rem);
  align-items:end;
  margin-top:clamp(4rem,7vw,7rem);
  padding-top:clamp(3rem,5vw,5rem);
  border-top:1px solid #9dabad;
}
.performance-intro h2 {
  margin:0;
  font-family:Georgia,serif;
  font-size:clamp(2.6rem,5.2vw,6rem);
  font-weight:400;
  line-height:.92;
  letter-spacing:-.055em;
}
.performance-intro h2 em { color:#0878bd; font-weight:400; }
.performance-intro>p {
  margin:0;
  color:#526872;
  font-size:clamp(.95rem,1.2vw,1.12rem);
  line-height:1.75;
}
.performance-index {
  display:grid;
  grid-template-columns:repeat(7,minmax(0,1fr));
  margin-top:clamp(2.75rem,4vw,4rem);
  border-top:1px solid #9dabad;
  border-bottom:1px solid #9dabad;
}
.performance-index article {
  position:relative;
  min-height:11rem;
  padding:1.5rem 1.15rem;
  transition:background-color .3s ease,transform .3s ease;
}
.performance-index article+article { border-left:1px solid #b7c0c1; }
.performance-index article::after {
  content:"";
  position:absolute;
  left:1.15rem;
  right:1.15rem;
  bottom:1rem;
  height:2px;
  background:#e85416;
  transform:scaleX(0);
  transform-origin:left;
  transition:transform .4s cubic-bezier(.2,.72,.2,1);
}
.performance-index article:hover { background:#0878bd; color:#fff; transform:translateY(-.2rem); }
.performance-index article:hover::after { transform:scaleX(1); }
.performance-index article:hover b { color:#bfe7ff; }
.performance-index b { color:#0878bd; font-size:.55rem; letter-spacing:.15em; }
.performance-index h3 {
  margin:2.8rem 0 0;
  font-family:Georgia,serif;
  font-size:clamp(1rem,1.4vw,1.35rem);
  font-weight:400;
  line-height:1.2;
}
.performance-note {
  max-width:44rem;
  margin:1.5rem 0 0 auto;
  color:#657983;
  font-size:.65rem;
  letter-spacing:.08em;
  line-height:1.6;
  text-align:right;
  text-transform:uppercase;
}
@media (max-width:1050px) {
  .performance-index { grid-template-columns:repeat(4,1fr); }
  .performance-index article:nth-child(5) { border-left:0; }
  .performance-index article:nth-child(n+5) { border-top:1px solid #b7c0c1; }
}
@media (max-width:800px) {
  .proposition-head,.performance-intro { grid-template-columns:1fr; gap:2rem; }
  .home-proposition { padding-top:4.5rem; }
  .performance-intro { margin-top:4rem; padding-top:3rem; }
}
@media (max-width:600px) {
  .home-proposition { padding:4rem 1.25rem; }
  .proposition-title h1 { font-size:clamp(3rem,15vw,5rem); }
  .proposition-actions { flex-direction:column; }
  .proposition-actions a { width:100%; }
  .performance-index { grid-template-columns:1fr 1fr; }
  .performance-index article,.performance-index article:nth-child(n+5) { border-top:1px solid #b7c0c1; }
  .performance-index article:nth-child(odd) { border-left:0; }
  .performance-index article:nth-child(-n+2) { border-top:0; }
  .performance-note { text-align:left; }
}


/* ================================================================
   HOMEPAGE INTEGRATED SOLUTIONS / 2026-08-20
   Editorial explanation with a four-point capability index.
   ================================================================ */
.home-solutions {
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(22rem,.82fr);
  column-gap:clamp(3rem,8vw,9rem);
  row-gap:clamp(3rem,5vw,5rem);
  padding:clamp(4.5rem,7vw,7rem) clamp(1.5rem,7vw,7rem);
  overflow:hidden;
  background:#f4f3ee;
  color:#0d1f2a;
}
.home-solutions::before {
  content:"AS / 002";
  position:absolute;
  right:clamp(1.5rem,4vw,4rem);
  top:2rem;
  color:rgba(13,31,42,.08);
  font-family:Arial,sans-serif;
  font-size:clamp(5rem,12vw,12rem);
  font-weight:900;
  line-height:.8;
  letter-spacing:-.07em;
}
.solutions-heading,.solutions-copy,.solutions-points,.solutions-action { position:relative; z-index:1; }
.solutions-heading>p {
  margin:0 0 1.5rem;
  color:#0878bd;
  font-size:.58rem;
  font-weight:900;
  letter-spacing:.2em;
  text-transform:uppercase;
}
.solutions-heading h2 {
  margin:0;
  font-family:Georgia,serif;
  font-size:clamp(3rem,5.8vw,6.5rem);
  font-weight:400;
  line-height:.9;
  letter-spacing:-.06em;
}
.solutions-heading h2 span { color:#0878bd; }
.solutions-copy {
  align-self:end;
  padding-left:clamp(1.5rem,3vw,3rem);
  border-left:1px solid #aab7b8;
}
.solutions-copy p {
  margin:0;
  color:#52656f;
  font-size:clamp(.92rem,1.1vw,1.05rem);
  line-height:1.75;
}
.solutions-copy p+p { margin-top:1.35rem; }
.solutions-points {
  grid-column:1/-1;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  border-top:1px solid #aeb9ba;
  border-bottom:1px solid #aeb9ba;
}
.solutions-points article {
  position:relative;
  min-height:9.5rem;
  padding:1.4rem 1.25rem 2rem;
  overflow:hidden;
  transition:background-color .3s ease,color .3s ease,transform .3s ease;
}
.solutions-points article+article { border-left:1px solid #c0c7c7; }
.solutions-points article::before {
  content:"";
  position:absolute;
  inset:auto 0 0;
  height:3px;
  background:#e85416;
  transform:scaleX(0);
  transform-origin:left;
  transition:transform .4s cubic-bezier(.2,.72,.2,1);
}
.solutions-points article:hover { background:#0878bd; color:#fff; transform:translateY(-.2rem); }
.solutions-points article:hover::before { transform:scaleX(1); }
.solutions-points b { color:#0878bd; font-size:.55rem; letter-spacing:.16em; }
.solutions-points article:hover b { color:#bfe7ff; }
.solutions-points p {
  max-width:18rem;
  margin:2.4rem 0 0;
  font-family:Georgia,serif;
  font-size:clamp(1.1rem,1.6vw,1.5rem);
  line-height:1.2;
}
.solutions-action {
  grid-column:1/-1;
  justify-self:end;
  display:inline-flex;
  align-items:center;
  justify-content:space-between;
  gap:3rem;
  min-width:14rem;
  padding:1rem 1.2rem;
  background:#e85416;
  color:#fff;
  font-size:.65rem;
  font-weight:900;
  letter-spacing:.15em;
  text-decoration:none;
  text-transform:uppercase;
  transition:background-color .25s ease,transform .25s ease;
}
.solutions-action:hover,.solutions-action:focus-visible { background:#0878bd; outline:0; transform:translateY(-2px); }
@media (max-width:900px) {
  .home-solutions { grid-template-columns:1fr; row-gap:2.5rem; }
  .solutions-copy { padding-left:0; padding-top:2rem; border-left:0; border-top:1px solid #aab7b8; }
  .solutions-points { grid-template-columns:1fr 1fr; }
  .solutions-points article:nth-child(3) { border-left:0; }
  .solutions-points article:nth-child(n+3) { border-top:1px solid #c0c7c7; }
}
@media (max-width:600px) {
  .home-solutions { padding:4rem 1.25rem; }
  .solutions-points { grid-template-columns:1fr; }
  .solutions-points article+article { border-left:0; border-top:1px solid #c0c7c7; }
  .solutions-action { justify-self:stretch; width:100%; }
}

/* Light monochrome aviation wallpaper for the integrated solutions feature. */
.home-solutions {
  background-color:#d8ddde;
  background-image:linear-gradient(110deg,rgba(226,230,229,.84) 0%,rgba(218,224,224,.76) 48%,rgba(207,216,218,.68) 100%),url("../images/aero-wing.jpg");
  border-top:1px solid #aeb9bc;
  box-shadow:inset 0 1.25rem 3rem rgba(31,52,62,.08);
  background-position:center;
  background-size:cover;
  background-repeat:no-repeat;
  background-blend-mode:normal,luminosity;
}
.home-solutions::after {
  content:"";
  position:absolute;
  z-index:0;
  inset:0;
  background:linear-gradient(90deg,rgba(255,255,255,.08),transparent 42%,rgba(25,48,60,.08));
  pointer-events:none;
}
.solutions-copy {
  padding-top:clamp(1.5rem,2vw,2rem);
  padding-right:clamp(1.5rem,2.5vw,2.5rem);
  padding-bottom:clamp(1.5rem,2vw,2rem);
  background:rgba(244,245,242,.62);
  backdrop-filter:blur(8px);
}
.solutions-points {
  background:rgba(244,245,242,.7);
  backdrop-filter:blur(7px);
}
.solutions-points article:hover { background:#0878bd; }
@media (max-width:700px) {
  .home-solutions { background-position:62% center; }
  .solutions-copy,.solutions-points { backdrop-filter:none; }
}


/* ================================================================
   DARK AVIATION LEASING FEATURE / 2026-08-20
   Benefits, customer promise, editorial copy, and published figures.
   ================================================================ */
.flight-window.leasing-feature {
  position:relative;
  height:auto;
  min-height:0;
  padding:clamp(5rem,7vw,7.5rem) clamp(1.5rem,7vw,7rem);
  overflow:hidden;
  background:#151f26;
  color:#fff;
  isolation:isolate;
}
.leasing-feature .window-media { z-index:-2; opacity:.48; }
.leasing-feature .window-media img { filter:grayscale(1) contrast(1.08); }
.leasing-feature .window-media::after {
  background:linear-gradient(105deg,rgba(11,20,27,.92) 0%,rgba(18,29,37,.8) 48%,rgba(18,29,37,.58) 100%),linear-gradient(0deg,rgba(8,16,22,.78),transparent 62%);
}
.leasing-feature::after { content:none; }
.leasing-content { position:relative; z-index:2; max-width:105rem; margin:0 auto; }
.leasing-head {
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(22rem,.85fr);
  gap:clamp(3rem,8vw,9rem);
  align-items:end;
}
.leasing-head small {
  display:block;
  margin-bottom:1.5rem;
  color:#8dccf4;
  font-size:.58rem;
  font-weight:900;
  letter-spacing:.2em;
  text-transform:uppercase;
}
.leasing-head h2 {
  margin:0;
  font-family:Arial,sans-serif;
  font-size:clamp(3.5rem,7vw,8rem);
  font-weight:900;
  line-height:.79;
  letter-spacing:-.075em;
  text-transform:uppercase;
}
.leasing-head h2 span { color:transparent; -webkit-text-stroke:1.5px #8dccf4; }
.leasing-benefits { margin:0; padding:0; list-style:none; border-top:1px solid rgba(141,204,244,.42); }
.leasing-benefits li {
  position:relative;
  padding:1rem 1rem 1rem 2.25rem;
  border-bottom:1px solid rgba(255,255,255,.14);
  color:#d6e1e7;
  font-size:clamp(.88rem,1.1vw,1.05rem);
  line-height:1.45;
  transition:padding-left .25s ease,color .25s ease,background-color .25s ease,transform .25s ease,box-shadow .25s ease;
}
.leasing-benefits li::before { content:""; position:absolute; left:.7rem; top:50%; width:.42rem; height:.42rem; border-radius:50%; background:#e85416; box-shadow:0 0 .65rem rgba(232,84,22,.38); transform:translateY(-50%); }
.leasing-benefits li:hover { padding-left:2.75rem; background:rgba(8,120,189,.42); color:#fff; box-shadow:inset 3px 0 #e85416,0 .65rem 1.5rem rgba(0,0,0,.12); transform:translateX(.35rem); }
.leasing-benefits li:hover::before { box-shadow:0 0 0 .25rem rgba(232,84,22,.18),0 0 .85rem rgba(232,84,22,.75); }
.leasing-promise {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:2rem;
  margin:clamp(4rem,6vw,6rem) 0;
  padding:1.5rem 0;
  border-top:1px solid rgba(255,255,255,.22);
  border-bottom:1px solid rgba(255,255,255,.22);
  font-family:Georgia,serif;
  font-size:clamp(1.5rem,2.4vw,2.6rem);
}
.leasing-promise p { margin:0; color:#8dccf4; }
.leasing-promise strong { font-weight:400; text-align:right; }
.leasing-editorial {
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(22rem,1.1fr);
  gap:clamp(3rem,8vw,9rem);
  align-items:start;
}
.leasing-editorial h3 {
  margin:0;
  font-family:Georgia,serif;
  font-size:clamp(2.5rem,4.5vw,5.2rem);
  font-weight:400;
  line-height:.94;
  letter-spacing:-.05em;
}
.leasing-editorial h3 em { color:#8dccf4; font-weight:400; }
.leasing-copy { padding-left:clamp(1.5rem,3vw,3rem); border-left:1px solid rgba(141,204,244,.35); }
.leasing-copy p { margin:0; color:#aebfc9; font-size:clamp(.92rem,1.1vw,1.05rem); line-height:1.75; }
.leasing-copy p+p { margin-top:1.35rem; }
.leasing-figures {
  display:grid;
  grid-template-columns:.65fr repeat(3,1fr);
  margin-top:clamp(4rem,7vw,7rem);
  border-top:1px solid rgba(255,255,255,.25);
  border-bottom:1px solid rgba(255,255,255,.25);
}
.leasing-figures>p {
  margin:0;
  padding:1.5rem 1.5rem 1.5rem 0;
  color:#8dccf4;
  font-size:.52rem;
  font-weight:900;
  letter-spacing:.18em;
  line-height:1.6;
  text-transform:uppercase;
}
.leasing-figures article {
  display:grid;
  align-content:center;
  min-height:12rem;
  padding:1.5rem 2rem;
  border-left:1px solid rgba(255,255,255,.2);
  transition:background-color .3s ease,transform .3s ease;
}
.leasing-figures article:hover { background:#0878bd; transform:translateY(-.2rem); }
.leasing-figures b { color:#fff; font-family:Georgia,serif; font-size:clamp(2.8rem,4.5vw,5rem); font-weight:400; line-height:1; }
.leasing-figures span { margin-top:1rem; color:#b7c7d0; font-size:.62rem; font-weight:800; letter-spacing:.11em; line-height:1.5; text-transform:uppercase; }
.leasing-figures article:hover span { color:#fff; }
.leasing-figures span small { display:block; margin-top:.35rem; color:#8dccf4; font-size:.5rem; }
@media (max-width:950px) {
  .leasing-head,.leasing-editorial { grid-template-columns:1fr; gap:3rem; }
  .leasing-figures { grid-template-columns:1fr 1fr; }
  .leasing-figures>p { grid-column:1/-1; padding-left:0; }
  .leasing-figures article:nth-of-type(odd) { border-left:0; }
  .leasing-figures article { border-top:1px solid rgba(255,255,255,.2); }
}
@media (max-width:650px) {
  .flight-window.leasing-feature { padding:4rem 1.25rem; }
  .leasing-head h2 { font-size:clamp(3rem,14vw,5rem); }
  .leasing-promise { align-items:flex-start; flex-direction:column; }
  .leasing-promise strong { text-align:left; }
  .leasing-copy { padding-left:0; padding-top:1.5rem; border-left:0; border-top:1px solid rgba(141,204,244,.35); }
  .leasing-figures { grid-template-columns:1fr; }
  .leasing-figures article { border-left:0; }
}




/* Expanded asset-ledger introduction. */
.ledger-title { min-width:0; }
.ledger-title h2 { max-width:70rem; }
.ledger-title .ledger-intro {
  max-width:58rem;
  margin:clamp(1.5rem,2.5vw,2.5rem) 0 0;
  color:#596e79;
  font-size:clamp(.92rem,1.1vw,1.05rem);
  line-height:1.75;
}
@media (max-width:900px) {
  .ledger-head { grid-template-columns:1fr; }
  .ledger-head>p,.ledger-title,.ledger-head>span { grid-column:1; }
  .ledger-head>span { text-align:left; }
}

/* Compact two-column asset-ledger header. */
.asset-ledger .ledger-head {
  grid-template-columns:minmax(0,1.05fr) minmax(22rem,.95fr);
  column-gap:clamp(2.5rem,6vw,7rem);
  row-gap:clamp(1.5rem,2.5vw,2.5rem);
  align-items:start;
  padding-bottom:clamp(3rem,4vw,4.5rem);
}
.asset-ledger .ledger-head>p { grid-column:1; grid-row:1; }
.asset-ledger .ledger-head>span { grid-column:2; grid-row:1; align-self:center; text-align:right; }
.asset-ledger .ledger-title { grid-column:1; grid-row:2; }
.asset-ledger .ledger-title h2 {
  max-width:50rem;
  font-size:clamp(2.5rem,4.1vw,4.8rem);
  line-height:.94;
}
.asset-ledger .ledger-summary {
  grid-column:2;
  grid-row:2;
  align-self:end;
  padding:1.5rem 0 1.5rem clamp(1.5rem,3vw,3rem);
  border-left:1px solid #a9b5b7;
}
.asset-ledger .ledger-summary p {
  max-width:40rem;
  margin:0;
  color:#596e79;
  font-size:clamp(.92rem,1.08vw,1.04rem);
  line-height:1.7;
}
@media (max-width:850px) {
  .asset-ledger .ledger-head { grid-template-columns:1fr; row-gap:1.5rem; }
  .asset-ledger .ledger-head>p,.asset-ledger .ledger-head>span,.asset-ledger .ledger-title,.asset-ledger .ledger-summary { grid-column:1; grid-row:auto; }
  .asset-ledger .ledger-head>span { text-align:left; }
  .asset-ledger .ledger-summary { padding:1.5rem 0 0; border-left:0; border-top:1px solid #a9b5b7; }
}

/* Tighten the asset-ledger opening space. */
.asset-ledger {
  padding-top:clamp(3rem,4vw,4.5rem);
}
@media (max-width:600px) {
  .asset-ledger { padding-top:2.75rem; }
}

/* Expanded Global Sourcing / RFQ section. */
.contact-tower {
  grid-template-columns:minmax(0,1.05fr) minmax(24rem,.95fr);
  gap:clamp(3rem,7vw,8rem);
  align-items:center;
}
.tower-copy,.tower-panel { position:relative; z-index:2; }
.tower-copy h2 {
  font-size:clamp(3.4rem,6.2vw,7rem);
  line-height:.82;
}
.tower-copy h2 span { color:transparent; -webkit-text-stroke:1.2px #8dccf4; }
.tower-copy>p {
  max-width:43rem;
  margin:2rem 0 0;
  color:#c2d0d8;
  font-size:clamp(.95rem,1.15vw,1.08rem);
  line-height:1.7;
}
.tower-panel {
  align-self:center;
  padding:clamp(2rem,3vw,3rem);
  border:1px solid rgba(141,204,244,.28);
  background:rgba(5,16,24,.52);
  backdrop-filter:blur(10px);
}
.tower-narrative { margin-bottom:clamp(2rem,3vw,3rem); }
.tower-narrative p {
  margin:0;
  color:#b7c7d0;
  font-size:clamp(.9rem,1vw,1rem);
  line-height:1.7;
}
.tower-narrative p+p {
  margin-top:1.25rem;
  padding-top:1.25rem;
  border-top:1px solid rgba(255,255,255,.14);
}
.tower-panel .tower-links a {
  transition:padding-left .25s ease,background-color .25s ease,color .25s ease;
}
.tower-panel .tower-links a:hover {
  padding-left:1rem;
  background:rgba(8,120,189,.3);
}
@media (max-width:950px) {
  .contact-tower { grid-template-columns:1fr; gap:3rem; }
  .tower-panel { width:100%; }
}
@media (max-width:600px) {
  .tower-copy h2 { font-size:clamp(3rem,14vw,4.8rem); }
  .tower-panel { padding:1.5rem; backdrop-filter:none; }
  .tower-links a { grid-template-columns:1fr auto; }
  .tower-links b { grid-column:1/-1; }
}

/* ================================================================
   AIRCRAFT GLOBAL SOURCING FEATURE / CORRECTED LOCATION
   ================================================================ */
.runway-break.sourcing-feature {
  position:relative;
  display:block;
  height:auto;
  min-height:clamp(42rem,82svh,58rem);
  padding:clamp(4.5rem,7vw,7rem) clamp(1.5rem,8vw,8rem);
  overflow:hidden;
  background:#090e12;
}
.sourcing-feature .runway-image { z-index:0; }
.sourcing-feature .runway-image::after {
  background:linear-gradient(90deg,rgba(2,7,10,.9) 0%,rgba(2,7,10,.62) 50%,rgba(2,7,10,.74) 100%);
}
.runway-content {
  position:relative;
  z-index:3;
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(22rem,.92fr);
  gap:clamp(3rem,8vw,9rem);
  align-items:end;
  max-width:105rem;
  min-height:calc(clamp(42rem,82svh,58rem) - clamp(9rem,14vw,14rem));
  margin:0 auto;
}
.runway-statement small {
  display:block;
  margin-bottom:1.5rem;
  color:#8dccf4;
  font-size:.55rem;
  font-weight:900;
  letter-spacing:.2em;
  text-transform:uppercase;
}
.runway-statement h2 {
  margin:0;
  font-family:Georgia,serif;
  font-size:clamp(3rem,5.2vw,6rem);
  font-weight:400;
  line-height:1.02;
  letter-spacing:-.045em;
}
.runway-statement h2 strong { color:#8dccf4; font-weight:400; }
.runway-panel {
  align-self:end;
  padding:clamp(2rem,3vw,3rem);
  border:1px solid rgba(141,204,244,.3);
  background:rgba(5,13,19,.66);
  box-shadow:0 1.5rem 4rem rgba(0,0,0,.2);
  backdrop-filter:blur(10px);
}
.runway-panel h3 {
  margin:1.8rem 0;
  color:#fff;
  font-family:Georgia,serif;
  font-size:clamp(1.9rem,3vw,3.2rem);
  font-weight:400;
  line-height:1.05;
}
.runway-panel p {
  margin:0;
  color:#bdcbd3;
  font-size:clamp(.88rem,1vw,1rem);
  line-height:1.7;
}
.runway-panel p+p {
  margin-top:1.15rem;
  padding-top:1.15rem;
  border-top:1px solid rgba(255,255,255,.14);
}
@media (max-width:900px) {
  .runway-content { grid-template-columns:1fr; align-items:start; min-height:0; }
  .runway-panel { width:100%; }
}
@media (max-width:600px) {
  .runway-break.sourcing-feature { padding:4rem 1.25rem; }
  .runway-panel { padding:1.5rem; backdrop-filter:none; }
}

/* Restore the final RFQ tower to its concise two-column composition. */
.contact-tower {
  grid-template-columns:1fr 1fr;
  gap:clamp(3rem,7vw,8rem);
  align-items:center;
}
.contact-tower .tower-copy h2 {
  font-size:clamp(4rem,8vw,9rem);
  line-height:.8;
}
.contact-tower .tower-links {
  align-self:center;
  width:100%;
}
.contact-tower .tower-links a {
  align-items:center;
  padding:clamp(1.65rem,2vw,2.1rem) clamp(1rem,1.5vw,1.5rem);
  transition:background-color .3s ease,border-color .3s ease,color .3s ease,transform .3s ease,box-shadow .3s ease;
}
.contact-tower .tower-links span { font-size:clamp(.62rem,.72vw,.75rem); }
.contact-tower .tower-links b { font-size:clamp(.9rem,1vw,1.05rem); }
.contact-tower .tower-links a:hover,
.contact-tower .tower-links a:focus-visible {
  padding-left:clamp(1rem,1.5vw,1.5rem);
  background:#e85416;
  border-color:#ff8a55;
  color:#fff;
  box-shadow:0 1rem 2.5rem rgba(232,84,22,.28);
  transform:scale(1.025);
}
.contact-tower .tower-links a:hover span,
.contact-tower .tower-links a:focus-visible span { color:#fff; }
@media (max-width:900px) {
  .contact-tower { grid-template-columns:1fr; }
}

/* Align both Global Sourcing columns and add a technical grid overlay. */
.runway-break.sourcing-feature::after {
  content:"";
  position:absolute;
  z-index:1;
  inset:0;
  background-image:linear-gradient(rgba(141,204,244,.09) 1px,transparent 1px),linear-gradient(90deg,rgba(141,204,244,.09) 1px,transparent 1px);
  background-size:clamp(4rem,7vw,7rem) clamp(4rem,7vw,7rem);
  mask-image:linear-gradient(to bottom,transparent 2%,#000 18%,#000 88%,transparent);
  pointer-events:none;
}
.sourcing-feature .runway-content {
  align-items:center;
}
.sourcing-feature .runway-statement,
.sourcing-feature .runway-panel {
  align-self:center;
}
@media (max-width:900px) {
  .sourcing-feature .runway-content { align-items:start; }
  .sourcing-feature .runway-statement,.sourcing-feature .runway-panel { align-self:auto; }
}

/* Founder-note panel repurposed as a compact testimonial feature. */
.testimonials-panel {
  justify-content:flex-start;
}
.testimonials-panel>h2 {
  position:relative;
  margin:clamp(1.25rem,2vw,2rem) 0 0;
  color:#0d1f2a;
  font-family:Georgia,serif;
  font-size:clamp(2.2rem,3.2vw,3.8rem);
  font-weight:400;
  line-height:.95;
  letter-spacing:-.045em;
}
.testimonial-list {
  position:relative;
  display:grid;
  gap:0;
  margin-top:clamp(1.5rem,2.5vw,2.5rem);
  border-top:1px solid #aeb9ba;
}
.testimonial-list article {
  position:relative;
  padding:clamp(1.25rem,2vw,2rem) 0;
}
.testimonial-list article+article { border-top:1px solid #c2c9c9; }
.testimonials-panel .testimonial-list blockquote {
  margin:0;
  color:#172b36;
  font-size:clamp(1.15rem,1.55vw,1.5rem);
  line-height:1.35;
  letter-spacing:-.02em;
}
.testimonial-attribution {
  display:flex;
  justify-content:space-between;
  align-items:end;
  gap:1rem;
  margin-top:1.2rem;
}
.testimonial-attribution strong {
  color:#0878bd;
  font-size:.58rem;
  letter-spacing:.13em;
  text-transform:uppercase;
}
.testimonial-attribution small {
  color:#6b7d86;
  font-size:.52rem;
  letter-spacing:.1em;
  text-align:right;
  text-transform:uppercase;
}
.testimonials-panel.is-visible>h2 { animation:founder-quote-in .9s .12s cubic-bezier(.18,.72,.2,1) both; }
.testimonials-panel.is-visible .testimonial-list article:first-child { animation:founder-copy-in .8s .28s ease both; }
.testimonials-panel.is-visible .testimonial-list article:last-child { animation:founder-copy-in .8s .42s ease both; }
@media (max-width:720px) {
  .testimonial-attribution { align-items:flex-start; flex-direction:column; }
  .testimonial-attribution small { text-align:left; }
}

/* ================================================================
   AVIATION INSIGHTS + TESTIMONIALS PAIR / 2026-08-20
   Replaces the former image and experience badge in the left column.
   ================================================================ */
.insights-panel {
  position:relative;
  z-index:2;
  grid-column:1;
  display:flex;
  flex-direction:column;
  min-width:0;
  padding:clamp(2.25rem,3.5vw,4rem);
  overflow:hidden;
  background:#102735;
  color:#fff;
  box-shadow:0 1.25rem 3.5rem rgba(0,20,30,.14);
}
.insights-panel::after {
  content:"";
  position:absolute;
  right:-7rem;
  top:-7rem;
  width:20rem;
  aspect-ratio:1;
  border:1px solid rgba(141,204,244,.18);
  border-radius:50%;
  box-shadow:0 0 0 3rem transparent,0 0 0 calc(3rem + 1px) rgba(141,204,244,.1);
  pointer-events:none;
}
.insights-panel>small {
  position:relative;
  z-index:1;
  color:#8dccf4;
  font-size:.55rem;
  font-weight:900;
  letter-spacing:.18em;
}
.insights-panel>h2 {
  position:relative;
  z-index:1;
  margin:clamp(1.25rem,2vw,2rem) 0 0;
  font-family:Georgia,serif;
  font-size:clamp(2.4rem,3.8vw,4.5rem);
  font-weight:400;
  line-height:.92;
  letter-spacing:-.05em;
}
.insights-panel>h2 span { color:#8dccf4; }
.insights-panel>p {
  position:relative;
  z-index:1;
  max-width:38rem;
  margin:1.5rem 0 0;
  color:#b7c8d1;
  font-size:clamp(.9rem,1vw,1rem);
  line-height:1.65;
}
.insights-list {
  position:relative;
  z-index:1;
  display:grid;
  margin-top:clamp(1.75rem,3vw,3rem);
  border-top:1px solid rgba(255,255,255,.24);
}
.insights-list article {
  padding:1.25rem .25rem;
  border-bottom:1px solid rgba(255,255,255,.18);
  transition:padding-left .25s ease,background-color .25s ease;
}
.insights-list article:hover { padding-left:1rem; background:rgba(8,120,189,.26); }
.insights-list time {
  color:#e85416;
  font-size:.52rem;
  font-weight:900;
  letter-spacing:.13em;
  text-transform:uppercase;
}
.insights-list h3 {
  margin:.7rem 0 0;
  font-family:Georgia,serif;
  font-size:clamp(1.05rem,1.35vw,1.35rem);
  font-weight:400;
  line-height:1.3;
}
.insights-actions {
  position:relative;
  z-index:1;
  display:flex;
  flex-wrap:wrap;
  gap:.65rem;
  margin-top:auto;
  padding-top:clamp(1.5rem,2.5vw,2.5rem);
}
.insights-actions a {
  display:inline-flex;
  justify-content:space-between;
  gap:2rem;
  min-width:10.5rem;
  padding:.85rem 1rem;
  border:1px solid rgba(141,204,244,.55);
  color:#fff;
  font-size:.55rem;
  font-weight:900;
  letter-spacing:.13em;
  text-decoration:none;
  text-transform:uppercase;
  transition:background-color .25s ease,color .25s ease,transform .25s ease;
}
.insights-actions a:first-child { background:#e85416; border-color:#e85416; }
.insights-actions a:hover,.insights-actions a:focus-visible { background:#8dccf4; border-color:#8dccf4; color:#07131e; outline:0; transform:translateY(-2px); }
.insights-panel.is-visible>h2 { animation:founder-quote-in .95s .12s cubic-bezier(.18,.72,.2,1) both; }
.insights-panel.is-visible .insights-list article:first-child { animation:founder-copy-in .8s .26s ease both; }
.insights-panel.is-visible .insights-list article:last-child { animation:founder-copy-in .8s .4s ease both; }
@media (max-width:720px) {
  .insights-panel,.founder-note { grid-column:1; }
  .insights-actions { margin-top:1rem; }
  .insights-actions a { flex:1 1 100%; }
}

/* ================================================================
   UPCOMING AVIATION WEEK EVENTS
   Replaces the former testimonial panel in the right column.
   ================================================================ */
.events-panel {
  position:relative;
  z-index:2;
  grid-column:2;
  display:flex;
  flex-direction:column;
  min-width:0;
  padding:clamp(2.25rem,3.5vw,4rem);
  overflow:hidden;
  background:#f1f1ec;
  color:#0d1f2a;
  box-shadow:0 1.25rem 3.5rem rgba(0,20,30,.1);
}
.events-panel::before {
  content:"EVENTS";
  position:absolute;
  right:-.25rem;
  top:-.5rem;
  color:rgba(8,120,189,.055);
  font-family:Arial,sans-serif;
  font-size:clamp(5rem,9vw,9rem);
  font-weight:900;
  letter-spacing:-.08em;
}
.events-panel>small,.events-panel>h2,.events-panel>p,.events-list { position:relative; z-index:1; }
.events-panel>small {
  color:#0878bd;
  font-size:.55rem;
  font-weight:900;
  letter-spacing:.18em;
}
.events-panel>h2 {
  margin:clamp(1.25rem,2vw,2rem) 0 0;
  font-family:Georgia,serif;
  font-size:clamp(2.6rem,4vw,4.8rem);
  font-weight:400;
  line-height:.9;
  letter-spacing:-.05em;
}
.events-panel>h2 span { color:#0878bd; }
.events-panel>p {
  max-width:32rem;
  margin:1.5rem 0 0;
  color:#60737d;
  font-size:clamp(.9rem,1vw,1rem);
  line-height:1.65;
}
.events-list {
  display:grid;
  margin-top:auto;
  padding-top:clamp(2rem,3vw,3rem);
}
.events-list>a {
  display:grid;
  grid-template-columns:auto 1fr auto;
  gap:1.25rem;
  align-items:center;
  padding:clamp(1.25rem,2vw,2rem) .25rem;
  border-top:1px solid #adb9ba;
  color:#0d1f2a;
  text-decoration:none;
  transition:padding-left .3s ease,background-color .3s ease,color .3s ease;
}
.events-list>a:last-child { border-bottom:1px solid #adb9ba; }
.events-list>a>b {
  color:#0878bd;
  font-size:.52rem;
  letter-spacing:.15em;
}
.events-list>a div small {
  color:#6c7d85;
  font-size:.48rem;
  font-weight:900;
  letter-spacing:.15em;
  text-transform:uppercase;
}
.events-list h3 {
  margin:.45rem 0 0;
  font-family:Georgia,serif;
  font-size:clamp(1.35rem,2vw,2rem);
  font-weight:400;
}
.events-list>a>span { color:#e85416; font-size:1.2rem; }
.events-list>a:hover,.events-list>a:focus-visible {
  padding-left:1rem;
  background:#0878bd;
  color:#fff;
  outline:0;
}
.events-list>a:hover b,.events-list>a:focus-visible b,
.events-list>a:hover div small,.events-list>a:focus-visible div small { color:#bfe7ff; }
.events-panel.is-visible>h2 { animation:founder-quote-in .95s .12s cubic-bezier(.18,.72,.2,1) both; }
.events-panel.is-visible .events-list>a:first-child { animation:founder-copy-in .8s .28s ease both; }
.events-panel.is-visible .events-list>a:last-child { animation:founder-copy-in .8s .42s ease both; }
@media (max-width:720px) {
  .events-panel { grid-column:1; }
  .events-list { margin-top:1rem; }
}

/* ================================================================
   HOMEPAGE FAQ / 2026-08-20
   Native accessible disclosure panels replace the charity feature.
   ================================================================ */
.faq-section {
  position:relative;
  display:grid;
  grid-template-columns:minmax(18rem,.72fr) minmax(0,1.28fr);
  gap:clamp(3rem,8vw,9rem);
  padding:clamp(4.5rem,7vw,7rem) clamp(1.5rem,8vw,8rem);
  overflow:hidden;
  background:#18313f;
  color:#fff;
}
.faq-section::before {
  content:"";
  position:absolute;
  right:clamp(-8rem,-4vw,-2rem);
  top:0;
  width:min(58vw,72rem);
  height:100%;
  background:url("../images/cut-logo-for-panel.png") right top/contain no-repeat;
  opacity:.24;
  pointer-events:none;
}
.faq-heading,.faq-list { position:relative; z-index:1; }
.faq-heading small {
  color:#8dccf4;
  font-size:.55rem;
  font-weight:900;
  letter-spacing:.18em;
}
.faq-heading h2 {
  margin:1.75rem 0 0;
  font-family:Georgia,serif;
  font-size:clamp(3rem,5.5vw,6.5rem);
  font-weight:400;
  line-height:.88;
  letter-spacing:-.055em;
}
.faq-heading h2 span { color:#8dccf4; }
.faq-heading>p {
  margin:clamp(3rem,5vw,5rem) 0 0;
  color:#b7c8d1;
  font-size:.62rem;
  font-weight:900;
  letter-spacing:.15em;
  text-transform:uppercase;
}
.faq-contact {
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:.75rem;
  margin-top:1rem;
}
.faq-contact a {
  color:#fff;
  font-family:Georgia,serif;
  font-size:clamp(1.2rem,1.8vw,1.7rem);
  text-decoration:none;
  transition:color .25s ease,transform .25s ease;
}
.faq-contact a:hover,.faq-contact a:focus-visible { color:#8dccf4; outline:0; transform:translateX(.25rem); }
.faq-list { align-self:start; border-top:1px solid rgba(255,255,255,.3); }
.faq-list details { border-bottom:1px solid rgba(255,255,255,.24); }
.faq-list summary {
  display:grid;
  grid-template-columns:3rem 1fr 1.5rem;
  gap:1rem;
  align-items:center;
  padding:clamp(1.25rem,2vw,1.8rem) .5rem;
  cursor:pointer;
  list-style:none;
  transition:background-color .25s ease,padding-left .25s ease;
}
.faq-list summary::-webkit-details-marker { display:none; }
.faq-list summary:hover { padding-left:1rem; background:rgba(8,120,189,.3); }
.faq-list summary b { color:#8dccf4; font-size:.55rem; letter-spacing:.13em; }
.faq-list summary span {
  font-family:Georgia,serif;
  font-size:clamp(1.15rem,1.7vw,1.6rem);
  line-height:1.25;
}
.faq-list summary i {
  position:relative;
  width:1rem;
  height:1rem;
}
.faq-list summary i::before,.faq-list summary i::after {
  content:"";
  position:absolute;
  left:0;
  top:50%;
  width:100%;
  height:1px;
  background:#e85416;
  transition:transform .3s ease;
}
.faq-list summary i::after { transform:rotate(90deg); }
.faq-list details[open] summary { background:rgba(8,120,189,.2); }
.faq-list details[open] summary i::after { transform:rotate(0); }
.faq-list details>p {
  max-width:52rem;
  margin:0;
  padding:0 3rem clamp(1.5rem,2.5vw,2.5rem) 4.5rem;
  color:#b9c9d2;
  font-size:clamp(.92rem,1.05vw,1.03rem);
  line-height:1.7;
  animation:faq-answer-in .35s ease both;
}
@keyframes faq-answer-in { from { opacity:0; transform:translateY(-.4rem); } to { opacity:1; transform:none; } }
@media (max-width:850px) {
  .faq-section { grid-template-columns:1fr; gap:3rem; }
  .faq-heading>p { margin-top:2.5rem; }
}
@media (max-width:600px) {
  .faq-section { padding:4rem 1.25rem; }
  .faq-list summary { grid-template-columns:2.25rem 1fr 1rem; gap:.65rem; }
  .faq-list details>p { padding-left:2.9rem; padding-right:1rem; }
}

@media (max-width:900px) { .faq-section::before { right:-10rem; width:48rem; opacity:.18; } }
@media (max-width:600px) { .faq-section::before { right:-12rem; width:36rem; opacity:.12; } }


/* Mobile touch and header corrections — 2026-08-21 */
@media (max-width:900px) {
  .dossier-nav .brand-logo {
    width:min(52vw,12.5rem);
    overflow:visible;
  }
  .dossier-nav .brand-logo img,
  .dossier-nav.is-scrolled .brand-logo img {
    width:100%;
    height:auto;
    max-height:3rem;
    object-fit:contain;
    object-position:left center;
    transform:none;
  }
  .dossier-nav .nav-linkedin { display:none; }
  .model-interaction-zone {
    top:55%;
    width:min(68vw,22rem);
    height:min(34svh,22rem);
    touch-action:none;
  }
}