

/* ===== Extracted from index.html ===== */


/* TESTIMONIAL — reference-style paper stack */
.feedback{background:#fff}
.testimonial-carousel{position:relative;width:min(620px,100%);height:350px;margin:52px auto 0;display:grid;place-items:center;overflow:visible}
.testimonial-slide{position:absolute;width:min(520px,calc(100% - 36px));height:300px;opacity:0;pointer-events:none;transform:translateY(24px) rotate(var(--testimonial-rot)) scale(.985);transform-origin:center 72%;transition:opacity .55s ease,transform .8s cubic-bezier(.16,1,.3,1)}
.testimonial-slide.active{opacity:1;pointer-events:auto;transform:translateY(0) rotate(var(--testimonial-rot)) scale(1)}
.testimonial-slide.exit{opacity:0;transform:translateY(-28px) rotate(calc(var(--testimonial-rot) + 3.5deg)) scale(.985)}
.testimonial-sheet{position:absolute;inset:0;border:1px solid #dfddd8;background:#f4f4f2;box-shadow:0 12px 22px rgba(20,19,31,.08)}
.testimonial-sheet.back-a{transform:translate(10px,14px) rotate(3.5deg);z-index:0;background:#fafaf8}
.testimonial-sheet.back-b{transform:translate(19px,27px) rotate(7deg);z-index:-1;background:#f1f1ef}
.testimonial-sheet.main{z-index:2;background:#fff;padding:32px 42px 25px;display:flex;flex-direction:column;justify-content:center;align-items:center;box-shadow:0 16px 30px rgba(20,19,31,.12)}
.testimonial-clip{position:absolute;z-index:5;left:26px;top:-16px;width:30px;height:70px;border:4px solid #aeb2ae;border-bottom:0;border-radius:18px 18px 0 0;transform:rotate(4deg);filter:drop-shadow(1px 2px 1px rgba(0,0,0,.12))}
.testimonial-clip::after{content:"";position:absolute;left:7px;top:6px;width:10px;height:57px;border:3px solid #c4c7c3;border-bottom:0;border-radius:10px 10px 0 0}
.testimonial-stars{color:#65733d;font-size:16px;letter-spacing:4px;margin-bottom:18px}
.testimonial-text{max-width:410px;text-align:center;color:#45443f;font-family:var(--body);font-size:13px;line-height:1.58;font-weight:400}
.testimonial-author{margin-top:18px;align-self:flex-end;font-family:var(--display);font-size:14px;font-weight:600;color:var(--ink)}
.testimonial-meta{margin-top:6px;align-self:flex-end;font-family:var(--mono);font-size:9px;letter-spacing:.11em;text-transform:uppercase;color:#8a8790}
.testimonial-controls{display:flex;align-items:center;justify-content:center;gap:10px;margin-top:18px}
.testimonial-control{width:40px;height:40px;border-radius:50%;border:1px solid var(--line);background:#fff;color:var(--ink);display:grid;place-items:center;transition:transform .2s ease,background .2s ease}
.testimonial-control:hover{background:var(--ink);color:#fff;transform:translateY(-2px)}
.testimonial-dots{display:flex;gap:7px;margin:0 6px}
.testimonial-dot{width:7px;height:7px;padding:0;border:0;border-radius:50%;background:#d4d1ca;cursor:pointer}
.testimonial-dot.active{background:var(--ink);transform:scale(1.35)}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}body.modal-open{overflow:hidden}a{text-decoration:none;color:inherit}button{font:inherit;cursor:pointer}h1, h2, h4, p{margin:0}h1, h2, h4{font-family:var(--display);line-height:1.08;letter-spacing:-.025em}.section-copy{color:var(--muted);font-size:16px;max-width:600px}.btn-dark:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(20,19,31,.16)}.btn-light:hover{transform:translateY(-2px);border-color:var(--ink)}/* NAV — transparent glassmorphism floating pill */.home-logo{display:flex;align-items:center;gap:9px;font:600 16px var(--display);white-space:nowrap}.home-nav-links a{font:500 13px/1 var(--body);color:rgba(41,39,45,.88);transition:color .2s,opacity .2s}.nav-circle{width:42px;height:42px;border:1px solid rgba(255,255,255,.4);border-radius:50%;display:grid;place-items:center;background:rgba(10,10,12,.86);color:#fff}.nav-mail{font-size:20px}.nav-phone{font-size:18px}
/* HERO/* HERO — frozen baseline */
.hero{position:relative;isolation:isolate;max-width:1320px;margin:16px auto 0;min-height:calc(100vh - 32px);padding:145px 80px 82px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:0;overflow:hidden;border-radius:28px;color:#fff;background:radial-gradient(ellipse 78% 70% at 18% 18%,rgba(125,15,18,.22),transparent 62%),radial-gradient(ellipse 80% 65% at 82% 58%,rgba(90,10,10,.42),transparent 68%),linear-gradient(155deg,#43090b 0%,#2d0608 55%,#1a0404 100%)}.hero-text{position:relative;z-index:5;width:min(680px,100%)}.wordmark{font-family:'Fredoka',sans-serif;font-size:32px;font-weight:700;letter-spacing:-.5px;margin-bottom:10px}.headline{font-family:'Fredoka',sans-serif;font-weight:600;font-size:clamp(3.25rem,4.45vw,4rem);line-height:1.02;letter-spacing:-1.5px;color:#fff;margin:0 0 24px;max-width:700px}.hero-sub{font-family:Poppins,sans-serif;font-size:17px;line-height:1.6;color:#ead9d2;max-width:535px;margin:0 0 22px}.hero .eyebrow{font-family:Poppins,sans-serif;font-size:12px;letter-spacing:2px;text-transform:uppercase;font-weight:600;color:#d8a9a0;margin-bottom:34px}.hero-ctas{display:flex;gap:14px;flex-wrap:nowrap;width:max-content}.hero .btn{font-family:Poppins,sans-serif;padding:15px 28px;border-radius:40px;font-weight:600;font-size:14.5px;border:none}.hero .btn-primary{background:#f7f0ea;color:#2c0707}.hero .btn-outline{background:rgba(0,0,0,.35);color:#fff;border:1px solid rgba(255,255,255,.35)}.hero-media{position:absolute;inset:0 0 0 auto;width:62%;height:100%;z-index:1;overflow:hidden;pointer-events:none}.hero-media img{position:absolute;inset:-2% -5% -2% 0;width:110%;height:104%;max-width:none;object-fit:cover;object-position:58% 30%;filter:saturate(1.25) contrast(1.04);mix-blend-mode:screen;-webkit-mask-image:linear-gradient(to right,transparent 0%,black 14%,black 100%),linear-gradient(to bottom,black 0%,black 78%,transparent 100%);mask-image:linear-gradient(to right,transparent 0%,black 14%,black 100%),linear-gradient(to bottom,black 0%,black 78%,transparent 100%);-webkit-mask-composite:source-in;mask-composite:intersect}.hero-media::before{content:"";position:absolute;inset:0;z-index:2;background:linear-gradient(to right,#4a0d0d 0%,rgba(74,13,13,.82) 10%,rgba(74,13,13,.32) 28%,rgba(74,13,13,.06) 52%,transparent 72%),linear-gradient(to bottom,transparent 50%,rgba(26,4,4,.2) 72%,rgba(26,4,4,.58) 90%,#1a0404 100%)}
/* INTRO */
.intro{padding:112px 0 126px}.intro-inner{max-width:900px}.intro .statement{margin-top:34px;font-family:var(--display);font-size:clamp(26px,3.15vw,42px);line-height:1.12;letter-spacing:-.035em;font-weight:500;max-width:900px}.intro .statement strong{font-weight:500}.intro .support{margin-top:24px;color:var(--muted);font-size:16px;max-width:620px}
/* SERVICES */
.services{padding:116px 0 132px}.services-head{display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:end}.services-head .section-copy{justify-self:end;max-width:430px}.service-controls{display:flex;gap:9px;margin-top:20px}.service-control{width:44px;height:44px;border-radius:50%;border:1px solid var(--line);background:#fff;color:var(--ink);display:grid;place-items:center;transition:.2s}.service-control:hover{background:var(--ink);color:#fff;transform:translateY(-2px)}.service-rail{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;padding:54px 70px 18px;margin-left:calc(-1 * var(--gutter));margin-right:calc(-1 * var(--gutter));cursor:grab;scrollbar-width:none}.service-rail::-webkit-scrollbar{display:none}.service-rail.dragging{cursor:grabbing;scroll-snap-type:none;user-select:none}.service-card{position:relative;flex:0 0 min(46vw,620px);aspect-ratio:1232/928;height:auto;min-height:0;overflow:hidden;border-radius:24px;background:#ddd;scroll-snap-align:start;color:#fff;border:1px solid rgba(20,19,31,.08)}.service-card img,.service-card video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;filter:none;transition:transform .7s ease-out,filter .7s ease-out}.service-card:hover img,.service-card:hover video{transform:scale(1.045);filter:blur(2px)}.service-card::after{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,rgba(0,0,0,.1),transparent 36%,rgba(0,0,0,.78) 100%)}.service-top,.service-bottom{position:absolute;z-index:2;left:22px;right:22px}.service-top{top:20px;display:flex;justify-content:space-between;font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase}.service-top span:last-child{padding:7px 10px;border-radius:999px;background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.24);backdrop-filter:blur(8px)}.service-bottom{bottom:22px}.service-bottom .mini{font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.8)}.service-bottom h3{font-size:clamp(28px,3.2vw,42px);font-weight:600;line-height:1.02;letter-spacing:-.04em;margin:9px 0 18px}.service-bottom button{border:0;background:none;color:#fff;padding:0;font-size:13px;font-weight:600}.service-bottom button:hover{text-decoration:underline}
/* PROCESS */
.process{padding:82px 0}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:38px}.process-item{padding:0 30px;border-right:1px solid var(--line)}.process-item:first-child{padding-left:0}.process-item:last-child{border-right:0;padding-right:0}.process-num{font-family:var(--mono);font-size:11px;color:#7b7783}.process-item h3{font-size:21px;margin:15px 0 7px;font-weight:600}.process-item p{font-size:14px;color:var(--muted);max-width:290px}
/* WORK */
.work{padding:118px 0 126px}.work-head{display:flex;justify-content:space-between;align-items:end;gap:30px}.text-link{font-size:14px;font-weight:600;border-bottom:1px solid var(--ink);padding-bottom:3px}.work-grid{display:grid;grid-template-columns:1.45fr 1fr;grid-template-rows:280px 280px;gap:18px;margin-top:48px}.work-tile{position:relative;overflow:hidden;border-radius:20px;background:#e8e6e0;border:1px solid var(--line)}.work-tile.large{grid-row:span 2}.work-tile img,.work-tile video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .65s ease}.work-tile:hover img,.work-tile:hover video{transform:scale(1.04)}.work-tile::after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.6))}.tile-caption{position:absolute;z-index:2;left:18px;right:18px;bottom:16px;color:#fff;display:flex;flex-direction:column;gap:4px;text-shadow:0 2px 12px rgba(0,0,0,.35)}.tile-caption span{font-family:var(--mono);font-size:10px;letter-spacing:.11em;text-transform:uppercase}.tile-caption strong{font-family:var(--display);font-size:19px;font-weight:600}
/* WHY / ABOUT */
.why{padding:118px 0 126px;background:#f1efff}.why-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:72px;align-items:start}.why-intro h2{font-size:clamp(34px,4.4vw,55px);margin:14px 0 20px}.why-intro p{color:var(--muted);max-width:410px}.why-link{display:inline-flex;margin-top:24px;font-size:14px;font-weight:600;border-bottom:1px solid var(--ink);padding-bottom:3px}.why-list{border-top:1px solid rgba(20,19,31,.15)}.why-item{display:grid;grid-template-columns:45px 1fr;gap:12px;padding:20px 0;border-bottom:1px solid rgba(20,19,31,.15)}.why-item span{font-family:var(--mono);font-size:10px;color:#777180}.why-item h3{font-size:19px;font-weight:600}.why-item p{grid-column:2;color:var(--muted);font-size:14px;margin-top:5px;max-width:560px}
/* FEEDBACK */
.feedback{padding:112px 0 118px}.feedback-head{text-align:center;max-width:650px;margin:auto}.feedback-head .mono-label{justify-content:center}.feedback-head .section-copy{margin:14px auto 0}.quote{max-width:820px;margin:48px auto 0;text-align:center}.quote blockquote{font-family:var(--display);font-size:clamp(22px,2.45vw,31px);line-height:1.22;letter-spacing:-.025em;font-weight:500}.quote cite{display:block;margin-top:18px;font-size:13px;color:var(--muted);font-style:normal}
/* CTA */
.cta{padding:0 0 96px}.cta-box{border:1px solid var(--line);border-radius:var(--radius);padding:56px;display:flex;justify-content:space-between;align-items:center;gap:35px;background:#fff}.cta-box h2{font-size:clamp(30px,3.6vw,46px);font-weight:600;margin-top:12px}.cta-box p{color:var(--muted);font-size:15px;max-width:520px;margin-top:12px}.cta-actions{display:flex;gap:10px;flex-wrap:wrap}/* FOOTER — rounded, inset, Loro-style */.footer-logo{display:flex;align-items:center;gap:10px;font:700 20px var(--display);color:#f7f4f1}.footer-socials a{color:#d8d2cc;font:600 15px/1 Inter,sans-serif}.footer-col a{font:400 14px/1.35 Inter,sans-serif;color:#cfc9c2}.footer-bottom{min-height:62px;border-top:1px solid rgba(255,255,255,.14);display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;gap:20px;color:#aaa39b;font:400 10px/1 JetBrains Mono,monospace;letter-spacing:.03em}
@media(max-width:900px){.nav-phone{display:none}.home-mobile-menu.open{opacity:1;pointer-events:auto;transform:none}.footer-brand{grid-column:1/-1}.footer-bottom{grid-template-columns:1fr;min-height:auto;padding:18px 0;gap:12px}}
@media(max-width:600px){.home-logo{font-size:15px}.nav-circle{width:40px;height:40px}.footer-brand{grid-column:auto}}

/* FINAL PROJECT SHOWCASE — centered deck / side-card treatment */
.project-showcase{
  padding:118px 0 126px;
  border-top:1px solid var(--line);
  overflow:hidden;
}
.showcase-head{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:30px;
}
.showcase-stage{
  position:relative;
  height:500px;
  margin-top:46px;
  display:flex;
  align-items:center;
  justify-content:center;
  perspective:1400px;
}
.showcase-track{
  position:relative;
  width:100%;
  height:100%;
  display:flex;
  align-items:center;
  justify-content:center;
}
.showcase-item{
  position:absolute;
  width:320px;
  aspect-ratio:1.28;
  border-radius:22px;
  overflow:hidden;
  background:#e8e6e0;
  border:1px solid rgba(20,19,31,.09);
  box-shadow:0 22px 48px rgba(20,19,31,.13);
  transform-origin:center bottom;
  transition:
    transform .72s cubic-bezier(.16,1,.3,1),
    opacity .55s ease,
    filter .55s ease,
    box-shadow .55s ease;
  cursor:pointer;
}
.showcase-item img,
.showcase-item video{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
}
.showcase-item::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(to bottom,transparent 48%,rgba(0,0,0,.72) 100%);
  pointer-events:none;
}
.showcase-label{
  position:absolute;
  z-index:2;
  left:22px;
  right:22px;
  bottom:20px;
  color:#fff;
  display:flex;
  flex-direction:column;
  gap:4px;
}
.showcase-label span{
  font:500 9px/1 JetBrains Mono,monospace;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:rgba(255,255,255,.78);
}
.showcase-label strong{
  font:600 20px/1.05 "Space Grotesk",sans-serif;
  letter-spacing:-.025em;
}

.showcase-arrow{
  position:absolute;
  z-index:10;
  top:50%;
  transform:translateY(-50%);
  width:48px;
  height:48px;
  border:1px solid var(--line);
  border-radius:50%;
  background:#fff;
  color:#14131f;
  display:grid;
  place-items:center;
  font-size:20px;
  box-shadow:0 10px 25px rgba(20,19,31,.08);
  transition:transform .2s ease,background .2s ease,color .2s ease;
}
.showcase-arrow:hover{
  background:#14131f;
  color:#fff;
  transform:translateY(-50%) scale(1.04);
}
.showcase-prev{left:0}
.showcase-next{right:0}
.showcase-caption{
  margin-top:4px;
  display:flex;
  justify-content:center;
  gap:18px;
  color:#777180;
  font:500 10px/1.2 JetBrains Mono,monospace;
  letter-spacing:.11em;
  text-transform:uppercase;
}
.showcase-caption span:first-child{color:#14131f}


@media(max-width:1100px){.showcase-stage{height:450px}.showcase-item{width:300px}}
@media(max-width:760px){.showcase-stage{height:360px;margin-top:30px}.showcase-item{width:245px;border-radius:18px}.showcase-arrow{width:42px;height:42px;font-size:17px}.showcase-prev{left:2px}.showcase-next{right:2px}.showcase-caption{font-size:9px;gap:10px}}
@media(max-width:520px){.showcase-stage{height:300px}.showcase-item{width:205px}}

/* About preview now follows the shared About-page type/color tokens exactly. */
.intro{
  background:#faf9f6;
  color:#14131f;
  text-align:center;
  padding:104px 0 112px;
  border-top:0;
}
.intro-inner{width:min(760px,100%);max-width:760px;margin-inline:auto}
.intro .mono-label{
  justify-content:center;
  font-family:"JetBrains Mono","Courier New",monospace;
  font-size:13px;
  letter-spacing:.14em;
  color:#372bc7;
}
.intro .mono-label::before{
  display:inline-block;
  width:22px;
  height:2px;
  background:#ffc93c;
}
.intro .statement{
  margin:20px auto 0;
  font-family:"Space Grotesk","Arial Narrow",sans-serif;
  font-size:clamp(28px,3.4vw,40px);
  line-height:1.08;
  letter-spacing:-.01em;
  font-weight:600;
  color:#14131f;
  max-width:700px;
}
.intro .support{
  margin:18px auto 0;
  color:#55536e;
  font-family:"Inter",-apple-system,BlinkMacSystemFont,sans-serif;
  font-size:17px;
  line-height:1.6;
  max-width:620px;
}
.intro .about-link{
  margin-top:26px;
}/* MODAL *//* reveal */.stagger.visible>*{opacity:1;transform:none}.stagger.visible>*:nth-child(2){transition-delay:.08s}.stagger.visible>*:nth-child(3){transition-delay:.16s}.stagger.visible>*:nth-child(4){transition-delay:.24s}
/* Hero + navbar entrance — page-load animation */
.home-page .home-nav{opacity:0;translate:-50% -18px;transition:opacity .72s cubic-bezier(.16,1,.3,1),translate .72s cubic-bezier(.16,1,.3,1)}
.home-page .hero-text > *{opacity:0;transform:translateY(22px);transition:opacity .72s cubic-bezier(.16,1,.3,1),transform .72s cubic-bezier(.16,1,.3,1)}
.home-page.is-loaded .home-nav{opacity:1;translate:-50% 0}
.home-page.is-loaded .hero-text > *{opacity:1;transform:none}
.home-page.is-loaded .hero-text > *:nth-child(1){transition-delay:.12s}
.home-page.is-loaded .hero-text > *:nth-child(2){transition-delay:.20s}
.home-page.is-loaded .hero-text > *:nth-child(3){transition-delay:.28s}
.home-page.is-loaded .hero-text > *:nth-child(4){transition-delay:.36s}
.home-page.is-loaded .hero-text > *:nth-child(5){transition-delay:.44s}
@media(prefers-reduced-motion:reduce){.home-page .home-nav,.home-page .hero-text > *, .footer-statement{opacity:1!important;transform:none!important;transition:none!important}}
@media(max-width:900px){.home-mobile-menu.open{opacity:1;pointer-events:auto;transform:none}.hero{min-height:calc(100svh - 24px);margin:12px 12px 0;padding:130px 28px 48px;grid-template-columns:1fr;align-items:start;border-radius:24px}.hero-text{width:100%;max-width:620px}.hero-media{inset:0;width:100%;height:100%}.hero-media img{inset:-2% -12% 0 -12%;width:124%;height:100%;object-position:67% 25%;-webkit-mask-image:linear-gradient(to bottom,black 0%,black 72%,transparent 100%);mask-image:linear-gradient(to bottom,black 0%,black 72%,transparent 100%);-webkit-mask-composite:source-in;mask-composite:intersect}.hero-media::before{background:linear-gradient(to bottom,rgba(27,4,4,.08) 0%,rgba(27,4,4,.16) 25%,rgba(27,4,4,.42) 52%,rgba(27,4,4,.82) 78%,#1a0404 100%),linear-gradient(to right,rgba(27,4,4,.62) 0%,rgba(27,4,4,.18) 55%,rgba(27,4,4,.05) 100%)}.services-head,.why-layout{grid-template-columns:1fr;gap:35px}.services-head .section-copy{justify-self:start}.service-rail{margin-left:calc(-1 * var(--gutter));margin-right:calc(-1 * var(--gutter));padding-left:32px;padding-right:32px}.service-card{flex-basis:calc(100vw - 40px);height:auto;aspect-ratio:1232/928}.process-grid{grid-template-columns:1fr;gap:25px}.process-item{border-right:0;border-bottom:1px solid var(--line);padding:0 0 25px}.process-item:last-child{border-bottom:0;padding-bottom:0}.work-grid{grid-template-columns:1fr 1fr;grid-template-rows:300px 300px}.work-tile.large{grid-row:span 2}.footer-top{grid-template-columns:1fr}}
@media(max-width:600px){.hero{padding:126px 24px 44px}.wordmark{font-size:29px}.headline{font-size:clamp(2.65rem,12vw,3.5rem)}.hero-sub{font-size:15.5px}.hero-ctas{width:auto;flex-wrap:wrap}.hero .btn{padding:14px 22px}.intro{padding:64px 0 56px}.intro .statement{font-size:clamp(25px,7.8vw,34px)}.services{padding:56px 0 100px}.service-rail{padding-top:42px;padding-left:18px;padding-right:18px;gap:14px}.service-card{flex-basis:calc(100vw - 40px);height:auto;aspect-ratio:1232/928;border-radius:22px}.service-bottom{left:20px;right:20px;bottom:20px}.service-top{left:18px;right:18px;top:18px}.work{padding:92px 0 100px}.work-head{display:block}.work-head .text-link{display:inline-flex;margin-top:18px}.work-grid{grid-template-columns:1fr;grid-template-rows:340px 250px 250px;margin-top:35px}.work-tile.large{grid-row:auto}.why{padding:92px 0 100px}.why-layout{gap:45px}.feedback{padding:92px 0 100px}.quote blockquote{font-size:clamp(21px,6vw,28px)}.cta{padding-bottom:70px}.cta-box{padding:34px 24px;display:block}.cta-actions{margin-top:25px}.footer-statement{font-size:clamp(32px,10vw,46px);padding-bottom:44px}.footer-links{gap:28px}.footer-bottom{flex-direction:column}}
@media(prefers-reduced-motion:reduce){.stagger.visible>*{transition:none!important;opacity:1!important;transform:none!important}.service-card img,.service-card video,.work-tile img,.work-tile video{transition:none!important}}

@media(max-width:600px){
  .testimonial-carousel{height:300px;margin-top:32px}
  .testimonial-slide{width:calc(100% - 28px);height:270px}
  .testimonial-sheet.main{padding:26px 24px 20px}
  .testimonial-clip{left:16px;top:-12px;transform:scale(.82) rotate(4deg);transform-origin:top left}
  .testimonial-stars{font-size:14px;letter-spacing:3px;margin-bottom:14px}
  .testimonial-text{font-size:11px;line-height:1.55}
  .testimonial-author{font-size:12px;margin-top:13px}
  .testimonial-meta{font-size:7px}
}
@media(prefers-reduced-motion:reduce){
  .testimonial-slide{transition:none!important}
}


/* FINAL LOCKED ABOUT PREVIEW */
.intro{background:#fff;text-align:center;padding:104px 0 112px;border-top:0}
.intro-inner{width:min(760px,100%);max-width:760px;margin-inline:auto}
.intro .mono-label{justify-content:center}
.intro .mono-label::before{display:inline-block;width:22px;height:2px;background:#ffc93c}
.intro .statement{
  margin:20px auto 0;
  font-family:var(--display);
  font-size:32px;
  line-height:1.08;
  letter-spacing:-.01em;
  font-weight:700;
  max-width:700px;
  background:linear-gradient(90deg,var(--ink),var(--indigo),var(--ink));
  background-size:200% auto;
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  animation:textShine 4s linear infinite;
}
.intro .statement strong{font-weight:500;color:var(--muted)}
.intro .support{margin:18px auto 0;color:var(--muted);font-family:var(--body);font-size:18px;line-height:1.6;max-width:640px}
.intro .about-link{display:inline-flex;margin-top:26px}
/* FINAL LOCKED CONTACT */
.contact-final{background:#fff;padding:96px 0 112px;text-align:center}
.contact-final .contact-inner{width:min(760px,100%);margin-inline:auto}
.contact-final .mono-label{justify-content:center}
.contact-final .mono-label::before{display:none}
.contact-final h2{margin-top:18px;font-size:clamp(30px,3.6vw,42px);font-weight:600;letter-spacing:-.03em}
.contact-final h2 span{color:#4a3aff}
.contact-final p{margin:18px auto 0;max-width:620px;color:var(--muted);font-size:16px;line-height:1.65}
.contact-final .contact-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:28px}
.contact-final .contact-details{margin-top:18px;color:#777180;font-size:13px}/* FINAL NAVBAR + LORO-STYLE FOOTER GEOMETRY */
.home-logo{font-size:16px;gap:8px}
.home-nav-links a{font-size:12px;font-weight:500}.nav-mail, .nav-circle{width:40px;height:40px}.nav-circle{border:0;border-radius:50%;display:grid;place-items:center;background:#090909;color:#fff;text-decoration:none;font:600 20px/1 Inter,sans-serif}.nav-phone{font-size:17px}
.footer-statement{
  max-width:900px;
  padding:0 0 62px;
  font-size:clamp(36px,4.2vw,56px);
  line-height:1.03;
  letter-spacing:-.05em;
}
.footer-top{
  display:grid;
  grid-template-columns:290px 1fr;
  gap:72px;
  padding-bottom:66px;
}
.footer-brand{min-width:0}
.footer-logo{font-size:20px}
.footer-top p{font-size:14px;max-width:365px;margin-top:18px;color:#c7c1ba}
.footer-socials a{color:#d9d3cc;text-decoration:none;font:600 15px/1 Inter,sans-serif}
.footer-col-group{display:grid;grid-template-columns:1fr 1fr 1.15fr;gap:46px}
.footer-col>span{font:500 11px/1 JetBrains Mono,monospace;letter-spacing:.12em;text-transform:uppercase;color:#f2eee9;margin-bottom:9px}
.footer-col a{font:400 14px/1.35 Inter,sans-serif;color:#cfc9c2;text-decoration:none}
.footer-bottom{padding-top:20px;font-size:10px;color:#aaa39b}
.footer-bottom a{color:inherit;text-decoration:none}

@media(max-width:900px){
  .nav-phone,.nav-mail{display:none}
  .footer-statement{font-size:clamp(34px,8vw,48px);padding-bottom:44px}
  .footer-top{grid-template-columns:1fr;gap:42px;padding-bottom:44px}
  .footer-col-group{grid-template-columns:repeat(2,1fr);gap:34px}
}
@media(max-width:600px){
  .home-logo{font-size:15px}.nav-mail{width:38px;height:38px}
  .footer-col-group{grid-template-columns:1fr 1fr}
  .footer-bottom{flex-direction:column;gap:10px}
}

/* FINAL LOCKED SERVICE CARD SYSTEM */
.services{overflow:hidden}
.service-viewport{width:calc(100% - (2 * var(--gutter)));margin-left:var(--gutter);margin-right:var(--gutter);overflow:hidden;position:relative}
.service-rail{display:flex;gap:18px;width:max-content;overflow-x:auto;overflow-y:hidden;padding:0 var(--gutter) 14px 0;margin:0;scroll-padding-left:0;scroll-padding-right:var(--gutter);scroll-snap-type:x mandatory;scrollbar-width:none;cursor:grab}
.service-rail::-webkit-scrollbar{display:none}.service-rail.dragging{cursor:grabbing;scroll-snap-type:none;user-select:none}
.service-card{position:relative;flex:0 0 min(46vw,620px);width:min(46vw,620px);aspect-ratio:1232/928;height:auto;min-height:0;overflow:hidden;border-radius:24px;background:#17151a;scroll-snap-align:start;color:#fff;border:1px solid rgba(20,19,31,.08);isolation:isolate}
.service-card img,.service-card video{position:absolute;inset:0;width:100%;height:100%;display:block;object-fit:cover;object-position:center;transform:scale(1);filter:blur(0);transition:transform .7s ease-out,filter .7s ease-out;will-change:transform,filter}
.service-card:hover img,.service-card:hover video,.service-card:focus-within img,.service-card:focus-within video{transform:scale(1.045);filter:blur(2px)}
.service-card::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(180deg,rgba(0,0,0,.06) 0%,rgba(0,0,0,.03) 34%,rgba(0,0,0,.30) 61%,rgba(0,0,0,.84) 100%)}
.service-top,.service-bottom{position:absolute;z-index:2}.service-top{top:28px;left:28px;right:28px;display:flex;justify-content:space-between;align-items:center;font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase}
.service-top>span:first-child{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(255,255,255,.42);background:rgba(255,255,255,.10);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);font-size:0}.service-top>span:first-child::after{content:'✦';font-family:Inter,sans-serif;font-size:15px;letter-spacing:0;color:#fff}
.service-top>span:last-child{height:42px;min-width:82px;padding:0 14px;border-radius:999px;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.42);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.service-bottom{left:34px;right:34px;bottom:29px}.service-bottom .mini{display:block;font-family:var(--mono);font-size:10px;line-height:1;letter-spacing:.13em;text-transform:uppercase;color:rgba(255,255,255,.76);margin-bottom:11px}.service-bottom h3{font-family:var(--display);font-size:clamp(29px,3vw,42px);font-weight:600;line-height:1.04;letter-spacing:-.035em;margin:0;max-width:570px}.service-bottom button{display:inline-flex;margin-top:18px;border:0;background:none;color:#fff;padding:0;font-family:Inter,sans-serif;font-size:13px;font-weight:500;cursor:pointer}.service-bottom button:hover{transform:translateX(3px)}
@media(max-width:900px){.service-viewport{width:calc(100% - (2 * var(--gutter)));margin-left:var(--gutter);margin-right:var(--gutter)}.service-rail{padding-right:var(--gutter);gap:18px}.service-card{flex-basis:380px;width:380px}.service-top{top:22px;left:22px;right:22px}.service-bottom{left:26px;right:26px;bottom:24px}}
@media(max-width:600px){.service-viewport{width:calc(100% - 40px);margin-left:20px;margin-right:20px}.service-rail{padding-right:20px;gap:14px}.service-card{flex-basis:calc(100vw - 40px);width:calc(100vw - 40px);border-radius:20px}.service-top{top:18px;left:18px;right:18px}.service-top>span:first-child{width:42px;height:42px}.service-top>span:last-child{height:40px;min-width:76px}.service-bottom{left:20px;right:20px;bottom:20px}.service-bottom h3{font-size:29px}}

/* ===== FINAL LORO-LIKE SERVICE CARDS ===== */
.service-rail-wrap{overflow:hidden;}
.service-rail{
  gap:18px !important;
  padding-top:42px !important;
  padding-bottom:18px !important;
}
.service-card{
  flex:0 0 min(42vw,560px) !important;
  width:min(42vw,560px) !important;
  aspect-ratio:1232 / 928 !important;
  border-radius:24px !important;
}
.service-card img,.service-card video{
  transition:transform .7s cubic-bezier(.16,1,.3,1),filter .7s cubic-bezier(.16,1,.3,1) !important;
}
.service-card:hover img,.service-card:hover video,
.service-card:focus-within img,.service-card:focus-within video{
  transform:scale(1.045) !important;
  filter:blur(2px) !important;
}
.service-card .card-content,
.service-card .service-content{
  z-index:3;
}
.service-card .service-title,
.service-card h3{
  font-family:"Space Grotesk",sans-serif !important;
}
.service-card .eyebrow,
.service-card .service-kicker,
.service-card .service-meta{
  font-family:"JetBrains Mono",monospace !important;
}

/* ===== FINAL LORO-LIKE SELECTED WORK / PORTFOLIO DECK ===== */
.project-showcase{overflow:hidden;}
.showcase-stage{
  height:430px !important;
  margin-top:34px !important;
  perspective:1200px !important;
  overflow:hidden;
}
.showcase-track{
  height:100%;
  width:100%;
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
}
.showcase-item{
  width:250px !important;
  aspect-ratio:1.28 !important;
  border-radius:20px !important;
  border:1px solid rgba(20,19,31,.10) !important;
  box-shadow:0 18px 40px rgba(20,19,31,.12) !important;
  transition:
    transform .72s cubic-bezier(.16,1,.3,1),
    opacity .5s ease,
    filter .5s ease,
    box-shadow .5s ease !important;
  will-change:transform,opacity,filter;
}
.showcase-item img,.showcase-item video{
  transition:transform .72s cubic-bezier(.16,1,.3,1),filter .5s ease !important;
}
.showcase-item:hover img,.showcase-item:hover video{
  transform:scale(1.045) !important;
  filter:blur(2px) !important;
}
.showcase-item::after{
  background:linear-gradient(to bottom,rgba(0,0,0,0) 42%,rgba(0,0,0,.72) 100%) !important;
}
.showcase-label{
  left:18px !important;
  right:18px !important;
  bottom:17px !important;
}
.showcase-label span{
  font:500 9px/1 "JetBrains Mono",monospace !important;
  letter-spacing:.12em !important;
}
.showcase-label strong{
  font:600 18px/1.05 "Space Grotesk",sans-serif !important;
  letter-spacing:-.025em !important;
}
.showcase-arrow{
  width:44px !important;
  height:44px !important;
  z-index:20 !important;
}
.showcase-prev{left:10px !important;}
.showcase-next{right:10px !important;}

/* deck positions: center = website, sides = logo, outer = posters */
.showcase-item[data-index="0"]{transform:translateX(-430px) rotate(-10deg) scale(.78);opacity:.72;z-index:1;filter:saturate(.9);}
.showcase-item[data-index="1"]{transform:translateX(-275px) rotate(-7deg) scale(.86);opacity:.88;z-index:2;}
.showcase-item[data-index="2"]{transform:translateX(-130px) rotate(-3deg) scale(.94);opacity:.96;z-index:3;}
.showcase-item[data-index="3"]{transform:translateX(0) rotate(0) scale(1.06);opacity:1;z-index:6;box-shadow:0 28px 60px rgba(20,19,31,.18) !important;}
.showcase-item[data-index="4"]{transform:translateX(130px) rotate(3deg) scale(.94);opacity:.96;z-index:3;}
.showcase-item[data-index="5"]{transform:translateX(275px) rotate(7deg) scale(.86);opacity:.88;z-index:2;}
.showcase-item[data-index="6"]{transform:translateX(430px) rotate(10deg) scale(.78);opacity:.72;z-index:1;filter:saturate(.9);}

/* active deck movement if JS toggles .active */
.showcase-item.active{z-index:10 !important;opacity:1 !important;filter:none !important;}

/* keep service-card controls/content readable */
.service-card .service-overlay,.service-card .card-overlay{z-index:2;}

@media(max-width:1023px){
  .service-card{
    flex-basis:380px !important;
    width:380px !important;
  }
  .showcase-stage{height:360px !important;}
  .showcase-item{width:210px !important;}
  .showcase-item[data-index="0"]{transform:translateX(-310px) rotate(-10deg) scale(.72);}
  .showcase-item[data-index="1"]{transform:translateX(-205px) rotate(-7deg) scale(.82);}
  .showcase-item[data-index="2"]{transform:translateX(-100px) rotate(-3deg) scale(.9);}
  .showcase-item[data-index="3"]{transform:translateX(0) rotate(0) scale(1.03);}
  .showcase-item[data-index="4"]{transform:translateX(100px) rotate(3deg) scale(.9);}
  .showcase-item[data-index="5"]{transform:translateX(205px) rotate(7deg) scale(.82);}
  .showcase-item[data-index="6"]{transform:translateX(310px) rotate(10deg) scale(.72);}
}
@media(max-width:767px){
  .service-card{
    flex-basis:calc(100vw - 40px) !important;
    width:calc(100vw - 40px) !important;
    border-radius:20px !important;
  }
  .showcase-stage{height:285px !important;margin-top:22px !important;}
  .showcase-item{width:180px !important;border-radius:16px !important;}
  .showcase-item[data-index="0"]{transform:translateX(-210px) rotate(-10deg) scale(.64);}
  .showcase-item[data-index="1"]{transform:translateX(-140px) rotate(-7deg) scale(.74);}
  .showcase-item[data-index="2"]{transform:translateX(-70px) rotate(-3deg) scale(.84);}
  .showcase-item[data-index="3"]{transform:translateX(0) rotate(0) scale(1);}
  .showcase-item[data-index="4"]{transform:translateX(70px) rotate(3deg) scale(.84);}
  .showcase-item[data-index="5"]{transform:translateX(140px) rotate(7deg) scale(.74);}
  .showcase-item[data-index="6"]{transform:translateX(210px) rotate(10deg) scale(.64);}
  .showcase-arrow{width:40px !important;height:40px !important;}
}



.project-fan-section{overflow:hidden;padding:88px 0 100px;}
.project-fan-head{max-width:760px;margin-bottom:26px;}
.project-fan-head h2{
  font-family:var(--display);
  font-size:clamp(34px,4.2vw,52px);
  line-height:1.08;
  letter-spacing:-.035em;
  margin:14px 0 12px;
}
.project-fan-head p{
  font-family:var(--body);
  font-size:18px;
  line-height:1.6;
  color:var(--muted);
  max-width:650px;
}
.project-fan-wrap{
  position:relative;
  width:100%;
  max-width:900px;
  height:380px;
  margin:0 auto;
  display:flex;
  align-items:center;
  justify-content:center;
}
.project-fan-card{
  position:absolute;
  width:220px;
  height:320px;
  border-radius:18px;
  overflow:hidden;
  box-shadow:0 20px 40px rgba(20,19,31,.18);
  cursor:pointer;
  transition:transform .5s cubic-bezier(.22,1,.36,1),box-shadow .4s ease,z-index 0s;
  background:#111;
  border:1px solid rgba(20,19,31,.06);
  isolation:isolate;
  opacity:0;
}
.project-fan-card.fan-in{animation:fanCardIn .7s cubic-bezier(.22,1,.36,1) forwards;}
.project-fan-card:nth-child(1){animation-delay:.05s;}
.project-fan-card:nth-child(2){animation-delay:.1s;}
.project-fan-card:nth-child(3){animation-delay:.15s;}
.project-fan-card:nth-child(4){animation-delay:.2s;}
.project-fan-card:nth-child(5){animation-delay:.15s;}
.project-fan-card:nth-child(6){animation-delay:.1s;}
.project-fan-card:nth-child(7){animation-delay:.05s;}
@keyframes fanCardIn{
  from{opacity:0;transform:translateY(40px) scale(.92);}
  to{opacity:1;}
}
.project-fan-visual{
  width:100%;height:100%;display:block;position:relative;overflow:hidden;
  background:var(--ink);
}
.project-fan-visual::before{
  content:"";position:absolute;inset:0;
  background:
    radial-gradient(circle at 30% 25%,rgba(255,255,255,.22),transparent 25%),
    radial-gradient(circle at 75% 70%,rgba(255,255,255,.10),transparent 30%),
    linear-gradient(135deg,#34313a,#17151a 58%,#0d0d0e);
}
.project-fan-card:nth-child(2) .project-fan-visual::before{
  background:
    radial-gradient(circle at 70% 25%,rgba(255,255,255,.20),transparent 25%),
    linear-gradient(135deg,#40352e,#1c1817 60%,#0e0d0d);
}
.project-fan-card:nth-child(3) .project-fan-visual::before{
  background:
    radial-gradient(circle at 30% 70%,rgba(255,255,255,.18),transparent 25%),
    linear-gradient(135deg,#31353e,#17191e 60%,#0e0e10);
}
.project-fan-card:nth-child(4) .project-fan-visual::before{
  background:
    radial-gradient(circle at 68% 28%,rgba(255,255,255,.24),transparent 28%),
    linear-gradient(135deg,#38435a,#151a25 58%,#0c0e12);
}
.project-fan-card:nth-child(5) .project-fan-visual::before{
  background:
    radial-gradient(circle at 25% 25%,rgba(255,255,255,.18),transparent 25%),
    linear-gradient(135deg,#41342f,#201a18 58%,#0e0d0d);
}
.project-fan-card:nth-child(6) .project-fan-visual::before{
  background:
    radial-gradient(circle at 75% 35%,rgba(255,255,255,.18),transparent 25%),
    linear-gradient(135deg,#35313d,#17151c 58%,#0d0d10);
}
.project-fan-card:nth-child(7) .project-fan-visual::before{
  background:
    radial-gradient(circle at 35% 25%,rgba(255,255,255,.20),transparent 25%),
    linear-gradient(135deg,#303b35,#151b18 58%,#0b0e0c);
}
.project-fan-placeholder{
  position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
  color:rgba(255,255,255,.92);
  font-family:var(--display);
  font-size:28px;font-weight:600;letter-spacing:-.03em;
  text-align:center;
}
.project-fan-placeholder small{
  display:block;margin-top:7px;
  font-family:var(--mono);
  font-size:9px;font-weight:500;letter-spacing:.16em;
  text-transform:uppercase;opacity:.6;
}
.project-fan-label{
  position:absolute;bottom:0;left:0;right:0;
  padding:16px 16px 14px;
  background:linear-gradient(to top,rgba(0,0,0,.75),transparent 100%);
  color:#fff;
  font-family:var(--body);
  font-size:13px;font-weight:600;
  opacity:0;transform:translateY(6px);
  transition:opacity .3s ease,transform .3s ease;
  z-index:2;
}
.project-fan-card.active .project-fan-label{opacity:1;transform:translateY(0);}
.project-fan-card[data-pos="-3"]{transform:translateX(-260px) translateY(30px) rotate(-18deg) scale(.85);z-index:1;}
.project-fan-card[data-pos="-2"]{transform:translateX(-170px) translateY(14px) rotate(-12deg) scale(.9);z-index:2;}
.project-fan-card[data-pos="-1"]{transform:translateX(-85px) translateY(4px) rotate(-6deg) scale(.95);z-index:3;}
.project-fan-card[data-pos="0"]{transform:translateX(0) translateY(0) rotate(0deg) scale(1);z-index:5;}
.project-fan-card[data-pos="1"]{transform:translateX(85px) translateY(4px) rotate(6deg) scale(.95);z-index:3;}
.project-fan-card[data-pos="2"]{transform:translateX(170px) translateY(14px) rotate(12deg) scale(.9);z-index:2;}
.project-fan-card[data-pos="3"]{transform:translateX(260px) translateY(30px) rotate(18deg) scale(.85);z-index:1;}
.project-fan-card:hover{box-shadow:0 30px 60px rgba(20,19,31,.28);}
.project-fan-card[data-pos="-3"]:hover{transform:translateX(-260px) translateY(10px) rotate(-18deg) scale(.9);z-index:6;}
.project-fan-card[data-pos="-2"]:hover{transform:translateX(-170px) translateY(-6px) rotate(-12deg) scale(.95);z-index:6;}
.project-fan-card[data-pos="-1"]:hover{transform:translateX(-85px) translateY(-16px) rotate(-6deg) scale(1);z-index:6;}
.project-fan-card[data-pos="0"]:hover{transform:translateX(0) translateY(-20px) rotate(0deg) scale(1.04);z-index:6;}
.project-fan-card[data-pos="1"]:hover{transform:translateX(85px) translateY(-16px) rotate(6deg) scale(1);z-index:6;}
.project-fan-card[data-pos="2"]:hover{transform:translateX(170px) translateY(-6px) rotate(12deg) scale(.95);z-index:6;}
.project-fan-card[data-pos="3"]:hover{transform:translateX(260px) translateY(10px) rotate(18deg) scale(.9);z-index:6;}
.project-fan-cta{margin-top:26px;text-align:center;}
.project-fan-cta a{
  color:var(--ink);font-family:var(--body);font-weight:600;font-size:14.5px;
  text-decoration:none;border-bottom:1.5px solid var(--ink);padding-bottom:3px;
  transition:opacity .2s ease;
}
.project-fan-cta a:hover{opacity:.6;}
@media(max-width:768px){
  .project-fan-wrap{height:340px;}
  .project-fan-card{width:150px;height:230px;}
  .project-fan-card[data-pos="-3"]{transform:translateX(-140px) translateY(24px) rotate(-16deg) scale(.8);}
  .project-fan-card[data-pos="-2"]{transform:translateX(-95px) translateY(12px) rotate(-11deg) scale(.86);}
  .project-fan-card[data-pos="-1"]{transform:translateX(-48px) translateY(4px) rotate(-5deg) scale(.93);}
  .project-fan-card[data-pos="0"]{transform:translateX(0) translateY(0) rotate(0deg) scale(1);}
  .project-fan-card[data-pos="1"]{transform:translateX(48px) translateY(4px) rotate(5deg) scale(.93);}
  .project-fan-card[data-pos="2"]{transform:translateX(95px) translateY(12px) rotate(11deg) scale(.86);}
  .project-fan-card[data-pos="3"]{transform:translateX(140px) translateY(24px) rotate(16deg) scale(.8);}
}
@media(max-width:480px){
  .project-fan-wrap{height:280px;}
  .project-fan-card{width:110px;height:170px;border-radius:14px;}
  .project-fan-card[data-pos="-3"]{transform:translateX(-98px) translateY(18px) rotate(-16deg) scale(.78);}
  .project-fan-card[data-pos="-2"]{transform:translateX(-66px) translateY(9px) rotate(-11deg) scale(.85);}
  .project-fan-card[data-pos="-1"]{transform:translateX(-33px) translateY(3px) rotate(-5deg) scale(.92);}
  .project-fan-card[data-pos="0"]{transform:translateX(0) translateY(0) rotate(0deg) scale(1);}
  .project-fan-card[data-pos="1"]{transform:translateX(33px) translateY(3px) rotate(5deg) scale(.92);}
  .project-fan-card[data-pos="2"]{transform:translateX(66px) translateY(9px) rotate(11deg) scale(.85);}
  .project-fan-card[data-pos="3"]{transform:translateX(98px) translateY(18px) rotate(16deg) scale(.78);}
  .project-fan-label{font-size:11px;padding:10px 10px 8px;}
}



/* About Us text only — matches about.html shared typography. */
#about-preview .statement{
  font-family:var(--display);
  font-size:clamp(28px,3.4vw,40px);
  line-height:1.08;
  letter-spacing:-.025em;
  font-weight:600;
  color:var(--ink);
  background:none;
  -webkit-text-fill-color:initial;
  animation:none;
}
#about-preview .support{
  font-family:var(--body);
  font-size:17px;
  line-height:1.6;
  color:var(--muted);
}

/* Contact Us text only — same typography system as about.html section headings/body. */
#contact.contact-final h2{
  font-family:var(--display);
  font-size:clamp(28px,3.4vw,40px);
  line-height:1.08;
  letter-spacing:-.025em;
  font-weight:600;
  color:var(--ink);
}
#contact.contact-final p{
  font-family:var(--body);
  font-size:17px;
  line-height:1.6;
  color:var(--muted);
}
#contact.contact-final .contact-details{
  font-family:var(--body);
  font-size:13px;
  line-height:1.6;
  color:#777180;
}



/* Selected Work "fan" cards: layout, media, hover/click lift, entrance animation. */
.project-fan-section .project-fan-head{width:100%;max-width:760px;margin-left:auto;margin-right:auto;text-align:center}
.project-fan-section .project-fan-head p{margin-left:auto;margin-right:auto}
.project-fan-wrap{width:100%;max-width:900px;margin-left:auto!important;margin-right:auto!important}
.project-fan-visual::before{z-index:0;pointer-events:none}
.project-fan-visual>img,.project-fan-visual>video{position:absolute;inset:0;width:100%;height:100%;display:block;object-fit:cover;object-position:center;z-index:0}
.project-fan-visual>video{z-index:2}
.project-fan-card:has(.project-fan-visual>video) .project-fan-visual{background:#111}
.project-fan-card:has(.project-fan-visual>video) .project-fan-visual::before{display:none}
.project-fan-label{z-index:4}
.project-fan-card .project-fan-visual{transition:transform .35s cubic-bezier(.22,1,.36,1),filter .35s ease}
.project-fan-card:hover .project-fan-visual{transform:translateY(-10px) scale(1.025)}
.project-fan-card:hover .project-fan-visual img,.project-fan-card:hover .project-fan-visual video{transform:scale(1.04);filter:blur(1px)}
.project-fan-card.fan-clicked{filter:brightness(1.04);box-shadow:0 30px 60px rgba(0,0,0,.28);z-index:7!important}
.project-fan-card.fan-clicked .project-fan-visual{transform:translateY(-10px) scale(1.025)}
.project-fan-card.fan-in{animation:homeFanFade .55s ease both}
@keyframes homeFanFade{from{opacity:0}to{opacity:1}}



.hero .wordmark{font-family:"DM Sans",ui-sans-serif,system-ui,sans-serif;font-style:normal;font-weight:400;font-size:16px;line-height:24px;color:rgb(57,51,45);letter-spacing:normal}
.hero .headline{font-family:Comfortaa,ui-sans-serif,system-ui,sans-serif;font-style:normal;font-weight:800;font-size:60px;line-height:60px;color:rgb(255,255,255);letter-spacing:normal}
.hero .hero-sub{font-family:Comfortaa,ui-sans-serif,system-ui,sans-serif;font-style:normal;font-weight:700;font-size:18px;line-height:28px;color:rgba(255,255,255,.7);letter-spacing:normal}
.hero .eyebrow{font-family:"DM Sans",ui-sans-serif,system-ui,sans-serif;font-style:normal;font-weight:600;font-size:10px;line-height:28px;color:rgba(255,255,255,.6);letter-spacing:normal;text-transform:none}
@media(max-width:760px){.hero .headline{font-size:48px;line-height:50px}.hero .hero-sub{font-size:16px;line-height:25px}}
@media(max-width:480px){.hero .headline{font-size:40px;line-height:43px}.hero .hero-sub{font-size:15px;line-height:24px}}/* ARSAB TECH — final global typography system */body{
  font-family:"Bricolage Grotesque",sans-serif !important;
}h1, h2, h4, h5, h6{
  font-family:"Kaushan Script",cursive !important;
}
p,li,blockquote,small,label,nav,a,button,input,textarea,select,
.lead,.description,.copy,.hero-text,.section-copy,
.eyebrow,.section-label,.label,.number,.section-number{
  font-family:"Bricolage Grotesque",sans-serif !important;
}



/* FINAL — DO NOT OVERRIDE THESE */
#about-preview .mono-label{
  font-family:"Delius",cursive !important;
}
#about-preview .statement{
  font-family:"Kaushan Script",cursive !important;
}
#about-preview .support{
  font-family:"Bricolage Grotesque",sans-serif !important;
}#about-preview .about-link, .hero-ctas .btn, .cta-band .btn{
  font-family:"Bricolage Grotesque",sans-serif !important;
}/* 011 — PEARL BUTTON */#about-preview .about-link, .hero-ctas .btn-primary, .cta-band .btn-primary{
  background:linear-gradient(180deg,#fffdf9 0%,#f1ebe4 100%) !important;
  color:#17161b !important;
  border:1px solid rgba(23,22,27,.18) !important;
  border-radius:999px !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.98),
    0 5px 16px rgba(23,22,27,.10) !important;
  font-family:"Bricolage Grotesque",sans-serif !important;
  font-weight:600 !important;
}#about-preview .about-link:hover, .hero-ctas .btn-primary:hover, .cta-band .btn-primary:hover{
  background:linear-gradient(180deg,#ffffff 0%,#eee7df 100%) !important;
  color:#17161b !important;
  transform:translateY(-2px) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.98),
    0 10px 24px rgba(23,22,27,.14) !important;
}#about-preview .about-link:active, .hero-ctas .btn-primary:active, .cta-band .btn-primary:active{
  transform:translateY(0) scale(.985) !important;
}/* 011 PEARL — ACTUAL ACTION BUTTONS ONLY *//* Global action-button classes already used by the site */a.btn.btn-dark, a.btn.btn-light, a.btn, .btn-primary, .service-order, .about-link, .hero-ctas .btn, .cta-band .btn, .cta-banner .btn, .contact-actions a, .arsab-popup-live{
  font-family:"Bricolage Grotesque",sans-serif !important;
  background:linear-gradient(180deg,#fffdf9 0%,#f1ebe4 100%) !important;
  background-color:#f1ebe4 !important;
  color:#17161b !important;
  border:1px solid rgba(23,22,27,.18) !important;
  border-radius:999px !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.98),
    0 5px 16px rgba(23,22,27,.10) !important;
  text-shadow:none !important;
}a.btn.btn-dark:hover, a.btn.btn-light:hover, a.btn:hover, .btn-primary:hover, .btn-dark:hover, .btn-light:hover, .service-order:hover, .about-link:hover, .hero-ctas .btn:hover, .cta-band .btn:hover, .cta-banner .btn:hover, .contact-actions a:hover, .arsab-popup-live:hover{
  background:linear-gradient(180deg,#ffffff 0%,#eee7df 100%) !important;
  color:#17161b !important;
  transform:translateY(-2px) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.98),
    0 10px 24px rgba(23,22,27,.14) !important;
}a.btn.btn-dark:active, a.btn.btn-light:active, a.btn:active, .btn-primary:active, .btn-dark:active, .btn-light:active, .service-order:active, .about-link:active, .hero-ctas .btn:active, .cta-band .btn:active, .cta-banner .btn:active, .contact-actions a:active, .arsab-popup-live:active{
  transform:translateY(0) scale(.985) !important;
}



/* FINAL SERVICE RAIL SCROLL FIX
   The rail itself must be the viewport; its cards create the scrollable overflow. */
.service-viewport{
  overflow:hidden !important;
  width:calc(100% - (2 * var(--gutter))) !important;
  margin-left:var(--gutter) !important;
  margin-right:var(--gutter) !important;
}
.service-rail{
  width:100% !important;
  max-width:none !important;
  min-width:0 !important;
  overflow-x:auto !important;
  overflow-y:hidden !important;
  display:flex !important;
  flex-wrap:nowrap !important;
  gap:18px !important;
  padding:42px var(--gutter) 18px 0 !important;
  margin:0 !important;
  scroll-behavior:smooth !important;
  scroll-snap-type:x mandatory !important;
  scrollbar-width:none !important;
  -webkit-overflow-scrolling:touch !important;
}
.service-rail::-webkit-scrollbar{display:none !important}
.service-card{
  flex:0 0 min(42vw,560px) !important;
  width:min(42vw,560px) !important;
}
@media(max-width:900px){
  .service-rail{padding-right:var(--gutter) !important;gap:18px !important}
  .service-card{flex:0 0 380px !important;width:380px !important}
}
@media(max-width:600px){
  .service-viewport{width:calc(100% - 40px) !important;margin-left:20px !important;margin-right:20px !important}
  .service-rail{padding-right:20px !important;gap:14px !important}
  .service-card{flex:0 0 calc(100vw - 40px) !important;width:calc(100vw - 40px) !important}
}



