/* Generated from the landing page token set - edit landing_css.py, not this. */
:root{
  --ground:      oklch(31% .068 162);
  --ground-deep: oklch(25% .056 162);
  --ground-lift: oklch(36% .074 162);

  /* the portfolio band - its own ground, so each product's colour can speak */
  --band:        oklch(17.5% .026 162);
  --band-lift:   oklch(22% .03 162);

  --chalk:       oklch(96% .013 85);
  --chalk-dim:   oklch(85% .018 120);
  --chalk-faint: oklch(71% .022 140);
  --ink:         oklch(24% .035 162);

  /* bold yellow - the loud voice, used on headline fragments and figures */
  --yellow:      #FFC83D;
  --yellow-deep: #E0A413;

  --laterite:    oklch(58% .115 44);
  --live:        #14c876;      /* rationed: means LIVE, nothing else */

  --rule:  color-mix(in oklch, var(--chalk) 17%, transparent);
  --rule2: color-mix(in oklch, var(--chalk) 30%, transparent);

  --display: "Host Grotesk", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;
  --body: "Host Grotesk", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;
  --mono: "Martian Mono", ui-monospace, SFMono-Regular, Menlo, monospace;
  --max: 1160px;
  color-scheme: dark;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%; scroll-behavior:smooth}
body{
  margin:0; background:var(--ground); color:var(--chalk);
  font-family:var(--body); font-size:16px; line-height:1.6; min-width:320px;
  -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility;
  overflow-x:hidden;
}
@media (prefers-reduced-motion: reduce){ html{scroll-behavior:auto} }
::selection{background:var(--yellow); color:var(--ink)}
a{color:inherit}
img{max-width:100%}
.wrap{width:min(var(--max), calc(100% - 44px)); margin:0 auto}
.sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;
  clip:rect(0 0 0 0);white-space:nowrap;border:0}
:focus-visible{outline:2px solid var(--yellow); outline-offset:3px}

/* ---- type ------------------------------------------------------------- */
h1,h2,h3{text-wrap:balance; margin:0}
.d1{font-family:var(--display); font-weight:800; letter-spacing:-.042em; line-height:1.02;
  font-size:clamp(36px, 6.1vw, 70px)}
.d2{font-family:var(--display); font-weight:800; letter-spacing:-.034em; line-height:1.08;
  font-size:clamp(26px, 3.6vw, 40px)}
.d2 em,.d1 em{font-style:normal; color:var(--yellow)}
.lab{font-family:var(--mono); font-size:10px; font-weight:600; letter-spacing:.16em;
  text-transform:uppercase; color:var(--chalk-faint)}
.lab.y{color:var(--yellow)}
.lede{font-size:clamp(16px,1.85vw,19px); color:var(--chalk-dim); max-width:58ch; text-wrap:pretty}
.tnum{font-variant-numeric:tabular-nums}

/* ---- chrome ----------------------------------------------------------- */
.strip-top{background:var(--ground-deep); border-bottom:1px solid var(--rule);
  text-align:center; padding:8px 0; font-size:12px; color:var(--chalk-faint)}
.nav{position:sticky; top:0; z-index:40; background:color-mix(in oklch, var(--ground) 92%, black);
  border-bottom:1px solid var(--rule)}
.nav-in{display:flex; align-items:center; gap:18px; min-height:62px}
.brand{display:flex; align-items:center; gap:10px; text-decoration:none; flex:none}
.brand img{height:26px; display:block}
.brand-tag{font-family:var(--mono); font-size:9px; letter-spacing:.14em; text-transform:uppercase;
  color:var(--chalk-faint); white-space:nowrap}
/* Every tab the old nav had is kept. Below ~1240px there are more tabs than
   room, so the rail scrolls rather than hiding links people rely on. */
.nav-links{display:flex; gap:15px; margin-left:auto; overflow-x:auto; padding:4px 0;
  scrollbar-width:none; -webkit-overflow-scrolling:touch; min-width:0}
.nav-links::-webkit-scrollbar{display:none}
.nav-links a{font-size:13px; font-weight:600; color:var(--chalk-dim); text-decoration:none;
  white-space:nowrap}
.nav-links a:hover{color:var(--yellow)}
.btn{display:inline-flex; align-items:center; gap:8px; min-height:42px; padding:0 18px;
  border:1px solid var(--rule2); background:transparent; color:var(--chalk);
  font:inherit; font-size:13.5px; font-weight:650; text-decoration:none; cursor:pointer;
  border-radius:2px; transition:background .15s ease-out, color .15s ease-out, border-color .15s ease-out}
.btn:hover{background:color-mix(in oklch, var(--chalk) 9%, transparent)}
.btn.y{background:var(--yellow); border-color:var(--yellow); color:var(--ink)}
.btn.y:hover{background:var(--yellow-deep); border-color:var(--yellow-deep)}
@media(max-width:1180px){ .brand-tag{display:none} }
@media(max-width:760px){ .nav-in{flex-wrap:wrap; padding:8px 0}
  .nav-links{order:3; width:100%; margin-left:0;
    mask-image:linear-gradient(90deg,#000 88%,transparent);
    -webkit-mask-image:linear-gradient(90deg,#000 88%,transparent)}
  .btn{min-height:38px; padding:0 14px; font-size:12.5px} }

/* ---- hero -------------------------------------------------------------- */
.hero{position:relative; padding:clamp(52px,7vw,92px) 0 clamp(44px,6vw,72px); overflow:hidden}
.hero-vis{position:absolute; inset:0; z-index:0; pointer-events:none;
  mask-image:linear-gradient(180deg,#000 55%,transparent 100%);
  -webkit-mask-image:linear-gradient(180deg,#000 55%,transparent 100%)}
.hero-vis canvas{width:100%; height:100%; display:block; opacity:0; transition:opacity 1.1s ease}
.hero-vis canvas.is-ready{opacity:.62}
.hero-vis::before{content:""; position:absolute; inset:0;
  background:radial-gradient(ellipse at 72% 6%, color-mix(in oklch,var(--yellow) 14%, transparent), transparent 56%)}
/* The network is atmosphere, not content. A scrim keeps nodes from landing on
   letters - the text column stays fully legible, the right side stays open. */
.hero-vis::after{content:""; position:absolute; inset:0;
  background:linear-gradient(100deg, var(--ground) 0%,
    color-mix(in oklch, var(--ground) 86%, transparent) 34%,
    color-mix(in oklch, var(--ground) 30%, transparent) 62%, transparent 86%)}
.hero .wrap{position:relative; z-index:1}
.chip{display:inline-flex; align-items:center; gap:8px; margin-bottom:24px;
  font-family:var(--mono); font-size:11px; letter-spacing:.05em; color:var(--chalk-dim);
  border:1px solid var(--rule); border-radius:2px; padding:6px 11px;
  background:color-mix(in oklch, var(--ground-deep) 70%, transparent)}
.chip b{width:6px;height:6px;border-radius:50%;background:var(--live);display:block;flex:none}
@media (prefers-reduced-motion: no-preference){
  .chip b{animation:beat 2.4s ease-in-out infinite}
  @keyframes beat{0%,100%{opacity:1}50%{opacity:.28}}
}
.hero h1{max-width:17ch; margin-bottom:18px}
.hero .lede{margin-bottom:26px}
.acts{display:flex; gap:10px; flex-wrap:wrap; margin-bottom:30px}

.answer{border:1px solid var(--rule); border-left:3px solid var(--yellow);
  background:color-mix(in oklch, var(--ground-deep) 80%, transparent);
  padding:20px 22px; margin:0 0 26px; max-width:76ch}
.answer h2{font-size:16px; font-weight:700; margin-bottom:8px; font-family:var(--body);
  letter-spacing:-.01em}
.answer p{margin:0 0 10px; font-size:14px; color:var(--chalk-dim); line-height:1.65}
.answer p:last-child{margin-bottom:0}
.answer strong{color:var(--yellow)}
.answer a{color:var(--chalk); text-underline-offset:3px}

.figs{display:grid; grid-template-columns:repeat(auto-fit,minmax(168px,1fr)); gap:1px;
  background:var(--rule); border:1px solid var(--rule)}
.figs > div{background:var(--ground); padding:16px 18px}
.figs .n{font-family:var(--mono); font-size:clamp(24px,3.4vw,32px); font-weight:500;
  letter-spacing:-.03em; display:block; line-height:1.1; color:var(--yellow)}
.figs .k{display:block; margin-top:5px}

/* ---- marquee ----------------------------------------------------------- */
.marq{margin-top:30px; overflow:hidden; border-block:1px solid var(--rule); padding:14px 0;
  mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.marq-t{display:flex; gap:46px; align-items:center; width:max-content}
@media (prefers-reduced-motion: no-preference){
  .marq-t{animation:slide 42s linear infinite}
  @keyframes slide{to{transform:translateX(-50%)}}
}
.marq img{height:22px; width:auto; opacity:.55; filter:grayscale(1)}

/* ---- uli rule ---------------------------------------------------------- */
.uli{display:block; width:100%; height:22px; margin:8px 0 0; overflow:visible}
.uli path{fill:none; stroke:var(--chalk); stroke-width:1.1; opacity:.34}
.uli circle{fill:var(--yellow)}

/* ---- section shell ----------------------------------------------------- */
.sec{padding:clamp(56px, 8vw, 104px) 0}
.sec-head{max-width:54ch; margin-bottom:38px}
.sec-head .d2{margin:10px 0 10px}
.sec-head p{color:var(--chalk-dim); margin:0}

/* ---- PORTFOLIO BAND: its own ground ------------------------------------ */
.band{background:var(--band); border-block:1px solid var(--rule)}
.band .sec-head p{color:var(--chalk-faint)}
.grid{display:grid; grid-template-columns:repeat(auto-fill,minmax(336px,1fr)); gap:18px}
.card{
  /* --a is set per card inline; everything here reads from it */
  position:relative; display:flex; flex-direction:column; gap:12px;
  background:linear-gradient(170deg, color-mix(in oklch, var(--a) 11%, var(--band-lift)), var(--band-lift));
  border:1px solid color-mix(in oklch, var(--a) 26%, transparent);
  border-radius:3px; padding:22px; min-width:0; isolation:isolate;
  transition:border-color .18s ease-out, transform .18s ease-out;
}
@media (hover:hover){ .card:hover{border-color:color-mix(in oklch,var(--a) 58%, transparent); transform:translateY(-2px)} }
.card::after{content:""; position:absolute; inset:0 auto auto 0; width:38px; height:2px;
  background:var(--a); border-radius:3px 0 0 0}
.card-top{display:flex; align-items:flex-start; gap:11px}
.mark{width:36px; height:36px; flex:none; border-radius:3px; display:grid; place-items:center;
  background:color-mix(in oklch, var(--a) 18%, transparent);
  border:1px solid color-mix(in oklch, var(--a) 40%, transparent); overflow:hidden}
.mark img{width:24px; height:24px; object-fit:contain; display:block}
.mark span{font-family:var(--display); font-weight:800; font-size:17px; color:var(--a); line-height:1}
.card h3{font-size:17px; font-weight:700; letter-spacing:-.02em; line-height:1.2}
.card .sector{display:block; margin-top:2px}
.card .story{margin:0; font-size:13.5px; line-height:1.6; color:var(--chalk-dim)}
.card .tags{display:flex; flex-wrap:wrap; gap:5px; margin-top:auto}
.card .tags span{font-family:var(--mono); font-size:9.5px; letter-spacing:.05em; padding:3px 7px;
  border:1px solid var(--rule); color:var(--chalk-faint); border-radius:2px}
/* The stack is supporting evidence, not a headline - mono, small, and tinted
   by the card's own accent so it belongs to that product. */
.card .stack{margin:0; font-family:var(--mono); font-size:9.5px; line-height:1.65;
  letter-spacing:.02em; color:color-mix(in oklch, var(--a) 62%, var(--chalk-faint))}
.card .stack span{display:block; font-size:8.5px; letter-spacing:.18em; text-transform:uppercase;
  color:var(--chalk-faint); margin-bottom:3px}
.card .foot{display:flex; align-items:center; gap:12px; flex-wrap:wrap; padding-top:11px;
  border-top:1px solid var(--rule)}
.state{display:inline-flex; align-items:center; gap:6px; font-family:var(--mono);
  font-size:10px; letter-spacing:.08em; text-transform:uppercase; color:var(--chalk-faint)}
.state i{width:5px;height:5px;border-radius:50%;background:currentColor;display:block}
.state.is-live{color:var(--live)}
.state.is-build{color:var(--yellow)}
.card .go{margin-left:auto; display:flex; gap:10px; flex-wrap:wrap}
.card .go a{font-size:12px; font-weight:650; color:var(--a); text-decoration:none;
  border-bottom:1px solid color-mix(in oklch,var(--a) 45%, transparent); padding-bottom:1px}
.card .go a:hover{border-bottom-color:var(--a)}

/* ---- app launcher -------------------------------------------------------
   A phone home screen for the portfolio. Nineteen icons in nineteen colours,
   so a reader can go straight to the product they came for instead of
   scrolling for it - and come back to the same place afterwards. */
.dock{display:grid; grid-template-columns:repeat(auto-fill,minmax(78px,1fr)); gap:10px;
  margin-bottom:30px; padding:18px; border:1px solid var(--rule); border-radius:4px;
  background:color-mix(in oklch, var(--band-lift) 70%, transparent)}
.dock .app{display:flex; flex-direction:column; align-items:center; gap:7px;
  text-decoration:none; padding:8px 4px; border-radius:4px; min-width:0;
  transition:background .15s ease-out, transform .15s ease-out}
@media (hover:hover){ .dock .app:hover{background:color-mix(in oklch,var(--a) 14%, transparent);
  transform:translateY(-2px)} }
.dock .ico{width:44px; height:44px; flex:none; border-radius:12px; display:grid; place-items:center;
  background:color-mix(in oklch, var(--a) 20%, var(--band));
  border:1px solid color-mix(in oklch, var(--a) 45%, transparent);
  box-shadow:0 5px 14px -6px color-mix(in oklch, var(--a) 60%, transparent); position:relative}
.dock .ico img{width:22px; height:22px; object-fit:contain; display:block}
.dock .ico b{font-family:var(--display); font-weight:800; font-size:17px; color:var(--a); line-height:1}
.dock .nm{font-size:10.5px; font-weight:600; color:var(--chalk-faint); text-align:center;
  line-height:1.25; max-width:100%; overflow:hidden; text-overflow:ellipsis; white-space:nowrap}
.dock .app:hover .nm,.dock .app:focus-visible .nm{color:var(--chalk)}
/* an app you have already opened, the way a phone marks a recent one */
.dock .app[data-opened] .ico::after{content:""; position:absolute; bottom:-7px; left:50%;
  transform:translateX(-50%); width:4px; height:4px; border-radius:50%; background:var(--a)}
/* the card the reader just came back to */
.card.is-target{border-color:var(--a); box-shadow:0 0 0 1px var(--a), 0 18px 48px -26px var(--a)}
@media (prefers-reduced-motion: no-preference){
  .card.is-target{animation:land .9s ease-out}
  @keyframes land{0%{box-shadow:0 0 0 3px var(--a)}100%{box-shadow:0 0 0 1px var(--a), 0 18px 48px -26px var(--a)}}
}
.card{scroll-margin-top:96px}

/* ---- return bar (destination pages) ------------------------------------- */
.backbar{position:sticky; top:0; z-index:60; background:color-mix(in oklch, var(--band) 94%, black);
  border-bottom:1px solid var(--rule)}
.backbar-in{display:flex; align-items:center; gap:12px; min-height:46px; font-size:13px}
.backbar a{display:inline-flex; align-items:center; gap:8px; color:var(--chalk);
  text-decoration:none; font-weight:650}
.backbar a:hover{color:var(--yellow)}
.backbar .ar{font-family:var(--mono)}
.backbar .ctx{color:var(--chalk-faint); font-size:12px; margin-left:auto;
  white-space:nowrap; overflow:hidden; text-overflow:ellipsis}
@media(max-width:560px){ .dock{grid-template-columns:repeat(auto-fill,minmax(66px,1fr)); padding:14px}
  .dock .ico{width:40px;height:40px;border-radius:11px} .backbar .ctx{display:none} }

/* Collapse to eight. The rule only bites once JS has added .is-clipped, so
   without JS every card stays visible and the page loses nothing. */
.grid.is-clipped .card.is-more{display:none}
.shuffle-bar{display:flex; align-items:center; gap:12px; flex-wrap:wrap; margin-top:26px}
.shuffle-bar .btn[hidden]{display:none}

/* ---- method ------------------------------------------------------------ */
.layers{display:grid; grid-template-columns:repeat(auto-fit,minmax(210px,1fr)); gap:1px;
  background:var(--rule); border:1px solid var(--rule)}
.layers > div{background:var(--ground); padding:24px}
.layers h3{font-size:15px; font-weight:700; letter-spacing:-.01em; margin-bottom:6px}
.layers p{margin:0; font-size:13px; color:var(--chalk-dim); line-height:1.6}
.layers .lab{display:block; margin-bottom:9px}

/* ---- engagements: interactive pricing ---------------------------------- */
.doc{background:var(--chalk); color:var(--ink); padding:clamp(22px,3.4vw,38px);
  border:1px solid var(--rule)}
.doc .lab{color:oklch(48% .03 162)}
.doc .d2{margin:10px 0 10px}
.doc > p{color:oklch(40% .03 162); max-width:64ch; margin:0 0 22px; font-size:14.5px}
.quote{display:grid; grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr); gap:26px; align-items:start}
@media(max-width:820px){ .quote{grid-template-columns:1fr} }
.q-opts{display:flex; flex-direction:column; gap:16px}
.q-group > .lab{display:block; margin-bottom:8px}
.q-row{display:flex; flex-wrap:wrap; gap:7px}
.q-row label{cursor:pointer}
.q-row input{position:absolute; opacity:0; width:0; height:0}
.q-row span{display:inline-block; padding:8px 13px; border:1px solid oklch(84% .02 162);
  font-size:13px; font-weight:600; border-radius:2px; background:#fff;
  transition:background .15s ease-out, border-color .15s ease-out, color .15s ease-out}
.q-row input:checked + span{background:var(--ink); border-color:var(--ink); color:var(--chalk)}
.q-row input:focus-visible + span{outline:2px solid var(--yellow); outline-offset:2px}
.q-row.add input:checked + span{background:var(--yellow-deep); border-color:var(--yellow-deep); color:#231a02}
.q-out{background:var(--ink); color:var(--chalk); padding:22px; border-radius:2px; position:sticky; top:84px}
.q-out .lab{color:var(--chalk-faint)}
.q-amount{font-family:var(--mono); font-weight:500; letter-spacing:-.03em;
  font-size:clamp(26px,4vw,38px); color:var(--yellow); margin:8px 0 2px; line-height:1.05}
.q-sub{font-size:12.5px; color:var(--chalk-faint); margin:0 0 16px}
.q-lines{list-style:none; margin:0 0 16px; padding:0; font-size:12.5px}
.q-lines li{display:flex; justify-content:space-between; gap:12px; padding:7px 0;
  border-bottom:1px solid var(--rule); color:var(--chalk-dim)}
.q-lines li b{font-family:var(--mono); font-weight:500; color:var(--chalk); white-space:nowrap}
.q-note{font-size:11.5px; color:var(--chalk-faint); margin:0 0 16px; line-height:1.55}
.q-out .btn{width:100%; justify-content:center}

/* ---- accordions (native, crawlable, zero JS) --------------------------- */
.acc{border:1px solid var(--rule); border-radius:2px; overflow:hidden}
.acc + .acc{margin-top:-1px}
.acc summary{list-style:none; cursor:pointer; padding:16px 18px; display:flex; gap:14px;
  align-items:baseline; font-weight:650; font-size:15.5px; letter-spacing:-.01em}
.acc summary::-webkit-details-marker{display:none}
.acc summary::after{content:"+"; margin-left:auto; font-family:var(--mono); color:var(--yellow);
  font-size:15px; flex:none}
.acc[open] summary::after{content:"\2212"}
.acc summary:hover{background:color-mix(in oklch,var(--chalk) 5%, transparent)}
.acc .sum-k{font-family:var(--mono); font-size:10px; letter-spacing:.12em; text-transform:uppercase;
  color:var(--chalk-faint); flex:none}
.acc-body{padding:0 18px 18px; max-width:76ch}
.acc-body dl{margin:0; display:grid; gap:12px}
.acc-body dt{font-family:var(--mono); font-size:9.5px; letter-spacing:.14em; text-transform:uppercase;
  color:var(--yellow)}
.acc-body dd{margin:4px 0 0; font-size:14px; color:var(--chalk-dim); line-height:1.65}
.acc-body .more{display:inline-block; margin-top:14px; font-size:13px; font-weight:650;
  color:var(--yellow); text-decoration:none; border-bottom:1px solid currentColor}

/* ---- lists (journal / comparisons / resources) ------------------------- */
.rows{border-top:1px solid var(--rule)}
.rows a{display:flex; gap:16px; align-items:baseline; padding:14px 2px;
  border-bottom:1px solid var(--rule); text-decoration:none; color:var(--chalk);
  transition:background .15s ease-out, padding-left .15s ease-out}
@media (hover:hover){ .rows a:hover{background:color-mix(in oklch,var(--chalk) 5%,transparent); padding-left:10px} }
.rows a span.t{font-size:14.5px; font-weight:600; letter-spacing:-.01em; min-width:0}
.rows a span.n{font-family:var(--mono); font-size:10px; color:var(--chalk-faint); flex:none; width:26px}
.rows a::after{content:"\2192"; margin-left:auto; color:var(--yellow); flex:none}
.cols2{display:grid; grid-template-columns:repeat(auto-fit,minmax(320px,1fr)); gap:0 36px}

.ways{display:grid; grid-template-columns:repeat(auto-fit,minmax(246px,1fr)); gap:1px;
  background:var(--rule); border:1px solid var(--rule)}
.ways > a{background:var(--ground); padding:20px; text-decoration:none; display:block;
  transition:background .15s ease-out}
.ways > a:hover{background:var(--ground-lift)}
.ways h3{font-size:15.5px; font-weight:700; margin:8px 0 6px; letter-spacing:-.01em}
.ways p{margin:0; font-size:13px; color:var(--chalk-dim); line-height:1.6}

/* ---- contact ----------------------------------------------------------- */
.cta{background:var(--ground-deep); border-block:1px solid var(--rule); padding:62px 0}
.cta .d2{max-width:20ch; margin-bottom:12px}
.copyem{display:inline-flex; align-items:center; gap:8px}
.copyem b{font-family:var(--mono); font-size:11px; color:var(--live); opacity:0; transition:opacity .2s}
.copyem.done b{opacity:1}

/* ---- footer ------------------------------------------------------------ */
footer{padding:48px 0 54px; border-top:1px solid var(--rule); background:var(--ground-deep)}
.fgrid{display:grid; grid-template-columns:1.5fr repeat(4, minmax(0,1fr)); gap:28px}
@media(max-width:900px){ .fgrid{grid-template-columns:1fr 1fr} }
@media(max-width:540px){ .fgrid{grid-template-columns:1fr} }
.fgrid h4{font-family:var(--mono); font-size:9.5px; letter-spacing:.16em; text-transform:uppercase;
  color:var(--chalk-faint); margin:0 0 12px; font-weight:600}
.fgrid ul{list-style:none; margin:0; padding:0; display:grid; gap:8px}
.fgrid a{font-size:13px; color:var(--chalk-dim); text-decoration:none}
.fgrid a:hover{color:var(--yellow)}
.fgrid p{font-size:13px; color:var(--chalk-faint); margin:0 0 14px; max-width:36ch}
.copyright{margin-top:34px; padding-top:18px; border-top:1px solid var(--rule);
  display:flex; justify-content:space-between; gap:16px; flex-wrap:wrap;
  font-size:12px; color:var(--chalk-faint)}

/* ---- reveal (content visible by default; motion added on top) ---------- */
@media (prefers-reduced-motion: no-preference){
  .rv{opacity:0; transform:translateY(14px); transition:opacity .5s ease-out, transform .5s ease-out}
  .rv.in{opacity:1; transform:none}
}
@media(max-width:560px){
  .sec{padding:52px 0}
  .figs > div{padding:14px 15px}
  .acts .btn{width:100%; justify-content:center}
}
