:root{--bg:#f3f4f2;--paper:#fafaf8;--ink:#222625;--muted:#707773;--line:#d9ddda;--accent:#74857f;--dark:#27302e;--serif:'Playfair Display',serif;--sans:'DM Sans',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);line-height:1.55}a{color:inherit;text-decoration:none}.nav{height:76px;padding:0 5vw;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:sticky;top:0;background:rgba(243,244,242,.94);backdrop-filter:blur(12px);z-index:10}.brand{font-size:12px;font-weight:600;letter-spacing:.14em}.nav nav{display:flex;gap:28px;align-items:center;font-size:13px}.nav nav a{color:#59615e}.nav .nav-cta{border-bottom:1px solid var(--ink);padding-bottom:2px;color:var(--ink)}.menu{display:none;background:none;border:0;font-size:20px}.hero{max-width:1240px;margin:0 auto;padding:70px 5vw 82px;display:grid;grid-template-columns:1fr .8fr;gap:7vw;align-items:center;min-height:calc(100vh - 76px)}.eyebrow,.section-label{font-size:11px;letter-spacing:.14em;color:var(--muted);font-weight:600}.hero h1{font:500 clamp(42px,5vw,76px)/1.05 var(--serif);letter-spacing:-.035em;margin:22px 0 28px;max-width:760px}.hero h1 em,.work-intro em,.contact h2 em{font-style:italic;color:#5e6c67}.lead{font-size:18px;line-height:1.5;margin:0 0 26px;color:#4f5754}.button{display:inline-flex;gap:20px;align-items:center;background:var(--dark);color:#fff;padding:15px 20px;font-size:13px;font-weight:500}.button span{font-size:16px}.hero-photo-wrap{height:620px;max-height:72vh}.hero-photo{width:100%;height:100%;object-fit:cover;object-position:center bottom;filter:grayscale(100%)}.section{max-width:1240px;margin:0 auto;padding:95px 5vw}.formats{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding-top:34px;padding-bottom:34px}.format-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:22px}.format-grid div{padding:0 28px;border-left:1px solid var(--line)}.format-grid div:first-child{padding-left:0;border-left:0}.format-grid strong{display:block;font:500 27px var(--serif);margin-bottom:5px}.format-grid span{font-size:12px;color:var(--muted)}.work-intro{margin:25px 0 45px}.work-intro h2{font:500 clamp(32px,4vw,55px)/1.12 var(--serif);letter-spacing:-.025em;margin:0;max-width:850px}.work-list{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--line)}.work-list article{padding:27px 25px 29px 0;border-bottom:1px solid var(--line);position:relative}.work-list article:nth-child(odd){padding-right:50px}.work-list article:nth-child(even){padding-left:40px;border-left:1px solid var(--line)}.work-list span{font-size:10px;color:var(--muted)}.work-list h3{font:500 26px var(--serif);margin:10px 0 8px}.work-list p{max-width:470px;margin:0;color:#59615e;font-size:14px}.recognition{background:var(--paper);max-width:none;padding-left:calc((100vw - 1240px)/2 + 5vw);padding-right:calc((100vw - 1240px)/2 + 5vw)}.quote-grid{display:grid;grid-template-columns:repeat(2,minmax(0,420px));justify-content:center;gap:14px;margin-top:26px;align-items:start}.quote-card{border:1px solid var(--line);padding:18px 20px;display:flex;align-items:flex-start}.quote-card h2{font:italic 500 clamp(15px,1.4vw,20px)/1.3 var(--serif);margin:0;letter-spacing:-.01em}.about{display:grid;background:var(--bg);max-width:none;padding-left:calc((100vw - 1240px)/2 + 5vw);padding-right:calc((100vw - 1240px)/2 + 5vw);grid-template-columns:.8fr 1fr;gap:8vw;align-items:center}.about-photo img{width:100%;max-height:650px;object-fit:cover;object-position:center;filter:grayscale(100%)}.about-copy h2{font:500 clamp(38px,4vw,56px) var(--serif);margin:15px 0 2px}.role{color:var(--accent);margin-top:0}.about-copy p{font-size:15px;max-width:570px}.about-copy .muted{color:var(--muted);font-size:13px}.method{border-top:1px solid var(--line)}.method-grid{display:grid;grid-template-columns:1fr 1fr;gap:8vw;margin-top:25px}.method h2{font:500 clamp(34px,4vw,54px)/1.12 var(--serif);margin:0}.method p{font-size:16px;max-width:560px}.faq{border-top:1px solid var(--line)}.faq-list{margin-top:25px;border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line)}summary{cursor:pointer;list-style:none;padding:21px 0;font:500 21px var(--serif);display:flex;justify-content:space-between}summary::-webkit-details-marker{display:none}summary:after{content:'+';font-family:var(--sans);font-size:20px;color:var(--muted)}details[open] summary:after{content:'−'}details p{max-width:720px;color:#59615e;font-size:14px;padding:0 0 22px;margin:0}.contact{max-width:none;background:var(--dark);color:#f7f8f6;text-align:center}.contact .section-label{color:#aeb8b4}.contact-inner{max-width:700px;margin:auto}.contact h2{font:500 clamp(32px,3vw,38px)/1.08 var(--serif);margin:22px 0}.contact p{color:#c5cbc8}.button.dark{background:#f3f4f2;color:var(--dark);margin-top:14px}.contact-links{display:flex;justify-content:center;gap:28px;margin-top:35px;font-size:13px;color:#c5cbc8}.contact-links a:hover{text-decoration:underline}footer{padding:24px 5vw;display:flex;justify-content:space-between;gap:20px;background:#202624;color:#9ea7a3;font-size:10px;letter-spacing:.08em}.nav+main{overflow:hidden}@media(max-width:850px){.nav{height:64px;padding:0 22px}.nav nav{display:none}.menu{display:block}.hero{grid-template-columns:1fr;padding:40px 22px 60px;gap:35px;min-height:auto}.hero h1{font-size:46px}.hero-photo-wrap{height:500px;max-height:none;order:-1}.hero-copy{order:2}.section{padding:68px 22px}.format-grid{grid-template-columns:1fr;gap:22px}.format-grid div{padding:0 0 0 18px;border-left:1px solid var(--line)}.format-grid div:first-child{padding-left:18px;border-left:1px solid var(--line)}.work-list{grid-template-columns:1fr}.work-list article:nth-child(even),.work-list article:nth-child(odd){padding:25px 0;border-left:0}.quote-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-width:700px;margin-left:auto;margin-right:auto;gap:14px}.quote-card{min-height:0}.about,.method-grid{grid-template-columns:1fr;gap:35px}.recognition{padding-left:22px;padding-right:22px}.about{padding-left:22px;padding-right:22px}.about-photo img{max-height:560px}.contact-links{flex-direction:column;gap:12px}footer{flex-direction:column;gap:8px}.hero .button{width:100%;justify-content:center}}@media(max-width:480px){.hero h1{font-size:39px}.hero-photo-wrap{height:410px}.work-intro h2{font-size:34px}.contact h2{font-size:38px}}
