*,::after,::before{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{background:#f6f5f0;color:#15130f;font-family:Roboto,sans-serif;overflow-x:hidden}::selection{background:#15130f;color:#f6f5f0}:root{--acc-about:#C6E600;--acc-services:#FF2E7E;--acc-references:#7C4DFF;--acc-faq:#C6E600;--acc-contact:#00C2A8}a{color:inherit}header{position:sticky;top:0;z-index:300;display:flex;align-items:center;justify-content:flex-end;padding:clamp(.7rem,1.8vw,1rem) clamp(1.2rem,5vw,3rem);background:rgba(246,245,240,.86);backdrop-filter:blur(6px);border-bottom:1px solid rgba(21,19,15,.1)}.header-ticker{position:absolute;top:0;bottom:0;left:0;right:calc(var(--nav-w,260px) + 64px);display:flex;align-items:center;overflow:hidden;pointer-events:none;-webkit-mask-image:linear-gradient(to left,transparent 0%,black 14%,black 100%);mask-image:linear-gradient(to left,transparent 0%,black 14%,black 100%)}.header-ticker-track{display:inline-flex;width:max-content;white-space:nowrap;animation:mq-left 22s linear infinite}.header-ticker-track span{font-family:'Bebas Neue',sans-serif;font-size:clamp(.9rem,2vw,1.15rem);letter-spacing:0;text-transform:uppercase;color:rgba(21,19,15,.55);padding:0 .9rem;display:flex;align-items:center;gap:.3rem}.header-ticker-track span::after{content:'/';opacity:.4}@media (max-width:760px){.header-ticker{left:0;right:60px}}@media (prefers-reduced-motion:reduce){.header-ticker-track{animation:none!important}}nav.top-nav{display:flex;align-items:center;gap:clamp(1.4rem,3vw,2.4rem)}nav.top-nav a{position:relative;display:flex;align-items:center;gap:.55rem;text-decoration:none;color:rgba(21,19,15,.5)}nav.top-nav .nav-dot{width:.5em;height:.5em;border-radius:50%;flex-shrink:0}nav.top-nav a.about .nav-dot{background:var(--acc-about)}nav.top-nav a.services .nav-dot{background:var(--acc-services)}nav.top-nav a.references .nav-dot{background:var(--acc-references)}nav.top-nav a.faq .nav-dot{background:var(--acc-faq)}nav.top-nav a.contact .nav-dot{background:var(--acc-contact)}nav.top-nav .nav-text{position:relative;display:block;overflow:hidden;height:1em;font-family:'Bebas Neue',sans-serif;font-size:clamp(1.05rem,1.7vw,1.4rem);letter-spacing:.05em;text-transform:uppercase}nav.top-nav .nav-text span{display:block;transition:transform .35s cubic-bezier(.65,0,.35,1)}nav.top-nav .nav-text span::after{content:attr(data-text);position:absolute;left:0;top:100%;color:#15130f}nav.top-nav a.active .nav-text span,nav.top-nav a:hover .nav-text span{transform:translateY(-100%)}@media (max-width:760px){nav.top-nav{display:none}}.hamburger{display:none;position:relative;width:34px;height:34px;background:0 0;border:none;cursor:pointer;padding:0;z-index:270}.hamburger span{position:absolute;left:6px;right:6px;height:2px;background:#15130f;border-radius:2px;transition:transform .3s ease,opacity .2s ease,top .3s ease}.hamburger span:first-child{top:11px}.hamburger span:nth-child(2){top:17px}.hamburger span:nth-child(3){top:23px}.hamburger.is-open span:first-child{top:17px;transform:rotate(45deg)}.hamburger.is-open span:nth-child(2){opacity:0}.hamburger.is-open span:nth-child(3){top:17px;transform:rotate(-45deg)}@media (max-width:760px){.hamburger{display:block}}.mobile-nav-overlay{position:fixed;inset:0;background:rgba(21,19,15,.35);z-index:250;opacity:0;pointer-events:none;transition:opacity .3s ease}.mobile-nav-overlay.open{opacity:1;pointer-events:auto}.mobile-nav{position:fixed;top:0;right:0;height:100vh;height:100dvh;width:min(78vw,320px);background:#f6f5f0;z-index:260;display:flex;flex-direction:column;gap:1.6rem;padding:clamp(5.5rem,16vh,7rem) 2rem 2rem;box-shadow:-12px 0 32px rgba(0,0,0,.12);transform:translateX(100%);transition:transform .35s cubic-bezier(.65,0,.35,1)}.mobile-nav.open{transform:translateX(0)}.mobile-nav a{font-family:'Bebas Neue',sans-serif;font-size:1.6rem;letter-spacing:.03em;text-transform:uppercase;text-decoration:none;color:#15130f;padding-left:.9rem;border-left:4px solid transparent}.mobile-nav a.about{border-left-color:var(--acc-about)}.mobile-nav a.services{border-left-color:var(--acc-services)}.mobile-nav a.references{border-left-color:var(--acc-references)}.mobile-nav a.faq{border-left-color:var(--acc-faq)}.mobile-nav a.contact{border-left-color:var(--acc-contact)}.mobile-nav-contacts{margin-top:auto;padding-top:1.5rem;border-top:1px solid rgba(21,19,15,.12);display:flex;flex-direction:column;gap:.7rem}.mobile-nav-contacts-title{font-family:'Bebas Neue',sans-serif;font-size:1.15rem;letter-spacing:.03em;text-transform:uppercase;color:#15130f;margin-bottom:.3rem}.mobile-nav-contacts a{font-family:'DM Mono',monospace;font-size:.8rem;letter-spacing:.03em;color:rgba(21,19,15,.6);text-decoration:none;border-left:none;padding-left:.9rem}.stack{position:relative}:root{--header-h:64px}.block{position:relative;scroll-margin-top:var(--header-h)}#about{z-index:1}#services{z-index:2}#references{z-index:3}#faq{z-index:4}#contact{z-index:5}.block-frame{position:absolute;left:0;top:0;width:100%;height:calc(100vh - var(--header-h));height:calc(100dvh - var(--header-h));background:#f6f5f0;overflow:hidden}.block-frame.is-active{position:fixed;top:var(--header-h)}.block-frame.is-after{position:absolute;top:auto;bottom:0}.panel-topbar{position:absolute;top:0;left:0;right:0;height:6px;z-index:5}.panel-topbar.about{background:var(--acc-about)}.panel-topbar.services{background:var(--acc-services)}.panel-topbar.references{background:var(--acc-references)}.panel-topbar.faq{background:var(--acc-faq)}.panel-topbar.contact{background:var(--acc-contact)}.block-content{width:100%;min-height:calc(100vh - var(--header-h));min-height:calc(100dvh - var(--header-h));display:flex;flex-direction:column;justify-content:flex-start;overflow:visible;padding:clamp(2rem,5vw,4rem) clamp(1.2rem,6vw,5rem);will-change:transform}#about .block-content,#contact .block-content,#services .block-content{padding-top:clamp(3.5rem,9vw,6rem)}.eyebrow{font-family:'DM Mono',monospace;font-size:clamp(.75rem,1.1vw,.8rem);letter-spacing:.3em;text-transform:uppercase;color:rgba(21,19,15,.5);margin-bottom:clamp(.5rem,1.6vh,.8rem)}.eyebrow.tight{margin-bottom:0}.eyebrow .muted{opacity:.6;text-transform:none;letter-spacing:.05em}.spacer-hero{height:clamp(1rem,3vw,1.8rem)}.spacer-services{height:clamp(1rem,2.5vw,1.4rem)}.body-text.spaced{margin-top:.9rem}.contact-intro{font-style:italic;opacity:.8}.big-title{font-family:'Bebas Neue',sans-serif;font-size:clamp(2.6rem,10vw,7.5rem);letter-spacing:.005em;line-height:.86}.body-text{font-family:Roboto,sans-serif;font-weight:300;font-size:clamp(.9rem,1.4vw,1.05rem);line-height:1.85;color:rgba(21,19,15,.72);max-width:56ch}.tag-row{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.2rem}.tag-chip{font-family:'DM Mono',monospace;font-size:.65rem;letter-spacing:.08em;text-transform:uppercase;color:rgba(21,19,15,.6);border:1px solid rgba(21,19,15,.22);border-radius:999px;padding:.32rem .8rem;transition:border-color .2s,color .2s}.tag-chip:hover{border-color:var(--acc-about);color:#15130f}.hero-foot{margin-top:clamp(2rem,6vh,3.5rem);display:flex;align-items:center;gap:clamp(1.2rem,3vw,2rem);flex-wrap:wrap}.hero-cta{display:inline-block;font-family:'DM Mono',monospace;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:#f6f5f0;background:#15130f;border-radius:999px;padding:.85rem 1.7rem;text-decoration:none;transition:background .2s}.hero-cta:hover{background:var(--acc-services);color:#15130f}.scroll-cue{font-family:'DM Mono',monospace;font-size:.65rem;letter-spacing:.16em;text-transform:uppercase;color:rgba(21,19,15,.4);display:flex;align-items:center;gap:.5rem}.scroll-cue svg{animation:bob 1.6s ease-in-out infinite}@keyframes bob{0%,100%{transform:translateY(0)}50%{transform:translateY(5px)}}.marquee-wrap{overflow:hidden;white-space:nowrap;border-top:1px solid rgba(21,19,15,.14);border-bottom:1px solid rgba(21,19,15,.14);padding:clamp(.8rem,2vh,1.2rem) 0}.marquee-track{display:inline-flex;width:max-content;animation:mq-left 26s linear infinite}.marquee-track span{font-family:'DM Mono',monospace;font-size:clamp(.72rem,1.3vw,.85rem);letter-spacing:.18em;text-transform:uppercase;color:rgba(21,19,15,.55);padding:0 1.6rem;display:flex;align-items:center;gap:1.6rem}.marquee-track span::after{content:'/';opacity:.4}@keyframes mq-left{from{transform:translateX(0)}to{transform:translateX(-50%)}}.sec-title{font-family:'Bebas Neue',sans-serif;font-size:clamp(2.4rem,7vw,5.6rem);line-height:.9}.sec-head-row{display:flex;align-items:baseline;gap:.9rem;margin-bottom:clamp(1.6rem,4vh,2.6rem);flex-wrap:wrap}.sec-num{font-family:'DM Mono',monospace;font-size:clamp(.9rem,1.7vw,1.15rem);font-weight:500;letter-spacing:.02em}.acc-about{color:var(--acc-about)}.acc-services{color:var(--acc-services)}.acc-references{color:var(--acc-references)}.acc-faq{color:var(--acc-faq)}.acc-contact{color:var(--acc-contact)}.acc-dot{display:inline-block;width:.42em;height:.42em;border-radius:50%;margin-right:.55em;vertical-align:middle;flex-shrink:0}.acc-dot.about{background:var(--acc-about)}.acc-dot.services{background:var(--acc-services)}.acc-dot.references{background:var(--acc-references)}.acc-dot.faq{background:var(--acc-faq)}.acc-dot.contact{background:var(--acc-contact)}.services-list{display:grid;grid-template-columns:1fr 1fr;gap:clamp(.5rem,1.4vh,.9rem) clamp(2rem,4vw,3.4rem);border-top:1px solid rgba(21,19,15,.14);padding-top:clamp(1.2rem,3vh,1.8rem)}.service-item{display:flex;align-items:flex-start;gap:.85rem;padding:.6rem 0;border-bottom:1px solid rgba(21,19,15,.08)}.service-check{flex-shrink:0;width:1.15rem;height:1.15rem;margin-top:.2rem}.service-name{font-family:'Bebas Neue',sans-serif;font-size:clamp(1.1rem,2vw,1.55rem);letter-spacing:.02em;line-height:1.05}.service-sub{font-family:'DM Mono',monospace;font-size:.63rem;letter-spacing:.05em;color:rgba(21,19,15,.5);margin-top:.4rem;line-height:1.6}@media (max-width:700px){.services-list{grid-template-columns:1fr}}.ref-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(1rem,1.8vw,1.5rem)}.ref-card{display:block;text-decoration:none}.ref-thumb{position:relative;width:100%;aspect-ratio:4/3;overflow:hidden;background:rgba(21,19,15,.05);border-radius:2px}.ref-thumb img{width:100%;height:100%;object-fit:cover;display:block;filter:grayscale(.15);transition:transform .45s cubic-bezier(.16,1,.3,1),filter .3s}a.ref-card:hover .ref-thumb img{transform:scale(1.045);filter:grayscale(0)}.ref-arrow{position:absolute;top:.5rem;right:.5rem;width:1.5rem;height:1.5rem;border-radius:50%;background:var(--acc-references);color:#f6f5f0;display:flex;align-items:center;justify-content:center;font-size:.75rem;opacity:0;transform:translateY(-4px) scale(.8);transition:opacity .25s,transform .25s}a.ref-card:hover .ref-arrow{opacity:1;transform:translateY(0) scale(1)}.ref-meta{padding-top:.6rem}.ref-title{font-family:'Bebas Neue',sans-serif;font-size:clamp(.95rem,1.5vw,1.2rem);letter-spacing:.03em;display:block}.ref-tags{font-family:'DM Mono',monospace;font-size:.6rem;letter-spacing:.04em;color:rgba(21,19,15,.45);text-transform:uppercase}@media (max-width:900px){.ref-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:480px){.ref-grid{gap:.8rem}.ref-title{font-size:.85rem}}.faq-list{display:flex;flex-direction:column;border-top:1px solid rgba(21,19,15,.14);max-width:78ch;width:100%;margin:0 auto}.faq-item{border-bottom:1px solid rgba(21,19,15,.14)}.faq-item summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:1.2rem;padding:clamp(1rem,2.6vh,1.4rem) 0}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary h3{font-family:'Bebas Neue',sans-serif;font-weight:400;font-size:clamp(1.05rem,2vw,1.45rem);letter-spacing:.02em;color:#15130f;line-height:1.2}.faq-icon{position:relative;flex-shrink:0;width:1.6rem;height:1.6rem;border-radius:50%;border:1px solid rgba(21,19,15,.25)}.faq-icon::after,.faq-icon::before{content:'';position:absolute;top:50%;left:50%;background:var(--acc-faq);transform:translate(-50%,-50%);transition:transform .25s ease,opacity .25s ease}.faq-icon::before{width:.65rem;height:2px}.faq-icon::after{width:2px;height:.65rem}.faq-item[open] .faq-icon::after{transform:translate(-50%,-50%) rotate(90deg);opacity:0}.faq-answer{padding:0 0 clamp(1.2rem,3vh,1.8rem);font-family:Roboto,sans-serif;font-weight:300;font-size:clamp(.85rem,1.3vw,.98rem);line-height:1.75;color:rgba(21,19,15,.72);max-width:62ch}.contact-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(2rem,5vw,4rem);align-items:end}.contact-list{display:flex;flex-direction:column;gap:clamp(.8rem,2vh,1.2rem)}.contact-row{display:flex;align-items:baseline;gap:clamp(.9rem,2vw,1.6rem);border-bottom:1px solid rgba(21,19,15,.1);padding-bottom:clamp(.6rem,1.6vh,.9rem)}.contact-label{font-family:'DM Mono',monospace;font-size:.68rem;letter-spacing:.2em;text-transform:uppercase;color:rgba(21,19,15,.4);min-width:4.2rem}.contact-value{font-family:Roboto,sans-serif;font-size:clamp(.95rem,1.7vw,1.15rem);color:rgba(21,19,15,.88)}.contact-value a{text-decoration:none;border-bottom:1px solid currentColor;opacity:.75;transition:opacity .2s,border-color .2s,color .2s}.contact-value a:hover{opacity:1;color:var(--acc-contact);border-color:var(--acc-contact)}@media (max-width:760px){.contact-grid{grid-template-columns:1fr}}footer{position:relative;z-index:10;background:#0c0b08;color:#f6f5f0;padding-top:clamp(3rem,8vh,5rem);overflow:hidden}.footer-top{text-align:center;padding:0 1.2rem clamp(2.4rem,6vh,3.6rem)}.footer-cta{font-family:'DM Mono',monospace;font-size:.75rem;letter-spacing:.18em;text-transform:uppercase;color:rgba(246,245,240,.55);margin-bottom:1.2rem}.footer-link-btn{display:inline-block;font-family:'DM Mono',monospace;font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:#0c0b08;background:#f6f5f0;border-radius:999px;padding:.75rem 1.6rem;text-decoration:none;transition:background .2s,color .2s}.footer-link-btn:hover{background:var(--acc-contact);color:#0c0b08}.footer-contacts{margin-top:clamp(1.6rem,4vh,2.2rem);display:flex;justify-content:center;gap:clamp(1.2rem,3vw,2rem);flex-wrap:wrap}.footer-contacts a,.footer-contacts span{font-family:'DM Mono',monospace;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:rgba(246,245,240,.6);text-decoration:none}.footer-contacts a:hover{color:#f6f5f0}.footer-marquee{position:relative;padding:clamp(.5rem,1vh,1rem) 0 clamp(1.6rem,4vh,2.4rem)}.fm-row{overflow:hidden;white-space:nowrap}.fm-track{display:inline-flex;width:max-content;font-family:'Bebas Neue',sans-serif;font-size:clamp(3rem,13vw,9rem);line-height:.95;letter-spacing:.01em;color:#f6f5f0}.fm-track span{padding:0 1.4rem}.fm-row.left .fm-track{animation:fm-left 22s linear infinite}.fm-row.right .fm-track{animation:fm-right 22s linear infinite;transform:translateX(-50%)}@keyframes fm-left{from{transform:translateX(0)}to{transform:translateX(-50%)}}@keyframes fm-right{from{transform:translateX(-50%)}to{transform:translateX(0)}}.mascot{position:absolute;left:50%;top:50%;width:clamp(64px,9vw,110px);transform:translate(-50%,-50%);animation:mascot-drift 6s ease-in-out infinite;pointer-events:none;filter:drop-shadow(0 6px 14px rgba(0,0,0,.4))}@keyframes mascot-drift{0%{transform:translate(-62%,-46%) rotate(-4deg)}50%{transform:translate(-38%,-54%) rotate(4deg)}100%{transform:translate(-62%,-46%) rotate(-4deg)}}@media (prefers-reduced-motion:reduce){.fm-track,.marquee-track,.mascot,.scroll-cue svg{animation:none!important}}.footer-bottom{display:flex;justify-content:space-between;align-items:center;padding:clamp(1rem,2.4vh,1.4rem) clamp(1.2rem,5vw,3rem);border-top:1px solid rgba(246,245,240,.12);font-family:'DM Mono',monospace;font-size:.65rem;letter-spacing:.08em;text-transform:uppercase;color:rgba(246,245,240,.65)}.footer-bottom button{background:0 0;border:none;color:inherit;font:inherit;letter-spacing:inherit;cursor:pointer}