:root{--cx-brand:27px;--cx-nav:14px;--cx-hero-title:76px;--cx-hero-description:16px;--cx-page-title:76px;--cx-section-title:52px;--cx-subheading:30px;--cx-body:18px;--cx-about-body:20px;--cx-story-title:32px;--cx-story-summary:18px;--cx-project-body:21px;--cx-project-lead:26px;--cx-commission-body:20px;--cx-eyebrow:12px;--cx-button:13px;--cx-footer:12px;--cx-paragraph-gap:20px;--cx-section-pad:64px;--cx-card-gap:22px;--cx-nav-gap:18px;--cx-content-width:1260px;--cx-hero-height:580px;--cx-gallery-tile:380px;--cx-portrait-height:320px;--cx-commission-height:185px;--cx-body-leading:1.65;--cx-paragraph-leading:1.55}

body{font-size:var(--cx-body);line-height:var(--cx-body-leading)}
.shell{width:min(var(--cx-content-width),calc(100% - 80px))}
.brand-name{font-size:var(--cx-brand);letter-spacing:.17em}
.nav{gap:var(--cx-nav-gap)}
.nav a{font-size:var(--cx-nav);letter-spacing:.07em}
.eyebrow,.writing-info .eyebrow,.art-caption .eyebrow,.section-intro p{font-size:var(--cx-eyebrow)}
.btn,.text-link,.section-heading a{font-size:var(--cx-button)}
.hero,.hero-shell{min-height:var(--cx-hero-height)}
.hero h1{font-size:clamp(42px,6vw,var(--cx-hero-title));line-height:1.04}
.hero-desc,.hero-desc p{font-size:var(--cx-hero-description);line-height:var(--cx-paragraph-leading)}
.hero-desc{margin-bottom:26px}
.hero-desc p{margin:0 0 var(--cx-paragraph-gap)}
.page-banner h1{font-size:clamp(42px,6.5vw,var(--cx-page-title));line-height:1.08}
.section-intro h2,.connect-section h2{font-size:var(--cx-section-title);letter-spacing:.12em}
.section-heading h2,.section-heading h3,.dark-section-title h2,.text-section h2,.collection-heading h2{font-size:var(--cx-subheading)}
.work-section,.collection-section,.text-section{padding-top:var(--cx-section-pad);padding-bottom:var(--cx-section-pad)}
.about-and-commissions{padding-top:calc(var(--cx-section-pad)*.7);padding-bottom:calc(var(--cx-section-pad)*.7)}
.connect-section{padding-top:calc(var(--cx-section-pad)*.65);padding-bottom:calc(var(--cx-section-pad)*.65)}
.work-columns,.writing-grid,.gallery-grid,.detail-grid,.about-page-grid,.commission-page-grid{column-gap:var(--cx-card-gap);row-gap:var(--cx-card-gap)}
.writing-info h3,.writing-grid .writing-info h3{font-size:var(--cx-story-title);line-height:1.18}
.writing-info .card-summary,.writing-info .card-summary p{font:400 var(--cx-story-summary)/var(--cx-paragraph-leading) var(--serif);color:#424356}
.about-pair-copy .rich-text p{font-size:var(--cx-about-body);line-height:var(--cx-paragraph-leading);margin:0 0 var(--cx-paragraph-gap)}
.text-section .rich-text p,.text-section .rich-text li{font-size:var(--cx-about-body);line-height:var(--cx-paragraph-leading)}
.detail-copy .rich-text p,.detail-copy .rich-text li{font-size:var(--cx-project-body);line-height:var(--cx-paragraph-leading)}
.detail-copy .lead p,.text-section .lead p{font-size:var(--cx-project-lead);font-style:italic;line-height:var(--cx-paragraph-leading)}
.commission-text,.commission-text p,.text-section .commission-rich p{font-size:var(--cx-commission-body);line-height:var(--cx-paragraph-leading)}
.rich-text p{margin:0 0 var(--cx-paragraph-gap)}
.rich-text p:last-child{margin-bottom:0}
.rich-text ul,.rich-text ol{padding-left:1.5em;margin:0 0 var(--cx-paragraph-gap)}
.rich-text li{margin-bottom:.5em}
.rich-text blockquote{border-left:3px solid var(--lav);padding-left:1em;margin:1em 0;font-style:italic}
.rich-text a{text-decoration:underline;text-underline-offset:.15em}
.rich-text h2{font:500 var(--cx-subheading)/1.2 var(--serif);margin:1.2em 0 .45em}
.rich-text h3{font:500 calc(var(--cx-subheading)*.83)/1.2 var(--serif);margin:1.1em 0 .45em}
.art-feature-grid{column-gap:var(--cx-card-gap);row-gap:var(--cx-card-gap)}
.gallery-grid .art-open{height:var(--cx-gallery-tile)}
.about-portrait{height:var(--cx-portrait-height)}
.comm-img{height:var(--cx-commission-height)}
.footer-inner>small,.footer-center,.footer-brand small{font-size:var(--cx-footer)}
@media(max-width:1120px){
 .site-header{height:74px}
 .nav-toggle{display:flex;flex-direction:column;gap:5px;justify-content:center;background:transparent;border:1px solid #aeb0c066;border-radius:4px;height:40px;width:43px;cursor:pointer;padding:10px}
 .nav-toggle span{background:#e9e2f2;height:2px;width:100%}
 .nav{display:none;position:absolute;top:74px;left:0;right:0;background:#141e30;flex-direction:column;align-items:stretch;padding:18px 30px 24px;box-shadow:0 15px 24px #1118;gap:0}
 .nav.open{display:flex}
 .nav a{font-size:var(--cx-nav);padding:10px 0}
 .shell{width:min(var(--cx-content-width),calc(100% - 52px))}
}
@media(max-width:570px){
 .shell{width:calc(100% - 34px)}
 .hero h1{font-size:clamp(42px,11vw,var(--cx-hero-title));line-height:1.03}
 .page-banner h1{font-size:clamp(42px,11vw,var(--cx-page-title))}
 .section-intro h2,.connect-section h2{font-size:clamp(30px,8vw,var(--cx-section-title))}
 .writing-info h3{font-size:clamp(21px,6vw,var(--cx-story-title))}
 .hero,.hero-shell{min-height:max(565px,var(--cx-hero-height))}
 .gallery-grid .art-open{height:min(var(--cx-gallery-tile),450px)}
}

