.ws-page main{max-width:1600px;margin:auto}
.ws-page figure{margin:0;min-width:0}
.ws-page h1{font-size:clamp(3rem,5.5vw,6rem);line-height:1.05;letter-spacing:-.055em;margin:0}
.ws-page h2{font-size:clamp(2.4rem,4vw,4.5rem);line-height:1.08;margin:0 0 1.5rem}
.ws-page h3{font-size:1.3rem;font-weight:500;line-height:1.4;margin:0 0 .6rem}
.ws-page p{line-height:1.7}
.ws-page [aria-current="page"]{border-bottom:1px solid currentColor}
.ws-intro{padding:6rem 5vw 4rem;display:grid;grid-template-columns:1.5fr 1fr;gap:5vw;align-items:end}
.ws-intro>p{font-size:1.125rem;color:var(--muted);max-width:30rem}
.ws-page .ws-panorama{margin:0 5vw}
.ws-panorama img{aspect-ratio:2.2;height:auto;object-fit:cover}
.ws-panorama figcaption{font-size:.875rem;color:var(--muted);margin-top:1rem}
.ws-overview{display:grid;grid-template-columns:1fr 2fr;gap:5vw;padding:5rem 5vw}
.ws-overview>div{max-width:45rem}
.ws-overview p:not(.eyebrow){color:var(--muted);max-width:38rem}
.ws-overview .text-link{display:inline-block;margin-top:1rem}
.ws-process{padding:5rem 5vw;background:var(--bone)}
.ws-heading{margin-bottom:3rem}
.ws-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem}
.ws-grid img{aspect-ratio:4/3;height:auto;object-fit:cover;margin-bottom:1.8rem}
.ws-grid p:not(.eyebrow){color:var(--muted);margin-bottom:0}
.ws-quality{padding:6rem 5vw;display:grid;grid-template-columns:1.1fr 1fr;gap:5vw;align-items:center}
.ws-quality img{aspect-ratio:4/5;height:auto;object-fit:cover}
.ws-quality p:not(.eyebrow){color:var(--muted)}
.ws-quality ul{list-style:none;margin:2rem 0 0;padding:0}
.ws-quality li{display:flex;gap:1.5rem;padding:1.3rem 0;border-top:1px solid var(--line)}
.ws-quality li>span{font-size:.875rem;color:var(--muted);padding-top:.2rem}
.ws-quality li h3{font-size:1.125rem}
.ws-quality li p{margin:0}
.ws-contact{padding:5rem 5vw 6rem;text-align:center;background:var(--bone);display:flex;flex-direction:column;align-items:center}
.ws-contact>p{max-width:38rem;color:var(--muted)}
.ws-contact .button{margin:1.2rem 0 1.8rem}
@media(max-width:900px){.ws-intro,.ws-overview,.ws-quality{grid-template-columns:minmax(0,1fr);gap:2rem}.ws-intro,.ws-overview,.ws-process,.ws-quality,.ws-contact{padding:4rem 1.25rem}.ws-page .ws-panorama{margin-inline:1.25rem}.ws-grid{gap:1.25rem}.ws-quality img{aspect-ratio:3/2}.ws-quality>div{grid-row:1}}
@media(max-width:600px){.ws-grid{grid-template-columns:minmax(0,1fr);gap:3rem}.ws-panorama img{aspect-ratio:4/3}.ws-intro h1{font-size:clamp(2.7rem,10vw,3.5rem)}.ws-contact .button{width:auto}}
