/* ============================================================
   Elie I. Mrad — elieimrad.com
   Design system v2
   ============================================================ */

/* ---------- 1. TOKENS ---------- */
:root{
  /* Ink surfaces — layered, never flat black */
  --ink-900:#07090d;
  --ink-850:#0a0d13;
  --ink-800:#0b0e15;
  --ink-700:#11151d;
  --ink-600:#171c26;
  --ink-500:#1e242f;

  /* Hairlines */
  --line:rgba(255,255,255,.075);
  --line-2:rgba(255,255,255,.14);

  /* Brand blue — 600 is the exact blue in the logo mark */
  --blue-700:#003b8a;
  --blue-600:#004aad;
  --blue-500:#1560d8;
  --blue-400:#4d93ff;
  --blue-300:#8fbcff;
  --blue-tint:rgba(0,74,173,.10);
  --blue-edge:rgba(0,74,173,.32);

  /* Brass — the second accent that keeps this from reading "SaaS template" */
  --brass-500:#b8924c;
  --brass-400:#c9a55c;
  --brass-300:#e0c489;
  --brass-tint:rgba(201,165,92,.12);

  /* Text ramp */
  --tx-1:#f2f5fa;
  --tx-2:rgba(242,245,250,.76);
  --tx-3:rgba(242,245,250,.54);
  --tx-4:rgba(242,245,250,.38);

  /* Type */
  --f-display:'Instrument Serif',"Times New Roman",Georgia,serif;
  --f-body:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;
  --f-mono:'IBM Plex Mono',ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;

  /* Layout */
  /* Wide by design: on a ~1900px display a 1240px container left roughly
     330px of dead space each side. The container now runs close to the
     viewport edge and the gutter grows with it, while individual prose
     blocks keep their own max-widths so line length stays readable. */
  --wrap:1840px;
  --gutter:clamp(20px,4vw,84px);
  --nav-h:76px;
  --nav-h-sm:62px;

  /* Motion */
  --ease:cubic-bezier(.22,1,.36,1);
  --ease-io:cubic-bezier(.4,0,.2,1);

  /* Radii + elevation */
  --r-sm:6px; --r-md:10px; --r-lg:16px; --r-xl:22px;
  --sh-1:0 1px 2px rgba(0,0,0,.4);
  --sh-2:0 18px 48px -12px rgba(0,0,0,.7);
  --sh-3:0 32px 80px -20px rgba(0,0,0,.85);

  color-scheme:dark;
}

/* ---------- 2. RESET ---------- */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{
  -webkit-text-size-adjust:100%;
  scroll-behavior:smooth;
  /* deep-link anchors must clear the fixed nav */
  scroll-padding-top:calc(var(--nav-h) + 24px);
}
body{
  background:var(--ink-900);
  color:var(--tx-1);
  font-family:var(--f-body);
  font-size:16px;
  font-weight:400;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  overflow-x:hidden;
  font-feature-settings:"cv11","ss01";
}
img,svg,video{display:block;max-width:100%}
img{height:auto}
a{color:inherit;text-decoration:none}
button,input,textarea,select{font:inherit;color:inherit}
button{background:none;border:none;cursor:pointer}
ul,ol{list-style:none}
::selection{background:var(--blue-600);color:#fff}

/* Focus — visible and on-brand, never removed */
:focus-visible{
  outline:2px solid var(--blue-400);
  outline-offset:3px;
  border-radius:3px;
}

/* ---------- 3. LAYOUT PRIMITIVES ---------- */
.wrap{width:100%;max-width:var(--wrap);margin-inline:auto;padding-inline:var(--gutter)}
.section{padding-block:clamp(72px,9vw,124px);position:relative}
.section--alt{background:var(--ink-800);border-block:1px solid var(--line)}
.section--tight{padding-block:clamp(56px,6vw,84px)}

/* Anchor targets clear the nav even without smooth scroll support */
[id]{scroll-margin-top:calc(var(--nav-h) + 24px)}

.skip{
  position:absolute;left:var(--gutter);top:10px;z-index:9999;
  transform:translateY(-160%);
  background:var(--blue-600);color:#fff;
  padding:10px 18px;border-radius:var(--r-sm);
  font-size:13px;font-weight:500;
  transition:transform .2s var(--ease);
}
.skip:focus{transform:none}

/* ---------- 4. TYPE SCALE ---------- */
.eyebrow{
  font-family:var(--f-mono);
  font-size:11px;font-weight:500;
  letter-spacing:.18em;text-transform:uppercase;
  color:var(--brass-400);
  display:flex;align-items:center;gap:12px;
  margin-bottom:18px;
}
.eyebrow::before{
  content:'';width:26px;height:1px;flex-shrink:0;
  background:linear-gradient(90deg,var(--brass-400),transparent);
}
.eyebrow--center{justify-content:center}
.eyebrow--center::after{
  content:'';width:26px;height:1px;flex-shrink:0;
  background:linear-gradient(270deg,var(--brass-400),transparent);
}

h1,h2,h3,h4{font-family:var(--f-display);font-weight:400;line-height:1.08;letter-spacing:-.01em}
h1 em,h2 em,h3 em{font-style:italic;color:var(--blue-400)}

/* Upper clamps raised so the display type keeps pace with the wider
   container instead of looking undersized on a large monitor. */
.h-display{font-size:clamp(44px,7.6vw,126px);line-height:1}
.h-section{font-size:clamp(30px,4.4vw,60px)}
.h-card{font-size:clamp(20px,2.1vw,26px);line-height:1.18}
.h-page{font-size:clamp(36px,5.8vw,78px);line-height:1.03}

.lead{font-size:clamp(15px,1.35vw,18px);line-height:1.75;color:var(--tx-2);max-width:62ch}
.body{font-size:15px;line-height:1.8;color:var(--tx-2)}
.body strong{color:var(--tx-1);font-weight:500}
.small{font-size:13.5px;line-height:1.7;color:var(--tx-3)}
.mono{font-family:var(--f-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--tx-3)}

.section-head{
  display:flex;justify-content:space-between;align-items:flex-end;
  gap:32px;margin-bottom:clamp(40px,5vw,64px);
}
.section-head__copy{max-width:62ch}
.section-head .lead{margin-top:18px}

/* ---------- 5. ICONS ---------- */
.icon{width:1em;height:1em;fill:none;stroke:currentColor;stroke-width:1.5;
  stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.icon--fill{fill:currentColor;stroke:none}

/* ---------- 6. BUTTONS + LINKS ---------- */
.btn{
  display:inline-flex;align-items:center;gap:9px;
  padding:13px 26px;border-radius:100px;
  font-size:14px;font-weight:500;letter-spacing:.01em;
  border:1px solid transparent;
  transition:background .22s var(--ease-io),border-color .22s,color .22s,transform .22s var(--ease),box-shadow .22s;
  white-space:nowrap;
}
.btn .icon{font-size:15px;transition:transform .22s var(--ease)}
.btn:hover{transform:translateY(-2px)}
.btn:hover .icon{transform:translateX(3px)}
.btn:active{transform:translateY(0)}

.btn--primary{background:var(--blue-600);color:#fff;box-shadow:0 8px 28px -8px rgba(0,74,173,.9)}
.btn--primary:hover{background:var(--blue-500);box-shadow:0 14px 38px -10px rgba(21,96,216,.95)}

.btn--ghost{border-color:var(--line-2);color:var(--tx-1)}
.btn--ghost:hover{border-color:rgba(255,255,255,.32);background:rgba(255,255,255,.04)}

.btn--brass{border-color:rgba(201,165,92,.4);color:var(--brass-300)}
.btn--brass:hover{border-color:var(--brass-400);background:var(--brass-tint)}

.textlink{
  display:inline-flex;align-items:center;gap:8px;
  font-family:var(--f-mono);font-size:11px;font-weight:500;
  letter-spacing:.14em;text-transform:uppercase;
  color:var(--tx-2);transition:color .2s;
  flex-shrink:0;
}
.textlink .icon{font-size:13px;transition:transform .22s var(--ease)}
.textlink:hover{color:var(--tx-1)}
.textlink:hover .icon{transform:translate(3px,-3px)}
.textlink--arrow:hover .icon{transform:translateX(4px)}

/* ---------- 7. CHIPS / TAGS ---------- */
.chip{
  display:inline-flex;align-items:center;gap:7px;
  font-family:var(--f-mono);font-size:10.5px;font-weight:400;
  letter-spacing:.1em;
  color:var(--blue-300);
  border:1px solid var(--blue-edge);
  background:var(--blue-tint);
  padding:5px 12px;border-radius:100px;
}
.chip--brass{color:var(--brass-300);border-color:rgba(201,165,92,.3);background:var(--brass-tint)}
.chip--plain{color:var(--tx-3);border-color:var(--line);background:transparent}
.chip-row{display:flex;flex-wrap:wrap;gap:8px}

/* ---------- 8. NAV ---------- */
.nav{
  position:fixed;inset:0 0 auto;z-index:600;
  height:var(--nav-h);
  display:flex;align-items:center;
  background:rgba(7,9,13,.72);
  backdrop-filter:blur(18px) saturate(160%);
  -webkit-backdrop-filter:blur(18px) saturate(160%);
  border-bottom:1px solid var(--line);
  transition:height .3s var(--ease),background .3s,border-color .3s,box-shadow .3s;
}
.nav.is-scrolled{
  height:var(--nav-h-sm);
  background:rgba(7,9,13,.94);
  border-bottom-color:var(--line-2);
  box-shadow:0 10px 40px -12px rgba(0,0,0,.9);
}
.nav__inner{
  width:100%;max-width:var(--wrap);margin-inline:auto;
  padding-inline:var(--gutter);
  display:flex;align-items:center;gap:24px;
}
.nav__logo{display:flex;align-items:center;flex-shrink:0}
.nav__logo img{height:54px;width:auto;transition:height .3s var(--ease)}
.nav.is-scrolled .nav__logo img{height:43px}

.nav__list{display:flex;align-items:center;gap:2px;margin-left:auto}
.nav__item{position:relative}
.nav__link{
  display:flex;align-items:center;gap:5px;
  font-size:12px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;
  color:var(--tx-2);
  padding:10px 14px;border-radius:var(--r-sm);
  transition:color .2s,background .2s;
  white-space:nowrap;position:relative;
}
.nav__link:hover,.nav__link[aria-expanded="true"]{color:var(--tx-1);background:rgba(255,255,255,.05)}
.nav__link .icon{font-size:9px;opacity:.5;transition:transform .25s var(--ease)}
.nav__item.is-open>.nav__link .icon{transform:rotate(180deg)}
.nav__link[aria-current="page"]{color:var(--tx-1)}
.nav__link[aria-current="page"]::after{
  content:'';position:absolute;left:14px;right:14px;bottom:4px;height:1px;
  background:var(--brass-400);
}

.nav__drop{
  position:absolute;top:calc(100% + 10px);left:0;
  min-width:236px;padding:8px;
  background:var(--ink-700);
  border:1px solid var(--line-2);
  border-radius:var(--r-md);
  box-shadow:var(--sh-3);
  opacity:0;visibility:hidden;transform:translateY(-8px);
  transition:opacity .2s var(--ease-io),transform .2s var(--ease),visibility .2s;
}
.nav__item:hover .nav__drop,.nav__item.is-open .nav__drop{opacity:1;visibility:visible;transform:none}
.nav__drop a{
  display:flex;align-items:center;gap:11px;
  font-size:13px;color:var(--tx-2);
  padding:10px 12px;border-radius:var(--r-sm);
  transition:color .18s,background .18s;
}
.nav__drop a .icon{font-size:15px;color:var(--blue-400);opacity:.85}
.nav__drop a:hover{color:var(--tx-1);background:var(--blue-tint)}

.nav__cta{margin-left:14px;padding:10px 20px;font-size:13px}

.nav__burger{
  display:none;flex-direction:column;gap:5px;
  padding:8px;margin-left:auto;border-radius:var(--r-sm);
}
.nav__burger span{display:block;width:22px;height:1.5px;background:var(--tx-2);transition:transform .3s var(--ease),opacity .2s}
.nav__burger.is-open span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}
.nav__burger.is-open span:nth-child(2){opacity:0}
.nav__burger.is-open span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}

/* ---------- 9. HERO ---------- */
.hero{
  position:relative;
  min-height:min(100svh,940px);
  display:flex;flex-direction:column;justify-content:center;
  padding-top:calc(var(--nav-h) + 40px);
  padding-bottom:clamp(56px,7vw,88px);
  overflow:hidden;
}
.hero__atmos{position:absolute;inset:0;pointer-events:none;z-index:0}
.hero__glow{
  position:absolute;inset:0;
  background:
    radial-gradient(ellipse 74% 58% at 68% 26%,rgba(0,74,173,.20),transparent 62%),
    radial-gradient(ellipse 52% 46% at 12% 84%,rgba(0,59,138,.13),transparent 58%);
}
.hero__grid{
  position:absolute;inset:-10%;
  background-image:
    linear-gradient(rgba(120,168,255,.055) 1px,transparent 1px),
    linear-gradient(90deg,rgba(120,168,255,.055) 1px,transparent 1px);
  background-size:64px 64px;
  mask-image:radial-gradient(ellipse 76% 72% at 62% 34%,#000 12%,transparent 76%);
  -webkit-mask-image:radial-gradient(ellipse 76% 72% at 62% 34%,#000 12%,transparent 76%);
  animation:gridDrift 44s linear infinite;
}
@keyframes gridDrift{from{background-position:0 0}to{background-position:64px 64px}}
.hero__aurora{
  position:absolute;width:min(120vw,1400px);aspect-ratio:1;
  top:-46%;right:-24%;
  background:conic-gradient(from 200deg at 50% 50%,transparent 0deg,rgba(0,74,173,.16) 70deg,transparent 160deg,rgba(21,96,216,.11) 250deg,transparent 340deg);
  border-radius:50%;filter:blur(60px);
  animation:auroraSpin 70s linear infinite;
}
@keyframes auroraSpin{to{transform:rotate(360deg)}}
/* Ghosted brand mark — balances the empty right half of the
   left-aligned editorial hero without adding visual noise */
.hero__mark{
  position:absolute;top:50%;right:-3%;
  width:min(44vw,580px);aspect-ratio:419/552;
  transform:translateY(-50%);
  background:url("mark.png") center/contain no-repeat;
  opacity:.055;
  mask-image:linear-gradient(255deg,#000 12%,transparent 82%);
  -webkit-mask-image:linear-gradient(255deg,#000 12%,transparent 82%);
}
.hero__vignette{
  position:absolute;inset:0;
  background:linear-gradient(180deg,transparent 55%,var(--ink-900) 100%);
}
.hero__inner{position:relative;z-index:1;width:100%}

.hero__pill{
  display:inline-flex;align-items:center;gap:10px;
  font-family:var(--f-mono);font-size:11px;font-weight:500;
  letter-spacing:.13em;text-transform:uppercase;
  color:var(--brass-300);
  border:1px solid rgba(201,165,92,.28);
  background:rgba(201,165,92,.07);
  padding:7px 16px;border-radius:100px;
  margin-bottom:clamp(24px,3vw,34px);
}
.hero__dot{
  width:6px;height:6px;border-radius:50%;background:var(--brass-400);
  box-shadow:0 0 0 0 rgba(201,165,92,.55);
  animation:pulseDot 2.6s var(--ease-io) infinite;
}
@keyframes pulseDot{
  0%{box-shadow:0 0 0 0 rgba(201,165,92,.55)}
  70%{box-shadow:0 0 0 8px rgba(201,165,92,0)}
  100%{box-shadow:0 0 0 0 rgba(201,165,92,0)}
}

.hero h1{max-width:20ch;margin-bottom:clamp(22px,2.6vw,30px)}
.hero__sub{max-width:58ch;margin-bottom:clamp(30px,3.6vw,42px)}
.hero__actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.hero__meta{
  display:flex;flex-wrap:wrap;gap:10px 28px;align-items:center;
  margin-top:clamp(38px,4.4vw,54px);
  padding-top:clamp(24px,3vw,32px);
  border-top:1px solid var(--line);
}
.hero__meta span{
  font-family:var(--f-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;
  color:var(--tx-3);display:inline-flex;align-items:center;gap:9px;
}
.hero__meta .icon{font-size:13px;color:var(--blue-400)}

/* word reveal */
.word{display:inline-block}
.js .word{opacity:0;transform:translateY(.42em) rotate(1.2deg);animation:wordIn .9s var(--ease) forwards}
@keyframes wordIn{to{opacity:1;transform:none}}
.js .fade-up{opacity:0;animation:fadeUp .8s var(--ease) forwards}
@keyframes fadeUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}

/* ---------- 10. TICKER ---------- */
.ticker{
  border-block:1px solid var(--line);
  background:linear-gradient(90deg,var(--ink-850),var(--ink-800),var(--ink-850));
  padding-block:16px;overflow:hidden;
  mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);
}
.ticker__track{display:flex;width:max-content;animation:tick 44s linear infinite}
.ticker:hover .ticker__track{animation-play-state:paused}
@keyframes tick{to{transform:translateX(-50%)}}
.ticker__item{
  display:inline-flex;align-items:center;gap:13px;
  padding-inline:26px;flex-shrink:0;
  font-family:var(--f-mono);font-size:11px;letter-spacing:.15em;text-transform:uppercase;
  color:var(--tx-3);
}
.ticker__item::before{
  content:'';width:4px;height:4px;border-radius:50%;
  background:var(--brass-400);flex-shrink:0;
}

/* ---------- 11. STATS ---------- */
/* The rules stay full-bleed, but the grid sits inside .wrap so the first
   figure lines up with the hero headline instead of hanging off to its
   left at wide viewports. */
.stats-band{border-block:1px solid var(--line)}
.stats{display:grid;grid-template-columns:repeat(4,1fr)}
.stat{
  padding:clamp(32px,4vw,52px) clamp(20px,2.2vw,32px);
  border-right:1px solid var(--line);
  transition:background .35s var(--ease-io);
  position:relative;
}
.stat:first-child{padding-left:0}
.stat:last-child{padding-right:0}
.stat:last-child{border-right:none}
.stat::before{
  content:'';position:absolute;inset:0 auto auto 0;height:2px;width:100%;
  background:linear-gradient(90deg,var(--brass-400),transparent);
  transform:scaleX(0);transform-origin:left;
  transition:transform .55s var(--ease);
}
.stat:hover{background:var(--blue-tint)}
.stat:hover::before{transform:scaleX(1)}
.stat__num{
  font-family:var(--f-display);font-size:clamp(40px,5vw,60px);line-height:1;
  margin-bottom:12px;font-variant-numeric:tabular-nums;
  display:flex;align-items:flex-start;gap:2px;
}
.stat__num sup{font-size:.36em;color:var(--brass-400);line-height:1.6;font-family:var(--f-body);font-weight:500}
.stat__label{
  font-family:var(--f-mono);font-size:11px;letter-spacing:.13em;text-transform:uppercase;
  color:var(--tx-2);margin-bottom:7px;
}
.stat__note{font-size:12.5px;color:var(--tx-4);line-height:1.55}

/* ---------- 12. CARD GRIDS ---------- */
.grid{display:grid;gap:20px}
.grid--3{grid-template-columns:repeat(3,1fr)}
.grid--2{grid-template-columns:repeat(2,1fr)}

.card{
  position:relative;
  background:var(--ink-700);
  border:1px solid var(--line);
  border-radius:var(--r-lg);
  padding:clamp(26px,3vw,38px);
  overflow:hidden;
  transition:border-color .3s,background .3s,transform .38s var(--ease),box-shadow .38s var(--ease);
  display:flex;flex-direction:column;
}
.card::before{
  content:'';position:absolute;inset:0 0 auto;height:1px;
  background:linear-gradient(90deg,transparent,var(--blue-400),transparent);
  transform:scaleX(0);transition:transform .6s var(--ease);
}
.card:hover{
  border-color:var(--blue-edge);
  background:var(--ink-600);
  transform:translateY(-5px);
  box-shadow:var(--sh-2);
}
.card:hover::before{transform:scaleX(1)}

.card__index{
  font-family:var(--f-mono);font-size:11px;letter-spacing:.16em;
  color:var(--brass-400);margin-bottom:20px;
}
.card__icon{
  width:46px;height:46px;border-radius:var(--r-md);
  display:grid;place-items:center;margin-bottom:22px;
  background:var(--blue-tint);border:1px solid var(--blue-edge);
  color:var(--blue-400);
  transition:background .3s,border-color .3s,color .3s;
}
.card__icon .icon{font-size:21px}
.card:hover .card__icon{background:rgba(0,74,173,.22);border-color:rgba(77,147,255,.45);color:var(--blue-300)}
.card h3{margin-bottom:12px}
.card__body{font-size:14px;line-height:1.78;color:var(--tx-2);flex:1}
.card__body strong{color:var(--tx-1);font-weight:500}
.card .chip-row{margin-top:22px}
.card__foot{margin-top:24px;padding-top:20px;border-top:1px solid var(--line)}

/* ---------- 13. ABOUT ---------- */
.about{display:grid;grid-template-columns:340px 1fr;gap:clamp(40px,6vw,88px);align-items:start}
.about__aside{position:sticky;top:calc(var(--nav-h) + 32px)}
.portrait{
  position:relative;width:100%;max-width:340px;aspect-ratio:1;
  margin-inline:auto;
}
.portrait__ring{
  position:absolute;inset:-9px;border-radius:50%;
  border:1px solid var(--blue-edge);
}
.portrait__ring--outer{
  inset:-24px;border:1px dashed rgba(201,165,92,.22);
  animation:ringSpin 60s linear infinite;
}
@keyframes ringSpin{to{transform:rotate(360deg)}}
.portrait__glow{
  position:absolute;inset:-14%;border-radius:50%;
  background:radial-gradient(circle,rgba(0,74,173,.34),transparent 66%);
  filter:blur(28px);
}
.portrait img{
  position:relative;width:100%;height:100%;border-radius:50%;
  object-fit:cover;
}
.portrait__badge{
  position:absolute;bottom:2%;left:50%;transform:translateX(-50%);
  background:var(--ink-700);border:1px solid var(--line-2);
  border-radius:100px;padding:7px 16px;white-space:nowrap;
  font-family:var(--f-mono);font-size:10px;letter-spacing:.13em;text-transform:uppercase;
  color:var(--brass-300);box-shadow:var(--sh-2);
}
.about__aside p{max-width:none}
.about__caption{
  margin-top:34px;text-align:center;
  font-family:var(--f-mono);font-size:11px;letter-spacing:.1em;
  color:var(--tx-4);
}

.about h3{font-size:clamp(21px,2.2vw,26px);margin:38px 0 16px;max-width:34ch}
.about h3:first-child{margin-top:0}
.about p{font-size:15px;line-height:1.9;color:var(--tx-2);margin-bottom:20px;max-width:66ch}
.about p strong{color:var(--tx-1);font-weight:500}

.bullets{display:flex;flex-direction:column;gap:2px;margin-top:8px}
.bullets li{
  display:flex;gap:16px;
  font-size:14.5px;line-height:1.72;color:var(--tx-2);
  padding:14px 0;border-bottom:1px solid var(--line);
}
.bullets li:last-child{border-bottom:none}
.bullets li strong{color:var(--tx-1);font-weight:500}
.bullets .icon{font-size:17px;color:var(--brass-400);margin-top:3px}

.callout{
  margin-top:34px;padding:26px 30px;
  border:1px solid var(--blue-edge);border-left:2px solid var(--blue-500);
  border-radius:var(--r-md);
  background:linear-gradient(135deg,var(--blue-tint),transparent 70%);
}
.callout__label{
  font-family:var(--f-mono);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;
  color:var(--brass-400);margin-bottom:12px;
}
.callout p{font-size:15px;line-height:1.8;color:var(--tx-2);margin:0;max-width:78ch}

/* ---------- 14. PAGE HERO (inner pages) ---------- */
.pagehero{
  position:relative;overflow:hidden;
  padding-top:calc(var(--nav-h) + clamp(52px,6vw,84px));
  padding-bottom:clamp(48px,5.6vw,76px);
  border-bottom:1px solid var(--line);
}
.pagehero__atmos{position:absolute;inset:0;pointer-events:none}
.pagehero__glow{
  position:absolute;inset:0;
  background:radial-gradient(ellipse 66% 62% at 72% 30%,rgba(0,74,173,.17),transparent 64%);
}
.pagehero__grid{
  position:absolute;inset:0;
  background-image:
    linear-gradient(rgba(120,168,255,.045) 1px,transparent 1px),
    linear-gradient(90deg,rgba(120,168,255,.045) 1px,transparent 1px);
  background-size:60px 60px;
  mask-image:radial-gradient(ellipse 90% 100% at 70% 34%,#000 14%,transparent 78%);
  -webkit-mask-image:radial-gradient(ellipse 90% 100% at 70% 34%,#000 14%,transparent 78%);
}
.pagehero__inner{position:relative}
.pagehero h1{margin-bottom:20px;max-width:20ch}
.pagehero .lead{max-width:58ch}
.pagehero__badge{
  display:inline-flex;align-items:center;gap:11px;
  width:52px;height:52px;border-radius:var(--r-md);
  place-content:center;justify-content:center;
  background:var(--blue-tint);border:1px solid var(--blue-edge);
  color:var(--blue-400);margin-bottom:22px;
}
.pagehero__badge .icon{font-size:24px}

.breadcrumb{display:flex;align-items:center;gap:9px;margin-bottom:20px}
.breadcrumb a,.breadcrumb span{
  font-family:var(--f-mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;
  color:var(--tx-4);
}
.breadcrumb a{transition:color .2s}
.breadcrumb a:hover{color:var(--tx-2)}
.breadcrumb .sep{opacity:.5}
.breadcrumb [aria-current]{color:var(--brass-400)}

/* ---------- 15. PROJECTS ---------- */
.projects{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.project{
  display:flex;flex-direction:column;
  background:var(--ink-700);
  border:1px solid var(--line);
  border-radius:var(--r-lg);
  overflow:hidden;
  transition:border-color .3s,transform .38s var(--ease),box-shadow .38s var(--ease);
}
.project:hover{border-color:var(--blue-edge);transform:translateY(-6px);box-shadow:var(--sh-2)}

/* THE LOGO PLATE — one uniform white ground so every client logo
   reads the same whether its source file is transparent or has
   a baked-in white background. This is what fixes the mismatch. */
.project__plate{
  position:relative;
  height:172px;flex-shrink:0;
  margin:14px 14px 0;
  display:grid;place-items:center;
  padding:24px 28px;
  background:#fff;
  border-radius:calc(var(--r-lg) - 6px);
  box-shadow:inset 0 0 0 1px rgba(7,9,13,.08);
}
.project__plate::after{
  content:'';position:absolute;inset:0;border-radius:inherit;
  background:linear-gradient(180deg,rgba(7,9,13,.02),transparent 42%,rgba(7,9,13,.05));
  pointer-events:none;
}
/* Normalise optical weight. The source files range from a 1:1 mark
   (OK Kids) to 1.83:1 lockups, and three of them are JPEGs with a
   white background baked in — a light plate is the only ground all
   six read on. Capping height and width together lands every wide
   lockup at the same 92px height instead of letting the widest one
   dominate the row. */
.project__plate img{
  max-height:92px;max-width:82%;
  width:auto;height:auto;
  object-fit:contain;
  transition:transform .42s var(--ease);
}
.project:hover .project__plate img{transform:scale(1.045)}

.project__body{padding:26px;display:flex;flex-direction:column;flex:1}
.project__body h2{font-size:22px;margin:14px 0 12px}
.project__desc{font-size:13.5px;line-height:1.8;color:var(--tx-2);flex:1;margin-bottom:22px}
.project__desc strong{color:var(--tx-1);font-weight:500}
.project__foot{padding-top:18px;border-top:1px solid var(--line)}

/* ---------- 16. KNOWLEDGE BASE ---------- */
.kb-note{
  display:flex;align-items:flex-start;gap:14px;
  padding:18px 22px;margin-bottom:clamp(32px,4vw,48px);
  border:1px solid var(--line);border-left:2px solid var(--brass-400);
  border-radius:var(--r-md);
  background:var(--ink-800);
  font-size:13.5px;line-height:1.7;color:var(--tx-3);
}
/* The note spans the full container, but its text still needs a measure */
.kb-note span{max-width:96ch}
.kb-note .icon{font-size:17px;color:var(--brass-400);margin-top:2px}
.kb-note strong{color:var(--tx-2);font-weight:500}

/* Featured lead article */
.feature{
  display:grid;grid-template-columns:1.15fr 1fr;
  gap:0;margin-bottom:clamp(32px,4vw,48px);
  background:var(--ink-700);
  border:1px solid var(--line);
  border-radius:var(--r-lg);
  overflow:hidden;
  transition:border-color .3s,box-shadow .38s var(--ease);
}
.feature:hover{border-color:var(--blue-edge);box-shadow:var(--sh-2)}
.feature__main{padding:clamp(30px,3.6vw,46px);display:flex;flex-direction:column}
.feature__label{
  display:inline-flex;align-items:center;gap:9px;align-self:flex-start;
  font-family:var(--f-mono);font-size:10px;font-weight:500;
  letter-spacing:.18em;text-transform:uppercase;
  color:var(--ink-900);background:var(--brass-400);
  padding:5px 12px;border-radius:100px;margin-bottom:22px;
}
.feature__main h2{font-size:clamp(24px,2.8vw,34px);line-height:1.14;margin-bottom:18px}
.feature__main h2 a{transition:color .22s}
.feature__main h2 a:hover{color:var(--blue-300)}
.feature__dek{font-size:15px;line-height:1.8;color:var(--tx-2);margin-bottom:26px;flex:1;max-width:70ch}
.feature__meta{
  display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;
  padding-top:20px;border-top:1px solid var(--line);
}
.feature__aside{
  padding:clamp(30px,3.6vw,46px);
  background:linear-gradient(150deg,var(--blue-tint),transparent 78%);
  border-left:1px solid var(--line);
  display:flex;flex-direction:column;justify-content:center;
}

/* Elie's Take — the editorial layer that makes this a point of view,
   not an RSS dump */
.take__label{
  display:flex;align-items:center;gap:10px;
  font-family:var(--f-mono);font-size:10.5px;font-weight:500;
  letter-spacing:.16em;text-transform:uppercase;
  color:var(--brass-400);margin-bottom:16px;
}
.take__label .icon{font-size:15px}
.take__quote{
  font-family:var(--f-display);font-size:clamp(17px,1.7vw,21px);
  line-height:1.5;color:var(--tx-1);font-style:italic;
}
.take__quote::before{content:'\201C'}
.take__quote::after{content:'\201D'}

/* Article grid */
.articles{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.article{
  display:flex;flex-direction:column;
  background:var(--ink-700);
  border:1px solid var(--line);
  border-radius:var(--r-lg);
  padding:clamp(24px,2.6vw,30px);
  transition:border-color .3s,background .3s,transform .38s var(--ease),box-shadow .38s var(--ease);
  position:relative;overflow:hidden;
}
.article::before{
  content:'';position:absolute;inset:0 0 auto;height:1px;
  background:linear-gradient(90deg,transparent,var(--blue-400),transparent);
  transform:scaleX(0);transition:transform .6s var(--ease);
}
.article:hover{border-color:var(--blue-edge);background:var(--ink-600);transform:translateY(-5px);box-shadow:var(--sh-2)}
.article:hover::before{transform:scaleX(1)}
.article__meta{
  display:flex;align-items:center;gap:10px;flex-wrap:wrap;
  margin-bottom:18px;
}
.article__src{
  font-family:var(--f-mono);font-size:10px;font-weight:500;
  letter-spacing:.11em;text-transform:uppercase;
  color:var(--blue-300);
  border:1px solid var(--blue-edge);background:var(--blue-tint);
  padding:4px 10px;border-radius:100px;
}
.article__date{
  font-family:var(--f-mono);font-size:10px;letter-spacing:.11em;
  text-transform:uppercase;color:var(--tx-4);margin-left:auto;
}
.article h3{font-size:19px;line-height:1.24;margin-bottom:12px;color:var(--tx-1)}
.article__dek{font-size:13.5px;line-height:1.78;color:var(--tx-2);flex:1;margin-bottom:20px}
.article__take{
  font-size:13px;line-height:1.7;color:var(--tx-3);
  padding:14px 0 0;margin-bottom:20px;
  border-top:1px solid var(--line);
}
.article__take b{
  display:block;
  font-family:var(--f-mono);font-size:9.5px;font-weight:500;
  letter-spacing:.16em;text-transform:uppercase;
  color:var(--brass-400);margin-bottom:7px;
}
.article__foot{margin-top:auto}

/* Playbook — the "so what do I do about it" block */
.playbook{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;
  background:var(--line);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden}
.play{background:var(--ink-700);padding:clamp(26px,3vw,34px);transition:background .3s}
.play:hover{background:var(--ink-600)}
.play__step{
  font-family:var(--f-mono);font-size:11px;letter-spacing:.16em;
  color:var(--brass-400);margin-bottom:16px;
}
.play h3{font-size:19px;margin-bottom:12px}
.play p{font-size:13.5px;line-height:1.78;color:var(--tx-2)}

/* sibling page links */
.siblings{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:clamp(40px,5vw,64px)}
.sibling{
  display:flex;align-items:center;gap:16px;
  padding:22px 26px;
  background:var(--ink-700);border:1px solid var(--line);border-radius:var(--r-md);
  transition:border-color .3s,background .3s,transform .3s var(--ease);
}
.sibling:hover{border-color:var(--blue-edge);background:var(--ink-600);transform:translateX(4px)}
.sibling__icon{
  width:42px;height:42px;border-radius:var(--r-sm);
  display:grid;place-items:center;flex-shrink:0;
  background:var(--blue-tint);border:1px solid var(--blue-edge);color:var(--blue-400);
}
.sibling__icon .icon{font-size:19px}
.sibling__text b{display:block;font-size:14.5px;font-weight:500;color:var(--tx-1);margin-bottom:3px}
.sibling__text span{font-size:12.5px;color:var(--tx-4)}
.sibling .icon--go{margin-left:auto;font-size:16px;color:var(--tx-4);transition:transform .25s var(--ease),color .25s}
.sibling:hover .icon--go{color:var(--blue-400);transform:translateX(3px)}

/* ---------- 17. CONTACT ---------- */
.contact{display:grid;grid-template-columns:1fr 1.1fr;gap:clamp(40px,6vw,80px)}
.contact__aside h2{margin-bottom:20px}
.contact__aside .lead{margin-bottom:36px}
.contact__links{display:flex;flex-direction:column;gap:4px;margin-bottom:36px}
.contact__link{
  display:flex;align-items:center;gap:16px;
  padding:16px 0;border-bottom:1px solid var(--line);
  transition:padding-left .25s var(--ease);
}
.contact__link:last-child{border-bottom:none}
.contact__link:hover{padding-left:8px}
.contact__ic{
  width:42px;height:42px;border-radius:50%;
  display:grid;place-items:center;flex-shrink:0;
  border:1px solid var(--line-2);color:var(--tx-2);
  transition:border-color .25s,background .25s,color .25s;
}
.contact__ic .icon{font-size:18px}
.contact__link:hover .contact__ic{border-color:var(--blue-edge);background:var(--blue-tint);color:var(--blue-400)}
.contact__link b{display:block;font-size:14.5px;font-weight:500;color:var(--tx-1);margin-bottom:2px}
.contact__link span{font-size:12.5px;color:var(--tx-4);font-family:var(--f-mono);letter-spacing:.06em}

.form{
  background:var(--ink-700);border:1px solid var(--line);
  border-radius:var(--r-lg);padding:clamp(26px,3.2vw,40px);
  display:flex;flex-direction:column;gap:18px;
}
.form__row{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.field{display:flex;flex-direction:column;gap:8px}
.field label{
  font-family:var(--f-mono);font-size:10.5px;font-weight:500;
  letter-spacing:.14em;text-transform:uppercase;color:var(--tx-3);
}
.field label .req{color:var(--brass-400)}
.field input,.field textarea,.field select{
  background:var(--ink-850);
  border:1px solid var(--line);
  border-radius:var(--r-sm);
  padding:13px 15px;
  font-size:14.5px;font-family:var(--f-body);
  color:var(--tx-1);
  transition:border-color .2s,box-shadow .2s,background .2s;
  resize:vertical;
}
.field input::placeholder,.field textarea::placeholder{color:var(--tx-4)}
.field input:focus,.field textarea:focus,.field select:focus{
  outline:none;
  border-color:var(--blue-500);
  background:var(--ink-800);
  box-shadow:0 0 0 3px rgba(0,74,173,.16);
}
.field select{appearance:none;cursor:pointer;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%23f2f5fa' stroke-opacity='.5' stroke-width='1.4' stroke-linecap='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 15px center;background-size:11px;
  padding-right:38px;
}
.form__hp{position:absolute;left:-9999px;opacity:0;pointer-events:none}
.form__foot{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}
.form__note{font-size:12px;color:var(--tx-4);line-height:1.6;max-width:34ch}

/* ---------- 18. CTA BAND ---------- */
.cta{
  position:relative;overflow:hidden;
  border:1px solid var(--blue-edge);border-radius:var(--r-xl);
  padding:clamp(40px,5.6vw,72px) clamp(26px,4vw,64px);
  text-align:center;
  background:
    radial-gradient(ellipse 80% 130% at 50% 0%,rgba(0,74,173,.26),transparent 66%),
    var(--ink-700);
}
.cta__grid{
  position:absolute;inset:0;pointer-events:none;
  background-image:
    linear-gradient(rgba(120,168,255,.05) 1px,transparent 1px),
    linear-gradient(90deg,rgba(120,168,255,.05) 1px,transparent 1px);
  background-size:52px 52px;
  mask-image:radial-gradient(ellipse 70% 90% at 50% 0%,#000,transparent 74%);
  -webkit-mask-image:radial-gradient(ellipse 70% 90% at 50% 0%,#000,transparent 74%);
}
.cta__inner{position:relative}
.cta h2{margin-bottom:18px}
.cta .lead{margin-inline:auto;margin-bottom:32px}
.cta__actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}

/* ---------- 19. FOOTER ---------- */
.footer{
  background:var(--ink-850);
  border-top:1px solid var(--line);
  padding-block:clamp(48px,5.4vw,72px) 28px;
}
.footer__top{
  display:grid;grid-template-columns:1.4fr 1fr 1fr;
  gap:clamp(32px,5vw,64px);
  padding-bottom:clamp(36px,4.4vw,52px);
  border-bottom:1px solid var(--line);
}
.footer__logo img{height:52px;width:auto;margin-bottom:20px}
.footer__blurb{font-size:13.5px;line-height:1.8;color:var(--tx-3);max-width:38ch}
.footer h4{
  font-family:var(--f-mono);font-size:10.5px;font-weight:500;
  letter-spacing:.16em;text-transform:uppercase;
  color:var(--brass-400);margin-bottom:18px;
}
.footer__nav{display:flex;flex-direction:column;gap:11px}
.footer__nav a{font-size:13.5px;color:var(--tx-3);transition:color .2s,padding-left .2s var(--ease)}
.footer__nav a:hover{color:var(--tx-1);padding-left:4px}
.footer__bottom{
  display:flex;justify-content:space-between;align-items:center;
  gap:20px;flex-wrap:wrap;padding-top:26px;
}
.footer__copy{font-size:12px;color:var(--tx-4);line-height:1.7}
.footer__social{display:flex;gap:10px}
.footer__social a{
  width:38px;height:38px;border-radius:50%;
  display:grid;place-items:center;
  border:1px solid var(--line);color:var(--tx-3);
  transition:border-color .22s,background .22s,color .22s,transform .22s var(--ease);
}
.footer__social a .icon{font-size:17px}
.footer__social a:hover{border-color:var(--blue-edge);background:var(--blue-tint);color:var(--blue-400);transform:translateY(-2px)}

/* ---------- 20. UTILITY PAGES ---------- */
.midpage{
  min-height:100svh;display:grid;place-items:center;text-align:center;
  padding:calc(var(--nav-h) + 60px) var(--gutter) 80px;
}
.midpage__code{
  font-family:var(--f-mono);font-size:12px;letter-spacing:.2em;
  color:var(--brass-400);margin-bottom:22px;
}
.midpage h1{margin-bottom:20px}
.midpage .lead{margin-inline:auto;margin-bottom:34px}
.midpage__actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
.midpage__mark{
  width:66px;height:66px;border-radius:var(--r-lg);
  display:grid;place-items:center;margin:0 auto 28px;
  background:var(--blue-tint);border:1px solid var(--blue-edge);color:var(--blue-400);
}
.midpage__mark .icon{font-size:30px}

/* ---------- 21. SCROLL PROGRESS ---------- */
.progress{
  position:fixed;inset:0 auto auto 0;height:2px;width:0;
  background:linear-gradient(90deg,var(--blue-600),var(--blue-400),var(--brass-400));
  z-index:900;pointer-events:none;
  transition:width .1s linear;
}

/* ---------- 22. REVEAL ---------- */
/* Default: fully visible. JS opts in to hiding, so no-JS and
   deep-links can never land on an invisible section. */
.reveal{opacity:1;transform:none}
.js .reveal{
  opacity:0;transform:translateY(24px);
  transition:opacity .72s var(--ease),transform .72s var(--ease);
}
.js .reveal.is-in{opacity:1;transform:none}
.js .reveal[data-delay="1"]{transition-delay:.08s}
.js .reveal[data-delay="2"]{transition-delay:.16s}
.js .reveal[data-delay="3"]{transition-delay:.24s}
.js .reveal[data-delay="4"]{transition-delay:.32s}
/* Anything revealed instantly (deep-link / above the fold) skips the delay */
.js .reveal.is-instant{transition-delay:0s !important;transition-duration:.01s !important}

/* ---------- 23. RESPONSIVE ---------- */
@media (max-width:1080px){
  .grid--3,.projects,.articles,.playbook{grid-template-columns:repeat(2,1fr)}
  .about{grid-template-columns:1fr;gap:48px}
  .about__aside{position:static}
  .portrait{max-width:280px}
  .about__aside p{max-width:none}
.about__caption{margin-top:24px}
  .feature{grid-template-columns:1fr}
  .feature__aside{border-left:none;border-top:1px solid var(--line)}
  .footer__top{grid-template-columns:1fr 1fr;gap:40px}
  .footer__brand{grid-column:1 / -1}
}

@media (max-width:900px){
  :root{--nav-h:68px;--nav-h-sm:60px}
  .nav__logo img{height:42px}
  .nav.is-scrolled .nav__logo img{height:36px}
  .footer__logo img{height:46px}
  .nav__list{
    position:fixed;inset:var(--nav-h) 0 0;
    flex-direction:column;align-items:stretch;gap:0;
    background:rgba(7,9,13,.985);
    backdrop-filter:blur(20px);
    -webkit-backdrop-filter:blur(20px);
    padding:20px var(--gutter) 40px;
    overflow-y:auto;margin-left:0;
    transform:translateY(-8px);opacity:0;visibility:hidden;
    transition:opacity .26s var(--ease-io),transform .26s var(--ease),visibility .26s;
  }
  .nav__list.is-open{opacity:1;visibility:visible;transform:none}
  .nav__link{font-size:15px;letter-spacing:.06em;padding:16px 4px;justify-content:space-between;border-bottom:1px solid var(--line)}
  .nav__link[aria-current="page"]::after{display:none}
  .nav__link .icon{font-size:11px;opacity:.7}
  .nav__drop{
    position:static;opacity:1;visibility:visible;transform:none;
    background:transparent;border:none;box-shadow:none;
    padding:4px 0 12px 14px;min-width:0;
    display:none;
  }
  .nav__item.is-open .nav__drop{display:block}
  .nav__cta{margin:22px 0 0;justify-content:center}
  .nav__burger{display:flex}

  .stats{grid-template-columns:repeat(2,1fr)}
  .stat{border-right:none;border-bottom:1px solid var(--line)}
  .stat:nth-child(odd){border-right:1px solid var(--line)}
  .stat:nth-last-child(-n+2){border-bottom:none}

  .grid--3,.grid--2,.projects,.articles,.playbook,.siblings{grid-template-columns:1fr}
  .contact{grid-template-columns:1fr;gap:44px}
  .form__row{grid-template-columns:1fr}
  .section-head{flex-direction:column;align-items:flex-start;gap:20px}
  .hero{min-height:auto;padding-top:calc(var(--nav-h) + 68px)}
  .hero h1{max-width:none}
  .footer__top{grid-template-columns:1fr;gap:36px}
  .footer__bottom{flex-direction:column;text-align:center}
  .project__plate{height:148px}
  .playbook{gap:1px}
}

@media (max-width:560px){
  .hero__pill{font-size:9.5px;letter-spacing:.1em;padding:7px 13px;gap:8px}
  .hero__meta{gap:12px}
  .hero__meta span{font-size:10px;letter-spacing:.09em;align-items:flex-start}
  .hero__meta .icon{margin-top:1px}
  .eyebrow{font-size:10px;letter-spacing:.15em}
  .stats{grid-template-columns:1fr}
  .stat{border-right:none !important;border-bottom:1px solid var(--line) !important}
  .stat:last-child{border-bottom:none !important}
  .hero__actions .btn,.cta__actions .btn,.midpage__actions .btn{width:100%;justify-content:center}
  .form__foot{flex-direction:column;align-items:stretch}
  .form__foot .btn{width:100%;justify-content:center}
}

/* ---------- 23b. LARGE DESKTOP ---------- */
/* The container runs near the viewport edge above ~1400px, so a few
   pieces get re-proportioned rather than just stretched. */
@media (min-width:1400px){
  .about{grid-template-columns:minmax(340px,420px) minmax(0,1fr);gap:clamp(56px,6vw,120px)}
  .portrait{max-width:420px}
  /* Bullets and the callout use the full column width the paragraphs cap
     out of, so the section fills the space instead of trailing off. */
  .bullets{display:grid;grid-template-columns:1fr 1fr;gap:0 44px;margin-top:14px}
  .bullets li{border-bottom:1px solid var(--line)}
  .bullets li:nth-last-child(2):nth-child(odd){border-bottom:none}
  .project__plate{height:196px}
  .project__plate img{max-height:104px}
  .project__body{padding:30px}
  .grid,.projects,.articles{gap:24px}
  .stat__num{font-size:clamp(44px,4.4vw,68px)}
}
@media (min-width:1700px){
  .hero{min-height:min(100svh,1040px)}
  .hero__sub{font-size:19px}
  /* The hero is deliberately left-aligned and editorial, so the right
     half is composed with the brand mark rather than left blank. */
  .hero__mark{width:min(40vw,720px);opacity:.075;right:-1%}
}

/* ---------- 24. MOTION / PRINT ---------- */
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{
    animation-duration:.001ms !important;
    animation-iteration-count:1 !important;
    transition-duration:.001ms !important;
  }
  .js .reveal{opacity:1 !important;transform:none !important}
  .ticker__track{animation:none;transform:none}
  .hero__grid,.hero__aurora,.portrait__ring--outer{animation:none}
}

@media print{
  .nav,.footer__social,.progress,.ticker,.hero__atmos,.pagehero__atmos,.cta{display:none}
  body{background:#fff;color:#000}
  .card,.article,.project,.form{border-color:#ccc;background:#fff}
}
