
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;1,400;1,500&family=Inter:wght@300;400;500;600&display=swap');
:root{--wine:#1E0910;--wine2:#321019;--card:#40151f;--paper:#F3EEE6;--paper2:#E7DED2;--gold:#B79A4A;--gold2:#C8B274;--muted:#A58E93;--muted2:#C4B1B3;--line:rgba(233,223,210,.13);--lined:rgba(30,9,16,.16);--max:1500px;--serif:'Cormorant Garamond',Georgia,serif;--sans:'Inter',Arial,sans-serif}
*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;background:var(--wine)}body{font-family:var(--sans);background:var(--wine);color:var(--paper);-webkit-font-smoothing:antialiased;overflow-x:hidden}body.light{background:var(--paper);color:var(--wine)}a{color:inherit}img{width:100%;display:block}button,input,textarea,select{font:inherit}::selection{background:var(--gold);color:var(--wine)}
.progress{position:fixed;top:0;left:0;width:0;height:2px;background:var(--gold);z-index:500}.preloader{position:fixed;inset:0;z-index:1000;background:#09060a;display:grid;place-items:center;transition:.65s}.preloader.hide{opacity:0;visibility:hidden}.preloader img{width:105px;height:105px;object-fit:cover;border-radius:50%;animation:pulse 1.7s infinite}.preloader span{display:block;margin-top:17px;text-align:center;font-size:8px;letter-spacing:.34em;text-transform:uppercase;color:#8e8184}@keyframes pulse{50%{transform:scale(.96);opacity:.65}}
.nav{position:fixed;z-index:300;top:0;left:0;right:0;height:78px;padding:0 34px;display:flex;align-items:center;justify-content:space-between;transition:.35s}.nav.scrolled{height:66px;background:rgba(30,9,16,.91);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;text-decoration:none}.brand img{width:39px;height:39px;object-fit:cover;border-radius:50%}.brand span{font-size:10px;letter-spacing:.27em;text-transform:uppercase}.nav-links{display:flex;align-items:center;gap:26px}.nav-links a{font-size:8px;letter-spacing:.2em;text-transform:uppercase;text-decoration:none;color:var(--muted2);transition:.25s}.nav-links a:hover,.nav-links a.active{color:var(--paper)}.nav-links .contact-link{border-bottom:1px solid var(--gold);padding-bottom:5px;color:var(--paper)}.menu{display:none;background:none;border:0;color:var(--paper);font-size:23px}
.hero{height:100svh;min-height:680px;position:relative;background:#09060a;overflow:hidden}.triptych{position:absolute;inset:0;display:grid;grid-template-columns:1.05fr .9fr 1.05fr;gap:1px;background:rgba(255,255,255,.14)}.hero-panel{position:relative;overflow:hidden;background:#1b1115}.hero-panel img{position:absolute;inset:0;height:100%;object-fit:cover;opacity:0;transform:scale(1.06);transition:opacity 1.25s,transform 8s linear}.hero-panel img.active{opacity:1;transform:scale(1)}.hero-panel:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(14,5,9,.13),rgba(14,5,9,.13) 45%,rgba(14,5,9,.62))}.hero-overlay{position:absolute;z-index:5;inset:0;display:flex;flex-direction:column;justify-content:space-between;padding:120px 5vw 40px;background:linear-gradient(90deg,rgba(20,6,11,.44),transparent 52%)}.hero-kicker,.eyebrow{font-size:8px;letter-spacing:.31em;text-transform:uppercase;color:var(--gold2)}.hero-kicker{display:flex;align-items:center;gap:14px}.hero-kicker:before{content:"";width:70px;height:1px;background:var(--gold)}.hero-copy{max-width:1050px}.hero h1{font:400 italic clamp(68px,9.2vw,154px)/.78 var(--serif);letter-spacing:-.045em}.hero h1 span{display:block;margin-left:6vw}.hero-sub{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-top:36px;padding-top:22px;border-top:1px solid rgba(255,255,255,.3)}.hero-sub p{max-width:560px;font-size:13px;line-height:1.75;color:#d2c4c4}.actions{display:flex;gap:12px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:45px;padding:0 18px;border:1px solid rgba(243,238,230,.5);font-size:8px;letter-spacing:.19em;text-transform:uppercase;text-decoration:none;transition:.25s}.btn.gold{border-color:var(--gold);color:var(--gold2)}.btn.solid{background:var(--paper);color:var(--wine);border-color:var(--paper)}.btn:hover{transform:translateY(-2px);background:var(--paper);color:var(--wine)}.hero-index{position:absolute;z-index:6;right:24px;top:50%;transform:translateY(-50%);font-size:7px;letter-spacing:.2em;text-transform:uppercase;writing-mode:vertical-rl;color:#c2b2b4}.scroll-line{position:absolute;z-index:6;bottom:0;left:50%;width:1px;height:58px;background:linear-gradient(var(--gold),transparent)}
.section{padding:118px 5vw;border-top:1px solid var(--line)}.inner{max-width:var(--max);margin:auto}.display{font:400 italic clamp(46px,6.4vw,100px)/.92 var(--serif);letter-spacing:-.035em}.intro-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:90px;align-items:end}.intro-copy{font-size:14px;line-height:1.9;color:var(--muted2);max-width:620px}.capabilities{margin-top:70px;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.capability{padding:27px 22px;min-height:170px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.capability small{font-size:7px;letter-spacing:.2em;color:var(--gold)}.capability h3{font:400 italic 27px var(--serif);margin:14px 0 8px}.capability p{font-size:10.5px;line-height:1.65;color:var(--muted)}
.work-head{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:62px}.work-head p{font-size:12px;line-height:1.75;color:var(--muted);max-width:470px}.work-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:18px}.work-card{position:relative;text-decoration:none;overflow:hidden;background:#12080c;min-height:560px;border:1px solid var(--line)}.work-card:nth-child(1),.work-card:nth-child(4),.work-card:nth-child(7){grid-column:span 7}.work-card:nth-child(2),.work-card:nth-child(3),.work-card:nth-child(5),.work-card:nth-child(6),.work-card:nth-child(8){grid-column:span 5}.work-card img{position:absolute;inset:0;height:100%;object-fit:cover;transition:.8s}.work-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 34%,rgba(20,5,10,.87))}.work-card:hover img{transform:scale(1.035)}.work-info{position:absolute;z-index:2;left:24px;right:24px;bottom:23px}.work-meta{font-size:7px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold2)}.work-info h3{font:400 italic clamp(34px,4vw,62px)/.95 var(--serif);margin-top:9px}.work-info p{font-size:10px;color:#c3b4b6;margin-top:11px;max-width:520px;line-height:1.6}.work-arrow{position:absolute;z-index:3;right:20px;top:20px;width:34px;height:34px;border:1px solid rgba(255,255,255,.38);display:grid;place-items:center}.work-card:hover .work-arrow{background:var(--paper);color:var(--wine)}
.case-section{background:var(--paper);color:var(--wine)}.case-section .eyebrow{color:#826b2e}.case-list{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:55px}.case-card{display:flex;flex-direction:column;background:#fff;text-decoration:none;border:1px solid var(--lined);transition:.25s}.case-card:hover{transform:translateY(-5px)}.case-card figure{aspect-ratio:4/5;overflow:hidden}.case-card img{height:100%;object-fit:cover;transition:.7s}.case-card:hover img{transform:scale(1.025)}.case-copy{padding:25px}.case-copy small{font-size:7px;letter-spacing:.19em;text-transform:uppercase;color:#8e7441}.case-copy h3{font:400 italic 34px/1 var(--serif);margin-top:12px}.case-copy p{font-size:10.5px;line-height:1.65;color:#73676a;margin-top:13px}.case-cta{display:inline-block;margin-top:20px;padding-bottom:5px;border-bottom:1px solid #a58543;font-size:7px;letter-spacing:.17em;text-transform:uppercase}
.more-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line)}.more-item{position:relative;min-height:560px;overflow:hidden;background:var(--wine)}.more-item img{position:absolute;inset:0;height:100%;object-fit:cover;transition:.7s}.more-item:hover img{transform:scale(1.035)}.more-item:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(20,4,9,.9))}.more-item div{position:absolute;z-index:2;left:22px;right:22px;bottom:22px}.more-item small{font-size:7px;letter-spacing:.18em;color:var(--gold2);text-transform:uppercase}.more-item h3{font:400 italic 37px var(--serif);margin-top:7px}
.about{background:var(--wine2)}.about-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px;align-items:center}.about-copy p{font-size:13px;line-height:1.9;color:var(--muted2);margin-top:28px;max-width:650px}.about-images{display:grid;grid-template-columns:1.1fr .9fr;gap:8px}.about-images img{height:610px;object-fit:cover}.about-images img:nth-child(2){height:430px;margin-top:90px}.credentials{margin-top:70px;padding-top:35px;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1.3fr;gap:55px;align-items:center}.cert-card{display:grid;grid-template-columns:150px 1fr;gap:22px;align-items:center}.cert-card img{height:105px;object-fit:cover;object-position:left top;border:1px solid var(--line)}.cert-card h4{font:400 italic 24px var(--serif)}.cert-card p{font-size:10px;color:var(--muted);line-height:1.65;margin-top:7px}.cert-card a{display:inline-block;margin-top:12px;font-size:7px;letter-spacing:.17em;text-transform:uppercase;color:var(--gold2)}
.cta{background:var(--gold);color:var(--wine);padding:95px 5vw}.cta-in{max-width:var(--max);margin:auto;display:flex;align-items:end;justify-content:space-between;gap:50px}.cta h2{font:400 italic clamp(58px,8vw,126px)/.82 var(--serif)}.cta p{max-width:430px;font-size:12px;line-height:1.75;margin-bottom:24px}.cta .btn{border-color:var(--wine);color:var(--wine)}.cta .btn:hover{background:var(--wine);color:var(--paper)}
.footer{padding:48px 34px;background:#0d0508;border-top:1px solid var(--line)}.footer-grid{max-width:var(--max);margin:auto;display:grid;grid-template-columns:1fr auto;gap:40px;align-items:end}.footer-brand{display:flex;align-items:center;gap:18px}.footer-brand img{width:74px;height:74px;object-fit:cover}.footer-brand b{font-size:10px;letter-spacing:.27em;text-transform:uppercase}.footer-brand p{font-size:7px;letter-spacing:.17em;text-transform:uppercase;color:#77696d;margin-top:8px}.footer-links{display:flex;gap:22px;flex-wrap:wrap;justify-content:flex-end}.footer-links a{font-size:7px;letter-spacing:.18em;text-transform:uppercase;text-decoration:none;color:#96878a}.disclaimer{max-width:var(--max);margin:30px auto 0;padding-top:18px;border-top:1px solid var(--line);font-size:8px;line-height:1.7;color:#65585c}
.page-hero{min-height:72vh;padding:145px 5vw 70px;display:flex;align-items:end;border-bottom:1px solid var(--line)}.page-hero-in{max-width:var(--max);width:100%;margin:auto}.page-hero h1{font:400 italic clamp(72px,10vw,150px)/.77 var(--serif)}.page-hero p{max-width:650px;font-size:13px;line-height:1.85;color:var(--muted2);margin-top:34px}.light-hero{background:var(--paper);color:var(--wine);border-color:var(--lined)}.light-hero p{color:#75676a}.archive{padding:90px 5vw}.archive-in{max-width:var(--max);margin:auto}.archive-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.archive-card{position:relative;min-height:570px;overflow:hidden;text-decoration:none;background:#16090e}.archive-card img{position:absolute;inset:0;height:100%;object-fit:cover;transition:.7s}.archive-card:hover img{transform:scale(1.03)}.archive-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 38%,rgba(20,4,9,.88))}.archive-copy{position:absolute;z-index:2;left:22px;right:22px;bottom:22px}.archive-copy small{font-size:7px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold2)}.archive-copy h3{font:400 italic 39px/.95 var(--serif);margin-top:8px}
.project-hero{min-height:100svh;position:relative;display:flex;align-items:end;overflow:hidden;background:#0b0508}.project-hero>img{position:absolute;inset:0;height:100%;object-fit:cover}.project-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,5,10,.12),rgba(20,5,10,.87))}.project-copy{position:relative;z-index:2;width:100%;padding:150px 5vw 55px}.project-copy-in{max-width:var(--max);margin:auto}.project-hero h1{font:400 italic clamp(73px,10vw,155px)/.75 var(--serif)}.project-hero h1 span{display:block;font-size:.48em;margin-top:17px;color:#d5c2c3}.project-meta{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.tag{border:1px solid rgba(255,255,255,.28);padding:7px 10px;font-size:7px;letter-spacing:.15em;text-transform:uppercase}.project-intro{background:var(--paper);color:var(--wine);padding:85px 5vw}.project-intro-in{max-width:var(--max);margin:auto;display:grid;grid-template-columns:.8fr 1.2fr;gap:90px}.project-intro h2{font:400 italic 53px/.95 var(--serif)}.project-intro p{font-size:14px;line-height:1.9;color:#6d6063;max-width:760px}.project-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.project-actions .btn{border-color:var(--wine);color:var(--wine)}.project-actions .btn:hover{background:var(--wine);color:var(--paper)}.drive-link[aria-disabled=true]{opacity:.45;pointer-events:none}.gallery{padding:2px;display:grid;grid-template-columns:repeat(12,1fr);gap:2px}.gallery figure{overflow:hidden;background:#10070a;min-height:600px}.gallery figure:nth-child(6n+1),.gallery figure:nth-child(6n+4){grid-column:span 7}.gallery figure:nth-child(6n+2),.gallery figure:nth-child(6n+3),.gallery figure:nth-child(6n+5),.gallery figure:nth-child(6n+6){grid-column:span 5}.gallery img{height:100%;object-fit:cover;transition:.7s}.gallery figure:hover img{transform:scale(1.02)}.project-next{padding:90px 5vw;background:var(--wine2)}.project-next-in{max-width:var(--max);margin:auto;display:flex;justify-content:space-between;align-items:end;gap:40px}.project-next a{text-decoration:none}.project-next h3{font:400 italic 55px var(--serif)}
.about-page{max-width:var(--max);margin:auto;display:grid;grid-template-columns:.9fr 1.1fr;gap:90px}.about-page p{font-size:14px;line-height:1.9;color:#6e6264;margin-bottom:22px}.services{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--lined);border-left:1px solid var(--lined)}.service{padding:28px;min-height:190px;border-right:1px solid var(--lined);border-bottom:1px solid var(--lined)}.service small{font-size:7px;letter-spacing:.18em;color:#8c7236}.service h3{font:400 italic 28px var(--serif);margin:13px 0}.service p{font-size:10px;line-height:1.7;color:#75696b}.contact-grid{max-width:var(--max);margin:auto;display:grid;grid-template-columns:.75fr 1.25fr;gap:90px}.contact-details h2{font:400 italic 65px/.9 var(--serif)}.contact-details p{font-size:12px;line-height:1.8;color:#786a6c;margin:25px 0}.contact-details a{display:block;padding:14px 0;border-bottom:1px solid var(--lined);font-size:8px;letter-spacing:.16em;text-transform:uppercase;text-decoration:none}.form{display:grid;grid-template-columns:1fr 1fr;gap:20px}.field{display:flex;flex-direction:column;gap:8px}.field.full{grid-column:1/-1}.field label{font-size:7px;letter-spacing:.18em;text-transform:uppercase;color:#76696b}.field input,.field select,.field textarea{border:0;border-bottom:1px solid rgba(30,9,16,.35);background:transparent;padding:13px 0;outline:none;color:var(--wine);border-radius:0}.field textarea{min-height:130px;resize:vertical}.form button{grid-column:1/-1;justify-self:start;border:0;background:var(--wine);color:var(--paper);padding:16px 22px;font-size:8px;letter-spacing:.18em;text-transform:uppercase}.form-note{grid-column:1/-1;font-size:9px;line-height:1.65;color:#817477}
@media(max-width:1050px){.nav-links{position:fixed;inset:66px 0 auto;background:rgba(30,9,16,.98);padding:28px 24px;display:none;flex-direction:column;align-items:flex-start}.nav-links.open{display:flex}.menu{display:block}.triptych{grid-template-columns:1fr 1fr}.hero-panel:nth-child(3){display:none}.intro-grid,.about-grid,.credentials,.project-intro-in,.about-page,.contact-grid{grid-template-columns:1fr;gap:48px}.capabilities{grid-template-columns:1fr 1fr}.work-card:nth-child(n){grid-column:span 6}.case-list,.archive-grid{grid-template-columns:1fr 1fr}.more-strip{grid-template-columns:1fr}.about-images img{height:520px}.services{grid-template-columns:1fr 1fr}}
@media(max-width:680px){.nav{padding:0 18px}.brand span{font-size:9px}.hero{min-height:720px}.triptych{grid-template-columns:1fr}.hero-panel:not(:first-child){display:none}.hero-overlay{padding:105px 20px 28px;background:linear-gradient(180deg,rgba(20,6,11,.15),rgba(20,6,11,.72))}.hero h1{font-size:67px;line-height:.82}.hero h1 span{margin-left:0}.hero-sub{align-items:flex-start;flex-direction:column}.section{padding:84px 20px}.display{font-size:56px}.capabilities{grid-template-columns:1fr}.work-head{align-items:flex-start;flex-direction:column}.work-grid{display:block}.work-card{min-height:72vh;margin-bottom:12px}.case-list,.archive-grid{grid-template-columns:1fr}.more-item{min-height:68vh}.about-images{grid-template-columns:1fr}.about-images img,.about-images img:nth-child(2){height:62vh;margin:0}.cert-card{grid-template-columns:1fr}.cert-card img{height:180px}.cta{padding:80px 20px}.cta-in{align-items:flex-start;flex-direction:column}.footer{padding:42px 20px}.footer-grid{grid-template-columns:1fr}.footer-links{justify-content:flex-start}.page-hero{padding:125px 20px 65px}.page-hero h1{font-size:70px}.archive{padding:70px 20px}.project-copy{padding:130px 20px 35px}.project-hero h1{font-size:69px}.project-intro{padding:70px 20px}.project-intro h2{font-size:44px}.gallery{grid-template-columns:1fr}.gallery figure:nth-child(n){grid-column:auto;min-height:68vh}.project-next{padding:70px 20px}.project-next-in{align-items:flex-start;flex-direction:column}.services{grid-template-columns:1fr}.form{grid-template-columns:1fr}.field.full,.form button,.form-note{grid-column:auto}}

.copyright{max-width:var(--max);margin:15px auto 0;padding-top:14px;border-top:1px solid rgba(233,223,210,.07);font-size:7px;line-height:1.75;letter-spacing:.045em;color:#51464a}
.project-actions .drive-project{border-color:var(--gold);color:#7e652b}
.project-actions .drive-project:hover{background:var(--gold);border-color:var(--gold);color:var(--wine)}
.project-actions .drive-case{border-color:rgba(30,9,16,.42)}
@media(max-width:680px){.copyright{font-size:6.5px}.project-actions{display:grid}.project-actions .btn{width:100%;text-align:center}}


/* MOBILE SAFARI FIX — keep project cards as real vertical blocks */
@media (max-width:680px){
  .work-grid{
    display:flex !important;
    flex-direction:column;
    gap:12px;
  }
  .work-card,
  .work-card:nth-child(n){
    display:block !important;
    position:relative;
    width:100%;
    height:72svh;
    min-height:540px;
    margin:0;
    grid-column:auto;
    flex:none;
    isolation:isolate;
  }
  .work-card img{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
  }
  .work-card::after{
    position:absolute;
    inset:0;
  }
  .work-info{
    position:absolute;
    left:20px;
    right:20px;
    bottom:20px;
  }
  .work-info h3{
    font-size:clamp(36px,11vw,52px);
    line-height:.92;
  }
  .work-info p{
    max-width:100%;
  }
}
