/* Shared, quieter editorial scale. Loaded after each page's component styles. */
:root{--title-xl:clamp(52px,6.3vw,96px);--title-lg:clamp(38px,4vw,64px);--title-md:clamp(30px,3.1vw,48px)}
.team-hero h1,.s-hero h1,.p-hero h1,.p-hero--crm h1,.r-contact-side h1,.r-service-hero h1{font-size:var(--title-xl);line-height:.98}
.p-heading h1,.c-title-row h1{font-size:var(--title-lg);line-height:1.1}
.h-introduction--visual .h-intro-heading h2,.h-cinema h2,.h-final h2,.s-mode h2,.s-final h2{font-size:var(--title-lg);line-height:1.04}
.h-experience h2,.h-connected h2,.h-process h2,.r-manifesto h2,.r-collection-head h2,.r-cta h2,.r-capabilities h2,.r-engine h2,.r-other-solutions h2,.s-section-heading h2,.s-atmosphere h2,.s-cinema h2,.p-heading h2,.p-kiosk-spec h2,.p-connected h2,.p-closing h2,.p-crm-intro h2,.p-bridge-data h2,.p-crm-functions h2,.p-collection-heading h2,.p-invitation h2,.c-overview h2,.c-media-heading h2,.c-project-end h2,.c-next h2,.section-heading h2,.contact-band h2{font-size:var(--title-md);line-height:1.16}
.home-hero{position:relative;isolation:isolate;display:flex;align-items:center;min-height:max(620px,100svh);padding:calc(var(--header) + 48px) var(--pad) 64px;overflow:hidden;background:#edf0ed}
.home-hero-media{position:absolute;inset:0;z-index:-2}
.home-hero-media img,.home-hero-media video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.home-hero:after{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,#fffffff2 0%,#ffffffe3 24%,#ffffff8c 44%,#ffffff12 70%,transparent)}
.home-hero-copy{max-width:720px}
.home-hero h1{font-family:Barlow,Impact,'Arial Narrow',sans-serif;font-weight:800;font-size:var(--title-xl);line-height:.95;letter-spacing:-.025em}
.home-hero-copy>p{font-size:clamp(16px,1.25vw,20px);line-height:1.65;color:#303a34;letter-spacing:-.02em}
.home-hero .hero-rule{margin:25px 0 20px;width:64px}
.home-hero .hero-actions{margin-top:30px}
.home-hero .hero-actions .button{font-size:13px;min-height:52px}
.h-introduction.h-introduction--visual{padding-top:72px;padding-bottom:55px}
.h-intro-heading{align-items:center}
.h-intro-art{aspect-ratio:2/1;border-radius:3px}
.h-projects{padding:80px var(--pad) 85px;background:#fff}
.h-projects-heading{display:flex;justify-content:space-between;align-items:end;gap:28px;margin-bottom:38px}
.h-projects-heading h2{font-size:var(--title-md);line-height:1.16;margin-top:20px;max-width:600px}
.h-projects-heading>.text-link{flex-shrink:0}
.h-project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.h-project{min-width:0;display:block}
.h-project figure{margin:0;aspect-ratio:1.17;overflow:hidden;background:#e8ece7}
.h-project img{height:100%;transition:transform .6s cubic-bezier(.2,.7,.3,1)}
.h-project:hover img{transform:scale(1.035)}
.h-project-meta{position:relative;padding:22px 0 18px;border-bottom:1px solid var(--line)}
.h-project-meta>span:first-child{font-size:11px;color:var(--muted)}
.h-project h3{font-size:clamp(22px,2vw,30px);font-weight:500;line-height:1.2;margin:8px 0 18px}
.h-project-visit{font-size:11px;border-bottom:1px solid #aab7b0;padding-bottom:4px}
.h-project:hover .h-project-visit{border-color:var(--accent-ink);color:var(--accent-ink)}
.contact-person{font-style:normal;margin-top:8px;padding:30px 0 0;border-top:2px solid var(--accent);max-width:620px}
.contact-person-head{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px}
.contact-person .eyebrow{font-size:9px;letter-spacing:.16em;color:#536459}
.contact-person-dot{width:8px;height:8px;border-radius:50%;background:var(--accent)}
.contact-person h2{font-size:clamp(28px,2.6vw,40px);font-weight:400;letter-spacing:-.045em;line-height:1.2}
.contact-person h2 strong{font-weight:650}
.contact-person-role{font-size:13px;margin-top:9px;color:#58625b}
.contact-person-links{margin-top:28px;display:grid;gap:0}
.contact-person-links a{display:flex;align-items:baseline;justify-content:space-between;gap:18px;padding:17px 0;border-bottom:1px solid #d8dfd9}
.contact-person-links a>span{font-size:11px;color:#66736b}
.contact-person-links strong{font-weight:500;font-size:clamp(14px,1.25vw,19px);letter-spacing:-.02em}
.contact-person-links a:hover strong{color:var(--accent-ink)}
.contact-person-footer{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-top:26px}
.contact-person-footer img{width:115px;height:auto}
.contact-person-footer a{font-size:11px;color:#66736b}
.r-contact{gap:9%;padding-top:58px}
.r-contact-side h1{margin-top:25px}
.r-contact-form.contact-layout{padding-top:8px}
.team-hero{min-height:580px}
.team-hero-copy{width:62%}
@media(max-width:1000px){.h-project-grid{gap:20px}.team-hero-copy{width:78%}}
@media(max-width:700px){
 :root{--title-xl:clamp(48px,13vw,72px);--title-lg:clamp(34px,9vw,48px);--title-md:clamp(29px,7.7vw,38px)}
 .home-hero{min-height:max(600px,100svh);padding:calc(var(--header) + 38px) var(--pad) 58px}
 .home-hero:after{background:linear-gradient(90deg,#fffffff0,#ffffffce 45%,#ffffff55)}
 .home-hero-media img,.home-hero-media video{object-position:60% center}
 .home-hero .hero-actions{gap:10px;flex-wrap:wrap}
 .home-hero .hero-actions .button{padding:12px 16px;font-size:12px;min-height:49px}
 .h-introduction.h-introduction--visual{padding:52px var(--pad) 35px}
 .h-intro-art{aspect-ratio:1.3}
 .h-intro-art img{object-position:43% center}
 .h-projects{padding:52px var(--pad) 55px}
 .h-projects-heading{align-items:start;flex-direction:column;gap:18px;margin-bottom:28px}
 .h-project-grid{grid-template-columns:1fr;gap:32px}
 .h-project figure{aspect-ratio:1.45}
 .h-project-meta{padding-top:17px}
 .h-project h3{font-size:25px;margin-bottom:14px}
 .team-hero-copy{width:100%}
 .team-hero{min-height:580px}
 .r-contact{padding-top:35px;gap:55px}
 .contact-person h2{font-size:32px}
 .contact-person-links strong{font-size:15px}
 .contact-person-footer{margin-top:24px}
}
@media(prefers-reduced-motion:reduce){.h-project img{transition:none}}
