@import url('/assets/fonts.css');
:root{--paper:#f5f3ed;--wine:#501d2c;--ink:#302c2a;--muted:#6b615c;--line:#d8d0c7;--soft:#e6e9e6;--serif:'Cormorant Garamond',Georgia,serif;--sans:'DM Sans',Arial,sans-serif;font-family:var(--sans);color:var(--wine);background:var(--paper);font-synthesis:none;scroll-behavior:smooth;scroll-padding-top:100px}
*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:2px solid currentColor;outline-offset:6px}::selection{background:var(--wine);color:var(--paper)}img{display:block;width:100%;height:auto}button{cursor:pointer}h1,h2,h3,p,figure{margin:0}h1,h2{font-family:var(--serif);font-weight:400;letter-spacing:-.048em}h2{font-size:clamp(3.2rem,5.3vw,5.75rem);line-height:1.02}em{font-weight:400}p{font-size:1rem;line-height:1.8}a{transition:color .2s,background .2s}a:hover{color:#936375}.skip-link{position:fixed;top:-100px;left:20px;padding:16px;background:var(--wine);color:white;z-index:50}.skip-link:focus{top:16px}.site-header{position:absolute;z-index:10;top:0;left:0;width:100%;padding:25px 4.2vw;display:flex;align-items:center;justify-content:space-between;gap:24px}.wordmark{display:flex;align-items:center;gap:16px;line-height:1}.wordmark>img{width:56px;height:56px;object-fit:contain}.wordmark-type{display:flex;flex-direction:column;align-items:flex-start}.wordmark-name{font-family:var(--serif);font-size:3.15rem;font-weight:600;letter-spacing:-.055em}.wordmark-small{font-size:.82rem;font-weight:600;letter-spacing:.16em;margin-top:5px}nav{display:flex;align-items:center;gap:34px;font-size:.875rem}.nav-contact{padding:13px 20px;border:1px solid #9a7d84;display:flex;gap:32px;align-items:center}.nav-contact:hover{background:var(--wine);color:var(--paper)}.hero-scroll{height:190svh;position:relative;min-height:1180px}.hero-sticky{height:100svh;min-height:690px;position:sticky;top:0;overflow:hidden;isolation:isolate}.hero-topline{position:absolute;top:140px;left:4.2vw;right:4.2vw;display:flex;justify-content:space-between;font-size:.75rem;letter-spacing:.13em;line-height:1.5}.hero-sticky h1{position:absolute;top:max(175px,19%);left:0;right:0;text-align:center;font-size:clamp(4rem,min(7.4vw,11svh),8.5rem);line-height:.95;z-index:2;pointer-events:none;transform:translateY(var(--heading-shift,0px));opacity:var(--heading-opacity,1)}.hero-sticky h1 em{display:inline-block;margin-left:14vw}.sculpture{position:absolute;inset:39% 18% 13%;z-index:3;pointer-events:none;transform:translateY(var(--scene-shift,0px))}.sculpture canvas{display:block;width:100%;height:100%;opacity:0;transition:opacity .4s}.sculpture.model-ready canvas{opacity:1}.logo-fallback{display:none;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(70%,300px)}.logo-fallback img{width:100%;height:auto}.sculpture.model-failed .logo-fallback{display:block}.hero-bottom{position:absolute;bottom:36px;left:4.2vw;right:4.2vw;display:grid;grid-template-columns:1fr 1fr 1fr;gap:24px;align-items:end;z-index:5}.hero-bottom p{font-size:.9375rem;line-height:1.55}.scroll-link{display:flex;align-items:center;justify-content:center;gap:13px;font-size:.75rem;letter-spacing:.075em;white-space:nowrap;padding:12px 0}.scroll-rule{width:30px;height:1px;background:currentColor}.scroll-link>span:last-child{font-size:1.25rem}.hero-bottom button{justify-self:end;background:none;border:0;border-bottom:1px solid #bca3a8;font-size:.8125rem;min-height:44px;padding:8px 0}.hero-edge{position:absolute;right:3.5vw;top:50%;writing-mode:vertical-rl;font-size:.75rem;letter-spacing:.17em;opacity:.75}.section-wrap{padding:38px 7vw 96px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-bottom:27px;border-bottom:1px solid var(--line)}.eyebrow,.fine-label{font-size:.75rem;letter-spacing:.09em;line-height:1.6}.fine-label{letter-spacing:0}.intro{position:relative;background:var(--paper);border-top:1px solid var(--line)}.intro-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:9vw;padding:83px 0 75px}.intro-copy{max-width:420px;padding-top:15px;color:var(--ink)}.intro-copy p:first-child{font-family:var(--serif);font-size:2rem;line-height:1.23;color:var(--wine);letter-spacing:-.02em;margin-bottom:26px}.intro-copy p{margin-bottom:25px}.text-link{display:inline-flex;gap:30px;align-items:center;font-size:.875rem;padding:8px 0;border-bottom:1px solid currentColor;line-height:1.5}.text-link span{font-size:1.15rem}.framing-details{display:grid;grid-template-columns:repeat(3,1fr);gap:5.5vw;border-top:1px solid var(--line);padding-top:32px}.framing-details article{display:grid;grid-template-columns:30px 1fr;column-gap:20px}.detail-number{font-family:var(--serif);font-size:1.75rem;font-style:italic}.framing-details h3{font-family:var(--serif);font-size:2rem;font-weight:500;letter-spacing:-.025em;margin-bottom:12px}.framing-details p{grid-column:2;font-size:.9375rem;color:var(--muted);line-height:1.65}.workshop{background:var(--soft);padding-bottom:95px}.workshop .section-heading{border-color:#c5cac5}.workshop-grid{display:grid;grid-template-columns:1.06fr 1fr;gap:9vw;align-items:center;padding-top:55px}.workshop-photo img{aspect-ratio:6/7;object-fit:cover;background:#c7c6be}.workshop-photo figcaption{display:flex;justify-content:space-between;gap:16px;font-size:.75rem;line-height:1.4;padding-top:15px}.workshop-photo figcaption span:first-child{letter-spacing:.07em}.workshop-copy h2{font-size:clamp(3.5rem,5vw,5.4rem);margin:24px 0 28px}.workshop-copy p{max-width:410px;color:var(--ink);margin-bottom:18px}.workshop-copy .text-link{margin-top:10px}.workshop-copy .personal-note{font-family:var(--serif);font-size:1.8rem;font-style:italic;color:var(--wine);margin-top:58px}.contact{background:var(--wine);color:var(--paper);padding-bottom:28px}.contact .section-heading{border-color:#7e5360}.contact-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:10vw;padding:75px 0 90px}.contact h2{font-size:clamp(4.3rem,7.3vw,8.15rem)}.contact-cta{display:flex;align-items:center;justify-content:space-between;gap:30px;width:fit-content;font-size:1rem;border:1px solid #a2878f;padding:18px 24px;margin-top:36px}.contact-cta:hover{background:var(--paper);color:var(--wine)}.contact-information{display:flex;flex-direction:column;gap:32px;padding-top:12px}.contact-information h3{font-size:.8125rem;font-weight:400;letter-spacing:.03em;color:#d0bdc2;margin-bottom:12px}.contact-information address{font-style:normal;font-size:1.25rem;line-height:1.5}.contact-information p{font-size:.9375rem;color:#e3d7da;max-width:350px}.contact-information .text-link{margin-top:7px}.email-link{font-size:1rem;overflow-wrap:anywhere}.contact a:hover{color:#d5bdc5}.contact .contact-cta:hover{color:var(--wine)}footer{padding-top:28px;border-top:1px solid #7e5360;display:flex;justify-content:space-between;align-items:center;gap:24px;font-size:.8125rem;color:#dbcbd0}footer .footer-brand{font-family:var(--serif);font-size:1.4rem;color:var(--paper)}footer>div{display:flex;gap:25px}
@media(min-width:1600px){.section-wrap{padding-left:max(7vw,calc((100vw - 1400px)/2));padding-right:max(7vw,calc((100vw - 1400px)/2))}}
@media(max-width:900px){.hero-sticky h1{top:max(175px,22%);font-size:10vw}.sculpture{inset:42% 9% 13%}.hero-bottom{grid-template-columns:1fr 1fr}.scroll-link{justify-content:flex-end}.hero-bottom button{grid-column:2;position:absolute;bottom:65px;right:0}.hero-edge{display:none}.intro-grid{gap:5vw}.intro h2{font-size:4.6vw}.framing-details{gap:28px}.framing-details article{column-gap:8px}.framing-details h3{font-size:1.65rem}.workshop-grid{gap:5vw}.workshop-copy h2{font-size:4.9vw}.workshop-copy .personal-note{margin-top:35px}.contact-grid{gap:5vw}.contact h2{font-size:8.5vw}footer{flex-wrap:wrap}footer>*{min-width:40%}footer>div{order:3}footer>a:last-child{order:4;text-align:right}footer>span{text-align:right}}
@media(max-width:600px){:root{scroll-padding-top:24px}.site-header{padding:22px 6vw;gap:15px}.wordmark-name{font-size:2.05rem}.wordmark>img{width:38px;height:38px}.wordmark{gap:9px}.wordmark-small{font-size:.75rem;letter-spacing:.04em}nav{gap:0}nav>a:not(.nav-contact){display:none}.nav-contact{font-size:.875rem;gap:23px;padding:12px 15px}.hero-scroll{height:165svh;min-height:1000px}.hero-sticky{min-height:670px}.hero-topline{top:124px;left:6vw;right:6vw;font-size:.75rem;letter-spacing:.055em}.hero-topline span:first-child{max-width:130px}.hero-topline span:last-child{max-width:100px;text-align:right}.hero-sticky h1{top:25%;font-size:13.5vw;line-height:1.02;padding:0 4vw}.hero-sticky h1 em{margin-left:0}.sculpture{inset:43% 0 14%}.hero-bottom{bottom:27px;left:6vw;right:6vw;gap:20px;display:flex;align-items:flex-end;justify-content:space-between}.hero-bottom p{font-size:.875rem;max-width:205px}.scroll-link{font-size:.75rem;gap:7px}.scroll-link span:nth-child(2){display:none}.scroll-rule{width:24px}.hero-bottom button{font-size:.75rem;bottom:56px}.section-wrap{padding:28px 6vw 60px}.section-heading{padding-bottom:21px;align-items:center}.eyebrow,.fine-label{font-size:.75rem}.fine-label{max-width:120px;text-align:right}.intro-grid{display:block;padding:48px 0 45px}.intro h2{font-size:clamp(2.8rem,10.5vw,4.3rem);line-height:1.04}.intro-copy{padding-top:32px}.intro-copy p:first-child{font-size:1.9rem;max-width:330px}.framing-details{grid-template-columns:1fr;gap:28px;padding-top:28px}.framing-details article{grid-template-columns:28px 1fr;gap:6px 20px}.framing-details h3{font-size:1.9rem;margin:0}.framing-details p{font-size:1rem;max-width:340px}.workshop .section-heading .text-link{font-size:.75rem;gap:10px}.workshop-grid{display:flex;flex-direction:column;gap:47px;padding-top:35px;align-items:stretch}.workshop-photo img{aspect-ratio:4/4.5}.workshop-photo figcaption{font-size:.75rem}.workshop-copy h2{font-size:clamp(3rem,11.5vw,4.5rem);margin:20px 0 25px}.workshop-copy p{max-width:100%}.workshop-copy .personal-note{font-size:1.75rem;margin-top:34px;margin-bottom:0}.contact-grid{display:block;padding:47px 0 48px}.contact h2{font-size:15vw;line-height:1}.contact-cta{margin-top:28px;gap:32px;padding:16px 21px}.contact-information{padding-top:50px;gap:31px}.contact-information h3{font-size:.875rem}.contact-information p{font-size:1rem}.email-link{font-size:.9375rem}footer{row-gap:23px;font-size:.75rem}footer .footer-brand{font-size:1.1rem}footer>div{gap:18px}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,*::before,*::after{transition:none!important}.hero-scroll{height:100svh;min-height:690px}.hero-sticky{position:relative}}

@media(max-width:360px){.site-header{padding-left:5vw;padding-right:5vw}.nav-contact{gap:12px;padding:12px}.wordmark>img{width:32px;height:32px}.wordmark{gap:7px}.wordmark-name{font-size:1.9rem}}

/* Transparent frame-corner signature, reused with generous space around it. */
.brand-mark{display:block;flex-shrink:0;object-fit:contain}
.brand-mark--light{filter:brightness(0) invert(1)}
.framing-signature{display:flex;align-items:center;gap:18px;max-width:none}
.framing-signature .brand-mark{width:26px;height:26px;opacity:.82}
.workshop-copy .personal-note{display:flex;align-items:center;gap:18px;line-height:1.15}
.personal-note .brand-mark{width:46px;height:46px;opacity:.9}
.contact-mark{display:block;width:92px;height:92px;object-fit:contain;margin-top:43px;opacity:.28}
footer .footer-brand{display:inline-flex;align-items:center;gap:12px}
.footer-brand .brand-mark{width:30px;height:30px}
@media(max-width:600px){
  .hero-sticky h1{font-size:12.7vw}
  .framing-signature{gap:10px;font-size:.75rem}
  .framing-signature .brand-mark{width:22px;height:22px}
  .workshop-copy .personal-note{gap:15px}
  .personal-note .brand-mark{width:38px;height:38px}
  .contact-mark{width:72px;height:72px;margin-top:32px}
  footer .footer-brand{gap:8px}
  .footer-brand .brand-mark{width:24px;height:24px}
}
