/* Sections carried over from the original Nex site (CTA, selected work, FAQ, contact form, footer).
   Scoped under .nex-old so Bootstrap/Liko classes such as .btn and .h2 do not clash.
   Light is the default; html.liko-dark-active switches to the original dark palette. */
@font-face{font-family:"Marcellus";font-weight:400;font-display:swap;src:url("../fonts/marcellus-latin-400-normal.woff2") format("woff2")}
@font-face{font-family:"Manrope";font-weight:400;font-display:swap;src:url("../fonts/manrope-latin-400-normal.woff2") format("woff2")}
@font-face{font-family:"Manrope";font-weight:500;font-display:swap;src:url("../fonts/manrope-latin-500-normal.woff2") format("woff2")}
@font-face{font-family:"Manrope";font-weight:600;font-display:swap;src:url("../fonts/manrope-latin-600-normal.woff2") format("woff2")}
:root{--obsidian:#0d1110;--obsidian-2:#141917;--ivory:#ece6d9;--emerald:#1f8a5b;--jade:#4fc58b;--forest:#0a2114;
  --bg:#eef0eb;--bg-2:#e3e7e0;--ink:#121614;--ink-2:rgba(18,22,20,.66);--ink-3:rgba(18,22,20,.2);--line:rgba(18,22,20,.12);--accent:#16794d;--glass:rgba(18,22,20,.04);
  --f-display:"Marcellus","Cormorant Garamond",Georgia,serif;--f-text:"Manrope","Helvetica Neue",Arial,sans-serif;
  --wrap:1320px;--gut:clamp(20px,4vw,48px);--sec:clamp(96px,13vw,180px);--ease:cubic-bezier(.2,.7,.1,1)}
html.liko-dark-active{--bg:var(--obsidian);--bg-2:var(--obsidian-2);--ink:var(--ivory);--ink-2:rgba(236,230,217,.66);--ink-3:rgba(236,230,217,.22);--line:rgba(236,230,217,.12);--accent:var(--jade);--glass:rgba(236,230,217,.06)}
.nex-old{font:400 17px/1.7 var(--f-text);color:var(--ink);-webkit-font-smoothing:antialiased}
.nex-old p{font-size:inherit;line-height:inherit;margin:0}
.nex-old a{color:inherit;text-decoration:none}
.nex-old img{display:block;max-width:100%;height:auto}
.nex-old h2,.nex-old h3{color:var(--ink)}
footer.nex-old{background:var(--bg)}
section.nex-old.cta{background:var(--bg)}
.nex-old .wrap{width:100%;max-width:calc(var(--wrap) + var(--gut) * 2);margin:0 auto;padding:0 var(--gut)}
.nex-old .sec{padding:calc(var(--sec) * .55) 0}
.nex-old .sec-tight{padding-top:0}
.nex-old .display,.nex-old .h1,.nex-old .h2,.nex-old .h3{font-family:var(--f-display);font-weight:400;margin:0;text-wrap:balance}
.nex-old .lede,.nex-old .statement{text-wrap:pretty}
.nex-old .h2{font-size:clamp(40px,5.4vw,84px);line-height:1.06;letter-spacing:-.01em}
.nex-old .lede{font-size:clamp(18px,1.5vw,21px);line-height:1.65;color:var(--ink-2);max-width:60ch;margin:28px 0 0;text-wrap:pretty}
.nex-old .muted{color:var(--ink-2)}
.nex-old .icon-btn{width:44px;height:44px;display:inline-grid;place-items:center;padding:0;border:1px solid var(--line);border-radius:50%;background:transparent;cursor:pointer;transition:background-color .25s ease,border-color .25s ease}
.nex-old .icon-btn:hover{background:var(--glass);border-color:var(--ink-3)}
.nex-old .icon-btn svg{width:18px;height:18px}
.nex-old .btn{display:inline-flex;align-items:center;gap:14px;padding:6px 6px 6px 26px;min-height:56px;border:1px solid var(--ink);border-radius:999px;background:var(--ink);color:var(--bg);font:600 16px/1 var(--f-text);cursor:pointer;white-space:nowrap;transition:background-color .3s ease,border-color .3s ease,color .3s ease,box-shadow .3s ease}
.nex-old .btn:hover,.nex-old .btn:focus-visible{box-shadow:0 0 0 4px color-mix(in srgb,var(--jade) 26%,transparent)}
.nex-old .btn-ico{width:42px;height:42px;flex:0 0 auto;display:grid;place-items:center;border-radius:50%;border:1px solid var(--jade);background:var(--jade);color:var(--forest);transition:background-color .3s ease}
.nex-old .btn-ico svg{width:16px;height:16px;transition:transform .4s var(--ease)}
.nex-old .btn:hover .btn-ico svg,.nex-old .btn:focus-visible .btn-ico svg{transform:rotate(-45deg)}
.nex-old .btn-glass{background:var(--glass);color:var(--ink);border-color:var(--line);font-weight:500;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}
.nex-old .btn-glass .btn-ico{background:transparent;border-color:color-mix(in srgb,var(--jade) 60%,transparent);color:var(--accent)}
.nex-old .btn-glass:hover,.nex-old .btn-glass:focus-visible{box-shadow:none;border-color:color-mix(in srgb,var(--jade) 55%,transparent);background:color-mix(in srgb,var(--jade) 9%,transparent)}
.nex-old .btn-glass:hover .btn-ico{background:var(--jade);border-color:var(--jade);color:var(--forest)}
.nex-old .btn-sm{min-height:44px;padding:4px 4px 4px 20px;font-size:14px;gap:10px}
.nex-old .btn-sm .btn-ico{width:34px;height:34px}
.nex-old .btn-row{display:flex;flex-wrap:wrap;gap:14px;margin-top:40px}
.nex-old .link-u{background:linear-gradient(currentColor,currentColor) 0 100% / 100% 1px no-repeat;padding-bottom:2px;transition:background-size .35s var(--ease)}
.nex-old .link-u:hover{background-size:0 1px;background-position:100% 100%}
.nex-old .head{display:flex;align-items:end;justify-content:space-between;gap:32px;flex-wrap:wrap;margin-bottom:clamp(40px,6vw,80px)}
.nex-old .head .lede{margin:0;max-width:42ch}
.nex-old .faq-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(40px,6vw,100px);align-items:start}
.nex-old .faq-grid .head{position:sticky;top:120px;margin:0}
.nex-old .faq-grid .head .lede{margin-top:24px}
@media (max-width:900px){.nex-old .faq-grid{grid-template-columns:1fr}.nex-old .faq-grid .head{position:static}}
.nex-old .faq{border-top:1px solid var(--line)}
.nex-old .faq details{border-bottom:1px solid var(--line)}
.nex-old .faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:24px;align-items:center;padding:28px 0;font:500 clamp(18px,1.6vw,21px)/1.4 var(--f-text)}
.nex-old .faq summary::-webkit-details-marker{display:none}
.nex-old .faq summary::after{content:"";flex:0 0 14px;height:14px;background:linear-gradient(currentColor,currentColor) center / 14px 1.5px no-repeat,linear-gradient(currentColor,currentColor) center / 1.5px 14px no-repeat;color:var(--accent);transition:transform .4s var(--ease)}
.nex-old .faq details[open] summary::after{transform:rotate(45deg)}
.nex-old .faq .ans{padding:0 48px 30px 0;color:var(--ink-2);max-width:64ch}
.nex-old .faq .ans p{margin:0}
.nex-old.cta,.nex-old .cta{position:relative;overflow:hidden;isolation:isolate;text-align:center;padding:clamp(100px,14vw,190px) 0;border-top:1px solid var(--line)}
.nex-old.cta::before,.nex-old .cta::before{content:"";position:absolute;left:50%;top:100%;z-index:-1;width:min(1100px,120vw);aspect-ratio:1;translate:-50% -42%;border-radius:50%;background:radial-gradient(closest-side,rgba(31,138,91,.42),rgba(31,138,91,.12) 55%,transparent 72%)}
.nex-old.cta .h2{max-width:14ch;margin:0 auto}
.nex-old.cta .lede{margin-left:auto;margin-right:auto}
.nex-old.cta .btn-row{justify-content:center}
.nex-old .cta-mail{margin-top:26px;color:var(--ink-2);font-size:15px}
.nex-old .split{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(32px,6vw,100px)}
@media (max-width:860px){.nex-old .split{grid-template-columns:1fr}}
.nex-old .form{display:grid;gap:22px}
.nex-old .field label{display:block;font-size:14px;font-weight:500;margin-bottom:8px}
.nex-old .field input,.nex-old .field textarea,.nex-old .field select{width:100%;padding:16px 18px;border:1px solid var(--line);border-radius:14px;background:var(--glass);color:var(--ink);font:400 16px/1.5 var(--f-text);transition:border-color .25s ease,background-color .25s ease}
.nex-old .field select{appearance:none;-webkit-appearance:none;padding-right:44px;background-image:linear-gradient(45deg,transparent 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,transparent 50%);background-position:calc(100% - 22px) 52%,calc(100% - 17px) 52%;background-size:5px 5px;background-repeat:no-repeat}
.nex-old .field select option{background:var(--bg);color:var(--ink)}
.nex-old .field textarea{min-height:170px;resize:vertical}
.nex-old .field input:focus,.nex-old .field textarea:focus,.nex-old .field select:focus{outline:none;border-color:var(--accent);background:color-mix(in srgb,var(--jade) 6%,transparent)}
.nex-old .field-2{display:grid;grid-template-columns:1fr 1fr;gap:22px}
@media (max-width:600px){.nex-old .field-2{grid-template-columns:1fr}}
.nex-old .hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.nex-old .form-note{font-size:14px;color:var(--ink-2);margin:0}
.nex-old .form-status{margin:0;font-size:15px;min-height:1.5em}
.nex-old .form-status.ok{color:var(--accent)}
.nex-old .form-status.err{color:#e98a7a}
.nex-old .aside{display:grid;gap:34px;align-content:start}
.nex-old .aside h2{font:500 15px/1.4 var(--f-text);margin:0 0 8px;color:var(--ink)}
.nex-old .aside p{margin:0;color:var(--ink-2)}
.nex-old.ftr,.nex-old .ftr{border-top:1px solid var(--line);padding:clamp(64px,8vw,110px) 0 36px}
.nex-old .ftr-top{display:grid;grid-template-columns:minmax(0,1.4fr) repeat(2,minmax(0,1fr));gap:40px}
.nex-old .ftr-word{font-family:var(--f-display);font-size:clamp(64px,11vw,160px);line-height:.9;margin:0}
.nex-old .ftr-word i{font-style:normal;color:var(--accent)}
.nex-old .ftr-tag{color:var(--ink-2);max-width:36ch;margin:22px 0 0}
.nex-old.ftr h2{font:500 14px/1.4 var(--f-text);color:var(--ink-2);margin:0 0 16px}
.nex-old.ftr ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.nex-old.ftr ul a:hover{color:var(--accent)}
.nex-old .ftr-bot{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-top:clamp(56px,7vw,96px);padding-top:24px;border-top:1px solid var(--line);font-size:14px;color:var(--ink-2)}
@media (max-width:860px){.nex-old .ftr-top{grid-template-columns:1fr 1fr}.nex-old .ftr-top>:first-child{grid-column:1 / -1}}
.nex-old .sw-head{text-align:center}
.nex-old .sw-head .lede{margin-left:auto;margin-right:auto}
.nex-old .sw-head .btn-row{justify-content:center;margin:32px 0 clamp(56px,7vw,96px)}
.nex-old .mg{overflow:hidden}
.nex-old .mg-row{display:flex;gap:20px;width:max-content;padding:0 10px;will-change:transform;backface-visibility:hidden}
.nex-old .mg-top{align-items:flex-end;margin-bottom:20px}
.nex-old .mg-bot{align-items:flex-start}
.nex-old .mg-item{margin:0;flex:0 0 auto}
.nex-old .mg-item img{max-width:none}
@media (max-width:767px){.nex-old .mg-row{width:auto;flex-direction:column;gap:20px;padding:0 var(--gut);transform:none!important}.nex-old .mg-top{margin-bottom:20px}.nex-old .mg-item img{max-width:100%}}
.nex-old .ftr-word{line-height:0}
.nex-old .ftr-word .logo-img{height:clamp(110px,16vw,210px);width:auto}
.nex-old .logo-on-light{display:none}
html:not(.liko-dark-active) .nex-old .cta::before,html:not(.liko-dark-active) .nex-old.cta::before{opacity:.55}
html:not(.liko-dark-active) .nex-old .form-status.err{color:#b3402c}
html:not(.liko-dark-active) .nex-old .logo-on-dark{display:none}
html:not(.liko-dark-active) .nex-old .logo-on-light{display:block}
.nex-old .ftr-word{line-height:0}
.nex-old .ftr-word .logo-img{height:clamp(110px,16vw,210px);width:auto}
.nex-old .mg-item img{color:transparent;font-size:0}

/* services, about and timeline pieces from the original site */
.nex-old .lede,.nex-old .statement{text-wrap:pretty}
.nex-old .h1{font-size:clamp(48px,7vw,104px);line-height:1.04;letter-spacing:-.012em}
.nex-old .prose p{margin:0 0 1.2em;max-width:64ch;color:var(--ink-2)}
.nex-old .prose p:first-child{color:var(--ink)}
.nex-old .statement{font-family:var(--f-display);font-size:clamp(30px,3.6vw,54px);line-height:1.24;max-width:24ch;margin:0}
.nex-old .tl{--num:clamp(64px,7.4vw,112px);--dot:15px;--tp:0;position:relative}
.nex-old .tl-line{position:absolute;left:0;right:0;height:1px;background:var(--line);top:calc(var(--num) + 28px + var(--dot) / 2)}
.nex-old .tl-line span{display:block;height:100%;background:linear-gradient(90deg,var(--emerald),var(--jade));transform-origin:0 50%;transform:scaleX(var(--tp))}
.nex-old .steps{display:grid;grid-template-columns:repeat(var(--n),minmax(0,1fr));gap:clamp(24px,3vw,48px);margin:0;padding:0;list-style:none;position:relative}
.nex-old .steps li{display:flex;flex-direction:column}
.nex-old .st-num{font:400 var(--num)/1 var(--f-display);letter-spacing:-.02em;color:transparent;-webkit-text-stroke:1px var(--ink-3);transition:color .6s var(--ease),-webkit-text-stroke-color .6s var(--ease)}
.nex-old .st-dot{width:var(--dot);height:var(--dot);margin:28px 0 30px;border-radius:50%;border:1px solid var(--ink-3);background:var(--bg);position:relative;z-index:1;transition:background-color .5s ease,border-color .5s ease,box-shadow .5s ease}
.nex-old .steps h3{font:400 clamp(22px,2vw,28px)/1.25 var(--f-display);margin:0 0 12px;color:var(--ink-2);transition:color .5s ease}
.nex-old .steps p{margin:0;color:var(--ink-2);font-size:16px;max-width:32ch}
.nex-old .steps li.is-on .st-num{color:var(--brass);-webkit-text-stroke-color:var(--brass)}
.nex-old .steps li.is-on .st-dot{background:var(--jade);border-color:var(--jade);box-shadow:0 0 0 6px color-mix(in srgb,var(--jade) 16%,transparent)}
.nex-old .steps li.is-on h3{color:var(--ink)}
html.no-js .nex-old .tl,html.reduce .nex-old .tl{--tp:1}
html.no-js .nex-old .steps li .st-num,html.reduce .nex-old .steps li .st-num{color:var(--brass);-webkit-text-stroke-color:var(--brass)}
html.no-js .nex-old .steps li .st-dot,html.reduce .nex-old .steps li .st-dot{background:var(--jade);border-color:var(--jade)}
html.no-js .nex-old .steps h3,html.reduce .nex-old .steps h3{color:var(--ink)}
@media (max-width:900px){.nex-old .tl{--num:46px}.nex-old .tl-line{left:calc(var(--dot) / 2);right:auto;top:8px;bottom:8px;width:1px;height:auto}.nex-old .tl-line span{width:100%;height:100%;transform-origin:50% 0;transform:scaleY(var(--tp))}.nex-old .steps{grid-template-columns:1fr;gap:44px}.nex-old .steps li{display:grid;grid-template-columns:var(--dot) minmax(0,1fr);column-gap:24px}.nex-old .st-dot{grid-column:1;grid-row:1;margin:14px 0 0}.nex-old .st-num{grid-column:2;grid-row:1;margin-bottom:10px}.nex-old .steps h3,.nex-old .steps p{grid-column:2}}
.nex-old .svc-block{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,6vw,100px);padding:clamp(56px,7vw,96px) 0;border-top:1px solid var(--line);scroll-margin-top:90px}
.nex-old .svc-block .h3{margin-bottom:18px}
.nex-old .svc-block p{margin:0 0 1em;color:var(--ink-2);max-width:54ch}
.nex-old .svc-block h3.list-h{font:500 15px/1.4 var(--f-text);color:var(--ink);margin:0 0 14px}
.nex-old .ticks{list-style:none;margin:0;padding:0}
.nex-old .ticks li{padding:13px 0 13px 28px;border-bottom:1px solid var(--line);position:relative}
.nex-old .ticks li::before{content:"";position:absolute;left:0;top:50%;width:12px;height:1px;background:var(--brass)}
@media (max-width:860px){.nex-old .svc-block{grid-template-columns:1fr}}
.nex-old .jump{list-style:none;padding:0;margin:36px 0 0;display:flex;flex-wrap:wrap;gap:12px 28px;color:var(--ink-2)}
.nex-old .pillars{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(28px,4vw,56px)}
.nex-old .pillars>div{border-top:1px solid var(--brass);padding-top:26px}
.nex-old .pillars h3{font:400 26px/1.25 var(--f-display);margin:0 0 12px}
.nex-old .pillars p{margin:0;color:var(--ink-2)}
@media (max-width:860px){.nex-old .pillars{grid-template-columns:1fr}}
.nex-old .svc-media{grid-column:1/-1;display:grid;gap:clamp(16px,2vw,28px);margin-top:clamp(8px,2vw,24px)}
.nex-old .svc-media figure{margin:0}
.nex-old .svc-media .work-open{display:block;width:100%;padding:0;border:0;background:none;cursor:zoom-in}
.nex-old .svc-media img,.nex-old .svc-media .work-open img{display:block;width:100%;height:auto;aspect-ratio:auto;object-fit:contain;background:var(--line)}
.nex-old .svc-media figcaption{padding-top:12px;font-size:14px;color:var(--ink-2)}
.nex-old .svc-media--logos{grid-template-columns:repeat(auto-fill,minmax(min(100%,240px),326px))}
.nex-old .svc-media a{display:block;cursor:zoom-in}
.nex-old .jump a{color:var(--ink-2)}
.nex-old .jump a:hover{color:var(--ink)}

/* sections that carry .sec and .nex-old on the same element (the scoped rules above need a parent) */
.nex-old.sec{padding:clamp(100px,10vw,160px) 0}
.nex-old.sec-tight{padding-top:0}
.nex-old.sw{padding-bottom:clamp(120px,12vw,180px)}

/* Liko gives every <p> its own body colour; inside the original sections text inherits from its block */
.nex-old p{color:inherit}
.nex-old .faq .ans{color:var(--ink-2)}
