/* AIR adapter, services and work. The legacy site.css vocabulary restated in
   Air tokens. Monochrome at rest, coral only under your hands. No new colours,
   fonts or shadows: every value below is an Air token or a token-derived value. */

/* legacy custom properties bridged onto Air tokens */
.air{
  --paper:var(--bg);
  --paper-2:var(--tint);
  --ink-soft:var(--ink);
  --coral-deep:var(--ink);
  --line-strong:var(--line);
  --gut:var(--gutter);
  --disp:'Hanken Grotesk Var',system-ui,-apple-system,'Segoe UI',Roboto,'Helvetica Neue',Arial,sans-serif;
  --grot:var(--disp);
  --mono:var(--disp);
  --body:var(--disp);
}
/* the ring-cursor overlay stays in the DOM so the page text is unchanged, and is never painted */
.cur__x,.cur__y,.cur__read,.cur__dot{display:none!important}

/* ---------- layout ---------- */
.air .wrap{padding-inline:var(--gutter)}
.air .wrap>*{max-width:var(--shell);margin-inline:auto}
.air .sec{padding-block:clamp(56px,9vh,120px)}
.air .sec+.sec{border-top:1px solid var(--line)}
.air .sec[style*="paper-2"]+.sec,.air .sec+.sec[style*="paper-2"]{border-top:0}

/* ---------- hero ---------- */
.air .phero{
  position:relative;min-height:52svh;display:flex;flex-direction:column;justify-content:flex-end;
  padding-top:clamp(40px,8vh,96px);padding-bottom:clamp(34px,6vh,74px);
}
.air .phero h1{font-size:var(--fs-d1);font-weight:300;line-height:1.04;letter-spacing:-.025em;text-wrap:balance}
.air .phero h1 em,.air .phero h1 b{font-style:normal;font-weight:800}
.air .phero .ln{display:block}
.air .cyc,.air .cyc .slot{display:inline}
.air .cyc .slot b{font-weight:800}
.air .crumb{font-size:.8125rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--dim);margin-bottom:22px}
.air .sub{margin-top:30px;display:flex;justify-content:space-between;align-items:flex-end;gap:32px;flex-wrap:wrap}
.air .acts{display:flex;flex-wrap:wrap;gap:12px;align-items:center}

/* ---------- type ---------- */
.air .lead-p{font-size:var(--fs-lede);line-height:1.6;color:var(--dim);max-width:56ch}
.air .lead-p em{font-style:normal;font-weight:700;color:var(--ink)}
.air .bighead{font-size:var(--fs-h2);font-weight:300;line-height:1.1;letter-spacing:-.02em;text-wrap:balance}
.air .bighead em,.air .bighead b{font-style:normal;font-weight:800}
.air .coral{color:inherit}
.air .kick,.air .idx,.air .sechead .lbl,.air .labsnote,.air .shotcap,.air .draghint,.air .ba-note,
.air .proofbar,.air .statline,.air .proofline,.air .scar,.air .meta div{
  font-size:.8125rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--dim);line-height:1.6;
}
.air .sechead{display:flex;justify-content:space-between;align-items:baseline;gap:20px;border-bottom:1px solid var(--line);padding-bottom:14px;margin-bottom:clamp(30px,5vh,60px)}
.air .proofbar{display:flex;gap:24px;flex-wrap:wrap}
.air .statline,.air .proofline{max-width:74ch;text-transform:none;letter-spacing:0;font-weight:400;font-size:var(--fs-small)}
.air .proofline{border-bottom:1px solid var(--line);padding:14px 0;margin-top:14px}
.air .proofline b{font-weight:800;color:var(--ink)}
.air .scar{display:flex;align-items:center;gap:10px;margin-top:28px}
.air .scar .dot{width:8px;height:8px;border-radius:50%;background:var(--coral);flex:0 0 auto}

/* ---------- prose links inside converted bodies: the coral marker draw ---------- */
.air .blk a,.air .engage a,.air .applies a,.air .lead-p a,.air .faq a,.air .faqs a,
.air .sp a,.air .auto p a,.air .aicard p a,.air .step a,.air .crumb a,.air .noitem a,.air .oseng a{
  color:inherit;
  background-image:linear-gradient(var(--coral),var(--coral));
  background-repeat:no-repeat;background-position:100% 100%;background-size:0 3px;
  box-shadow:inset 0 -1px 0 0 var(--line);
  transition:background-size 180ms var(--ease-out);
}
.air .blk a:hover,.air .engage a:hover,.air .applies a:hover,.air .lead-p a:hover,.air .faq a:hover,
.air .faqs a:hover,.air .sp a:hover,.air .auto p a:hover,.air .aicard p a:hover,.air .step a:hover,
.air .crumb a:hover,.air .noitem a:hover,.air .oseng a:hover{background-position:0 100%;background-size:100% 3px}

/* ---------- hover lift, replaces the old hard ink shadow ---------- */
.air .tilt,.air .tlift,.air .tilt-lift,.air .ans,.air .refwall a{
  transition:transform var(--t-med) var(--ease-out),border-color var(--t-fast) linear,background-color var(--t-fast) linear;
}
.air .tilt:hover,.air .tlift:hover,.air .tilt-lift:hover,.air .ans:hover,.air .refwall a:hover{transform:translateY(-3px)}

/* ---------- panels: hairline frames, no fills ---------- */
.air .stack,.air .statstrip,.air .metrics,.air .proof,.air .ostrip,.air .aicard,.air .auto,
.air .relcard,.air .rel a,.air .ans,.air .tier,.air .auditstrip,.air .applies,.air .nextcase,
.air .trow,.air .cscard,.air .pcard,.air .shotframe,.air .refwall a,.air .chains span,.air .osstats{
  border:1px solid var(--line);background:transparent;box-shadow:none;
}
.air .stack{padding:clamp(20px,2.4vw,32px)}
.air .stack .ih{display:flex;justify-content:space-between;gap:14px;font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--dim);border-bottom:1px solid var(--ink);padding-bottom:12px;margin-bottom:4px}
.air .li{display:flex;align-items:baseline;gap:12px;padding:13px 0;border-bottom:1px solid var(--line)}
.air .li .nm{font-weight:700;font-size:.9375rem;line-height:1.35}
.air .li .nm small{display:block;font-weight:400;font-size:.8125rem;color:var(--dim);margin-top:4px;line-height:1.5}
.air .li .lead{flex:1;border-bottom:1px dotted var(--line);transform:translateY(-3px)}
.air .li .pr{font-size:.875rem;white-space:nowrap;font-variant-numeric:tabular-nums}
.air .li.free .pr{font-weight:700}
.air .price{margin-top:20px;display:flex;align-items:flex-end;justify-content:space-between;gap:14px;flex-wrap:wrap;border-top:1px solid var(--ink);padding-top:18px}
.air .price .pl,.air .aprice .pl,.air .pcell .pl{display:block;font-size:.8125rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--dim);line-height:1.6}
.air .price .pv,.air .aprice .pv,.air .pcell .pv{
  font-size:clamp(2rem,4vw,3.25rem);font-weight:800;line-height:1.05;letter-spacing:-.025em;
  font-variant-numeric:tabular-nums;color:var(--ink);display:block;
}
.air .aprice .pl{margin:10px 0 18px}

/* ---------- guarantee note, was a rotated coral stamp ---------- */
.air .stamp{border-left:2px solid var(--ink);padding:4px 0 4px 20px;max-width:400px;transform:none}
.air .stamp .h{font-size:var(--fs-h4);font-weight:800;line-height:1.25;letter-spacing:-.01em}
.air .stamp .p{font-size:var(--fs-small);color:var(--dim);margin-top:8px;line-height:1.55}

/* ---------- steps ---------- */
.air .steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--ink)}
.air .step{padding:clamp(24px,3vw,38px) clamp(18px,2.4vw,32px) clamp(30px,5vh,54px);border-bottom:1px solid var(--line)}
.air .step:not(:last-child){border-right:1px solid var(--line)}
.air .step .sn{font-size:.8125rem;font-weight:700;letter-spacing:.08em;color:var(--dim);font-variant-numeric:tabular-nums}
.air .step .st{font-size:var(--fs-h4);font-weight:300;line-height:1.2;letter-spacing:-.01em;margin-top:14px}
.air .step .st em,.air .step .st b{font-style:normal;font-weight:800}
.air .step .sp{font-size:var(--fs-small);line-height:1.65;color:var(--prose);margin-top:12px}
@media(max-width:820px){.air .steps{grid-template-columns:1fr}.air .step:not(:last-child){border-right:0}}

/* ---------- hit list rows, the Air guide row ---------- */
.air .faillist{border-top:1px solid var(--ink)}
.air .fail{
  display:grid;grid-template-columns:46px 1fr auto;gap:18px;align-items:center;
  border-bottom:1px solid var(--line);padding:clamp(15px,2.2vh,24px) 0;
  transition:transform var(--t-fast) var(--ease-out);
}
.air .fail:hover{transform:translateX(4px)}
.air .fail .n{font-size:.8125rem;font-weight:700;color:var(--dim);font-variant-numeric:tabular-nums;transition:color var(--t-fast) linear}
.air .fail:hover .n{color:var(--coral-ink)}
.air .fail .t{font-size:var(--fs-h4);font-weight:300;line-height:1.2;letter-spacing:-.01em}
.air .fail .v{font-size:var(--fs-small);text-align:right;color:var(--dim);max-width:26ch}
@media(max-width:700px){.air .fail{grid-template-columns:36px 1fr;gap:12px}.air .fail .v{grid-column:2;text-align:left}}

/* ---------- card grids ---------- */
.air .cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--ink)}
.air .card{padding:clamp(22px,2.6vw,34px);border-right:1px solid var(--line);border-bottom:1px solid var(--line);transition:background-color var(--t-fast) linear}
.air .card:hover{background:var(--tint)}
.air .card .cn{font-size:.8125rem;font-weight:700;letter-spacing:.08em;color:var(--dim);font-variant-numeric:tabular-nums}
.air .card h3{font-size:var(--fs-h4);font-weight:300;line-height:1.2;letter-spacing:-.01em;margin:14px 0 10px}
.air .card p{font-size:var(--fs-small);line-height:1.6;color:var(--prose)}
.air .card .more,.air .aicard .more,.air .cscard .go,.air .ans .go{
  display:inline-block;margin-top:16px;font-size:.8125rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink);
  background-image:linear-gradient(var(--coral),var(--coral));background-repeat:no-repeat;
  background-position:100% 100%;background-size:0 2px;transition:background-size 180ms var(--ease-out);
}
.air .card:hover .more,.air .aicard:hover .more,.air .cscard:hover .go,.air .ans:hover .go{background-position:0 100%;background-size:100% 2px}
@media(max-width:820px){.air .cards{grid-template-columns:1fr}}

/* ---------- stat strips, the Air counter ---------- */
.air .statstrip,.air .proof,.air .osstats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
.air .statstrip[data-cols="4"],.air .proof{grid-template-columns:repeat(4,minmax(0,1fr))}
.air .statstrip .cell,.air .osstats .cell,.air .pcell{padding:clamp(20px,2.6vw,34px);border-right:1px solid var(--line)}
.air .statstrip .cell:last-child,.air .osstats .cell:last-child,.air .pcell:last-child{border-right:0}
.air .statstrip .v,.air .osstats .v{
  font-size:clamp(1.75rem,3.4vw,2.75rem);font-weight:800;line-height:1.05;letter-spacing:-.025em;
  font-variant-numeric:tabular-nums;color:var(--ink);
}
.air .statstrip .v .fr{display:block;font-size:.75rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--dim);margin-bottom:8px;line-height:1.6}
.air .statstrip .l,.air .osstats .l{display:block;font-size:.875rem;color:var(--dim);margin-top:12px;line-height:1.55;text-transform:none;letter-spacing:0}
@media(max-width:1100px){.air .statstrip,.air .statstrip[data-cols="4"],.air .proof{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.air .statstrip,.air .statstrip[data-cols="4"],.air .proof,.air .osstats{grid-template-columns:1fr}
  .air .statstrip .cell,.air .osstats .cell,.air .pcell{border-right:0;border-bottom:1px solid var(--line)}
  .air .statstrip .cell:last-child,.air .osstats .cell:last-child,.air .pcell:last-child{border-bottom:0}}

/* ---------- offer grid, offer name ---------- */
.air .offergrid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(30px,5vw,80px);align-items:start}
@media(max-width:900px){.air .offergrid{grid-template-columns:1fr;gap:46px}}
.air .offer__name{font-size:var(--fs-d2);font-weight:300;line-height:1.06;letter-spacing:-.025em}
.air .offer__name em,.air .offer__name b{font-style:normal;font-weight:800}

/* ---------- offer strip ---------- */
.air .ostrip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:clamp(30px,5vh,48px)}
.air .ostrip .oc{padding:clamp(18px,2.2vw,28px)}
.air .ostrip .oc+.oc{border-left:1px solid var(--line)}
.air .ostrip .ol{font-size:.75rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--dim);line-height:1.6}
.air .ostrip .ov{font-size:var(--fs-h4);font-weight:300;line-height:1.2;letter-spacing:-.01em;margin-top:10px}
.air .ostrip .ov em,.air .ostrip .ov b{font-style:normal;font-weight:800}
.air .ostrip .og{font-size:var(--fs-small);color:var(--dim);line-height:1.6;margin-top:8px}
@media(max-width:760px){.air .ostrip{grid-template-columns:1fr}.air .ostrip .oc+.oc{border-left:0;border-top:1px solid var(--line)}}

/* ---------- feature cards ---------- */
.air .aigrid{display:grid;grid-template-columns:1.15fr .85fr;gap:18px}
.air .autogrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.air .grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.air .aicard,.air .auto{padding:clamp(22px,2.6vw,34px)}
.air .aicard .an,.air .auto .an{font-size:.8125rem;font-weight:700;letter-spacing:.08em;color:var(--dim);font-variant-numeric:tabular-nums}
.air .aicard h3,.air .auto h3{font-size:var(--fs-h4);font-weight:300;line-height:1.2;letter-spacing:-.01em;margin:12px 0 10px}
.air .aicard p,.air .auto p{font-size:var(--fs-small);line-height:1.65;color:var(--prose);max-width:52ch}
@media(max-width:900px){.air .autogrid,.air .grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:820px){.air .aigrid{grid-template-columns:1fr}}
@media(max-width:620px){.air .autogrid,.air .grid{grid-template-columns:1fr}}

/* ---------- related cards ---------- */
.air .rel{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:18px}
.air .relgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(16px,2vw,24px)}
.air .rel a,.air .relcard{display:block;padding:clamp(18px,2.2vw,26px);transition:transform var(--t-med) var(--ease-out),background-color var(--t-fast) linear}
.air .rel a:hover,.air .relcard:hover{transform:translateY(-3px);background:var(--tint)}
.air .rel a .k,.air .relcard .rk{font-size:.75rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--dim);line-height:1.6}
.air .rel a .t,.air .relcard .rt{font-size:var(--fs-h4);font-weight:300;line-height:1.2;letter-spacing:-.01em;margin-top:8px}
.air .relcard .rp{font-size:var(--fs-small);line-height:1.6;color:var(--prose);margin-top:8px}
@media(max-width:760px){.air .relgrid{grid-template-columns:1fr}}

/* ---------- audit strip, answer cards, tiers ---------- */
.air .auditstrip{padding:clamp(24px,3.4vw,44px);display:grid;grid-template-columns:1.4fr .6fr;gap:clamp(24px,4vw,56px);align-items:center}
.air .auditstrip .badge{display:inline-block;font-size:.75rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;border:1px solid var(--line);padding:6px 10px;color:var(--dim)}
.air .auditstrip h3{font-size:var(--fs-h3);font-weight:300;line-height:1.15;letter-spacing:-.015em;margin:16px 0 12px}
.air .auditstrip p{font-size:var(--fs-small);line-height:1.65;color:var(--prose);max-width:56ch}
.air .auditstrip .guar{font-size:var(--fs-small);font-weight:700;margin-top:12px}
@media(max-width:860px){.air .auditstrip{grid-template-columns:1fr}}
.air .anslist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;max-width:900px;margin-top:10px}
.air .ans{padding:20px 22px;display:block}
.air .ans h3{font-weight:700;font-size:1.0625rem;line-height:1.3;margin-bottom:6px}
.air .ans p{font-size:var(--fs-small);line-height:1.6;color:var(--prose)}
@media(max-width:740px){.air .anslist{grid-template-columns:1fr}}
.air .tiers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:clamp(34px,5vh,60px)}
.air .tier{padding:clamp(24px,2.8vw,34px);display:flex;flex-direction:column}
.air .tier.feat{border-color:var(--ink);border-width:2px}
.air .tier .tl{font-size:.75rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--dim);line-height:1.6}
.air .tier .pr{font-size:clamp(1.75rem,3.4vw,2.5rem);font-weight:800;line-height:1.05;letter-spacing:-.025em;margin-top:12px;font-variant-numeric:tabular-nums}
.air .tier .meta{font-size:var(--fs-small);color:var(--dim);margin-top:8px}
.air .tier p{font-size:var(--fs-small);line-height:1.6;color:var(--prose);margin:18px 0 24px;flex:1}
.air .tier .air-btn{justify-content:center;width:100%}
@media(max-width:900px){.air .tiers{grid-template-columns:1fr}}
.air .tierrow{display:grid;grid-template-columns:auto 1fr auto;gap:14px 22px;align-items:baseline;padding:18px 0;border-bottom:1px solid var(--line)}
.air .tierrow .tn{font-size:var(--fs-h4);font-weight:300;letter-spacing:-.01em}
.air .tierrow .td{color:var(--prose);font-size:var(--fs-small);line-height:1.6}
.air .tierrow .tp{font-weight:800;white-space:nowrap;font-variant-numeric:tabular-nums}
@media(max-width:700px){.air .tierrow{grid-template-columns:1fr auto}.air .tierrow .td{grid-column:1/-1}}

/* ---------- ledger rows (websites tiers) ---------- */
.air .trow{display:grid;grid-template-columns:44px 1fr auto auto;align-items:center;gap:clamp(14px,2vw,26px);padding:clamp(18px,2.4vw,28px);margin-top:16px;transition:transform var(--t-fast) var(--ease-out),background-color var(--t-fast) linear}
.air .trow:hover{transform:translateX(4px);background:var(--tint)}
.air .trow .tn{font-size:.8125rem;font-weight:700;color:var(--dim);font-variant-numeric:tabular-nums}
.air .trow .tt{font-size:var(--fs-h4);font-weight:300;line-height:1.2;letter-spacing:-.01em}
.air .trow .tt small{display:block;font-weight:400;font-size:var(--fs-small);line-height:1.6;color:var(--prose);margin-top:8px;max-width:52ch}
.air .trow .tm{font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--dim);text-align:right}
.air .trow .tp{font-size:clamp(1.375rem,2.6vw,2rem);font-weight:800;white-space:nowrap;font-variant-numeric:tabular-nums;letter-spacing:-.025em}
@media(max-width:820px){.air .trow{grid-template-columns:32px 1fr auto}.air .trow .tm{display:none}}

/* ---------- honesty and self-reference bands, formerly ink ---------- */
.air .noband,.air .osband{padding-block:clamp(64px,10vh,130px);border-top:1px solid var(--ink);padding-inline:var(--gutter)}
.air .noband>*,.air .osband>*{max-width:var(--shell);margin-inline:auto}
.air .noband .k,.air .osband .k{font-size:.8125rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--dim)}
.air .noband h2,.air .osband h2{font-size:var(--fs-d2);font-weight:300;line-height:1.06;letter-spacing:-.025em;margin-top:18px;max-width:20ch}
.air .noband h2 b,.air .osband h2 b,.air .noband h2 em,.air .osband h2 em{font-style:normal;font-weight:800}
.air .nolist,.air .osengines{margin-top:clamp(30px,4vh,48px);border-top:1px solid var(--ink);max-width:900px}
.air .noitem,.air .oseng{display:grid;grid-template-columns:auto 1fr;gap:18px;align-items:baseline;padding:16px 0;border-bottom:1px solid var(--line);font-size:var(--fs-small);line-height:1.6;color:var(--prose)}
.air .noitem .t,.air .oseng .t{font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--dim);white-space:nowrap}

/* ---------- FAQ ---------- */
.air .faq,.air .faqs{border-top:1px solid var(--ink)}
.air .faq details,.air .faqs details{border-bottom:1px solid var(--line);padding:clamp(16px,2.2vh,24px) 0}
.air .faq summary,.air .faqs summary{font-weight:700;font-size:var(--fs-body);line-height:1.4;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px}
.air .faq summary::-webkit-details-marker,.air .faqs summary::-webkit-details-marker{display:none}
.air .faq summary::after,.air .faqs summary::after{content:"+";color:var(--dim);font-weight:400}
.air .faq details[open] summary::after,.air .faqs details[open] summary::after{content:"-"}
.air .faq p,.air .faqs p{font-size:var(--fs-small);line-height:1.7;margin-top:14px;max-width:70ch;color:var(--prose)}

/* ---------- comparison table ---------- */
.air .cmp{width:100%;border-collapse:collapse;margin-top:clamp(28px,4vh,44px);font-size:var(--fs-small);line-height:1.6}
.air .cmp th{font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;text-align:left;padding:12px 16px 12px 0;border-bottom:2px solid var(--ink);white-space:nowrap}
.air .cmp td{padding:14px 16px 14px 0;border-bottom:1px solid var(--line);vertical-align:top;text-align:left}
.air .cmp td:first-child{font-weight:700}
.air .cmp tbody tr{transition:background-color var(--t-fast) linear}
.air .cmp tbody tr:hover{background:var(--tint)}
.air .wrapx{overflow-x:auto}

/* ---------- token launch page bits ---------- */
.air .chains{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
.air .chains span{font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:7px 12px;color:var(--dim)}
.air .refwall{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:10px;margin-top:18px}
.air .refwall a{font-size:var(--fs-small);padding:12px 14px;display:block;color:var(--ink)}
.air .refwall a:hover{background:var(--tint)}
.air .pquote{border-left:2px solid var(--ink);padding:6px 0 6px 22px;margin-top:22px;max-width:66ch}
.air .pquote p{font-size:var(--fs-lede);line-height:1.55;font-weight:300;font-style:normal}
.air .pquote cite{display:block;font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--dim);margin-top:12px;font-style:normal}

/* ---------- case study body ---------- */
.air .blk{display:grid;grid-template-columns:minmax(150px,240px) 1fr;gap:clamp(20px,4vw,60px);padding:clamp(28px,5vh,52px) 0;border-bottom:1px solid var(--line)}
.air .blk .bk{font-size:.8125rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--dim)}
.air .blk h2,.air .blk h3{font-size:var(--fs-h3);font-weight:300;line-height:1.15;letter-spacing:-.015em;margin-bottom:16px}
.air .blk p{font-size:var(--fs-body);line-height:1.7;color:var(--prose);max-width:66ch}
.air .blk p+p{margin-top:1rem}
.air .blk ul{margin:16px 0 0;padding-left:0;list-style:none;max-width:66ch}
.air .blk ul li{font-size:var(--fs-small);line-height:1.6;color:var(--prose);padding:10px 0 10px 24px;border-bottom:1px solid var(--line);position:relative}
.air .blk ul li:before{content:"\2192";position:absolute;left:0;color:var(--dim)}
@media(max-width:820px){.air .blk{grid-template-columns:1fr;gap:14px}}
.air .engage{font-size:var(--fs-lede);line-height:1.6;color:var(--prose);max-width:70ch;margin-top:clamp(24px,4vh,40px)}
.air .engage strong{font-weight:800;color:var(--ink)}
.air .meta{display:flex;gap:clamp(20px,4vw,56px);flex-wrap:wrap;border-top:1px solid var(--ink);border-bottom:1px solid var(--line);padding:18px 0;margin-top:clamp(26px,4vh,42px)}
.air .meta div{font-size:var(--fs-small);text-transform:none;letter-spacing:0;font-weight:400;color:var(--ink)}
.air .meta b{display:block;font-size:.75rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--dim);margin-bottom:5px}
.air .applies{padding:clamp(26px,4vw,48px);background:var(--tint);border:0;border-top:1px solid var(--ink)}
.air .applies h3{font-size:var(--fs-h3);font-weight:300;line-height:1.15;letter-spacing:-.015em;margin-bottom:16px}
.air .applies p{font-size:var(--fs-body);line-height:1.7;color:var(--prose);max-width:66ch}
.air .applies p+p{margin-top:1rem}
.air .labs{display:inline-block;font-size:.75rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--dim);border:1px solid var(--line);padding:9px 14px;margin-bottom:24px}
.air .labsnote{margin-bottom:18px}
.air .nextcase{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:clamp(22px,3vw,36px);transition:transform var(--t-fast) var(--ease-out),background-color var(--t-fast) linear}
.air .nextcase:hover{transform:translateX(4px);background:var(--tint)}
.air .nextcase .nk{font-size:.75rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--dim)}
.air .nextcase .nn{font-size:var(--fs-h3);font-weight:300;line-height:1.15;letter-spacing:-.015em;margin-top:8px}
.air .nextcase .ar{font-size:var(--fs-h3);color:var(--dim);transition:transform var(--t-fast) var(--ease-out)}
.air .nextcase:hover .ar{transform:translateX(6px)}

/* ---------- metrics ---------- */
.air .metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
.air .metric{padding:clamp(22px,3vw,40px) clamp(20px,2.6vw,34px);border-right:1px solid var(--line)}
.air .metric:last-child{border-right:0}
.air .metric .mv{font-size:clamp(2rem,4vw,3.25rem);font-weight:800;line-height:1.05;letter-spacing:-.025em;font-variant-numeric:tabular-nums}
.air .metric .ml{font-size:.8125rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--dim);margin-top:14px;line-height:1.6}
.air .metric .mc{font-size:var(--fs-small);line-height:1.6;color:var(--dim);margin-top:8px}
@media(max-width:1000px){.air .metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
  .air .metric:nth-child(2n){border-right:0}
  .air .metric:not(:nth-last-child(-n+2)){border-bottom:1px solid var(--line)}}
@media(max-width:640px){.air .metrics{grid-template-columns:1fr}
  .air .metric{border-right:0;border-bottom:1px solid var(--line)}
  .air .metric:last-child{border-bottom:0}}

/* ---------- shots and galleries ---------- */
.air .shotframe{overflow:hidden;background:var(--tint)}
.air .shotframe img,.air .shotframe video{width:100%;height:auto;display:block;transition:transform var(--t-slow) var(--ease-out)}
.air .shotframe:hover img,.air .shotframe:hover video{transform:scale(1.02)}
.air .shotcap{margin-top:10px}
.air .shots2{display:grid;grid-template-columns:1fr 1fr;gap:clamp(14px,2vw,24px)}
@media(max-width:700px){.air .shots2{grid-template-columns:1fr}}
.air .d2cwork{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.air .d2cwork figure{margin:0;border:1px solid var(--line);overflow:hidden}
.air .d2cwork img{width:100%;height:clamp(220px,26vw,360px);object-fit:cover;object-position:top;display:block;transition:transform var(--t-slow) var(--ease-out)}
.air .d2cwork figure:hover img{transform:scale(1.02)}
.air .d2cwork figcaption{font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--dim);padding:12px 14px;border-top:1px solid var(--line)}
@media(max-width:760px){.air .d2cwork{grid-template-columns:1fr}}

/* ---------- work hub cards ---------- */
.air .csgrid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(16px,2vw,26px);margin-top:clamp(40px,6vh,72px)}
.air .cscard{grid-column:span 5;display:flex;flex-direction:column;color:var(--ink);transition:transform var(--t-med) var(--ease-out)}
.air .cscard:nth-child(1),.air .cscard:nth-child(4),.air .cscard:nth-child(5),.air .cscard:nth-child(8){grid-column:span 7}
.air .cscard:hover{transform:translateY(-3px)}
.air .cscard .shot{aspect-ratio:16/9;overflow:hidden;border-bottom:1px solid var(--line)}
.air .cscard .shot img{width:100%;height:100%;object-fit:cover;display:block;transition:transform var(--t-slow) var(--ease-out)}
.air .cscard:hover .shot img{transform:scale(1.02)}
.air .cscard .body{padding:20px 22px 24px;display:flex;flex-direction:column;gap:10px;flex:1}
.air .cscard .tag{font-size:.75rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--dim);display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;align-items:baseline}
.air .cscard .lbadge{font-size:.6875rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--dim);border:1px solid var(--line);padding:4px 8px;white-space:nowrap}
.air .cscard h3{font-size:var(--fs-h3);font-weight:300;line-height:1.15;letter-spacing:-.015em;margin:2px 0 0}
.air .cscard p{font-size:var(--fs-small);line-height:1.6;color:var(--prose)}
.air .cscard .nums{margin-top:auto;border-top:1px solid var(--line);padding-top:12px;font-size:var(--fs-small);line-height:1.7;color:var(--dim)}
@media(max-width:900px){.air .csgrid{grid-template-columns:1fr}
  .air .cscard,.air .cscard:nth-child(1),.air .cscard:nth-child(4),.air .cscard:nth-child(5),.air .cscard:nth-child(8){grid-column:auto}}
.air .pcard{display:flex;flex-direction:column;margin:0;transition:transform var(--t-med) var(--ease-out)}
.air .pcard:hover{transform:translateY(-3px)}
.air .pcard .shot{aspect-ratio:4/3;overflow:hidden;border-bottom:1px solid var(--line)}
.air .pcard .shot img,.air .pcard .shot video{width:100%;height:100%;object-fit:cover;display:block}
.air .pcard .body{padding:20px 22px 24px}
.air .pcard .tag{font-size:.75rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--dim)}
.air .pcard h3{font-size:var(--fs-h3);font-weight:300;line-height:1.15;letter-spacing:-.015em;margin:10px 0 8px}
.air .pcard p{font-size:var(--fs-small);line-height:1.6;color:var(--prose)}

/* ---------- websites page: the one canvas moment, gallery, before and after ---------- */
#inkrib{position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.5}
.air .dragwrap{position:relative}
.air .dragrow{display:flex;gap:clamp(16px,2vw,28px);overflow-x:auto;padding:6px 6px 24px;cursor:grab;scrollbar-width:none;-webkit-overflow-scrolling:touch;user-select:none}
.air .dragrow::-webkit-scrollbar{display:none}
.air .dragrow.dragging{cursor:grabbing}
.air .dragrow:focus-visible{outline:2px solid var(--coral-ink);outline-offset:6px}
.air .gcard{flex:0 0 auto;width:clamp(270px,34vw,470px)}
.air .gcard img{width:100%;display:block;border:1px solid var(--line);background:var(--tint);pointer-events:none}
.air .gcard .cap{display:flex;justify-content:space-between;gap:12px;font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--dim);margin-top:10px}
.air .ba{position:relative;overflow:hidden;border:1px solid var(--line);aspect-ratio:16/9;user-select:none;touch-action:pan-y;cursor:ew-resize}
.air .ba__pane{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:14px;padding:24px;text-align:center}
.air .ba__before{background:var(--tint);color:var(--ink)}
.air .ba__after{background:var(--ink);color:var(--bg)}
.air .ba__pane .big{font-size:clamp(1.75rem,5vw,3.5rem);font-weight:800;line-height:1.05;letter-spacing:-.025em}
.air .ba__pane .meta{font-size:.75rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;line-height:2;border:0;padding:0;margin:0;color:inherit;opacity:.7}
.air .ba__clip{position:absolute;inset:0;overflow:hidden;will-change:transform}
.air .ba__after{will-change:transform}
.air .ba__hpos{position:absolute;inset:0;pointer-events:none;will-change:transform}
.air .ba__handle{position:absolute;top:0;bottom:0;left:-1px;width:2px;background:var(--coral)}
.air .ba__handle span{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:var(--coral);color:var(--ink);font-size:.6875rem;font-weight:700;letter-spacing:.1em;padding:7px 10px;white-space:nowrap}
.air .ba-range{width:100%;margin-top:14px;accent-color:var(--coral-ink)}
.air .ba-note{margin-top:10px}

/* ---------- the ask band ---------- */
.air .ctaband{
  padding-block:clamp(70px,12vh,150px);padding-inline:var(--gutter);
  text-align:center;border-top:1px solid var(--ink);background:transparent;color:var(--ink);
}
.air .ctaband>*{max-width:var(--shell);margin-inline:auto}
.air .ctaband .k{font-size:.8125rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--dim)}
.air .ctaband h2{font-size:var(--fs-d2);font-weight:300;line-height:1.06;letter-spacing:-.025em;margin:24px auto 30px;max-width:20ch;text-wrap:balance}
.air .ctaband h2 b,.air .ctaband h2 em{font-style:normal;font-weight:800}
.air .ctaband .ctasub{max-width:56ch;margin:0 auto 26px;color:var(--dim);font-size:var(--fs-lede);line-height:1.6}
.air .ctaband .acts{justify-content:center}

/* ---------- lead form ---------- */
.air .tg-reach{max-width:560px;margin:44px auto 0;display:flex;flex-wrap:wrap;gap:12px;justify-content:center;align-items:center}
.air .tg-reach__lbl{flex-basis:100%;font-size:.8125rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--dim);margin-bottom:2px}
.air .tg-reach input[type=text]:not(.hp){
  flex:1 1 260px;min-width:0;font-size:1rem;padding:13px 15px;line-height:1.5;
  background:transparent;color:var(--ink);border:1px solid var(--line);border-radius:6px;
  transition:border-color var(--t-fast) linear,box-shadow var(--t-fast) linear;
}
.air .tg-reach input[type=text]:not(.hp)::placeholder{color:#9a9a94}
.air .tg-reach input[type=text]:not(.hp):hover{border-color:#cfcfc9}
.air .tg-reach input[type=text]:not(.hp):focus{outline:none;border-color:var(--coral);box-shadow:0 0 0 3px rgba(255,90,38,.18)}
.air .hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.air .lead-err:empty{display:none}
.air .lead-err{
  font-size:var(--fs-small);font-weight:700;color:var(--coral-ink);
  margin:.9em auto 0;padding:.7em .85em;max-width:520px;
  background:var(--tint);border:1px solid var(--coral-ink);border-radius:6px;
}
.air .lead-err a{color:var(--coral-ink);text-decoration:underline}
.air .lead-done{margin:18px auto 0;font-weight:700;max-width:520px}
.air .lead-done:focus{outline:2px solid var(--coral-ink);outline-offset:4px;border-radius:3px}
[hidden]{display:none !important}

/* ---------- footer ---------- */
.air footer.air-foot{display:block;padding:clamp(40px,6vh,70px) var(--gutter) 44px;font-size:var(--fs-small);color:var(--dim)}
.air footer.air-foot .ftop{max-width:var(--shell);margin-inline:auto;display:flex;justify-content:space-between;gap:34px;flex-wrap:wrap;border-bottom:1px solid var(--line);padding-bottom:34px}
.air footer.air-foot .fb{font-size:clamp(1.75rem,4vw,3rem);font-weight:800;line-height:1;letter-spacing:-.03em;color:var(--ink)}
.air footer.air-foot .flinks{display:flex;gap:clamp(24px,4vw,56px);flex-wrap:wrap}
.air footer.air-foot .fcol{font-size:var(--fs-small);line-height:2}
.air footer.air-foot .fcol strong{display:block;font-weight:700;color:var(--ink);letter-spacing:.06em;text-transform:uppercase;font-size:.75rem;margin-bottom:6px}
.air footer.air-foot .fbot{max-width:var(--shell);margin:26px auto 0;display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;font-size:.75rem;letter-spacing:.04em}

/* ---------- reduced motion ---------- */
@media(prefers-reduced-motion:reduce){
  .air .tilt,.air .tlift,.air .tilt-lift,.air .ans,.air .refwall a,.air .rel a,.air .relcard,
  .air .cscard,.air .pcard,.air .fail,.air .trow,.air .nextcase{transition:none}
  .air .tilt:hover,.air .tlift:hover,.air .tilt-lift:hover,.air .ans:hover,.air .refwall a:hover,
  .air .rel a:hover,.air .relcard:hover,.air .cscard:hover,.air .pcard:hover,.air .fail:hover,
  .air .trow:hover,.air .nextcase:hover{transform:none}
  .air .nextcase:hover .ar,.air .shotframe:hover img,.air .shotframe:hover video,
  .air .cscard:hover .shot img,.air .d2cwork figure:hover img{transform:none}
  #inkrib{display:none}
}
