:root { --ink:#121311; --paper:#f2f0e9; --gold:#e4c761; --line:rgba(18,19,17,.18); }
.work-main *, .project-main *, .work-footer * { box-sizing:border-box; }
body.work-page, body.project-page { margin:0; padding-top:0; background:var(--paper); color:var(--ink); font-family:"Manrope",Arial,sans-serif; }
.work-main, .project-main { max-width:1200px; margin:0 auto; padding:100px clamp(22px,4vw,64px) 80px; }
.work-hero { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr); gap:48px; align-items:end; padding:55px 0 70px; border-bottom:1px solid var(--line); }
.eyebrow { margin:0 0 22px; color:#6b6b64; font-size:12px; letter-spacing:.18em; text-transform:uppercase; }
.work-hero h1, .project-hero h1 { margin:0; font-size:clamp(64px,10vw,150px); line-height:.84; letter-spacing:-.065em; font-weight:300; }
.work-hero__copy { max-width:490px; margin:0 0 8px; font-size:clamp(18px,2vw,26px); line-height:1.45; font-weight:300; }
.work-controls { display:flex; flex-wrap:wrap; gap:10px; padding:30px 0 18px; position:sticky; top:80px; z-index:20; background:var(--paper); }
.work-controls button { border:1px solid var(--line); border-radius:0; padding:12px 18px; background:transparent; color:var(--ink); font:600 14px/1 "Manrope",sans-serif; cursor:pointer; transition:transform .15s ease,background-color .15s ease,border-color .15s ease,color .15s ease; }
.work-controls button:hover, .work-controls button.is-active { background:var(--ink); color:#fff; border-color:var(--ink); }
.work-controls button:disabled { opacity:.38; cursor:not-allowed; background:transparent; color:var(--ink); border-color:var(--line); }
.work-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:clamp(34px,4vw,64px) clamp(16px,2vw,28px); }
.work-card[hidden] { display:none; }
.work-empty { margin:48px 0 0; padding:28px 0; border-top:1px solid var(--line); color:#77776f; font-size:16px; }
.work-empty[hidden] { display:none; }
.work-card { animation:card-in .6s both; animation-delay:calc(var(--card-index) * 35ms); }
@keyframes card-in { from{opacity:0;transform:translateY(20px)} }
.work-card a { color:inherit; text-decoration:none; }
.work-card__image { aspect-ratio:3/4; overflow:hidden; background:#ddd; line-height:0; }
.work-card__image img { width:100%; height:100%; object-fit:cover; display:block; transition:transform .7s cubic-bezier(.2,.7,.2,1); }
.work-card a:hover img { transform:scale(1.025); }
.work-card__meta { display:flex; justify-content:space-between; gap:20px; padding:18px 0 0; border-top:1px solid transparent; }
.work-card__meta p { margin:0 0 6px; color:#77776f; font-size:11px; letter-spacing:.14em; text-transform:uppercase; }
.work-card__meta h2 { margin:0; font-size:clamp(20px,2vw,30px); line-height:1.1; font-weight:400; letter-spacing:-.025em; }
.work-card__meta span { color:#77776f; font-size:13px; }
.work-cta { display:grid; grid-template-columns:1fr 1fr; gap:40px; margin-top:130px; padding:70px 0 10px; border-top:1px solid var(--line); }
.work-cta h2 { margin:0; font-size:clamp(38px,6vw,82px); line-height:.95; font-weight:300; letter-spacing:-.05em; }
.work-cta div { align-self:end; }
.work-cta p { max-width:480px; font-size:18px; line-height:1.5; }
.text-link { color:inherit; text-decoration:none; border-bottom:1px solid; padding-bottom:3px; }
.project-main { padding-bottom:0; }
.project-page header.project-hero { padding:50px 0 58px; background:transparent; color:inherit; text-align:left; position:relative; z-index:auto; }
.project-back { display:inline-block; margin-bottom:70px; color:inherit; text-decoration:none; font-size:13px; }
.project-hero__grid { display:block; }
.project-page .project-hero h1 { font-size:clamp(54px,8vw,118px); margin:0; padding:0; background:transparent; color:inherit; box-shadow:none; }
.project-summary { max-width:900px; padding:0 0 clamp(58px,8vw,100px); }
.project-summary p { margin:0; color:#34342f; font-size:clamp(18px,2vw,27px); line-height:1.55; font-weight:300; }
.project-cover { margin:0 calc(clamp(22px,4vw,64px) * -1); background:#d8d6cf; line-height:0; }
.project-cover img, .project-gallery img { width:100%; height:auto; object-fit:contain; display:block; }
.project-info { display:block; padding:90px 0 110px; }
.project-info dl { max-width:760px; margin:0; display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.project-info dl div { border-top:1px solid var(--line); padding-top:13px; }
.project-info dt { color:#77776f; font-size:11px; letter-spacing:.12em; text-transform:uppercase; }
.project-info dd { margin:8px 0 0; font-size:14px; }
.project-copy { max-width:850px; padding:0 0 110px; }
.project-copy h2 { margin:52px 0 18px; font-size:clamp(25px,3vw,42px); line-height:1.15; font-weight:400; letter-spacing:-.025em; }
.project-copy h2:first-child { margin-top:0; }
.project-copy p { max-width:780px; margin:0 0 22px; color:#34342f; font-size:clamp(16px,1.55vw,20px); line-height:1.65; font-weight:300; }
.project-content-flow { display:grid; gap:clamp(18px,2vw,30px); padding:0 0 20px; }
.project-flow__copy { max-width:850px; padding:0 0 58px; }
.project-flow__copy p { max-width:780px; margin:0 0 22px; color:#34342f; font-size:clamp(16px,1.55vw,20px); line-height:1.65; font-weight:300; }
.project-flow__image, .project-flow__grid figure { margin:0; background:#ddd; line-height:0; }
.project-flow__image img, .project-flow__grid img { width:100%; height:auto; display:block; }
.project-flow__grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:clamp(12px,2vw,30px); }
.project-flow__heading { margin:62px 0 8px; font-size:clamp(25px,3vw,42px); line-height:1.15; font-weight:400; letter-spacing:-.025em; }
.project-embeds { display:grid; gap:clamp(18px,2vw,30px); margin:0 0 clamp(18px,2vw,30px); }
.project-embed { width:100%; aspect-ratio:16/9; overflow:hidden; background:#151514; }
.project-embed iframe { width:100%; height:100%; display:block; border:0; }
.project-gallery { display:grid; grid-template-columns:repeat(12,1fr); gap:clamp(12px,2vw,30px); }
.project-gallery figure { grid-column:span 12; margin:0; background:#ddd; }
.project-gallery figure:nth-child(3n+2), .project-gallery figure:nth-child(3n+3) { grid-column:span 6; }
.project-main[data-project="entertainment-room"] .project-gallery figure:nth-last-child(-n+2) { grid-column:span 6; }
.project-gallery img { height:auto; min-height:0; max-height:none; object-fit:contain; }
.next-project { margin-top:120px; padding:45px 0 60px; border-top:1px solid var(--line); }
.next-project p { margin:0 0 22px; color:#77776f; font-size:11px; letter-spacing:.14em; text-transform:uppercase; }
.next-project a { display:grid; grid-template-columns:minmax(220px,.62fr) minmax(0,1.38fr) auto; align-items:center; gap:clamp(24px,4vw,58px); color:inherit; text-decoration:none; }
.next-project__preview { aspect-ratio:3/4; margin:0; overflow:hidden; background:#ddd; line-height:0; }
.next-project__preview img { width:100%; height:100%; display:block; object-fit:cover; transition:transform .7s cubic-bezier(.2,.7,.2,1); }
.next-project__title { font-size:clamp(36px,5.5vw,78px); line-height:.98; font-weight:300; letter-spacing:-.05em; }
.next-project__arrow { align-self:start; font-size:clamp(30px,4vw,58px); line-height:1; font-weight:300; }
.next-project a:hover .next-project__preview img { transform:scale(1.025); }
.work-footer { background:#151514; color:#fff; padding:36px clamp(22px,4vw,64px); }
.work-footer__inner { max-width:1312px; margin:auto; display:flex; justify-content:space-between; gap:30px; color:#aaa; font-size:12px; }
.work-footer a { color:#fff; text-decoration:none; }
@media(max-width:1024px) and (min-width:769px){.work-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:768px){
  .work-main,.project-main{padding:80px 16px 55px}.work-hero,.project-hero__grid,.project-info,.work-cta{grid-template-columns:1fr;gap:30px}.work-hero{padding:36px 0 45px}.work-hero h1{font-size:70px}.work-controls{top:80px;overflow-x:auto;padding:22px 0 16px}.work-grid{grid-template-columns:1fr;gap:48px}.work-cta{margin-top:80px;padding-top:45px}.project-back{margin-bottom:40px}.project-page header.project-hero{padding:30px 0 40px}.project-cover{margin:0 -16px}.project-info{padding:55px 0 70px}.project-info dl{grid-template-columns:1fr}.project-gallery{display:block}.project-gallery figure{margin-bottom:14px}.project-gallery img{min-height:0}.next-project{margin-top:70px}.next-project a{grid-template-columns:1fr auto;gap:20px}.next-project__preview{grid-column:1/-1}.next-project__title{font-size:clamp(34px,11vw,54px)}.work-footer__inner{display:block}.work-footer__inner p{margin:8px 0}}
@media(max-width:768px){.project-flow__grid{grid-template-columns:1fr}.project-flow__copy{padding-bottom:36px}.project-flow__heading{margin-top:42px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
