:root{--paper:#f8f7f3;--ink:#151515;--muted:#76746d;--line:rgba(21,21,21,.16);--header:78px;--side:clamp(22px,4vw,72px);--serif:Georgia,"Times New Roman",serif;--sans:Arial,Helvetica,sans-serif}
*,*:before,*:after{box-sizing:border-box}html{height:100%;background:var(--paper);scrollbar-width:none}body{margin:0;height:100dvh;overflow:hidden;background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit}.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.screen-reader-text:focus{clip:auto!important;width:auto;height:auto;margin:12px;padding:12px;background:#fff;z-index:9999}
.site-header{position:fixed;inset:0 0 auto 0;height:var(--header);padding:0 var(--side);display:flex;align-items:center;justify-content:space-between;z-index:50;background:linear-gradient(to bottom,rgba(248,247,243,.98),rgba(248,247,243,.78),transparent)}.site-brand{text-decoration:none;text-transform:uppercase;letter-spacing:.12em;font-size:12px;font-weight:700;white-space:nowrap}.site-nav{max-width:72vw;overflow-x:auto;scrollbar-width:none}.menu{display:flex;align-items:center;gap:clamp(14px,2vw,34px);list-style:none;margin:0;padding:0}.menu a{text-decoration:none;text-transform:uppercase;font-size:10px;letter-spacing:.11em;white-space:nowrap;position:relative}.menu .current-menu-item>a:after,.menu .current_page_item>a:after{content:"";position:absolute;left:0;right:0;bottom:-7px;height:1px;background:currentColor}
.se-track{width:100vw;height:100dvh;display:flex;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}.se-track::-webkit-scrollbar{display:none}.se-panel{position:relative;flex:0 0 100vw;width:100vw;height:100dvh;min-height:100dvh;scroll-snap-align:start;scroll-snap-stop:always;padding:calc(var(--header) + 24px) var(--side) 58px;display:flex;align-items:center;gap:clamp(28px,5vw,90px);overflow:hidden}.se-panel__inner{width:min(620px,44vw)}.se-prose h1,.se-prose h2{font-family:var(--serif);font-weight:400;line-height:.95;letter-spacing:-.045em;margin:0 0 .5em}.se-prose h1{font-size:clamp(54px,7vw,126px)}.se-prose h2{font-size:clamp(38px,5vw,82px)}.se-prose p,.se-prose li{font-size:clamp(15px,1.18vw,20px);line-height:1.55}.se-prose p{max-width:46ch}.se-kicker{text-transform:uppercase;letter-spacing:.18em;font-size:10px!important;margin-bottom:24px;color:var(--muted)}.se-lead{font-family:var(--serif);font-size:clamp(24px,2.8vw,44px);line-height:1.15;max-width:28ch}.se-panel__image{height:min(72dvh,820px);flex:1;display:flex;align-items:center;justify-content:center}.se-panel__image img{width:100%;height:100%;object-fit:contain}.se-panel__image--portrait{max-width:46vw}
.se-home__panel{justify-content:space-between}.se-home__copy{width:min(40vw,620px);align-self:center}.se-home__copy h1{font-family:var(--serif);font-size:clamp(70px,9vw,168px);font-weight:400;line-height:.82;letter-spacing:-.06em;margin:0}.se-home__tagline{font-family:var(--serif);font-size:clamp(18px,1.65vw,28px);line-height:1.3;max-width:28ch;margin:34px 0}.se-home__content{max-width:38ch;font-size:14px;line-height:1.6}.se-home__media{width:min(43vw,720px);height:calc(100dvh - var(--header) - 90px);margin:0;display:flex;justify-content:flex-end}.se-home__media img{width:100%;height:100%;object-fit:contain;object-position:center right}.se-image-placeholder{width:100%;height:100%;border:1px solid var(--line);background:linear-gradient(135deg,rgba(0,0,0,.03),rgba(0,0,0,.08))}
.se-project-card{padding-left:clamp(40px,8vw,140px);padding-right:clamp(40px,8vw,140px)}.se-project-card__link{width:100%;height:100%;display:grid;grid-template-columns:minmax(260px,.9fr) minmax(320px,1.1fr);align-items:center;gap:clamp(30px,7vw,120px);text-decoration:none}.se-project-card__media{height:72dvh;margin:0}.se-project-card__media img{width:100%;height:100%;object-fit:contain}.se-project-card__copy h2{font-family:var(--serif);font-size:clamp(48px,7vw,120px);font-weight:400;line-height:.92;letter-spacing:-.05em;margin:0}.se-project-card__copy p{margin-top:20px;text-transform:uppercase;letter-spacing:.15em;font-size:10px;color:var(--muted)}
.se-project-intro .se-panel__inner{width:min(680px,52vw)}.se-meta{display:grid;gap:14px;margin-top:34px}.se-meta div{display:grid;grid-template-columns:110px 1fr;border-top:1px solid var(--line);padding-top:12px}.se-meta dt{text-transform:uppercase;font-size:10px;letter-spacing:.12em}.se-meta dd{margin:0;font-size:13px;line-height:1.45}.se-project-description{margin-top:32px}.se-panel--media{padding:calc(var(--header) + 20px) var(--side) 48px}.se-full-media{width:100%;height:100%;margin:0;display:flex;align-items:center;justify-content:center}.se-full-media img{width:100%;height:100%;object-fit:contain}.se-project-nav{display:flex;justify-content:space-between;gap:30px;margin-top:50px;padding-top:18px;border-top:1px solid var(--line);font-size:12px}.se-project-nav a{text-decoration:none}
.se-block-panel--wide{flex-basis:150vw;width:150vw}.se-block-panel__content{position:relative;z-index:2;flex:0 1 48%;max-width:680px}.se-block-panel__media{flex:1;height:76dvh;margin:0;display:flex;align-items:center;justify-content:center}.se-block-panel__media img{width:100%;height:100%;object-fit:var(--se-fit,contain)}.se-fit--contain .se-block-panel__media img{object-fit:contain}.se-fit--cover .se-block-panel__media img{object-fit:cover}.se-block-panel--left{flex-direction:row}.se-block-panel--right{flex-direction:row}.se-block-panel--background{color:#fff}.se-block-panel__background{position:absolute;inset:0;z-index:0}.se-block-panel__background:after{content:"";position:absolute;inset:0;background:rgba(0,0,0,.28)}.se-block-panel__background img{width:100%;height:100%;object-fit:cover}.se-block-panel--background .se-block-panel__content{max-width:760px}
.se-ui{position:fixed;left:var(--side);bottom:20px;z-index:60;display:flex;align-items:center;gap:12px;color:#fff;mix-blend-mode:difference}.se-arrow{appearance:none;border:0;background:transparent;color:inherit;padding:4px;font-size:18px;line-height:1;cursor:pointer;text-shadow:0 0 1px currentColor}.se-arrow:disabled{opacity:.34;cursor:default}.se-counter{color:inherit;font-size:10px;font-weight:600;letter-spacing:.14em;min-width:54px;text-align:center;text-shadow:0 0 1px currentColor}.site-footer{position:fixed;right:var(--side);bottom:22px;z-index:40;text-transform:uppercase;letter-spacing:.12em;font-size:9px;color:var(--muted)}
@media(max-width:900px){:root{--header:68px;--side:20px}.site-header{align-items:flex-start;padding-top:18px}.site-nav{max-width:64vw}.menu{gap:16px}.se-panel{padding-top:calc(var(--header) + 22px);padding-bottom:58px;gap:22px}.se-home__copy{width:43vw}.se-home__media{width:49vw}.se-prose p,.se-prose li{font-size:15px}.se-panel__inner{width:46vw}}
@media(max-width:680px){.site-header{display:block;height:auto;padding-bottom:10px;background:rgba(248,247,243,.96)}.site-nav{max-width:100%;margin-top:14px}.se-panel{flex-basis:100vw;width:100vw;padding-top:112px;flex-direction:column;align-items:stretch;justify-content:center;overflow:hidden}.se-home__panel{display:grid;grid-template-rows:auto 1fr;gap:16px}.se-home__copy{width:100%;z-index:2}.se-home__copy h1{font-size:clamp(56px,18vw,86px)}.se-home__tagline{font-size:17px;margin:18px 0}.se-home__content{display:none}.se-home__media{width:100%;height:47dvh;justify-content:center}.se-home__media img{object-position:center}.se-panel__inner,.se-project-intro .se-panel__inner{width:100%}.se-panel__image,.se-panel__image--portrait{width:100%;max-width:none;height:42dvh}.se-project-card__link{grid-template-columns:1fr;grid-template-rows:1fr auto;gap:14px}.se-project-card__media{height:52dvh}.se-project-card__copy h2{font-size:48px}.se-block-panel--wide{flex-basis:100vw;width:100vw}.se-block-panel__content{max-width:none;flex:none}.se-block-panel__media{height:42dvh;flex:none}.se-block-panel--left .se-block-panel__media{order:2}.se-block-panel--left .se-block-panel__content{order:1}.site-footer{display:none}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* v2.2 — robust page pagination and mobile 100dvh layout */
body.admin-bar .site-header{top:32px}
body.admin-bar .se-track{height:calc(100dvh - 32px);margin-top:32px}
body.admin-bar .se-panel{height:calc(100dvh - 32px);min-height:calc(100dvh - 32px)}
.se-auto-panel{justify-content:flex-start}
.se-auto-panel .se-panel__inner{width:min(760px,62vw);max-width:760px}
.se-auto-panel:not(.se-auto-panel--intro) .se-panel__inner{margin-left:clamp(6vw,14vw,240px)}
.se-auto-panel .se-prose p{max-width:52ch}
.se-panel--portrait-only{justify-content:center;padding-left:clamp(40px,12vw,220px);padding-right:clamp(40px,12vw,220px)}
.se-portrait-stage{height:min(78dvh,900px);width:min(60vw,760px);margin:0;display:flex;align-items:center;justify-content:center}
.se-portrait-stage img{display:block;width:100%;height:100%;object-fit:contain}

@media(max-width:680px){
  :root{--header:104px;--side:20px}
  body{height:100dvh;min-height:100dvh;overflow:hidden}
  body.admin-bar .site-header{top:0}
  body.admin-bar .se-track{height:100dvh;margin-top:0}
  body.admin-bar .se-panel{height:100dvh;min-height:100dvh}
  .site-header{height:var(--header);padding:18px var(--side) 10px;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;overflow:hidden;background:rgba(248,247,243,.985);border-bottom:1px solid var(--line)}
  .site-brand{font-size:11px;line-height:1.2;max-width:100%;overflow:hidden;text-overflow:ellipsis}
  .site-nav{width:100%;max-width:none;margin-top:15px;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;padding-bottom:5px}
  .menu{gap:22px;width:max-content;padding-right:28px}
  .menu a{font-size:9px;letter-spacing:.14em}
  .se-track{height:100dvh;min-height:100dvh;scroll-padding-left:0}
  .se-panel{height:100dvh;min-height:100dvh;padding:calc(var(--header) + 24px) var(--side) 72px;display:flex;flex-direction:column;justify-content:center;align-items:stretch;overflow:hidden;gap:18px}
  .se-auto-panel{justify-content:center}
  .se-auto-panel .se-panel__inner,.se-auto-panel:not(.se-auto-panel--intro) .se-panel__inner{width:100%;max-width:none;margin-left:0}
  .se-auto-panel--intro{justify-content:flex-start;padding-top:calc(var(--header) + 42px)}
  .se-auto-panel .se-prose h1{font-size:clamp(48px,15vw,72px);line-height:.88;margin-bottom:.45em}
  .se-auto-panel .se-kicker{margin-bottom:14px}
  .se-auto-panel .se-prose p,.se-auto-panel .se-prose li{font-size:clamp(18px,5.1vw,23px);line-height:1.42;max-width:29ch;margin-top:0;margin-bottom:1.15em}
  .se-auto-panel .se-prose p:last-child{margin-bottom:0}
  .se-panel--portrait-only{padding:calc(var(--header) + 18px) 20px 58px;justify-content:center}
  .se-portrait-stage{width:100%;height:calc(100dvh - var(--header) - 92px)}
  .se-portrait-stage img{object-fit:contain;object-position:center}
  .se-ui{left:20px;bottom:max(18px,env(safe-area-inset-bottom))}
}

@media(max-width:782px){body.admin-bar .site-header{top:0}}


/* v2.3 — mobile panels must never exceed the viewport */
@media(max-width:680px){
  .se-auto-panel{justify-content:flex-start;padding-top:calc(var(--header) + 28px)}
  .se-auto-panel .se-panel__inner{height:auto;max-height:calc(100dvh - var(--header) - 116px);overflow:hidden;display:flex;flex-direction:column;justify-content:center}
  .se-auto-panel .se-prose p,.se-auto-panel .se-prose li{font-size:clamp(17px,4.55vw,20px);line-height:1.38;max-width:31ch;margin-bottom:.9em}
  .se-auto-panel--intro .se-panel__inner{justify-content:flex-start}
  .se-auto-panel--intro .se-prose h1{font-size:clamp(44px,13vw,64px)}
}


/* v3.0 — manually authored editorial screens */
.se-editorial-screen{position:relative;isolation:isolate;justify-content:center;align-items:center;gap:clamp(28px,5vw,88px)}
.se-editorial-screen__content{position:relative;z-index:2;flex:0 1 680px;max-width:680px}
.se-editorial-screen__media{position:relative;z-index:1;flex:1 1 44%;height:min(76dvh,920px);margin:0;display:flex;align-items:center;justify-content:center}
.se-editorial-screen__media img{display:block;width:100%;height:100%;object-fit:contain}
.se-editorial-screen.se-fit--cover .se-editorial-screen__media img{object-fit:cover}
.se-editorial-screen--media-left{flex-direction:row}
.se-editorial-screen--media-right{flex-direction:row}
.se-editorial-screen--media-full{padding:0}
.se-editorial-screen__media--full{position:absolute;inset:0;width:100%;height:100%;max-width:none}
.se-editorial-screen__media--full img{width:100%;height:100%;object-fit:contain}
.se-editorial-screen.se-fit--cover .se-editorial-screen__media--full img{object-fit:cover}
.se-editorial-screen__background{position:absolute;inset:0;z-index:0}
.se-editorial-screen__background:after{content:"";position:absolute;inset:0;background:rgba(0,0,0,.28)}
.se-editorial-screen__background img{width:100%;height:100%;object-fit:cover}
.se-editorial-screen--media-background{color:#fff}
.se-editorial-screen--v-top{align-items:flex-start}
.se-editorial-screen--v-bottom{align-items:flex-end}
.se-editorial-screen--t-center .se-editorial-screen__content{text-align:center;margin-inline:auto}
.se-editorial-screen--t-right .se-editorial-screen__content{text-align:right;margin-left:auto}
.se-editorial-screen--visibility-mobile{display:none}
.se-editorial-screen--visibility-desktop{display:flex}

@media(max-width:680px){
  .se-editorial-screen{padding:calc(var(--header) + 24px) var(--side) 68px;flex-direction:column;gap:18px;justify-content:center;align-items:stretch}
  .se-editorial-screen--visibility-mobile{display:flex}
  .se-editorial-screen--visibility-desktop{display:none}
  .se-editorial-screen__content{width:100%;max-width:none;flex:0 1 auto}
  .se-editorial-screen__content.se-prose p,
  .se-editorial-screen__content.se-prose li{font-size:clamp(16px,4.35vw,19px);line-height:1.42;max-width:32ch}
  .se-editorial-screen__media{width:100%;height:42dvh;flex:none}
  .se-editorial-screen--media-left .se-editorial-screen__media{order:2}
  .se-editorial-screen--media-left .se-editorial-screen__content{order:1}
  .se-editorial-screen--media-full{padding:0}
  .se-editorial-screen__media--full{position:absolute;inset:0;width:100%;height:100%}
  .se-editorial-screen--media-background .se-editorial-screen__content{max-width:30ch}
  .se-editorial-screen--v-top{justify-content:flex-start;padding-top:calc(var(--header) + 32px)}
  .se-editorial-screen--v-bottom{justify-content:flex-end}
}


/* v3.1 — navigation controls automatically invert over light and dark imagery */
.se-ui button{-webkit-tap-highlight-color:transparent}
@supports not (mix-blend-mode:difference){.se-ui{color:#fff;background:rgba(0,0,0,.48);padding:7px 10px;border-radius:999px;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}}


/* v4.0 — editorial refinement, motion and visual rhythm */
:root{
  --ease-luxury:cubic-bezier(.22,1,.36,1);
  --ease-soft:cubic-bezier(.4,0,.2,1);
}
body{opacity:0;transition:opacity .55s var(--ease-soft)}
body.se-ready{opacity:1}
.site-header{transition:transform .55s var(--ease-luxury),background-color .35s ease,box-shadow .35s ease}
.site-brand{transition:opacity .25s ease,letter-spacing .45s var(--ease-luxury)}
.site-brand:hover{letter-spacing:.17em}
.menu a{opacity:.62;transition:opacity .3s ease}
.menu a:hover,.menu .current-menu-item>a,.menu .current_page_item>a{opacity:1}
.menu a:after{content:"";position:absolute;left:0;right:100%;bottom:-7px;height:1px;background:currentColor;transition:right .42s var(--ease-luxury)}
.menu a:hover:after,.menu .current-menu-item>a:after,.menu .current_page_item>a:after{right:0}

.se-panel:before{content:attr(data-panel-number);position:absolute;right:var(--side);top:calc(var(--header) + 22px);z-index:5;font-size:9px;letter-spacing:.16em;color:var(--muted);opacity:0;transform:translateY(8px);transition:opacity .7s ease .15s,transform .8s var(--ease-luxury) .15s;pointer-events:none}
.se-panel.is-active:before{opacity:.72;transform:none}

.se-panel .se-prose>*{opacity:0;transform:translateY(18px);transition:opacity .72s ease,transform .9s var(--ease-luxury)}
.se-panel.is-active .se-prose>*{opacity:1;transform:none}
.se-panel.is-active .se-prose>*:nth-child(2){transition-delay:.08s}
.se-panel.is-active .se-prose>*:nth-child(3){transition-delay:.14s}
.se-panel.is-active .se-prose>*:nth-child(4){transition-delay:.20s}
.se-panel.is-active .se-prose>*:nth-child(n+5){transition-delay:.24s}

.se-panel figure img,.se-editorial-screen__background img{transform:scale(1.028);opacity:.86;transition:transform 1.35s var(--ease-luxury),opacity .9s ease}
.se-panel.is-active figure img,.se-panel.is-active .se-editorial-screen__background img{transform:scale(1);opacity:1}
.se-editorial-screen__background:after{transition:background-color .8s ease}
.se-editorial-screen.is-active .se-editorial-screen__background:after{background:rgba(0,0,0,.24)}

.se-ui{transition:opacity .35s ease,transform .55s var(--ease-luxury)}
.se-ui.is-changing{transform:translateY(-3px)}
.se-counter{font-variant-numeric:tabular-nums;transition:opacity .18s ease,transform .25s var(--ease-luxury)}
.se-counter.is-updating{opacity:.15;transform:translateY(4px)}
.se-arrow{transition:opacity .25s ease,transform .35s var(--ease-luxury)}
.se-arrow:not(:disabled):hover{transform:translateX(3px)}
.se-arrow--prev:not(:disabled):hover{transform:translateX(-3px)}

.se-project-card__media{overflow:hidden}
.se-project-card__media img{transition:transform 1.1s var(--ease-luxury),filter .65s ease}
.se-project-card__copy h2{transition:letter-spacing .8s var(--ease-luxury),transform .8s var(--ease-luxury)}
.se-project-card__link:hover .se-project-card__media img{transform:scale(1.025)}
.se-project-card__link:hover .se-project-card__copy h2{transform:translateX(10px);letter-spacing:-.035em}

.se-home__copy h1{max-width:9ch}
.se-home__media{overflow:hidden}
.se-home__panel.is-active .se-home__copy{animation:seHomeCopy .95s var(--ease-luxury) both}
@keyframes seHomeCopy{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}

.se-progress{position:fixed;left:0;bottom:0;height:1px;width:100%;z-index:70;background:transparent;pointer-events:none}
.se-progress__bar{display:block;width:100%;height:100%;background:currentColor;transform:scaleX(0);transform-origin:left center;transition:transform .75s var(--ease-luxury);opacity:.42}

@media(max-width:680px){
  .se-panel:before{top:calc(var(--header) + 14px);right:20px}
  .se-panel .se-prose>*{transform:translateY(12px)}
  .se-home__copy h1{max-width:none}
  .menu a:after{bottom:-5px}
}

@media(prefers-reduced-motion:reduce){
  body{opacity:1!important}
  .se-panel .se-prose>*,.se-panel figure img,.se-editorial-screen__background img{opacity:1!important;transform:none!important}
}

/* v4.1 — editable template content from the WordPress Customizer */
.se-media-fit--contain img{object-fit:contain!important}
.se-media-fit--cover img{object-fit:cover!important}
.se-media-position--left img{object-position:left center!important}
.se-media-position--center img{object-position:center center!important}
.se-media-position--right img{object-position:right center!important}

.se-projects-intro{justify-content:flex-start}
.se-projects-intro--with-media{justify-content:space-between}
.se-projects-intro__copy{width:min(640px,43vw)}
.se-projects-intro__copy .se-lead{margin-top:28px;max-width:28ch}
.se-projects-intro__copy .se-lead p{margin:0;font:inherit;line-height:inherit;max-width:inherit}
.se-projects-intro__media{width:min(43vw,720px);height:calc(100dvh - var(--header) - 90px);margin:0;display:flex;align-items:center;justify-content:center;overflow:hidden}
.se-projects-intro__media img{display:block;width:100%;height:100%;object-fit:contain}

@media(max-width:900px){
  .se-projects-intro__copy{width:43vw}
  .se-projects-intro__media{width:49vw}
}

@media(max-width:680px){
  .se-projects-intro--with-media{display:grid;grid-template-rows:auto minmax(0,1fr);gap:16px;align-items:stretch;justify-content:stretch;padding-top:calc(var(--header) + 22px)}
  .se-projects-intro__copy{width:100%;max-width:none}
  .se-projects-intro__copy h1{font-size:clamp(44px,13vw,64px);margin-bottom:.25em}
  .se-projects-intro__copy .se-kicker{margin-bottom:12px}
  .se-projects-intro__copy .se-lead{font-size:clamp(18px,5vw,24px);margin-top:12px;max-width:30ch}
  .se-projects-intro__media{width:100%;height:auto;min-height:0;max-height:43dvh}
  .se-projects-intro__media img{min-height:0}
  .se-home__media.se-media-position--left img,
  .se-home__media.se-media-position--right img{object-position:center center!important}
}
