:root{--paper:#f6f4ed;--ink:#202b28;--muted:#737c72;--green:#426c5b;--orange:#d98466;--line:#d9d9cd;--serif:'Karla',Arial,sans-serif;--sans:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.65}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.site-header{height:82px;padding:0 7.1%;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(32,43,40,.08);position:relative;z-index:5;background:var(--paper)}.wordmark{font-family:var(--serif);font-weight:700;font-size:25px;letter-spacing:-1.5px}.wordmark>span:first-child{color:var(--orange)}.wordmark-dot{color:var(--green)}.main-nav{display:flex;align-items:center;gap:39px;font-size:12px;font-weight:600}.nav-link{color:#747b72;transition:color .2s}.nav-link:hover,.nav-link.active{color:var(--ink)}.nav-cta{padding:10px 17px;border:1px solid #bdc5b8;border-radius:3px}.nav-cta span{margin-left:16px;color:var(--green)}.menu-toggle{display:none}.hero{min-height:625px;padding:53px 7.1% 55px;display:grid;grid-template-columns:.93fr 1.07fr;gap:5%;align-items:center;position:relative;overflow:hidden}.hero-copy{padding:25px 0 45px;z-index:1}.eyebrow{text-transform:uppercase;font-size:10px;letter-spacing:1.8px;font-weight:700;color:var(--green);margin:0 0 21px}.eyebrow-line{display:inline-block;width:27px;height:1px;background:var(--orange);vertical-align:middle;margin-right:9px}.hero h1,.section-heading h2,.about-copy h2,.work-more h2,.cv-section h2,.contact-copy h2{font:500 clamp(49px,6vw,84px)/1.06 var(--serif);letter-spacing:-2.9px;margin:0}.hero h1 em,.section-heading h2 em,.about-copy h2 em,.work-more h2 em,.cv-section h2 em,.contact-copy h2 em{font-weight:500;color:var(--green)}.hero-intro{max-width:385px;font-size:15px;color:#66736a;line-height:1.85;margin:24px 0 28px}.hero-actions{display:flex;align-items:center;gap:19px;flex-wrap:wrap}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:31px;padding:14px 19px;border:0;border-radius:2px;font-size:11px;font-weight:600;cursor:pointer}.button-dark{background:var(--ink);color:white;transition:background .2s,transform .2s}.button-dark:hover{background:var(--green);transform:translateY(-2px)}.availability{font-size:10px;color:#66736a}.availability i{display:inline-block;width:7px;height:7px;background:#88a77d;border-radius:50%;margin-right:7px;box-shadow:0 0 0 3px #e6ebdf}.hero-art{height:498px;max-width:556px;justify-self:end;width:100%;position:relative;margin-right:1.5%}.hero-art:before{content:'';position:absolute;width:145px;height:145px;background:#e4dfc9;border-radius:50%;left:-60px;bottom:-38px;z-index:-1}.hero-illustration{width:100%;height:100%;object-fit:cover;box-shadow:14px 16px 0 #e9e6da}.art-note{font-family:var(--serif);font-size:12px;line-height:1.4;font-style:italic;color:#38584d;position:absolute;z-index:1}.note-top{right:-39px;top:33px;transform:rotate(5deg)}.note-bottom{left:-39px;bottom:24px;transform:rotate(-5deg)}.hero-scroll{position:absolute;left:7.1%;bottom:20px;font-size:8px;letter-spacing:1.6px;color:#859087}.hero-scroll span{font-size:13px;color:var(--green);margin-left:12px}.section-pad{padding:100px 9.1%}.work-section{padding-top:95px}.section-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:34px}.section-heading h2,.work-more h2,.cv-section h2{font-size:48px;letter-spacing:-1.9px}.section-heading .eyebrow,.work-more .eyebrow,.cv-section .eyebrow{margin-bottom:10px}.text-link{font-size:11px;font-weight:600;border-bottom:1px solid #aeb9aa;padding:0 0 6px}.text-link span{color:var(--green);margin-left:8px}.featured-grid{display:grid;grid-template-columns:1fr 1fr;gap:37px 23px}.featured-card{display:block;min-width:0}.card-tall{grid-row:span 2}.card-image{position:relative;height:270px;overflow:hidden;background:#dfe5d8}.card-tall .card-image{height:575px}.card-image svg{width:100%;height:100%;display:block;transition:transform .6s cubic-bezier(.2,.75,.3,1)}.featured-card:hover .card-image svg{transform:scale(1.035)}.image-label{position:absolute;left:15px;top:15px;z-index:1;background:rgba(246,244,237,.8);padding:6px 9px;font-size:8px;letter-spacing:1.1px;text-transform:uppercase}.card-meta{display:flex;justify-content:space-between;align-items:center;padding-top:13px}.card-meta h3{font:500 20px var(--serif);margin:0}.card-meta p{font-size:10px;color:var(--muted);margin:4px 0 0}.card-arrow{width:29px;height:29px;border:1px solid #c9d0c3;border-radius:50%;display:grid;place-items:center;font-size:13px;transition:all .2s}.featured-card:hover .card-arrow{background:var(--green);border-color:var(--green);color:#fff}.work-more{padding-top:118px}.work-more h2{margin-bottom:36px}.filter-bar{display:flex;gap:8px;flex-wrap:wrap;border-bottom:1px solid var(--line);padding-bottom:17px}.filter{border:1px solid #d4d8cd;border-radius:20px;background:none;padding:8px 14px;font-size:10px;color:#647066;cursor:pointer;transition:all .2s}.filter:hover,.filter.active{background:var(--ink);border-color:var(--ink);color:white}.filter span{font-size:8px;margin-left:6px;opacity:.65}.project-list{padding-top:4px}.project-row{width:100%;display:grid;grid-template-columns:55px 1fr 1fr 32px;align-items:center;text-align:left;border:0;border-bottom:1px solid var(--line);background:transparent;padding:19px 0;cursor:pointer;color:inherit;transition:padding .2s,background .2s}.project-row:hover{padding-left:9px;background:rgba(225,229,215,.3)}.project-row.hidden{display:none}.project-number,.project-detail{font-size:10px;color:#7e887c}.project-title{font:500 19px var(--serif)}.project-detail{justify-self:start}.project-arrow{font-size:15px;color:var(--green);justify-self:end}.about-section{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:10%;padding-top:110px;padding-bottom:110px;background:#efeee5}.about-visual{position:relative;max-width:430px}.about-painting{height:450px;transform:rotate(-2deg);box-shadow:9px 11px 0 #dadbce}.about-painting svg{height:100%;width:100%;display:block}.about-caption{position:absolute;right:-33px;bottom:22px;padding:10px 15px;background:var(--paper);font:italic 13px var(--serif);transform:rotate(3deg)}.about-copy{max-width:465px}.about-copy h2{font-size:53px;margin-bottom:22px}.about-copy .eyebrow{margin-bottom:12px}.about-lead{font:500 21px/1.5 var(--serif);color:var(--green)}.about-copy>p:not(.eyebrow):not(.about-lead){font-size:12px;color:#687369;line-height:1.9}.about-tags{display:flex;gap:7px;flex-wrap:wrap;margin:22px 0 25px}.about-tags span{font-size:9px;padding:6px 10px;background:#e3e6d9;border-radius:2px;color:#596b5a}.mission-band{position:relative;text-align:center;background:#456e5d;color:#f6f4ed;padding:77px 20px 68px;overflow:hidden}.mission-band p{font:500 clamp(27px,4vw,44px)/1.38 var(--serif);margin:0}.mission-band p em{color:#e6c783}.mission-band>span{font-size:10px;letter-spacing:1px;display:block;margin-top:14px;color:#d6dfd3}.mission-doodle{position:absolute;right:11%;top:18%;font-size:64px;color:#7e9a82;opacity:.35}.cv-section{display:grid;grid-template-columns:.86fr 1.14fr;gap:10%;padding-top:100px;padding-bottom:105px}.cv-items{padding-top:14px}.cv-item{display:grid;grid-template-columns:56px 1fr 20px;gap:15px;padding:17px 0;border-bottom:1px solid var(--line);align-items:start}.cv-item>span:first-child{font-size:10px;color:var(--green);padding-top:2px}.cv-item p{font-size:10px;color:#768075;line-height:1.7;margin:0}.cv-item strong{font:500 17px var(--serif);color:var(--ink)}.cv-mark{color:var(--green)}.cv-note{font-size:10px;color:#788176;margin-top:17px}.cv-note a{text-decoration:underline;text-underline-offset:3px;color:var(--green)}.contact-section{background:#e8e9de;display:grid;grid-template-columns:1fr .8fr;gap:12%;padding-top:94px;padding-bottom:92px}.contact-copy h2{font-size:61px;margin-bottom:23px}.contact-copy>p:not(.eyebrow){font-size:12px;max-width:350px;color:#647066;line-height:1.8}.email-link{display:inline-block;margin-top:13px;font:500 18px var(--serif);border-bottom:1px solid #aab7a9;padding-bottom:5px}.email-link span{font:14px var(--sans);color:var(--green);margin-left:10px}.contact-social{display:flex;gap:17px;flex-wrap:wrap;margin-top:28px}.contact-social a{font-size:9px;color:#667368}.contact-social a:hover{text-decoration:underline}.inquiry-form{background:var(--paper);padding:28px 31px 24px;box-shadow:0 8px 25px rgba(42,60,50,.05)}.inquiry-form .eyebrow{margin-bottom:15px}.inquiry-form label{display:block;font-size:9px;font-weight:600;margin:12px 0 5px}.inquiry-form label span{color:var(--orange)}.inquiry-form input,.inquiry-form textarea,.inquiry-form select{width:100%;border:0;border-bottom:1px solid #d9ded2;background:transparent;padding:9px 2px;font-size:11px;color:var(--ink);outline:0;border-radius:0}.inquiry-form input:focus,.inquiry-form textarea:focus,.inquiry-form select:focus{border-color:var(--green)}.inquiry-form textarea{resize:vertical}.inquiry-form .button{margin-top:17px}.form-note{display:inline-block;font-size:8px;color:#879084;margin:0 0 0 10px}.site-footer{padding:24px 7.1%;display:flex;align-items:center;justify-content:space-between}.site-footer .wordmark{font-size:21px}.site-footer p{font-size:9px;color:#82897e}.site-footer p span{margin-left:12px}.back-top{font-size:9px;color:#647066}.modal{position:fixed;inset:0;z-index:20;display:none;align-items:center;justify-content:center;padding:25px}.modal.open{display:flex}.modal-backdrop{position:absolute;inset:0;background:rgba(24,37,32,.72);border:0;cursor:pointer}.modal-panel{position:relative;z-index:1;background:var(--paper);width:min(700px,100%);max-height:90vh;overflow:auto;padding:39px 46px 30px;box-shadow:0 22px 70px #16241c55}.modal-close{position:absolute;right:18px;top:12px;border:0;background:none;font-size:27px;cursor:pointer;color:#53645a}.modal-panel .eyebrow{margin-bottom:9px}.modal-panel h2{font:500 42px/1.1 var(--serif);letter-spacing:-1.5px;margin:0}.modal-meta{font-size:10px;color:#738073;margin:10px 0 19px}.modal-description{font-size:12px;color:#59665e;line-height:1.8}.modal-art{height:170px;margin:20px 0;background:linear-gradient(130deg,#d4e5d9,#e8c984 55%,#4c8679);position:relative;overflow:hidden}.modal-art:after{content:'✳';font-size:180px;line-height:1;position:absolute;left:calc(50% - 75px);top:3px;color:#f5f0deaa}.modal-footer{border-top:1px solid var(--line);padding-top:17px;display:flex;justify-content:space-between;font-size:10px}.modal-footer span{color:#69766c}.modal-footer a{color:var(--green);font-weight:600}
@media(max-width:850px){.site-header{padding:0 5%;height:72px}.hero{padding-left:6%;padding-right:6%;grid-template-columns:1fr .95fr;gap:2%;min-height:580px}.hero h1{font-size:clamp(48px,7vw,68px)}.hero-art{height:420px}.note-top{right:-12px}.section-pad{padding-left:7%;padding-right:7%}.featured-grid{gap:30px 18px}.card-tall .card-image{height:520px}.card-image{height:240px}.contact-section{gap:7%}.main-nav{gap:23px}}
@media(max-width:640px){html{scroll-padding-top:68px}.site-header{height:66px}.wordmark{font-size:23px}.menu-toggle{display:flex;flex-direction:column;gap:5px;border:0;background:none;padding:10px}.menu-toggle span{width:22px;height:1px;background:var(--ink)}.main-nav{display:none;position:absolute;top:65px;left:0;right:0;background:var(--paper);padding:19px 7% 25px;box-shadow:0 15px 20px #263c3812;flex-direction:column;align-items:stretch;gap:5px}.main-nav.open{display:flex}.nav-link{padding:8px 0}.nav-cta{margin-top:8px;align-self:flex-start}.hero{display:flex;flex-direction:column;align-items:stretch;padding:49px 7% 68px;gap:27px}.hero-copy{padding:0}.hero h1{font-size:58px;letter-spacing:-2.5px}.hero-intro{font-size:13px;margin:19px 0 22px;max-width:340px}.hero-actions{gap:13px}.availability{font-size:9px}.hero-art{height:380px;width:88%;margin:0 5% 0 auto}.note-bottom{left:-20px}.hero-scroll{left:7%;bottom:17px}.section-pad{padding:70px 7%}.work-section{padding-top:72px}.section-heading h2,.work-more h2,.cv-section h2{font-size:39px}.section-heading{align-items:end;margin-bottom:26px}.section-heading .text-link{font-size:9px}.featured-grid{grid-template-columns:1fr;gap:26px}.card-tall{grid-row:auto}.card-tall .card-image,.card-image{height:300px}.card-meta h3{font-size:18px}.work-more{padding-top:82px}.work-more h2{margin-bottom:26px}.filter-bar{gap:7px}.filter{font-size:9px;padding:7px 11px}.project-row{grid-template-columns:32px 1fr 26px;padding:15px 0}.project-detail{display:none}.project-title{font-size:17px}.project-number{font-size:9px}.about-section{grid-template-columns:1fr;gap:44px;padding-top:70px;padding-bottom:72px}.about-visual{width:86%;margin:0 auto}.about-painting{height:350px}.about-copy h2{font-size:46px}.about-copy{max-width:none}.mission-band{padding:60px 15px}.mission-doodle{right:5%;font-size:40px}.cv-section{grid-template-columns:1fr;gap:25px;padding-top:70px;padding-bottom:75px}.contact-section{grid-template-columns:1fr;gap:34px;padding-top:69px;padding-bottom:65px}.contact-copy h2{font-size:52px}.inquiry-form{padding:23px 21px}.form-note{display:block;margin:9px 0 0}.site-footer{padding:20px 7%;flex-wrap:wrap;gap:8px}.site-footer p{order:3;width:100%;margin:0}.site-footer p span{margin-left:5px}.modal{padding:13px}.modal-panel{padding:35px 22px 22px}.modal-panel h2{font-size:34px}.modal-art{height:130px}.modal-footer{gap:14px}.modal-footer span{max-width:45%}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}
.card-image img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .6s cubic-bezier(.2,.75,.3,1)}
.featured-card:hover .card-image img{transform:scale(1.035)}
.modal-art.has-gallery{height:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:8px;background:#e4e7da}
.modal-art.has-gallery:after{display:none}
.modal-art.has-gallery figure{margin:0;background:#f3eedf;overflow:hidden}
.modal-art.has-gallery img{display:block;width:100%;height:145px;object-fit:cover}
.modal-art.has-gallery figcaption{font:italic 10px/1.3 var(--serif);padding:7px 8px 9px;color:#506458}
.modal-art.has-gallery figure:first-child{grid-column:span 2;grid-row:span 2}
.modal-art.has-gallery figure:first-child img{height:300px}
@media(max-width:640px){.modal-art.has-gallery{grid-template-columns:repeat(2,1fr)}.modal-art.has-gallery figure:first-child{grid-column:span 2;grid-row:auto}.modal-art.has-gallery figure:first-child img{height:230px}.modal-art.has-gallery img{height:120px}}

/* Simplified homepage layout */
.hero{min-height:470px;display:flex;justify-content:center;text-align:center;padding:72px 7.1% 82px}
.hero-copy{max-width:820px;padding:0}
.hero-identity{display:flex;align-items:center;justify-content:center;gap:13px;margin:0 auto 25px;text-align:left}
.character-portrait{width:74px;height:74px;border-radius:50%;overflow:hidden;background:#f1ddbd;flex:0 0 auto;position:relative}
.character-portrait img{width:150%;height:150%;max-width:none;object-fit:contain;object-position:50% 5%;position:absolute;left:-25%;top:-8%}
.identity-details p{margin:0;color:var(--orange);font-size:11px;line-height:1.45}
.identity-details .identity-name{font:700 18px/1 var(--serif);letter-spacing:-.3px;margin-bottom:5px}
.hero h1{font-size:clamp(28px,3vw,42px);letter-spacing:-1.4px}
.hero-intro{margin:22px auto 28px}
.hero-actions{justify-content:center}
.about-section{display:block;text-align:center}
.about-copy{max-width:620px;margin:0 auto}
.contact-section{display:block}
.contact-copy{max-width:620px;margin:0 auto;text-align:center}
.contact-copy>p:not(.eyebrow){margin-left:auto;margin-right:auto}
.contact-social{justify-content:center}

.home-page{--paper:#fff5df;--line:#e3d8bf}
.home-page{--orange:#de7d4b}
.home-page .site-header,.home-page .main-nav{background:var(--paper)}
.home-page .wordmark{color:#de7d4b}
.home-page .about-section,.home-page .contact-section{background:var(--paper)}
.home-page .card-image{background:#ece8d8}
.home-page .featured-card .card-image{border:1px solid rgba(83,100,78,.12)}
.home-page .hero{min-height:340px;padding-top:42px;padding-bottom:50px}
.home-page .work-section{padding-top:48px}
.home-page .section-heading{margin-bottom:28px}

@media(max-width:640px){
  .hero{min-height:410px;padding:58px 7% 65px}
  .hero-identity{margin-bottom:22px}
  .character-portrait{width:68px;height:68px}
  .hero h1{font-size:clamp(27px,8vw,34px);letter-spacing:-1px}
  .hero .eyebrow{margin-bottom:20px}
  .about-section{padding-top:70px;padding-bottom:72px}
  .contact-section{padding-top:69px;padding-bottom:65px}
  .home-page .hero{min-height:300px;padding-top:42px;padding-bottom:44px}
  .home-page .work-section{padding-top:48px}
}

/* All-work grid */
.featured-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:30px 22px}
.featured-grid .featured-card{display:flex;flex-direction:column}
.featured-grid .card-image,.featured-grid .card-tall .card-image{height:270px}
.featured-grid .card-meta{min-height:70px}
.featured-grid .card-meta>div{align-self:flex-start}

@media(max-width:850px){
  .featured-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 18px}
  .featured-grid .card-image,.featured-grid .card-tall .card-image{height:240px}
}

@media(max-width:640px){
  .featured-grid{grid-template-columns:1fr;gap:26px}
  .featured-grid .card-image,.featured-grid .card-tall .card-image{height:300px}
}

/* Shared palette for the homepage and every dedicated work page. */
:root{--paper:#fff5df;--orange:#de7d4b}
.wordmark{color:var(--orange)}

/* About page */
.about-page main{max-width:1120px;margin:0 auto;padding:92px 7.1% 110px}
.about-page .about-intro{max-width:820px;margin-bottom:72px}
.about-page .about-intro h1{font:700 11px/1 var(--sans);letter-spacing:2.2px;text-transform:uppercase;margin:0 0 20px;color:var(--green)}
.about-page .about-identity{display:flex;align-items:center;gap:24px}
.about-page .about-character{width:132px;height:132px;flex:0 0 auto;border-radius:50%;overflow:hidden;background:#f1ddbd}
.about-page .about-character img{width:150%;height:150%;max-width:none;object-fit:contain;object-position:50% 5%;position:relative;left:-25%;top:-8%}
.about-page .about-brand-name{font:700 clamp(48px,7vw,82px)/.98 var(--serif);letter-spacing:-2.5px;color:var(--orange);margin:0 0 8px}
.about-page .about-name{font:600 15px/1.35 var(--sans);letter-spacing:.1px;color:var(--ink);margin:0 0 7px}
.about-page .about-location,.about-page .about-fields{margin:0;color:var(--green);font-size:13px}
.about-page .about-fields{margin-top:4px}
.about-page .about-content{max-width:820px;border-top:1px solid var(--line);padding-top:48px}
.about-page .about-content h2{font:500 clamp(34px,5vw,52px)/1.08 var(--serif);letter-spacing:-1.6px;margin:0 0 24px;color:var(--green)}
.about-page .about-content p{font-size:15px;line-height:1.9;color:#59665e;margin:0 0 25px}
.about-page .about-content ul{margin:0 0 29px;padding-left:22px;color:#59665e}
.about-page .about-content li{padding-left:7px;margin:9px 0;line-height:1.8}
.about-page .about-biography{display:block}
.about-page .about-profile{float:right;width:210px;aspect-ratio:1;overflow:hidden;border-radius:50%;background:#f1ddbd;margin:4px 0 20px 42px}
.about-page .about-profile img{width:100%;height:100%;display:block;object-fit:cover}
.about-page .about-closing{font:500 22px/1.55 var(--serif)!important;color:var(--ink)!important;margin-top:34px!important}
.about-page .site-footer{border-top:1px solid var(--line)}
@media(max-width:640px){.about-page main{padding:62px 7% 76px}.about-page .about-intro{margin-bottom:53px}.about-page .about-intro h1{font-size:10px;letter-spacing:1.8px;margin-bottom:16px}.about-page .about-identity{align-items:flex-start;gap:16px}.about-page .about-character{width:86px;height:86px}.about-page .about-brand-name{font-size:40px;letter-spacing:-1.2px}.about-page .about-name{font-size:13px}.about-page .about-fields,.about-page .about-location{font-size:12px}.about-page .about-content{padding-top:36px}.about-page .about-content p{font-size:14px}.about-page .about-profile{float:none;width:150px;margin:0 auto 28px}}
