/* Homepage only: broad image stages, generous chapter spacing and quieter feature blocks. */
.home-page{--editorial-radius:clamp(18px,2.2vw,34px);--editorial-gap:clamp(15px,2vw,28px);--editorial-paper:#f5f5f7}
.home-page .home-hero{background:#fff}
.home-page #main .home-hero .hero-heading{display:block;text-align:center;padding-block:clamp(60px,6vw,105px) clamp(35px,4.4vw,68px)}
.home-page .hero-copy>.eyebrow{justify-content:center;margin-bottom:clamp(18px,2vw,26px)}
.home-page #main .home-hero h1{max-width:1180px;margin-inline:auto;font-size:clamp(2.85rem,5.35vw,5.5rem);line-height:1.04;font-weight:600;letter-spacing:-.064em;text-wrap:balance}
.home-page #main .home-hero h1 span{color:#535763}
.home-page #main .home-hero .hero-summary{margin-top:24px}
.home-page #main .home-hero .hero-summary>p:first-child{max-width:640px;margin:0 auto 24px;font-size:clamp(1rem,1.55vw,1.25rem);line-height:1.55}
.home-page .home-hero-actions{justify-content:center}
.home-page .home-hero-actions .button{border-radius:999px}
.home-hero-stage{margin-bottom:clamp(13px,2vw,27px)}
.home-hero-stage-inner{height:clamp(280px,36vw,535px);position:relative;isolation:isolate;overflow:hidden;border-radius:var(--editorial-radius);background:radial-gradient(ellipse at 50% 62%,#f8f9fc 2%,#e5e9f0 60%,#dce1e9 100%)}
.home-hero-screen{position:absolute;border:1px solid #ffffffa8;background:#242830;border-radius:clamp(8px,1.5vw,19px);padding:clamp(3px,.55vw,8px);overflow:hidden;box-shadow:0 24px 55px #151d3933,0 3px 8px #151d3926}
.home-hero-screen img{width:100%;height:100%;object-fit:cover;object-position:center top;border-radius:clamp(4px,.85vw,11px)}
.home-hero-screen--main{width:53%;aspect-ratio:1.58;left:23.5%;top:11%;z-index:2}
.home-hero-screen--left,.home-hero-screen--right{width:38%;aspect-ratio:1.42;top:22%}
.home-hero-screen--left{left:4%;transform:rotate(-6deg)}
.home-hero-screen--right{right:4%;transform:rotate(6deg)}
.home-page #work .projects{gap:var(--editorial-gap)}
.home-page #work .projects>.project{display:flex;flex-direction:column;min-width:0;background:#f3f3f5;border:0;border-radius:var(--editorial-radius)}
.home-page #work .projects>.project:nth-child(2){background:#f3ede6}
.home-page #work .project-info{justify-content:center;flex:0 0 auto;text-align:center;padding:clamp(26px,3.5vw,53px) 19px 8px}
.home-page #work .project-info h3{font-size:clamp(1.7rem,3vw,3.05rem);font-weight:600;letter-spacing:-.045em}
.home-page #work .project-info p{margin-top:7px}
.home-page #work .project-case-link{justify-content:center;margin-top:5px}
.home-page #work .project-image{margin-top:auto;border:0;border-radius:0}
.home-page #work .site-mockup{background:none;padding:clamp(12px,2.25vw,36px) clamp(22px,4.2vw,62px) clamp(23px,3vw,42px);border-radius:0;transition:transform 600ms cubic-bezier(.22,.68,.28,1)}
@media(hover:hover){.home-page #work .project:hover .site-mockup{transform:translateY(-5px) scale(1.025)}}
.home-page .problems{background:radial-gradient(ellipse at 13% 100%,#222937 0,transparent 63%),#141519}
.home-page .problem-layout{gap:clamp(44px,8vw,125px)}
.home-page #services .section-top,.home-page #included .section-top{max-width:880px;margin-inline:auto;text-align:center}
.home-page #services .section-top>.section-intro,.home-page #included .section-top>.section-intro{max-width:650px;margin-inline:auto}
.home-page #main .service-grid.three-services{gap:var(--editorial-gap)}
.home-page #main .service-grid.three-services>article{border-radius:var(--editorial-radius);border:0;box-shadow:none}
.home-page #main .service-grid.three-services>article>.number{border-bottom:0;padding-bottom:10px;min-height:35px}
.home-page #main .service-grid.three-services h3{font-weight:600;letter-spacing:-.037em;margin-top:16px}
.home-page #included .included-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--editorial-gap);border:0}
.home-page #included .included-grid article{min-width:0;min-height:210px;background:var(--editorial-paper);padding:clamp(22px,2.7vw,40px);border:0;border-radius:var(--editorial-radius)}
.home-page #included .included-grid article:is(:first-child,:last-child){grid-column:span 2}
.home-page #included .included-grid article:is(:first-child,:last-child) p{max-width:38ch}
.home-page #included .included-grid h3{font-weight:600}
.home-page #included .included-icon{background:transparent;--included-icon-surface:var(--editorial-paper)}
.home-page .process{border:0;background:var(--editorial-paper)}
.home-page .process-grid{border:0;background:none;gap:var(--editorial-gap)}
.home-page .process-grid article,.home-page .process-grid article+article{background:#fff;border:0;border-radius:var(--editorial-radius)}
.home-page .process-grid .number{border-radius:50%}
.home-page .about{grid-template-columns:minmax(0,1fr) minmax(0,.9fr);gap:20px clamp(36px,8vw,115px);align-items:end}
.home-page .about-title{grid-column:1;grid-row:1}
.home-page .about-copy{grid-column:1;grid-row:2;align-self:start;padding:0}
.home-about-portrait{grid-column:2;grid-row:1 / span 2;align-self:center;justify-self:center;width:min(100%,310px);overflow:hidden;border-radius:var(--editorial-radius);background:#162831}
.home-about-portrait img{width:100%;height:100%;aspect-ratio:1.17;object-fit:cover;object-position:center 40%}
@media(max-width:960px){
  .home-page #included .included-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .home-page #included .included-grid article:is(:first-child,:last-child){grid-column:auto}
}
@media(max-width:700px){
  .home-page #main .home-hero .hero-heading{padding-block:39px 25px}
  .home-page #main .home-hero h1{max-width:520px;font-size:clamp(2rem,8.9vw,3.5rem);line-height:1.07}
  .home-page #main .home-hero .hero-summary{margin-top:19px}
  .home-page #main .home-hero .hero-summary>p:first-child{font-size:1rem;max-width:410px;margin-bottom:20px}
  .home-hero-stage-inner{height:auto;aspect-ratio:1.64}
  .home-hero-screen--main{width:70%;left:15%;top:13%;aspect-ratio:1.39}
  .home-hero-screen--left,.home-hero-screen--right{width:55%;top:23%}
  .home-hero-screen--left{left:-10%}
  .home-hero-screen--right{right:-10%}
  .home-page #work .projects>.project:not(:first-child){display:none}
  .home-page .problem-layout{gap:30px}
  .home-page #services .section-top,.home-page #included .section-top{text-align:left}
  .home-page #services .section-top>.section-intro,.home-page #included .section-top>.section-intro{margin-inline:0}
  .home-page #included .included-grid article{min-height:0}
  .home-page .about{grid-template-columns:1fr;gap:23px}
  .home-page .about-title,.home-page .about-copy,.home-about-portrait{grid-column:auto;grid-row:auto}
  .home-about-portrait{justify-self:start;width:min(100%,210px)}
  .home-about-portrait img{aspect-ratio:1.25}
}
@media(max-width:460px){
  .home-page #included .included-grid{grid-template-columns:1fr;gap:12px}
  .home-page #included .included-grid article{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:14px;padding:19px}
  .home-page #included .included-grid .included-icon{grid-row:1 / span 2;margin:0}
  .home-page #main #included .included-grid h3{margin:0 0 5px}
  .home-page #included .included-grid p{grid-column:2}
}

/* The static hero showcase now leads straight into reviews. */
.home-page .home-hero-stage{margin-bottom:0}
.home-page #reviews{padding-top:clamp(34px,5.5vw,82px)}
.home-page #reviews + .home-selected-work{padding-top:clamp(48px,6vw,92px)}
