/* Orqa editorial refinement: shared across the main site. */
body.refresh{}
body.refresh h1,body.refresh h2{font-family:QuicksandLight,Quicksand,sans-serif;font-weight:400;text-transform:uppercase;letter-spacing:.025em;line-height:1.08}
body.refresh h1{font-size:clamp(48px,6.8vw,94px)}
body.refresh h2{font-size:clamp(34px,4.4vw,58px)}
body.refresh h3{font-size:25px;letter-spacing:-.025em}
body.refresh .eyebrow{font-size:11px;letter-spacing:.2em;text-transform:uppercase;font-weight:700}
body.refresh .intro{max-width:760px;font-size:clamp(18px,1.7vw,22px);line-height:1.65}
body.refresh .section{padding-top:88px;padding-bottom:88px}
body.refresh .section-heading{margin-bottom:42px}
body.refresh .card{border-top:1px solid var(--line);border-radius:0;padding:28px 0;}
body.refresh .cards{gap:38px}
body.refresh .card p{font-size:16px;line-height:1.8}
body.refresh .number{font-size:12px;letter-spacing:.14em;}
body.refresh .button{border-radius:3px;transition:background .3s,color .3s,transform .3s}
body.refresh .button:hover{transform:translateY(-2px)}
body.refresh .proof{border-block:1px solid var(--line);border-radius:0}
body.refresh .cta{border-radius:0;padding-top:68px;padding-bottom:68px;margin-block:55px}
body.refresh .cta h2,body.refresh .cta .eyebrow{}
body.refresh .cta .button{}
body.refresh .website-grid{gap:60px 36px}
body.refresh .website-card{border:0;border-radius:0;overflow:visible}
body.refresh .browser-frame{border-radius:0;}
body.refresh .browser-bar{border-radius:0;font-size:10px;letter-spacing:.03em}
body.refresh .website-card .browser-frame img{width:100%;height:auto;aspect-ratio:2048/1242;object-fit:cover;object-position:top;border-radius:0}
body.refresh .website-card-label{padding:20px 0 0;border-top:1px solid var(--line);margin-top:14px}
body.refresh .website-card-label h2{font-size:29px;line-height:1.17;margin-top:6px}
body.refresh .website-card-label>span{font-size:10px;letter-spacing:.16em;text-transform:uppercase}
body.refresh .project-visual,body.refresh .project-visual img{border-radius:0}
body.refresh .project-label{border-top:1px solid var(--line);padding-top:18px;margin-top:14px}
body.refresh .guide-image{display:block;margin-bottom:26px;overflow:hidden;border-radius:0}
body.refresh .guide-image img{display:block;width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:0;transition:transform .6s}
body.refresh .guide-image:hover img{transform:scale(1.035)}
body.refresh .article-cover img{border-radius:0;max-height:none;aspect-ratio:3/2;object-fit:cover}
body.refresh .article-contents,body.refresh .article-next{border-radius:0}
.editorial-article{padding-top:55px;padding-bottom:90px}
.editorial-article header{max-width:960px;margin:60px auto 40px}
.editorial-article h1{max-width:960px}
.editorial-article .intro{margin-top:28px}
.editorial-cover{margin:0 0 65px}.editorial-cover img{width:100%;aspect-ratio:3/2;object-fit:cover;display:block}
.editorial-prose{max-width:740px;margin:auto;font-size:18px;line-height:1.9}
.editorial-prose section{margin-block:48px}.editorial-prose h2{font-size:36px;margin-bottom:24px}
.editorial-prose .article-next{margin-bottom:40px}.editorial-prose .article-next h2{font-size:34px}
@media(min-width:1000px){body.refresh .website-grid .website-card:nth-child(4n+2){margin-top:65px}}
@media(max-width:700px){body.refresh .section{padding-block:52px}body.refresh .cards{gap:25px}body.refresh .website-grid{gap:38px}body.refresh .cta{padding-block:40px}body.refresh .website-card-label h2{font-size:27px}.editorial-article header{margin-block:34px}.editorial-cover{margin-bottom:35px}.editorial-prose{font-size:17px}.editorial-prose h2{font-size:30px}}
@media(prefers-reduced-motion:reduce){body.refresh .guide-image img,body.refresh .button{transition:none}}
/* v13: genuine light face and tighter, responsive editorial headings. */
@font-face{font-family:Quicksand;src:url('/fonts/quicksand-light-webfont.woff') format('woff');font-style:normal;font-weight:300;font-display:swap}
@font-face{font-family:QuicksandLight;src:url('/fonts/quicksand-light-webfont.woff') format('woff');font-style:normal;font-weight:300;font-display:swap}
body.refresh h1,body.refresh h2,body.refresh h1{font-size:clamp(44px,5.7vw,86px);max-width:1160px;width:100%}
body.refresh h2{letter-spacing:-.045em;line-height:1.06}
body.refresh .hero-copy{min-width:0}
body.refresh .hero-home h1{max-width:none;line-height:.98;letter-spacing:-.065em}
body.refresh .hero-home .intro{max-width:850px}
body.refresh .editorial-article header{max-width:1120px}
body.refresh .editorial-article h1{max-width:1120px}
@media(min-width:1100px){body.refresh .hero-home{max-width:1440px;grid-template-columns:minmax(0,1.9fr) minmax(280px,1fr);gap:36px}body.refresh .hero-home .orbit-stage{min-width:0}}
@media(min-width:701px) and (max-width:1099px){body.refresh .hero-home{grid-template-columns:minmax(0,1.65fr) minmax(230px,1fr);gap:24px}body.refresh .hero-home h1{font-size:clamp(44px,5.8vw,64px)}}
@media(max-width:700px){body.refresh h1{font-size:clamp(36px,9vw,58px);letter-spacing:-.05em;line-height:1.04}body.refresh h2{letter-spacing:-.04em;line-height:1.08}body.refresh .hero-home h1{font-size:clamp(34px,8.6vw,58px);letter-spacing:-.06em;line-height:1.03}body.refresh .hero-home{display:flex;gap:24px}}
/* v14: wider pages, full-width sticky header, aligned preview grids. */
body.refresh .wrap{max-width:1440px}
body.refresh .site-header{position:sticky;top:0;width:100%;max-width:none;margin:0;border-radius:0;padding-inline:max(32px,calc((100% - 1344px)/2))}
body.refresh .website-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:48px 32px;align-items:start}
body.refresh .website-grid .website-card:nth-child(n){margin-top:0}
body.refresh .website-teaser>.website-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-width:none;width:100%;gap:40px}
body.refresh .website-teaser>h2{max-width:1050px}
body.refresh .collection-hero h1{max-width:1150px}
body.refresh .website-card-label h2{font-size:clamp(23px,2vw,29px);line-height:1.12;letter-spacing:-.035em;overflow-wrap:normal}
body.refresh .website-card .browser-frame img{display:block;width:100%;height:auto;aspect-ratio:2048/1242;object-fit:cover;object-position:top}
body.refresh .website-collection{padding-top:24px}
@media(max-width:1000px){body.refresh .website-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 24px}body.refresh .site-header{padding-inline:24px}}
@media(max-width:700px){body.refresh .wrap{padding-inline:24px}body.refresh .website-grid,body.refresh .website-teaser>.website-grid{grid-template-columns:minmax(0,1fr);gap:36px}body.refresh .site-header{padding-inline:24px}body.refresh .website-card-label h2{font-size:26px}}

/* v15: full-width work rail with a real content gutter; three-card teasers. */
body.refresh .work-section.wrap{width:100%;max-width:none;margin-inline:0;padding-inline:max(32px,calc((100% - 1344px)/2));overflow:hidden}
body.refresh .work-section .rail-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:32px;width:100%}
body.refresh .work-section .rail-heading>div:first-child{flex:1;min-width:0}
body.refresh .work-section .rail-heading h2{max-width:100%;width:auto}
body.refresh .work-section .rail-controls{flex:0 0 auto}
body.refresh .work-section .project-rail{width:100%;min-width:0}
body.refresh .work-section .project-slide{flex:0 0 calc((100% - 60px)/3);min-width:0}
body.refresh .website-teaser>.website-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}
body.refresh blockquote{font-family:Quicksand,sans-serif;font-weight:400;font-synthesis:weight;text-transform:none;letter-spacing:normal;line-height:1.6}
body.refresh blockquote cite{font-family:Quicksand,sans-serif;font-size:14px;font-weight:400;font-style:normal;text-transform:none;letter-spacing:normal;line-height:1.6}
@media(max-width:1000px){body.refresh .work-section .project-slide{flex-basis:calc((100% - 30px)/2)}body.refresh .website-teaser>.website-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){body.refresh .work-section.wrap{padding-inline:24px}body.refresh .work-section .rail-heading{align-items:center;gap:16px}body.refresh .work-section .rail-heading h2{font-size:clamp(28px,7vw,40px)}body.refresh .work-section .project-slide{flex-basis:85%}body.refresh .website-teaser>.website-grid{grid-template-columns:minmax(0,1fr)}}

/* v16: original section typography; uppercase only for the page title. */
body.refresh h1{font-family:QuicksandLight,Quicksand,sans-serif;font-weight:300;text-transform:uppercase;letter-spacing:-.055em;line-height:1.12}
body.refresh h2{font-family:Quicksand,sans-serif;font-weight:400;text-transform:none;letter-spacing:-.04em;line-height:1.12}
body.refresh h3{font-family:Quicksand,sans-serif;font-weight:400;text-transform:none;font-size:26px;letter-spacing:normal;line-height:1.3}
body.refresh .website-card-label h2{font-family:Quicksand,sans-serif;font-size:23px;line-height:1.3;letter-spacing:-.025em;text-transform:none}
body.refresh .work-section .rail-heading h2{font-size:clamp(33px,4.3vw,56px)}
body.refresh .hero-copy,body.refresh .cards>*,body.refresh .split-copy>*,body.refresh .website-grid>*,body.refresh .place-section>*,body.refresh .footer-grid>*{min-width:0}
@media(max-width:700px){
 html{overflow-x:clip}
 body.refresh{width:100%;max-width:100%;overflow-x:clip}
 body.refresh main,body.refresh .wrap{min-width:0;max-width:100%;box-sizing:border-box}
 body.refresh .site-header{width:100%;max-width:100%;box-sizing:border-box;gap:14px}
 body.refresh .site-header .brand{max-width:calc(100% - 90px)}
 body.refresh .hero-home{display:flex;flex-direction:column;align-items:stretch;gap:24px;max-width:100%;overflow-x:clip}
 body.refresh .hero-copy,body.refresh .hero-home h1{width:100%;max-width:100%;min-width:0}
 body.refresh h1{font-size:clamp(34px,8.5vw,58px);overflow-wrap:break-word}
 body.refresh .hero-home h1{font-size:clamp(34px,8.5vw,58px);line-height:1.08;letter-spacing:-.055em}
 body.refresh h2{font-size:clamp(29px,7.4vw,40px);letter-spacing:-.04em;line-height:1.12;overflow-wrap:break-word}
 body.refresh h3{font-size:24px;line-height:1.3}
 body.refresh .cards,body.refresh .split-copy,body.refresh .place-section,body.refresh .contact-grid{grid-template-columns:minmax(0,1fr);gap:28px}
 body.refresh .actions{width:100%;min-width:0;gap:14px}
 body.refresh .actions .button,body.refresh .button-large,body.refresh .service-switch{width:100%;min-width:0;max-width:100%;white-space:normal;box-sizing:border-box;gap:16px}
 body.refresh .award-lockup{width:100%;max-width:100%;grid-template-columns:minmax(75px,100px) minmax(0,1fr) auto;gap:12px}
 body.refresh .award-lockup>*{min-width:0}
 body.refresh .hero-home .orbit-stage{position:relative;width:100%;max-width:360px;min-width:0;min-height:0;height:auto;aspect-ratio:1;margin:24px auto 34px;padding:0;align-self:center;flex:none}
 body.refresh .orbit-stage .orbit-main{width:69%;height:auto;aspect-ratio:1;border-radius:50%;top:8%;left:7%;bottom:auto;right:auto}
 body.refresh .orbit-stage .orbit-small{width:35%;height:auto;aspect-ratio:1;border-radius:50%;right:4%;bottom:8%}
 body.refresh .orbit-stage .orbit-photo img{display:block;width:100%;height:100%;max-width:100%;object-fit:cover;border-radius:50%}
 body.refresh .orbit-stage .orbit-ring{height:auto;aspect-ratio:1;border-radius:50%;box-sizing:border-box}
 body.refresh .orbit-stage .ring-one{width:90%;left:5%;top:3%}
 body.refresh .orbit-stage .ring-two{width:72%;left:18%;top:17%}
 body.refresh .orbit-visit{max-width:calc(100% - 24px);box-sizing:border-box;white-space:normal;font-size:12px;padding:14px 18px;left:12px;right:auto;bottom:0}
 body.refresh .orbit-note{font-size:10px;right:10%;top:0}
 body.refresh .work-section .rail-heading{flex-wrap:wrap;align-items:flex-start}
 body.refresh .work-section .rail-heading>div:first-child{flex-basis:100%}
 body.refresh .work-section .rail-heading h2{font-size:clamp(29px,7.4vw,40px)}
 body.refresh .work-section .project-rail{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}
 body.refresh .project-slide{min-width:0}
 body.refresh img,body.refresh video{max-width:100%}
 body.refresh .article-tools{flex-wrap:wrap;gap:8px}
 body.refresh .editorial-prose,body.refresh .article-styled{min-width:0;overflow-wrap:anywhere}
}

/* v17: balanced content sections and slow, continuous interaction. Main site only. */
body.refresh .cta{padding-block:54px;margin-block:28px}
body.refresh .cta h2{font-size:clamp(32px,3.8vw,52px);line-height:1.2;max-width:1000px;margin:0 auto 24px}
body.refresh .place-section{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:64px;padding-block:65px}
body.refresh .place-section .malvern-circle{width:100%;max-width:410px;justify-self:center;display:block}
body.refresh .place-section h2{font-size:clamp(32px,3.8vw,52px);line-height:1.2}
body.refresh .button,body.refresh .nav-cta{transform:none!important;transition:background-color .6s ease,color .6s ease,border-color .6s ease,box-shadow .7s ease!important}
body.refresh .button:hover,body.refresh .nav-cta:hover,body.refresh .button:active,body.refresh .nav-cta:active{transform:none!important;box-shadow:0 10px 30px #28426c20}
body.refresh .button:before,body.refresh .nav-cta:before{border-radius:0;inset:0;transform:none;opacity:0;transition:opacity .65s ease!important}
body.refresh .button:hover:before,body.refresh .nav-cta:hover:before{transform:none;opacity:1}
body.refresh .button:after,body.refresh .nav-cta:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(110deg,transparent 10%,#ffffff20 45%,transparent 75%);background-size:220% 100%;background-position:180% 0;opacity:0;transition:background-position 1.1s ease,opacity .65s ease!important}
body.refresh .button:hover:after,body.refresh .nav-cta:hover:after{background-position:-80% 0;opacity:1}
body.refresh .button .orqa-chevron,body.refresh .nav-cta .orqa-chevron{transition:transform .7s cubic-bezier(.2,.65,.3,1),opacity .6s ease!important}
body.refresh .button:hover .orqa-chevron,body.refresh .nav-cta:hover .orqa-chevron{transform:translateX(5px);opacity:.8}
body.refresh .browser-frame,body.refresh .website-card:hover .browser-frame{transform:none;transition:box-shadow .7s ease,border-color .6s ease!important}
body.refresh .project-slide img,body.refresh .guide-image img,body.refresh .orbit-photo img{transition:transform .9s cubic-bezier(.2,.65,.3,1),opacity .6s ease!important}
body.refresh .project-slide:hover img,body.refresh .guide-image:hover img,body.refresh .orbit-photo:hover img{transform:scale(1.025)}
@media(max-width:700px){body.refresh .cta{padding-block:38px;margin-block:20px}body.refresh .cta h2{font-size:32px;line-height:1.2}body.refresh .place-section{grid-template-columns:minmax(0,1fr);gap:30px;padding-block:45px}body.refresh .place-section .malvern-circle{max-width:270px}body.refresh .place-section h2{font-size:32px;line-height:1.2}}
@media(prefers-reduced-motion:reduce){body.refresh .button:after,body.refresh .nav-cta:after{display:none}body.refresh .button:hover .orqa-chevron,body.refresh .nav-cta:hover .orqa-chevron,body.refresh .project-slide:hover img,body.refresh .guide-image:hover img,body.refresh .orbit-photo:hover img{transform:none!important}}
