/* Homepage refinements: only the five numbered sections and hero ticker. */
main > section.intro.section-shell,
main > section.services,
main > section.work.section-shell,
main > section.automation,
main > section.proof.section-shell {
  background-color:#0a0a0a !important;
}
/* Keep the running strip visible above hero decoration on desktop and mobile. */
main > section.hero .marquee {
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  z-index:5 !important;
  width:100% !important;
  background:rgba(9,9,9,.92) !important;
  border-block-color:rgba(255,255,255,.15) !important;
}
main > section.hero .marquee-track {display:flex !important; opacity:1 !important;}
main > section.hero .marquee-track span {color:rgba(255,255,255,.9) !important;}
@media (max-width:800px) {
  /* One complete project image at a time, with swipe and arrows intact. */
  main > section.work .portfolio-slider-wrap {width:100% !important; min-width:0 !important; overflow:hidden !important;}
  main > section.work .portfolio-slider {width:100% !important; box-sizing:border-box !important; padding-inline:0 !important; scroll-padding-inline:0 !important;}
  main > section.work .portfolio-slider .project-card {
    box-sizing:border-box !important;
    flex:0 0 100% !important;
    width:100% !important;
    max-width:100% !important;
    scroll-snap-align:start !important;
  }
  /* Avoid squeezing 360° and keep the three figures on the same line. */
  main > section.proof .proof-grid {box-sizing:border-box !important; width:100% !important; max-width:390px !important;}
  main > section.proof .proof-stat {box-sizing:border-box !important; min-width:0 !important; padding-inline:3px !important;}
  main > section.proof .proof-stat strong {display:block !important; white-space:nowrap !important; direction:ltr !important; unicode-bidi:isolate !important; font-size:clamp(25px,7.6vw,34px) !important; letter-spacing:-.035em !important; text-align:center !important;}
  main > section.proof .proof-stat strong [data-cp-key] {white-space:nowrap !important; direction:ltr !important; unicode-bidi:isolate !important;}
  main > section.hero .marquee-track span {padding-block:15px !important;}
}
/* Keep the ticker's original travel speed with the expanded list. */
main > section.hero .marquee-track {animation-duration:104s !important;}
@media(max-width:800px){
  main > section.proof .proof-stat strong {
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    height:42px !important;
    line-height:1 !important;
    margin:0 !important;
    font-size:32px !important;
  }
  main > section.proof .proof-stat:first-child strong {
    font-size:clamp(25px,7vw,30px) !important;
    letter-spacing:-.055em !important;
  }
  main > section.proof .proof-stat > span {margin-top:8px !important;}
}

/* Optical alignment of the degree symbol with the adjacent numbers. */
@media(max-width:800px){main > section.proof .proof-stat:first-child strong{position:relative !important;top:9px !important;}}

/* Numbered section 04: align its marker with sections 01–03 and 05. */
main > section.automation .automation-inner {position:relative !important;}
main > section.automation .automation-copy .section-label {
  position:absolute !important;
  top:0 !important;
  right:0 !important;
  width:max-content !important;
  max-width:100% !important;
  padding:0 !important;
  margin:0 !important;
}
@media (max-width:800px) {
  main > section.automation .automation-inner {
    box-sizing:border-box !important;
    width:100% !important;
    max-width:none !important;
    padding-inline:28px !important;
  }
  main > section.automation .automation-copy .section-label {
    top:0 !important;
    right:0 !important;
  }
  main > section.automation .automation-copy {position:relative !important; padding-top:70px !important;}
  /* Center all three values in equal-height slots; adjust the glyph with degree optically. */
  main > section.proof .proof-stat strong {height:46px !important;}
  main > section.proof .proof-stat:first-child strong {
    top:0 !important;
    transform:translateY(12px) !important;
  }
}

/* Shorten the empty transitions after services and portfolio. */
@media(min-width:801px){
  main > section.services {padding-bottom:95px !important;}
  main > section.work.section-shell {padding-top:82px !important; padding-bottom:78px !important;}
  main > section.automation {padding-top:112px !important; padding-bottom:115px !important;}
  main > section.proof.section-shell {padding-top:82px !important;}
}
@media(max-width:800px){
  main > section.services {padding-bottom:52px !important;}
  main > section.work.section-shell {padding-top:54px !important; padding-bottom:52px !important;}
  main > section.automation {padding-top:62px !important; padding-bottom:75px !important;}
  main > section.proof.section-shell {padding-top:44px !important;}
}

/* Keep the chosen intro image: brighter and full viewport width on desktop. */
@media(min-width:801px){
  main > section.intro.section-shell .intro-visual {
    box-sizing:border-box !important;
    width:100vw !important;
    max-width:none !important;
    margin-inline:calc(50% - 50vw) !important;
    height:clamp(420px,38vw,610px) !important;
  }
  main > section.intro.section-shell .intro-visual > img {
    filter:saturate(1) brightness(.98) contrast(1.03) !important;
    object-fit:cover !important;
    object-position:center !important;
  }
  main > section.intro.section-shell .intro-visual::after {
    background:linear-gradient(90deg,rgba(0,0,0,.08),rgba(0,0,0,.16)) !important;
  }
}

/* v82: home hero ticker direction — run visually to the right. */
main > section.hero .marquee-track { animation-direction: reverse !important; }
