
:root{--bg:#fafaf7;--ink:#111;--grey:#6b6b6b;--line:#e5e5e5}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:18px;line-height:1.6}a{color:inherit;text-decoration:none}img{width:100%;display:block;filter:none}.wrap{width:min(1180px,90vw);margin:auto}.nav{position:sticky;top:0;z-index:20;background:rgba(250,250,247,.95);border-bottom:1px solid var(--line);backdrop-filter:blur(10px)}.navin{height:78px;display:flex;align-items:center;justify-content:space-between}.brand{font-weight:900;letter-spacing:-1px;font-size:25px}.brand span{font-weight:400}.links{display:flex;gap:26px;align-items:center;font-size:14px}.btn{display:inline-block;background:#111;color:#fff;padding:13px 21px;border:1px solid #111;font-size:14px;font-weight:700}.btn.out{background:transparent;color:#111}.hero{min-height:76vh;display:grid;grid-template-columns:1.05fr .95fr;align-items:stretch}.hero-copy{padding:11vh 7vw 8vh max(5vw,calc((100vw - 1180px)/2));display:flex;flex-direction:column;justify-content:center}.hero-img{height:76vh;object-fit:cover}.label{font-size:12px;letter-spacing:.18em;font-weight:800;margin-bottom:22px}.hero h1,.pagehead h1{font-size:clamp(54px,7.5vw,112px);line-height:.91;letter-spacing:-.055em;margin:0 0 30px;max-width:850px}.hero p,.pagehead p{font-size:21px;max-width:680px;color:#444}.actions{display:flex;gap:12px;margin-top:22px}.section{padding:100px 0;border-top:1px solid var(--line)}.intro{font-size:clamp(28px,4vw,52px);line-height:1.16;letter-spacing:-.035em;max-width:1020px;margin:auto;text-align:center}.band{display:grid;grid-template-columns:repeat(3,1fr);height:340px}.band img{height:100%;object-fit:cover}.section h2{font-size:clamp(38px,5vw,70px);line-height:1;letter-spacing:-.045em;margin:0 0 50px;max-width:850px}.grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ink);border-left:1px solid var(--ink)}.card{padding:34px;border-right:1px solid var(--ink);border-bottom:1px solid var(--ink);min-height:250px}.card small{letter-spacing:.15em;font-weight:800}.card h3{font-size:26px;line-height:1.05;margin:40px 0 15px}.card p{color:#555;font-size:16px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.stat strong{font-size:clamp(54px,7vw,95px);line-height:1;color:transparent;-webkit-text-stroke:1.5px #111}.stat p{max-width:260px}.split{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.points{display:grid;grid-template-columns:1fr 1fr;gap:35px}.point h3{margin-bottom:5px}.film{display:grid;grid-auto-flow:column;grid-auto-columns:30%;gap:12px;overflow:auto;padding-bottom:12px}.film img{height:280px;object-fit:cover}.cta{background:#111;color:#fff;padding:90px 0}.cta h2{font-size:clamp(42px,6vw,78px);line-height:1;margin:0 0 18px;letter-spacing:-.04em}.cta .btn{background:#fff;color:#111;border-color:#fff}.cta .btn.out{background:transparent;color:#fff}.footer{background:#111;color:#fff;border-top:1px solid #333;padding:45px 0;font-size:14px}.foot{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px}.pagehead{padding:110px 0 70px}.pagehead h1{font-size:clamp(50px,7vw,96px)}.service{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;padding:80px 0;border-top:1px solid var(--line)}.service:nth-child(even) .media{order:2}.service .media img{height:460px;object-fit:cover}.service h2{font-size:50px;margin:0 0 20px}.service ul{padding-left:20px}.timeline{border-left:1px dashed #777;margin-left:40px}.step{display:grid;grid-template-columns:100px 1fr 1fr;gap:35px;align-items:center;margin:0 0 70px;margin-left:-52px}.num{font-size:72px;color:var(--bg);-webkit-text-stroke:1.5px #111;background:var(--bg)}.step img{height:260px;object-fit:cover}.workgrid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.workcard{position:relative;overflow:hidden}.workcard img{height:520px;object-fit:cover;transition:.5s}.workcard:hover img{transform:scale(1.02)}.workcap{position:absolute;left:0;right:0;bottom:0;padding:28px;color:white;background:linear-gradient(transparent,rgba(0,0,0,.8))}.workcap h3{font-size:34px;margin:0}.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.gallery img{height:240px;object-fit:cover}.team{display:grid;grid-template-columns:1fr 1fr;gap:28px}.team img{height:620px;object-fit:cover}.contact{display:grid;grid-template-columns:1.3fr .7fr;gap:80px}.form{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form label{font-size:13px;font-weight:700}.form input,.form select,.form textarea{width:100%;padding:14px;border:1px solid #bbb;background:transparent;font:inherit}.full{grid-column:1/-1}.form textarea{height:150px}.mobile{display:none}.fade{opacity:0;transform:translateY(20px);transition:.6s}.fade.show{opacity:1;transform:none}@media(max-width:800px){.links{display:none}.mobile{display:block}.hero{grid-template-columns:1fr}.hero-copy{padding:80px 6vw 50px}.hero-img{height:52vh}.band{height:180px}.grid,.stats,.split,.points,.service,.team,.contact,.foot{grid-template-columns:1fr}.film{grid-auto-columns:75%}.workgrid{grid-template-columns:1fr}.gallery{grid-template-columns:1fr 1fr}.service:nth-child(even) .media{order:0}.step{grid-template-columns:70px 1fr;margin-left:-38px}.step img{grid-column:2;height:220px}.team img{height:480px}.form{grid-template-columns:1fr}.full{grid-column:auto}}

.client-line{font-size:clamp(24px,3vw,42px)!important;max-width:none!important;white-space:nowrap;letter-spacing:-.025em}
@media(max-width:800px){.client-line{font-size:clamp(18px,5.2vw,28px)!important;white-space:normal}}

/* About strip: keep Bobby in frame */
.gallery img:nth-child(2){object-position:70% center}

.team>div:nth-child(2) img{object-position:center 25%}
.client-groups{display:grid;gap:54px}.client-groups .label{margin-bottom:12px}.client-groups .client-line{margin-bottom:0;font-size:clamp(20px,2.4vw,34px)!important}.legal{max-width:850px}.legal h2{font-size:clamp(28px,3vw,42px);margin:52px 0 16px}.legal p{color:#444}.legal a{text-decoration:underline}

/* V8: keep client list on two deliberate lines */
.client-line-wrap span{display:block}
