:root{
  --paper:#f4efe6;
  --ink:#0f0f0f;
  --blaze:#ff4d1a;
  --signal:#ffe14d;
  --card:#ffffff;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
  background:var(--paper);color:var(--ink);
  font-family:"Inter",system-ui,sans-serif;font-size:16px;line-height:1.5;
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;display:block;height:auto}
a{color:inherit;text-decoration:none}
em{font-style:italic;color:var(--blaze)}
mark{background:var(--signal);color:var(--ink);padding:0 .25rem}
.display{font-family:"Archivo Black","Inter",sans-serif;font-weight:900;letter-spacing:-0.01em;line-height:.95;margin:0}
.muted{color:rgba(15,15,15,.6)}
.muted-light{color:rgba(244,239,230,.7)}
.blaze{color:var(--blaze)}
.em-signal{color:var(--signal)}
.micro{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.15em}
.wrap{max-width:1400px;margin:0 auto;padding:0 1.25rem}
@media(min-width:768px){.wrap{padding:0 2.5rem}}
.section{border-bottom:2px solid var(--ink);padding:4rem 0}
@media(min-width:768px){.section{padding:7rem 0}}
.section--dark{background:var(--ink);color:var(--paper)}
.grid{display:grid;grid-template-columns:repeat(12,1fr);gap:1.5rem}
.col-4{grid-column:span 12}.col-5{grid-column:span 12}
.col-7{grid-column:span 12}.col-8{grid-column:span 12}
@media(min-width:768px){
  .col-4{grid-column:span 4}.col-5{grid-column:span 5}
  .col-7{grid-column:span 7}.col-8{grid-column:span 8}
}
.h2{font-size:clamp(2.5rem,6vw,5rem);margin-top:1rem;max-width:60rem}
.copy{margin-top:1.5rem;max-width:38rem;color:rgba(15,15,15,.7)}
.copy-big{font-size:clamp(1.5rem,3vw,2.25rem);line-height:1.2}
.label{display:inline-flex;align-items:center;gap:.75rem;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.22em}
.label--dark{color:var(--paper)}
.dot{display:inline-block;width:.5rem;height:.5rem;background:var(--blaze)}
.dot--signal{background:var(--signal)}
.dot--ink{background:var(--ink)}

/* nav */
.nav{position:sticky;top:0;z-index:50;background:rgba(244,239,230,.95);backdrop-filter:blur(8px);border-bottom:2px solid var(--ink)}
.nav__inner{max-width:1400px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem}
@media(min-width:768px){.nav__inner{padding:1rem 2.5rem}}
.nav__links{display:none;gap:2rem;font-size:13px;font-weight:500;text-transform:uppercase;letter-spacing:.1em}
@media(min-width:768px){.nav__links{display:flex}}
.nav__links a:hover{color:var(--blaze)}
.logo{display:inline-flex;align-items:baseline;gap:2px}
.logo__name{font-family:"Archivo Black",sans-serif;font-size:1.75rem;line-height:1}
.logo__name.small{font-size:1.25rem}.logo__name.big{font-size:clamp(3rem,8vw,6rem)}
.logo__tld{background:var(--blaze);color:#fff;padding:2px 6px;font-family:"Archivo Black",sans-serif;font-size:1.1rem;line-height:1}
.logo__tld.small{font-size:.75rem}.logo__tld.big{font-size:clamp(1.5rem,3vw,3rem);padding:4px 10px}

/* buttons */
.btn{display:inline-flex;align-items:center;gap:.5rem;border:2px solid var(--ink);padding:.625rem 1rem;font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.1em;cursor:pointer;font-family:inherit;transition:all .15s}
.btn--dark{background:var(--ink);color:var(--paper)}
.btn--dark:hover{background:var(--blaze);color:#fff}
.btn--blaze{background:var(--blaze);color:#fff}
.btn--blaze:hover{box-shadow:6px 6px 0 var(--ink)}
.btn--paper{background:var(--paper);color:var(--ink)}
.btn--paper:hover{background:var(--signal)}
.arr{display:inline-block;transition:transform .15s}
.btn:hover .arr{transform:translate(2px,-2px)}

/* hero */
.kicker{display:flex;align-items:center;gap:.75rem;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.22em;margin-bottom:1.5rem}
.hero__h1{font-size:clamp(3.25rem,9vw,9.5rem)}
.hero__aside{margin-top:1rem}
@media(min-width:768px){.hero__aside{padding-top:8rem}}
.lede{font-size:1.125rem;line-height:1.3}
@media(min-width:768px){.lede{font-size:1.25rem}}
.hero__ctas{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.5rem}
.hero__media{margin-top:2.5rem}
@media(min-width:768px){.hero__media{margin-top:4rem}}
.frame{border:2px solid var(--ink);box-shadow:8px 8px 0 var(--ink)}
.frame img{aspect-ratio:3/2;object-fit:cover;width:100%}
.hero__stats{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
@media(min-width:768px){.hero__stats{grid-template-columns:1fr;gap:1rem}}
.stat{border:2px solid var(--ink);padding:1.25rem;display:flex;flex-direction:column;justify-content:space-between;min-height:180px}
.stat--signal{background:var(--signal)}
.stat--ink{background:var(--ink);color:var(--paper)}
.stat__k{font-size:clamp(3rem,5vw,4.5rem)}

/* marquee */
.marquee{overflow:hidden;background:var(--ink);color:var(--paper);padding:1.25rem 0;border-bottom:2px solid var(--ink)}
.marquee__track{display:flex;white-space:nowrap;animation:marquee 30s linear infinite}
.marquee__track span{margin:0 1.5rem;font-family:"Archivo Black",sans-serif;font-size:2.25rem}
@media(min-width:768px){.marquee__track span{font-size:3rem}}
@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* services */
.services{margin-top:3rem;border:2px solid var(--ink);display:grid;grid-template-columns:1fr}
@media(min-width:768px){.services{grid-template-columns:1fr 1fr}}
@media(min-width:1024px){.services{grid-template-columns:repeat(3,1fr)}}
.service{padding:1.75rem;border-bottom:2px solid var(--ink);transition:all .15s;position:relative}
@media(min-width:768px){.service{padding:2.25rem}}
.service:hover{background:var(--blaze);color:#fff}
.service:hover .service__arrow{opacity:1}
.service__top{display:flex;justify-content:space-between}
.service__n{font-family:"Archivo Black",sans-serif;font-size:1.5rem;opacity:.6}
.service__arrow{opacity:0;transition:opacity .15s}
.service__title{font-family:"Archivo Black",sans-serif;font-size:2.25rem;margin:1.5rem 0 0}
@media(min-width:768px){.service__title{font-size:3rem}}
.service__desc{margin-top:1rem;font-size:14px}
.service__tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.5rem;padding:0;list-style:none}
.service__tags li{border:1px solid currentColor;padding:2px 8px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.1em}
.service--signal{background:var(--signal);display:none}
@media(min-width:768px){.service--signal{display:flex;flex-direction:column;justify-content:space-between}}

/* audit */
.grid--audit{gap:2.5rem}
.checks{list-style:none;padding:0;margin:1.5rem 0 0;display:grid;gap:.5rem;font-size:14px;font-weight:500}
.checks li{display:flex;align-items:flex-start;gap:.5rem}
.checks .dot{margin-top:.4rem;flex-shrink:0}
.pdf-wrap{position:relative}
.pdf-shadow{position:absolute;inset:0;transform:translate(.75rem,.75rem);border:2px solid var(--ink);background:var(--blaze)}
.pdf{position:relative;border:2px solid var(--ink);background:#fff;padding:1.5rem}
@media(min-width:768px){.pdf{padding:2.5rem}}
.pdf__head{display:flex;align-items:center;justify-content:space-between;border-bottom:2px solid var(--ink);padding-bottom:.75rem}
.pdf__h{font-size:1.5rem;margin-top:.25rem}
@media(min-width:768px){.pdf__h{font-size:1.875rem}}
.funnel{margin-top:1.5rem;display:grid;gap:.75rem}
.funnel__row{display:grid;grid-template-columns:3fr 7fr 2fr;align-items:center;gap:.75rem}
.funnel__label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.1em}
.funnel__bar{height:1rem;border:1px solid var(--ink);background:var(--paper)}
.funnel__bar > div{height:100%;background:var(--ink)}
.funnel__n{text-align:right;font-family:"JetBrains Mono",monospace;font-size:11px}
.kpis{margin-top:1.5rem;display:grid;grid-template-columns:repeat(3,1fr);border:2px solid var(--ink)}
.kpis > div{padding:.75rem}
.kpis > div + div{border-left:2px solid var(--ink)}
.kpi__k{font-size:1.5rem}
.findings{margin-top:1.5rem;border-top:2px solid var(--ink);padding-top:1rem}
.findings ol{margin:.5rem 0 0;padding-left:0;list-style:none;font-size:13px;line-height:1.4}
.findings li{margin-top:.4rem}
.pdf__foot{display:flex;justify-content:space-between;border-top:2px solid var(--ink);margin-top:1.5rem;padding-top:.75rem}

/* stats */
.stats{background:var(--signal);border-bottom:2px solid var(--ink)}
.stats__grid{padding:2.5rem 1.25rem;display:grid;grid-template-columns:1fr 1fr}
@media(min-width:768px){.stats__grid{grid-template-columns:repeat(4,1fr);padding:4rem 2.5rem}}
.stats__cell{padding:1rem}
.stats__cell .display{font-size:clamp(3rem,6vw,6rem)}
.stats__cell .label-v{margin-top:.25rem;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.1em}

/* work */
.row-between{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1.5rem}
.cases{margin-top:3rem;display:grid;grid-template-columns:1fr;gap:1.5rem}
@media(min-width:768px){.cases{grid-template-columns:repeat(12,1fr)}}
.case{display:flex;flex-direction:column;border:2px solid var(--ink);background:var(--card);transition:all .2s}
.case:hover{transform:translateY(-4px);box-shadow:8px 8px 0 var(--ink)}
.case__img-wrap{position:relative;overflow:hidden;border-bottom:2px solid var(--ink)}
.case__img-wrap img{aspect-ratio:4/3;object-fit:cover;width:100%;transition:transform .7s}
.case:hover .case__img-wrap img{transform:scale(1.03)}
.case__tags{position:absolute;top:.75rem;left:.75rem;display:flex;gap:6px}
.case__tags span{border:1px solid var(--ink);background:var(--paper);padding:2px 8px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.1em}
.case__metric{position:absolute;right:.75rem;bottom:.75rem;background:var(--blaze);color:#fff;padding:.25rem .75rem;font-family:"Archivo Black",sans-serif;font-size:1.5rem}
.case__body{padding:1.5rem;display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;flex:1}
.case__client{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:rgba(15,15,15,.6)}
.case__title{font-family:"Archivo Black",sans-serif;font-size:1.75rem;margin:.5rem 0 0}
@media(min-width:768px){.case__title{font-size:2.25rem}}

/* process */
.process{list-style:none;margin:3.5rem 0 0;padding:0;border:2px solid var(--paper);display:grid;grid-template-columns:1fr}
@media(min-width:768px){.process{grid-template-columns:repeat(4,1fr)}}
.process li{padding:1.5rem;border-bottom:2px solid var(--paper)}
@media(min-width:768px){.process li{padding:2rem;border-bottom:0;border-right:2px solid var(--paper)}.process li:last-child{border-right:0}}
.process__n{font-family:"Archivo Black",sans-serif;font-size:3rem;color:var(--blaze)}
.process__t{font-family:"Archivo Black",sans-serif;font-size:1.75rem;margin:1rem 0 0}
.process__d{margin-top:.75rem;font-size:14px;color:rgba(244,239,230,.8)}

/* testimonials */
.testimonials{margin-top:2.5rem;display:grid;grid-template-columns:1fr;gap:2.5rem}
@media(min-width:768px){.testimonials{grid-template-columns:1fr 1fr;gap:4rem}}
.testimonial__quote{font-family:"Archivo Black",sans-serif;font-size:1.75rem;line-height:1.1;margin:.5rem 0 0}
@media(min-width:768px){.testimonial__quote{font-size:2.25rem}}
.testimonial__mark{font-family:"Archivo Black",sans-serif;font-size:4rem;line-height:1;color:var(--blaze)}
.testimonial__cap{border-top:2px solid var(--ink);margin-top:1.5rem;padding-top:.75rem;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.1em}

/* about */
.disciplines{margin-top:2.5rem;display:grid;grid-template-columns:1fr 1fr;gap:2px;background:var(--ink);border:2px solid var(--ink)}
@media(min-width:768px){.disciplines{grid-template-columns:repeat(4,1fr)}}
.disciplines > div{background:var(--paper);padding:1.25rem}
.d__k{font-size:1.5rem}

/* contact */
.contact{background:var(--blaze);color:#fff;padding:4rem 0}
@media(min-width:768px){.contact{padding:7rem 0}}
.contact__h{font-size:clamp(3rem,10vw,10rem);margin-top:1rem;max-width:80rem}
.contact__grid{margin-top:3rem}
.contact__info .info{list-style:none;padding:0;margin:2rem 0 0;display:grid;gap:1rem;font-size:1rem}
.contact__info .info a{border-bottom:1px solid rgba(255,255,255,.6)}
.form{background:var(--paper);color:var(--ink);border:2px solid var(--ink);padding:1.5rem}
@media(min-width:768px){.form{padding:2.5rem}}
.form__grid{display:grid;grid-template-columns:1fr;gap:1.25rem}
@media(min-width:768px){.form__grid{grid-template-columns:1fr 1fr}}
.field{display:block}
.field--full{grid-column:1 / -1}
.field > span{display:block;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.1em}
.field input,.field select,.field textarea{margin-top:.5rem;width:100%;border:2px solid var(--ink);background:var(--paper);padding:.5rem .75rem;font-size:1rem;font-family:inherit;outline:none}
.field input:focus,.field select:focus,.field textarea:focus{background:var(--signal)}
.field [aria-invalid="true"]{outline:2px solid var(--blaze)}
.form__foot{margin-top:1.5rem;border-top:2px solid rgba(15,15,15,.2);padding-top:1.25rem;display:flex;flex-direction:column;gap:1rem}
@media(min-width:640px){.form__foot{flex-direction:row;align-items:flex-start;justify-content:space-between}}
.check{display:flex;align-items:flex-start;gap:.75rem;font-size:14px}
.check input{width:1.25rem;height:1.25rem;border:2px solid var(--ink);accent-color:var(--ink);margin-top:2px}
.captcha{display:flex;align-items:center;gap:.5rem}
.captcha__q{border:2px solid var(--ink);background:var(--signal);padding:.5rem .75rem;font-family:"Archivo Black",sans-serif;font-size:1.125rem}
.captcha input{width:5rem;border:2px solid var(--ink);background:var(--paper);padding:.5rem .75rem;font-size:1rem;font-family:inherit;outline:none}
.captcha input:focus{background:var(--signal)}
.captcha button{border:2px solid var(--ink);background:transparent;padding:.5rem;cursor:pointer;font-size:1rem}
.captcha button:hover{background:var(--ink);color:var(--paper)}
.form__msg{margin:1rem 0 0;font-size:13px;font-weight:600;min-height:1.25em}
.form__msg.ok{color:#0a7d2f}
.form__msg.err{color:var(--blaze)}
#submit-btn{margin-top:1rem}

/* footer */
.foot{background:var(--ink);color:var(--paper);border-top:2px solid var(--ink);padding:2.5rem 0}
.foot__top{display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;gap:2rem}
@media(min-width:768px){.foot__top{flex-direction:row;align-items:flex-end}}
.foot__links{display:grid;grid-template-columns:1fr 1fr;gap:.5rem 3rem;font-size:14px}
@media(min-width:768px){.foot__links{grid-template-columns:repeat(3,auto)}}
.foot__links a:hover{color:var(--blaze)}
.foot__bot{margin-top:2.5rem;border-top:1px solid rgba(244,239,230,.2);padding-top:1.5rem;display:flex;flex-direction:column;gap:.75rem;font-size:12px;color:rgba(244,239,230,.6)}
@media(min-width:768px){.foot__bot{flex-direction:row;align-items:center;justify-content:space-between}}
.foot__legal{display:flex;gap:1.5rem}
.foot__legal a:hover{color:var(--paper)}
