@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,500;0,600;1,400;1,500&display=swap');
:root{--cream:#f8f5ee;--ink:#24352a;--sage:#dbe1d1;--green:#566d54;--rose:#e9d8ca;--line:#d8d9cf}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:15px;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}img{display:block;width:100%}.header{height:87px;padding:0 5.2%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:var(--cream);position:relative;z-index:10}.logo{font-family:'Playfair Display',Georgia,serif;font-size:27px;font-weight:600;letter-spacing:-1.4px}.logo span{color:#aa927b}.header nav{display:flex;gap:34px;font-size:12px;font-weight:600}.header nav a:hover,.text-link:hover{color:#7d9981}.nav-contact{font-size:12px;border:1px solid var(--ink);padding:13px 17px;border-radius:2px}.nav-contact span{padding-left:14px}.menu{display:none;background:none;border:0;font-size:24px}.section{padding:110px 7%}.hero{display:grid;grid-template-columns:1.04fr .96fr;min-height:740px;padding:35px 5.2% 50px;gap:50px;align-items:stretch}.hero-left{padding:83px 0 0 2%;display:flex;flex-direction:column}.eyebrow,.section-kicker,.tag,.hero-foot,.visual-top,.visual-caption,.art-label,.contact-top,.contact-bottom,.modal-overline{font-size:10px;letter-spacing:2px;font-weight:700}.eyebrow{display:flex;align-items:center;gap:12px}.dot{width:9px;height:9px;background:#9fae90;border-radius:50%}.hero h1,.section h2,.modal h2{font:400 clamp(48px,5.15vw,84px)/1.13 'Playfair Display',Georgia,serif;letter-spacing:-2.8px;margin:37px 0 25px}.hero h1 em,.section h2 em,.modal h2 em{font-weight:400;color:#82907a}.lead{max-width:445px;font-size:15px;line-height:1.95;color:#667165}.lead strong{color:var(--ink)}.hero-actions{display:flex;align-items:center;gap:32px;margin-top:27px}.btn{display:inline-flex;padding:18px 23px;font-size:12px;font-weight:700;gap:30px}.btn-dark{background:var(--ink);color:white}.btn:hover{background:#49624e}.text-link{font-size:12px;font-weight:700;border-bottom:1px solid;padding-bottom:7px}.hero-foot{display:flex;justify-content:space-between;gap:10px;margin-top:auto;padding-top:40px;color:#778475;font-size:9px}.hero-visual{background:#e4e5d9;position:relative;min-height:620px;overflow:hidden;display:flex;flex-direction:column}.hero-visual img{object-fit:cover;flex:1;min-height:0}.visual-top,.visual-caption{position:absolute;z-index:2;left:30px;right:30px;display:flex;justify-content:space-between;font-size:9px}.visual-top{top:27px}.visual-caption{bottom:25px}.hero-stamp{position:absolute;right:23px;top:98px;z-index:3;border:1px solid #6d806b;border-radius:50%;width:106px;height:106px;display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(13deg);font:500 14px/1.05 'Playfair Display',serif;text-align:center}.hero-stamp i{color:#829078}.marquee{background:#334c3b;color:#eee9da;overflow:hidden;white-space:nowrap;padding:26px 0}.marquee div{font:400 17px 'Playfair Display',serif;letter-spacing:2px;text-align:center}.marquee span{color:#bac8b1;margin:0 29px}.about{background:#f4f0e8}.section-kicker{color:#71816d}.about-main{display:grid;grid-template-columns:1.2fr .8fr;gap:90px;margin-top:10px}.about h2,.works h2,.approach h2,.contact h2{font-size:clamp(42px,5vw,70px)}.about-copy{padding-top:43px;color:#5e6b5d;font-size:15px;line-height:2}.about-copy p{margin:0 0 20px}.about-copy .text-link{display:inline-block;margin-top:18px;color:var(--ink)}.skills{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:80px}.skills>div{border-top:1px solid #b5c1b2;padding-top:23px;display:flex;flex-direction:column;gap:11px}.skills span{font-size:11px;color:#879b84}.skills strong{font-size:17px;font-weight:600}.skills small{font-size:12px;color:#758170}.works{background:#fbf9f4}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:55px}.section-heading p{max-width:290px;line-height:1.9;color:#637060;margin-bottom:36px}.work-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px 27px}.work-big{grid-column:1/-1}.work-art{position:relative;overflow:hidden;background:#dfe6d8}.work-art img{aspect-ratio:1.2/1;object-fit:cover;transition:transform .7s}.work-big .work-art img{aspect-ratio:2.35/1}.work-card:hover img{transform:scale(1.025)}.art-2{background:#e9dace}.art-3{background:#bfc9ae}.art-label{position:absolute;top:22px;left:22px;background:#f8f5ee;padding:12px 16px;font-size:9px}.work-meta{display:flex;justify-content:space-between;gap:20px;padding:23px 0 5px}.tag{font-size:9px;letter-spacing:1.2px;color:#879783}.work-meta h3{font:400 27px 'Playfair Display',serif;margin:12px 0}.work-meta p{color:#728070;font-size:13px;line-height:1.7;max-width:500px;margin:0}.open-project{align-self:start;background:none;border:1px solid #bfcabe;border-radius:50%;width:46px;height:46px;font-size:21px}.open-project:hover{background:#dfe8d9}.work-note{font-size:11px;color:#849183;margin-top:42px;line-height:1.8}.approach{background:#dfe5d8}.approach-layout{display:grid;grid-template-columns:1fr .8fr;gap:110px}.approach-layout>div:first-child>p{max-width:410px;line-height:1.9;color:#667563}.steps{padding-top:38px}.steps>div{padding:29px 0;border-top:1px solid #aebaa9}.steps>div:last-child{border-bottom:1px solid #aebaa9}.steps span{font-size:10px;letter-spacing:2px;color:#778c74}.steps h3{font:400 28px 'Playfair Display',serif;margin:14px 0 8px}.steps p{font-size:13px;color:#6e7c6b;line-height:1.8;margin:0}.contact{background:#263b2e;color:#f8f5ec;padding-bottom:30px}.contact-top,.contact-bottom{display:flex;justify-content:space-between;gap:20px;color:#b5c7b0}.contact h2{font-size:clamp(55px,7vw,100px);margin-top:100px}.contact h2 em{color:#adbea1}.contact>p{line-height:1.9;color:#b5c4b3;max-width:440px}.contact-email{display:inline-flex;gap:50px;border-bottom:1px solid #97b294;font:400 clamp(20px,3vw,34px) 'Playfair Display',serif;padding-bottom:15px;margin:35px 0 125px}.contact-email:hover{color:#c8dfbd}.contact-bottom{border-top:1px solid #526556;padding-top:25px;font-size:9px}.modal[hidden]{display:none}.modal{position:fixed;inset:0;z-index:50;display:flex;justify-content:center;align-items:center;padding:20px}.modal-backdrop{position:absolute;inset:0;background:#112017bd}.modal-panel{position:relative;background:#fbf9f4;padding:55px;max-width:680px;max-height:90vh;overflow:auto;width:100%;box-shadow:0 15px 60px #0004}.close{position:absolute;right:24px;top:14px;font-size:35px;border:0;background:none;color:#324536}.modal h2{font-size:46px;margin:15px 0}.modal-panel p{line-height:1.9;color:#697966}.modal-content{display:grid;gap:17px;margin:28px 0}.modal-content h3{font-size:14px;letter-spacing:1px;margin:0 0 5px}.modal-content div{border-top:1px solid #ccd4c9;padding-top:16px}.modal-disclaimer{font-size:11px;color:#839080;border-top:1px solid #ddd;padding-top:15px}body.modal-open{overflow:hidden}@media(max-width:900px){.header nav{gap:15px}.nav-contact{display:none}.hero{gap:20px}.hero-left{padding-top:50px}.hero h1{font-size:52px}.hero-visual{min-height:560px}.section{padding:85px 5%}.hero{padding:25px 5% 45px}.approach-layout{gap:40px}.about-main{gap:35px}}@media(max-width:680px){.header{height:70px}.menu{display:block}.header nav{display:none;position:absolute;top:70px;left:0;right:0;background:#f8f5ee;box-shadow:0 12px 20px #0001;padding:25px 6%;flex-direction:column;gap:22px}.header nav.active{display:flex}.hero{grid-template-columns:1fr;padding:18px 5% 35px;gap:35px}.hero-left{padding:35px 0 0}.hero h1{font-size:clamp(46px,11vw,65px);margin-top:27px}.hero-visual{min-height:470px}.hero-foot{margin-top:35px}.marquee div{font-size:12px}.marquee span{margin:0 9px}.about-main,.approach-layout{grid-template-columns:1fr;gap:10px}.about-copy{padding-top:0}.skills{grid-template-columns:1fr;margin-top:50px}.section-heading{display:block}.work-grid{grid-template-columns:1fr}.work-big{grid-column:auto}.work-big .work-art img,.work-art img{aspect-ratio:1.15/1}.work-meta h3{font-size:23px}.contact h2{margin-top:70px}.contact-email{gap:15px;margin-bottom:100px;font-size:23px}.contact-bottom{font-size:8px;flex-wrap:wrap}.modal-panel{padding:45px 25px 30px}.modal h2{font-size:36px}}
