
:root{--ink:#183b33;--cream:#f6f4ee;--muted:#626d65;--accent:#e1d6bb;--line:#d8d9cd;--dark:#102a24}
*{box-sizing:border-box}html{scroll-behavior:auto;scroll-padding-top:100px}body{margin:0;font:16px/1.65 Arial,Helvetica,sans-serif;background:var(--cream);color:var(--ink)}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid #b8954d;outline-offset:5px}img{max-width:100%}.wrap{width:min(1280px,90%);margin:auto}.draft-bar{background:#e6e1d4;color:#5c604e;font-size:10px;letter-spacing:.8px;text-align:center;padding:6px 14px}
header{position:sticky;top:0;z-index:9;background:var(--cream);border-bottom:1px solid var(--line)}.nav{display:flex;align-items:center;justify-content:space-between;min-height:94px;gap:32px}.brand{font-size:33px;font-weight:700;letter-spacing:-2px;line-height:1}.brand small{display:block;font-size:9px;letter-spacing:2.2px;margin-top:9px}.links{display:flex;gap:32px;align-items:center;font-size:13px}.links>a:not(.pill):hover,.text-link:hover{text-decoration:underline;text-underline-offset:6px}.pill{display:inline-flex;align-items:center;justify-content:center;min-height:47px;padding:12px 23px;background:var(--ink);color:white;border:1px solid var(--ink);font-size:13px;line-height:1.4;transition:background .2s}.pill:hover{background:#2b5045}.pill.light{background:var(--accent);color:var(--dark);border-color:var(--accent)}.pill.light:hover{background:#f1e6cc}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:700;text-transform:uppercase}.text-link{font-size:13px;border-bottom:1px solid #a2b0a4;padding:8px 0}.hero{background:var(--ink);color:var(--cream);padding:0 0 32px}.hero-grid{display:block}.hero-copy{display:grid;grid-template-columns:1.4fr 1fr;gap:80px;align-items:center;padding:60px 0 48px}.hero .eyebrow{color:var(--accent)}h1{font-size:clamp(42px,4.6vw,66px);letter-spacing:-2.7px;font-weight:400;line-height:1.08;margin:24px 0 0}h1 em{font-family:Georgia,'Times New Roman',serif;font-weight:400;color:var(--accent);letter-spacing:-2px}.hero-intro p{color:#d8e0d8;font-size:15px;max-width:390px;margin:0}.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:23px;margin-top:28px}.hero-image{position:relative;aspect-ratio:2.65;overflow:hidden}.hero-image>img{height:100%;width:100%;display:block;object-fit:cover;object-position:center 63%}.image-tag{position:absolute;bottom:0;left:0;right:0;background:#102a24ed;color:var(--cream);padding:16px 23px;display:flex;justify-content:space-between;gap:20px;font-size:12px}.image-tag b{font-weight:500}.image-tag a{border-bottom:1px solid #a4b7a5}.strip{border-bottom:1px solid var(--line);background:#ebe9df}.strip .wrap{display:grid;grid-template-columns:repeat(3,1fr);padding:25px 0;gap:35px}.strip small{display:block;font-size:9px;letter-spacing:1.5px;color:var(--muted);margin-bottom:4px}.strip span{font-size:13px}
section{padding:96px 0}h2{font-size:clamp(32px,3.5vw,49px);line-height:1.15;letter-spacing:-1.8px;font-weight:400;margin:16px 0 24px}h3{font-weight:500;letter-spacing:-.6px;font-size:24px;line-height:1.3;margin:24px 0 16px}.intro{display:grid;grid-template-columns:1fr 1.7fr;gap:100px}.intro h2{margin-top:0}.intro p:not(.section-kicker){max-width:650px;color:var(--muted);font-size:15px}.intro .lead{font-size:20px!important;color:var(--ink)!important}.section-kicker{font:italic 25px/1.4 Georgia,serif;max-width:240px;margin-top:23px}.lead{font-size:18px;color:var(--muted);max-width:660px}.section-head{display:flex;align-items:end;justify-content:space-between;gap:35px;margin-bottom:38px}.section-head h2{margin-bottom:0}.section-head>p{font-size:13px;color:var(--muted);max-width:360px}.section-head>a{font-size:13px;border-bottom:1px solid var(--line)}
.feature{background:#e7e8df}.case-head{display:grid;grid-template-columns:1.3fr 1fr;gap:90px;align-items:end}.case-head h2{font-size:clamp(36px,4.2vw,59px)}.case-head .lead{font-size:16px;max-width:570px}.case-meta{border-top:1px solid #b8c2b4;padding-top:14px;font-size:12px}.case-meta p{margin:12px 0}.case-meta strong{display:inline-block;min-width:88px;font-size:9px;letter-spacing:1px;font-weight:700}.case-hero{margin:38px 0 25px}.case-hero img{width:100%;display:block;aspect-ratio:2.25;object-fit:cover;object-position:center 65%}.case-hero figcaption{font-size:11px;padding-top:12px;color:var(--muted)}.case-story{max-width:760px;margin-top:35px;color:var(--muted)}.case-story h3{color:var(--ink);font-size:26px}.case-story p{font-size:15px}.feature .pill.light{background:var(--ink);color:white;border-color:var(--ink)}
.projects{background:var(--cream)}.project-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:45px 26px}.project{display:block;border:0;padding:0;background:none;color:inherit;text-align:left}.project:nth-child(-n+2){grid-column:span 2}.project .photo{overflow:hidden;aspect-ratio:1.32;background:#e0e2d7}.project:nth-child(-n+2) .photo{aspect-ratio:1.8}.project img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s}.project:hover img{transform:scale(1.025)}.project h3{margin:18px 0 6px;font-size:20px}.project:nth-child(-n+2) h3{font-size:27px}.project p{margin:0;color:var(--muted);font-size:9px;letter-spacing:1.2px}.album-count{display:inline-block;margin-top:15px;padding-bottom:4px;border-bottom:1px solid #a6b3a5;font-size:11px}.services{border-top:1px solid var(--line)}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px}.service{padding:24px 0 0;border-top:1px solid var(--ink)}.num{color:var(--muted);font-size:10px;letter-spacing:1px}.service h3{font-size:26px;margin-top:28px}.service p{font-size:14px;color:var(--muted)}.service ul{padding:0;list-style:none;color:var(--muted);font-size:12px;line-height:2.1}.service li{border-top:1px solid var(--line);padding:7px 0}
#about{background:#ebece3}.about{display:grid;grid-template-columns:1fr 1fr;gap:100px}.about p{color:var(--muted);font-size:15px}.about a{font-size:13px;border-bottom:1px solid #a5b3a2;padding-bottom:4px}.timeline{border-top:1px solid #bec7b9;margin-top:20px}.milestone{display:grid;grid-template-columns:100px 1fr;border-bottom:1px solid #bec7b9;padding:23px 0;align-items:center;gap:20px}.milestone b{font:34px/1.2 Georgia,serif;font-weight:400}.milestone span{font-size:13px;color:var(--muted)}.process{background:var(--ink);color:var(--cream)}.process>.wrap>.eyebrow{color:var(--accent)}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:32px;margin-top:44px}.step{border-top:1px solid #688074;padding-top:17px}.step .num{color:var(--accent)}.step h3{font-size:23px;margin-top:24px}.step p{color:#d0dacf;font-size:13px}.contact{background:var(--cream)}.contact-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:100px}.contact h2{font-size:clamp(40px,4.2vw,62px);max-width:600px}.contact p{max-width:490px;color:var(--muted);font-size:15px}.contact .pill{margin-top:15px}.contact-detail{border-top:1px solid #bdc8b8;padding:20px 0}.contact-detail small{display:block;font-size:9px;letter-spacing:1.6px;margin-bottom:8px;color:var(--muted)}.contact-detail a{font-size:22px}.contact-detail address{font-size:14px;font-style:normal}.preview-note{font-size:11px;color:var(--muted);max-width:390px;margin-top:16px}.footer-row{display:flex;justify-content:space-between;gap:24px;align-items:center;font-size:11px;color:var(--muted);border-top:1px solid var(--line);padding:34px 0 44px}.mobile-toggle{display:none;background:none;border:1px solid var(--line);padding:8px 14px;color:var(--ink)}
.project-album{display:none;position:fixed;inset:0;z-index:80;overflow:auto;padding:40px 5vw;background:var(--cream);overscroll-behavior:contain}.project-album:target{display:block}.album-header{display:flex;justify-content:space-between;gap:25px;align-items:start;margin-bottom:35px}.album-header h2{font-size:34px;margin:10px 0}.album-header p{font-size:13px;color:var(--muted)}.album-close{border:1px solid var(--ink);padding:10px 18px;font-size:13px;flex-shrink:0}.album-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;padding-bottom:35px}.album-tile{display:block}.album-tile img{width:100%;aspect-ratio:1.4;object-fit:cover;display:block}.album-tile span{display:block;margin-top:12px;font-size:15px}.album-tile small{color:var(--muted);font-size:11px}.photo-link{display:block;cursor:zoom-in}.lightbox{display:none;position:fixed;inset:0;z-index:100;background:#101917;color:#fff;padding:20px 4vw;height:100dvh}.lightbox:target{display:flex;flex-direction:column;padding-top:max(16px,env(safe-area-inset-top));padding-bottom:max(16px,env(safe-area-inset-bottom))}.lightbox-bar{display:flex;justify-content:space-between;align-items:center;min-height:45px;flex-shrink:0;gap:15px}.lightbox-bar span{font-size:12px}.lightbox-bar a,.lightbox-bottom a{border:1px solid #78877d;padding:8px 18px;font-size:13px;flex-shrink:0}.lightbox>img{width:100%;min-height:0;flex:1;object-fit:contain}.lightbox-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;min-height:75px;flex-shrink:0}.lightbox-bottom p{font-size:13px;text-align:center}body:has(.lightbox:target),body:has(.project-album:target){overflow:hidden}
@media(max-width:1050px){.hero-copy{gap:35px;grid-template-columns:1.2fr 1fr}.links{gap:20px}.case-head,.intro,.about,.contact-grid{gap:50px}.project-grid{gap:35px 20px}.service-grid{gap:25px}.hero-actions{gap:18px}.project h3{font-size:18px}}
@media(max-width:800px){.nav{min-height:78px;flex-wrap:wrap;gap:10px}.mobile-toggle{display:block}.links{display:none;width:100%;padding:12px 0 20px;flex-wrap:wrap;gap:20px}.links.open{display:flex}.hero-copy{grid-template-columns:1fr;gap:28px;padding:42px 0 32px}.hero-intro p{max-width:550px}.hero h1{letter-spacing:-1.8px}.hero-actions{margin-top:23px}.hero-image{aspect-ratio:1.65}.strip .wrap{gap:20px}.strip span{font-size:11px}.strip small{font-size:8px}.intro,.about,.contact-grid,.case-head{grid-template-columns:1fr;gap:30px}.section-kicker{max-width:100%;font-size:22px}.intro h2{margin-top:0}.service-grid{grid-template-columns:1fr}.service{padding-top:20px}.service h3{margin-top:18px}.steps{grid-template-columns:1fr 1fr}.project-grid{grid-template-columns:1fr 1fr;gap:35px 20px}.project:nth-child(-n+2){grid-column:auto}.project:nth-child(-n+2) h3{font-size:22px}.project:nth-child(-n+2) .photo{aspect-ratio:1.32}.section-head{align-items:start;flex-direction:column;gap:10px}section{padding:62px 0}.footer-row{align-items:start;flex-direction:column}.case-hero img{aspect-ratio:1.6}.album-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.lightbox{padding:12px}.lightbox-bottom{gap:8px}.lightbox-bottom a{padding:8px 10px}.lightbox-bottom p{font-size:11px}}
@media(max-width:480px){.hero .eyebrow{font-size:9px;letter-spacing:1.3px}.hero h1{font-size:43px}.hero h1 em{letter-spacing:-1.8px}.hero-intro p{font-size:14px}.hero-image{aspect-ratio:1.22}.image-tag{font-size:10px;padding:12px;align-items:center;gap:10px}.image-tag span{max-width:210px}.strip .wrap{grid-template-columns:1fr;gap:12px;padding:20px 0}.strip .wrap>div{display:flex;align-items:baseline;gap:12px}.strip small{min-width:80px}.strip span{font-size:12px}.project-grid,.steps,.album-grid{grid-template-columns:1fr}.project .photo,.project:nth-child(-n+2) .photo{aspect-ratio:1.5}.project h3,.project:nth-child(-n+2) h3{font-size:24px}.album-header{flex-direction:column;gap:12px}.album-header h2{font-size:28px}.project-album{padding:25px 5vw}.lightbox-bar span{font-size:10px}.lightbox-bar a{font-size:11px;padding:7px 10px}.contact-detail a{font-size:20px}.case-meta{font-size:11px}.case-meta strong{min-width:75px}}
@media(prefers-reduced-motion:reduce){.project img,.pill{transition:none}}

/* Original V & Co brand artwork supplied by the owner. */
.brand{display:block;flex:0 0 auto;line-height:0;letter-spacing:normal}
.brand-logo{display:block;width:218px;height:auto;max-width:100%;mix-blend-mode:multiply}
.footer-row .brand-logo{width:190px}
@media(max-width:800px){.brand-logo{width:174px}.footer-row .brand-logo{width:174px}}
