:root{--paper:#eeeae3;--ink:#242622;--muted:#686a63;--line:#cecec4;--accent:#93563e;--dark:#252b26;--ease:cubic-bezier(.2,.7,.2,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:32px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}::selection{background:#c8d1bd;color:#1e261f}a{color:inherit;text-decoration:none}button{font:inherit}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:6px}img{max-width:100%;display:block}figure,h1,h2,h3,p{margin:0}.skip-link{position:fixed;top:-100px;left:16px;z-index:20;background:var(--ink);color:white;padding:15px}.skip-link:focus{top:12px}.reading-progress{position:fixed;top:0;left:0;width:100%;height:3px;transform:scaleX(0);transform-origin:left;background:var(--accent);z-index:20;pointer-events:none}.site-header{height:106px;margin:0 4.5%;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}.wordmark{font-family:Georgia,serif;font-size:28px;letter-spacing:-1.5px;white-space:nowrap}.wordmark span{font:9px Arial,sans-serif;vertical-align:top;display:inline-block;margin:7px 0 0 5px}.site-header nav{display:flex;align-items:center;gap:37px;font-size:12px}.site-header nav a:not(.nav-cta){position:relative}.site-header nav a:not(.nav-cta):after,.text-link:after{content:'';position:absolute;bottom:-5px;left:0;width:100%;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform .4s var(--ease)}.site-header nav a:hover:after,.text-link:hover:after{transform:scaleX(1);transform-origin:left}.nav-cta{border:1px solid #95988e;border-radius:40px;padding:13px 20px;display:flex;gap:28px;transition:background .3s,color .3s}.nav-cta:hover{background:var(--ink);color:var(--paper)}.kicker{font-size:10px;line-height:1.6;letter-spacing:1.7px;text-transform:uppercase;font-weight:400}.hero{position:relative;margin:0 4.5%;height:780px;max-height:1050px}.hero-topline{display:flex;justify-content:space-between;padding-top:28px}.location{display:flex;gap:10px;align-items:center}.location i{width:5px;height:5px;border-radius:50%;background:var(--accent)}.hero-title-wrap{position:absolute;top:105px;left:1%;z-index:2;pointer-events:none}h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(110px,14.2vw,215px);font-weight:400;line-height:.82;letter-spacing:-.075em}.title-line{display:block;overflow:hidden;padding:0 .14em .13em 0;margin-bottom:-.035em;white-space:nowrap}.last-name{font-style:italic;margin-left:15.8vw}.letter{display:inline-block;animation:letter-enter 1.3s var(--ease) both;animation-delay:calc(.12s + var(--i)*.065s)}.full-stop{color:var(--accent)}.hero-image{position:absolute;right:4%;top:112px;width:39%;max-width:530px;transform:rotate(2.5deg);animation:photo-enter 1.5s var(--ease) both;animation-delay:.25s}.image-window{overflow:hidden;background:#c4c9c4;aspect-ratio:4/5}.hero-image img{width:100%;height:100%;object-fit:cover;transform:scale(1.055) translateY(var(--photo-shift,0px));transition:transform .2s linear}.hero-image figcaption{display:flex;justify-content:space-between;font-size:9px;letter-spacing:1.5px;text-transform:uppercase;margin-top:15px}.hero-copy{position:absolute;top:500px;left:1.5%;animation:fade-up 1.1s var(--ease) .6s both}.small-cross{position:absolute;left:0;top:2px;color:var(--accent);font-size:24px}.hero-copy p{font-size:16px;line-height:1.65;margin-left:47px}.hero-copy p em{font-family:Georgia,serif;font-size:20px;font-weight:400}.text-link{position:relative;display:inline-flex;align-items:center;gap:38px;font-size:12px;padding:5px 0}.hero-copy .text-link{margin:23px 0 0 47px}.scroll-cue{position:absolute;left:1.5%;bottom:36px;display:flex;align-items:center;gap:15px;font-size:9px;letter-spacing:1.5px;text-transform:uppercase}.scroll-line{height:34px;width:1px;background:#b7b9ae;position:relative;overflow:hidden}.scroll-line:after{content:'';background:var(--accent);position:absolute;top:-100%;height:100%;width:1px;animation:scroll-hint 2.8s ease-in-out 3}.hero-index{position:absolute;bottom:42px;right:0;font-size:10px;letter-spacing:1.5px}.ticker{overflow:hidden;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:22px 0}.ticker-track{display:flex;width:max-content;animation:drift 32s linear infinite}.ticker-track>span{display:flex;align-items:center;gap:46px;padding-right:46px;font-size:clamp(28px,3.2vw,48px);font-family:Georgia,serif;font-style:italic;white-space:nowrap}.ticker i{font-family:Arial,sans-serif;font-style:normal;color:var(--accent);font-size:25px}.section-pad{padding:90px 6%}.section-top{display:flex;justify-content:space-between;gap:20px;padding-bottom:24px;border-bottom:1px solid var(--line)}h2{font-family:Georgia,serif;font-weight:400;font-size:clamp(44px,5.7vw,86px);line-height:1.04;letter-spacing:-.055em}h2 em{font-weight:400;color:var(--accent)}.work-heading{display:flex;justify-content:space-between;align-items:end;margin:46px 0 62px;gap:25px}.work-heading p{font-size:13px;line-height:1.8;color:var(--muted);padding-bottom:6px}.gallery{display:grid;grid-template-columns:1.05fr .8fr;column-gap:12%;row-gap:65px;align-items:start}.photo-card{display:block}.photo-frame{overflow:hidden;position:relative;background:#d9d9ce;isolation:isolate}.photo-frame img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;transition:transform 1s var(--ease),filter 1s}.photo-card:hover .photo-frame img,.photo-card:focus-visible .photo-frame img{transform:scale(1.055);filter:brightness(.91)}.photo-open{position:absolute;right:20px;top:20px;width:43px;height:43px;background:var(--paper);color:var(--ink);border-radius:50%;display:grid;place-items:center;font-size:22px;transform:translateY(-65px);transition:transform .45s var(--ease)}.photo-label{position:absolute;bottom:22px;left:24px;color:white;text-shadow:0 1px 6px #000;font-size:10px;letter-spacing:1px;opacity:0;transform:translateY(10px);transition:opacity .4s,transform .4s}.photo-card:hover .photo-open,.photo-card:focus-visible .photo-open{transform:translateY(0)}.photo-card:hover .photo-label,.photo-card:focus-visible .photo-label{opacity:1;transform:none}.photo-caption{display:flex;justify-content:space-between;align-items:center;padding:21px 0;border-bottom:1px solid var(--line)}.photo-caption .kicker{font-size:9px;color:var(--muted)}.photo-caption h3{font:400 28px Georgia,serif;letter-spacing:-.7px;margin-top:8px}.caption-arrow{font-size:24px}.card-travel{margin-top:170px}.card-hosting{margin-top:-15px;max-width:410px}.gallery-note{padding:50px 0 0 12%}.gallery-note>span{font-size:50px;color:var(--accent)}.gallery-note p{font:400 clamp(24px,2.9vw,42px)/1.3 Georgia,serif;letter-spacing:-1px;margin:24px 0}.gallery-note p em{color:var(--accent)}.about-section{background:#e1e2d8}.about-section .section-top{border-color:#bfc4b7}.about-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:11%;padding-top:68px}.about-grid h2{font-size:clamp(42px,4.5vw,66px);line-height:1.14}.signature{display:block;margin-top:45px;font:italic 38px Georgia,serif;letter-spacing:-2px;color:#737c68;transform:rotate(-8deg);transform-origin:left}.about-copy p{color:#535a50;line-height:1.85;font-size:14px}.about-copy .about-lead{font-size:21px;line-height:1.6;color:var(--ink);margin-bottom:23px}.service-row{display:flex;align-items:center;gap:20px;padding:23px 0;border-top:1px solid #bfc4b7}.service-row:first-of-type{margin-top:38px}.service-row h3{font-size:14px;font-weight:400;flex:1}.service-row span{font-size:10px;color:#68735c}.service-row span:last-child{font-size:20px}.about-copy .verse{margin-top:25px;font-size:9px}.contact-section{background:var(--dark);color:var(--paper);padding-bottom:65px}.contact-section .section-top{border-color:#555c50}.contact-main{display:flex;justify-content:space-between;align-items:center;gap:40px;margin:70px 0 55px}.contact-main h2{font-size:clamp(54px,7.3vw,112px)}.contact-main h2 em{color:#bdc7af}.contact-circle{border:1px solid #8d9982;flex-shrink:0;width:145px;height:145px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;transition:background .4s,color .4s,transform .5s var(--ease)}.contact-circle>span{font-size:48px;font-weight:100;line-height:1}.contact-circle small{font-size:9px;letter-spacing:1.5px;text-transform:uppercase}.contact-circle:hover{background:#bdc7af;color:var(--dark);transform:rotate(-8deg)}.contact-bottom{display:flex;justify-content:space-between;align-items:end;gap:20px}.contact-bottom p{font-size:13px;line-height:1.8;color:#c4ccbc}.contact-bottom .text-link{border-bottom:1px solid #7a8570;padding-bottom:12px}.contact-bottom .text-link:after{display:none}footer{display:flex;align-items:center;justify-content:space-between;padding:34px 4.5%;gap:25px}.copyright{font-size:10px;color:var(--muted)}.footer-controls{display:flex;align-items:center;gap:24px;font-size:10px}.footer-controls button{border:0;background:transparent;color:var(--muted);padding:10px 0;cursor:pointer;font-size:10px}.reveal{transition:opacity .95s var(--ease),transform .95s var(--ease)}.reveal.is-pending{opacity:0;transform:translateY(35px)}
@keyframes letter-enter{from{transform:translateY(110%) rotate(7deg);opacity:0}to{transform:none;opacity:1}}@keyframes photo-enter{from{opacity:0;transform:translateY(45px) rotate(0deg)}to{opacity:1;transform:translateY(0) rotate(2.5deg)}}@keyframes fade-up{from{opacity:0;transform:translateY(25px)}to{opacity:1;transform:none}}@keyframes drift{to{transform:translateX(-33.3333%)}}@keyframes scroll-hint{to{top:100%}}
@media(min-width:1600px){.hero{height:900px}.hero-title-wrap{top:150px}.hero-copy{top:590px}.hero-image{right:8%;top:140px}.section-pad{padding-left:max(6%,calc((100vw - 1450px)/2));padding-right:max(6%,calc((100vw - 1450px)/2))}}
@media(max-width:1050px){.hero{height:690px}.hero-title-wrap{top:125px}.hero-copy{top:420px}.hero-image{top:130px;width:43%;right:1%}.gallery{column-gap:8%}.card-travel{margin-top:115px}.about-grid{gap:7%}}
@media(max-width:700px){.site-header{height:82px;margin:0 6%}.wordmark{font-size:25px}.site-header nav{gap:20px;font-size:10px}.site-header nav>a:first-child,.site-header nav>a:nth-child(2){display:none}.nav-cta{padding:11px 17px;gap:18px}.hero{height:auto;max-height:none;min-height:900px;margin:0 6%;padding-bottom:70px;display:flex;flex-direction:column}.hero-topline{padding-top:25px;gap:20px}.hero-topline .kicker{font-size:8px;letter-spacing:1px}.location{max-width:140px;justify-content:end;text-align:right}.location i{flex-shrink:0}.hero-title-wrap{position:relative;top:auto;left:auto;margin-top:38px}h1{font-size:clamp(83px,24vw,164px);line-height:.8}.title-line{display:inline-block}.last-name{display:block;margin-left:22%;margin-top:-.02em}.hero-image{position:relative;right:auto;top:auto;width:75%;max-width:340px;align-self:end;margin:10px 3% 0 0;z-index:1}.hero-image figcaption{font-size:8px;letter-spacing:1px;margin-top:10px}.hero-copy{position:relative;top:auto;left:auto;margin-top:40px}.hero-copy p{font-size:14px}.hero-copy p em{font-size:19px}.hero-copy .text-link{font-size:11px;margin-top:15px}.scroll-cue{display:none}.hero-index{bottom:25px;font-size:8px}.ticker{padding:18px 0}.ticker-track>span{gap:25px;padding-right:25px;font-size:30px}.ticker i{font-size:18px}.section-pad{padding:55px 6%}.kicker{font-size:8px;letter-spacing:1.2px}.section-top{padding-bottom:19px}.work-heading{display:block;margin:35px 0}.work-heading h2{font-size:51px}.work-heading p{margin-top:24px;font-size:12px}.gallery{grid-template-columns:1fr 1fr;gap:35px 20px}.card-main{grid-column:1/-1;width:90%}.card-travel{grid-column:2;margin:0}.card-hosting{grid-column:1/-1;width:77%;margin:0}.gallery-note{grid-column:1;grid-row:2;padding:20px 0}.gallery-note>span{font-size:35px}.gallery-note p{font-size:24px;letter-spacing:-.7px;margin:15px 0}.gallery-note .text-link{font-size:9px;line-height:1.6}.photo-caption{padding:15px 0}.photo-caption h3{font-size:23px}.card-travel h3{font-size:21px}.photo-caption .kicker{font-size:7px}.caption-arrow{font-size:18px}.photo-open,.photo-label{display:none}.about-grid{grid-template-columns:1fr;padding-top:35px;gap:45px}.about-grid h2{font-size:47px}.signature{margin-top:22px;font-size:30px}.about-copy .about-lead{font-size:20px}.contact-main{margin:40px 0;gap:15px;flex-wrap:wrap}.contact-main h2{font-size:clamp(46px,11vw,72px)}.contact-circle{width:95px;height:95px;margin-top:12px}.contact-circle>span{font-size:32px}.contact-circle small{font-size:8px}.contact-bottom{display:block}.contact-bottom p{font-size:12px}.contact-bottom .text-link{margin-top:24px}footer{padding:30px 6%;flex-wrap:wrap;gap:25px}.footer-controls{width:100%;justify-content:space-between;border-top:1px solid var(--line);padding-top:15px}.copyright{font-size:9px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.reveal.is-pending{opacity:1;transform:none}.hero-image img{transform:none}.ticker-track{transform:none}}
html.motion-paused{scroll-behavior:auto}.motion-paused *,.motion-paused *::before,.motion-paused *::after{animation:none!important;transition:none!important}.motion-paused .reveal.is-pending{opacity:1;transform:none}.motion-paused .hero-image img{transform:none}.motion-paused .letter{opacity:1;transform:none}

/* Connected calligraphy overlaps the serif name; animate the word as one unit. */
@font-face{font-family:'Pinyon Script';src:url('fonts/pinyon-script.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
.hero-title-wrap h1>.title-line:first-child{position:relative;z-index:1}
.hero-title-wrap .last-name{position:relative;z-index:2;overflow:visible;font-family:'Pinyon Script',cursive;font-weight:400;font-style:normal;font-size:1.7em;letter-spacing:0;line-height:1.05;margin-left:.52em;margin-top:-.48em;margin-bottom:0;padding:0 .12em .1em 0;color:var(--accent)}
.script-word{display:inline-block;animation:script-enter 1.4s var(--ease) .55s both}
@keyframes script-enter{from{opacity:0;transform:translate(-22px,24px) rotate(-6deg)}to{opacity:1;transform:none}}
@media(max-width:700px){.hero-title-wrap .last-name{font-size:1.58em;margin-left:.38em;margin-top:-.45em;line-height:1.05}.hero-image{margin-top:15px}}
@media(prefers-reduced-motion:reduce){.script-word{animation:none}}
.motion-paused .script-word{opacity:1;transform:none}

.hosting-photo img{aspect-ratio:490/716;object-fit:contain}
