:root{--paper:#eae7de;--ink:#30372b;--muted:#727565;--clay:#9d563b;--line:#c7c9ba}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:15px}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button,a,input,summary,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--clay);outline-offset:6px}.grain{position:fixed;inset:0;pointer-events:none;z-index:20;opacity:.035;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23000' filter='url(%23n)' opacity='.7' d='M0 0h180v180H0z'/%3E%3C/svg%3E")}header{height:110px;margin:0 4.5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.logo{font-family:Georgia,serif;font-size:53px;letter-spacing:-4px;line-height:.8}.logo span,.footer-logo span{display:block;font-family:'DM Sans',sans-serif;font-size:8px;letter-spacing:2.3px;margin-top:13px}nav{display:flex;align-items:center;gap:40px;font-size:12px}.nav-contact{border:1px solid var(--ink);border-radius:30px;padding:14px 20px}.nav-contact span{margin-left:35px}.menu{display:none}.hero{padding:33px 4.5% 0}.hero-meta,.eyebrow{font-size:10px;letter-spacing:1.8px}.hero-meta{display:flex;justify-content:space-between}h1{position:relative;font-size:clamp(80px,10.8vw,174px);font-weight:400;letter-spacing:-.075em;line-height:.96;margin:48px 0 25px}em{font-family:Georgia,serif;font-weight:400}h1 em{color:var(--clay);letter-spacing:-.07em}.contours{position:absolute;width:18%;height:auto;right:9%;bottom:12%;color:#81876d;transform:rotate(-12deg)}.hero-bottom{display:flex;align-items:center;justify-content:space-between;margin-bottom:32px}.hero-bottom p{line-height:1.6;margin:0;font-size:13px}.round-link{display:flex;gap:22px;align-items:center;font-size:12px}.round-link b{display:grid;place-items:center;width:43px;height:43px;border:1px solid #9ca18c;border-radius:50%;font-size:20px;font-weight:400}.hero-image{height:570px;position:relative;overflow:hidden}.hero-image img{width:100%;height:115%;object-fit:cover;position:absolute;top:-8%;filter:brightness(.85)}.image-caption{position:absolute;top:25px;left:28px;right:28px;display:flex;justify-content:space-between;color:white;font-size:9px;letter-spacing:1.8px}.image-open{position:absolute;bottom:28px;right:28px;color:white;border:1px solid #ffffff80;background:#ffffff15;backdrop-filter:blur(16px);border-radius:40px;padding:18px 24px}.image-open span{margin-left:45px}.intro{padding:125px 4.5%;display:grid;grid-template-columns:1fr 2fr .6fr;gap:40px}h2{font-weight:400;font-size:clamp(40px,4.2vw,68px);letter-spacing:-.055em;line-height:1.12;margin:0 0 30px}.intro h2 span{color:#898c78}.intro p{max-width:470px;line-height:1.8;color:#646957}.text-link{display:inline-block;border-bottom:1px solid var(--ink);padding-bottom:8px;margin-top:20px;font-size:12px}.side-note{writing-mode:vertical-rl;font:italic 22px Georgia;justify-self:end}.side-note span{font:9px 'DM Sans';margin-top:15px;letter-spacing:1px}.work{padding:80px 4.5%;background:#e1e0d4}.section-top{display:flex;justify-content:space-between;align-items:end}.eyebrow{margin-bottom:32px}.section-top p{font-size:12px;line-height:1.8;margin-bottom:30px}.section-top small{color:var(--muted);font-size:10px}.filters{display:flex;gap:10px;border-top:1px solid var(--line);padding:25px 0 35px}.filters button{background:none;border:1px solid transparent;padding:10px 18px;border-radius:30px;color:var(--ink);font-size:12px}.filters .active{background:var(--ink);color:var(--paper)}sup{font-size:8px;margin-left:8px}.gallery{display:grid;grid-template-columns:1.1fr .9fr;gap:60px 35px}.project:nth-child(even){padding-top:90px}.project button{display:block;width:100%;padding:0;border:0;background:transparent;position:relative;overflow:hidden;text-align:left}.project img{width:100%;height:420px;object-fit:cover;display:block;transition:transform .8s,filter .8s}.project:nth-child(even) img{height:360px}.project button:hover img{transform:scale(1.045);filter:brightness(.85)}.project .arrow{position:absolute;bottom:20px;right:20px;background:var(--paper);width:45px;height:45px;display:grid;place-items:center;border-radius:50%;font-size:22px}.project-info{display:flex;justify-content:space-between;align-items:center;margin-top:18px}.project-info h3{font-size:21px;font-weight:400;margin:0;letter-spacing:-.5px}.project-info span{font-size:9px;letter-spacing:1px;text-transform:uppercase}.services{padding:120px 4.5%;display:grid;grid-template-columns:1fr 1.1fr;gap:100px}.services p{font-size:13px;line-height:1.8;color:#646957}.service-list details{border-top:1px solid var(--line);padding:26px 0}.service-list details:last-child{border-bottom:1px solid var(--line)}summary{list-style:none;cursor:pointer;display:flex;align-items:center;font-size:28px;letter-spacing:-1px}summary::-webkit-details-marker{display:none}summary span{font-size:10px;margin-right:30px;letter-spacing:0}summary b{margin-left:auto;font-weight:400}details[open] summary b{transform:rotate(45deg)}details p{padding-left:42px;max-width:460px}.pause{height:580px;position:relative;color:white;overflow:hidden}.pause img{height:100%;width:100%;object-fit:cover;filter:brightness(.5)}.pause>div{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center}.pause span{font-size:10px;letter-spacing:2px;margin-bottom:30px}.pause h2{font:normal clamp(55px,7vw,110px)/1.05 Georgia;letter-spacing:-4px}.pause a{font-size:13px;border-bottom:1px solid #ffffff80;padding-bottom:8px}.inquiry{padding:120px 4.5%;display:grid;grid-template-columns:1fr 1fr;gap:100px}.inquiry h2 em{color:var(--clay)}.inquiry p{line-height:1.8;color:#646957;font-size:13px}.availability{display:block;font-size:10px;margin-top:45px}.availability:before{content:'';display:inline-block;width:7px;height:7px;border-radius:50%;background:#77836b;margin-right:10px}fieldset{border:0;padding:0;margin:0 0 30px}legend,form>label,.form-row label{font-size:11px;width:100%;display:block}.choices{display:flex;flex-wrap:wrap;gap:9px;margin-top:15px}.choices input{position:absolute;opacity:0;width:1px;height:1px}.choices span{display:block;border:1px solid #b3b8a4;border-radius:25px;padding:12px 17px;font-size:11px;cursor:pointer}.choices input:checked+span{background:var(--ink);color:var(--paper)}.choices input:focus-visible+span{outline:2px solid var(--clay)}input,textarea{display:block;width:100%;border:0;border-bottom:1px solid #abb19b;padding:15px 0;background:transparent;color:var(--ink);border-radius:0;outline-offset:3px;font-size:13px;margin-bottom:25px}textarea{resize:vertical}.form-row{display:flex;gap:25px}.submit{width:100%;border:0;border-radius:2px;background:var(--ink);color:var(--paper);padding:20px;text-align:left;font-size:12px}.submit span{float:right;font-size:20px}.form-note{font-size:10px!important}#form-status{font-size:12px;line-height:1.6}footer{background:#30372b;color:var(--paper);padding:70px 4.5% 25px}.footer-logo{font:normal clamp(100px,21vw,330px)/.8 Georgia;letter-spacing:-.08em;display:block}.footer-logo span{margin-left:8px;letter-spacing:5px;font-size:10px;margin-top:25px}.footer-bottom{border-top:1px solid #ffffff30;margin-top:60px;padding-top:24px;display:flex;justify-content:space-between;font-size:10px}dialog{max-width:1100px;width:90vw;padding:0;background:var(--paper);border:0;color:var(--ink);max-height:90vh;overflow:auto}dialog::backdrop{background:#172016c9;backdrop-filter:blur(10px)}dialog[open]{display:grid;grid-template-columns:1.4fr 1fr}dialog>img{width:100%;height:620px;object-fit:cover}.dialog-copy{padding:70px 35px 35px;display:flex;flex-direction:column;justify-content:center}.dialog-copy>span,.dialog-copy small{font-size:10px;letter-spacing:1px}.dialog-copy h2{font-size:45px;margin:22px 0}.dialog-copy p{font-size:14px;line-height:1.8}.dialog-copy small{color:#727565;letter-spacing:0}.close{position:absolute;right:15px;top:15px;border:0;background:var(--paper);border-radius:50%;width:40px;height:40px}.dialog-controls{display:flex;align-items:center;justify-content:space-between;margin-top:45px}.dialog-controls button{border:1px solid #aaa;background:none;width:40px;height:40px;border-radius:50%}.reveal{opacity:0;transform:translateY(25px);transition:opacity .9s,transform .9s}.reveal.visible{opacity:1;transform:none}@media(min-width:1600px){main,header,footer{max-width:1800px;margin-left:auto;margin-right:auto}}@media(max-width:760px){header{height:90px}.logo{font-size:45px}nav{display:none;position:absolute;z-index:30;top:90px;left:0;right:0;background:var(--paper);padding:25px}nav.open{display:flex;flex-direction:column}.menu{display:block;background:none;border:0;font-size:23px}.hero-meta{font-size:8px}.hero-meta span:last-child{display:none}h1{font-size:clamp(44px,12.9vw,98px);margin-top:40px}.contours{right:0;width:21%}.hero-bottom p{font-size:11px}.round-link{font-size:10px;gap:10px}.hero-image{height:430px}.image-caption{font-size:7px;left:15px;right:15px}.intro{padding:70px 6%;grid-template-columns:1fr;gap:10px}.side-note{display:none}.work{padding:65px 6%}.section-top{display:block}.gallery{grid-template-columns:1fr;gap:35px}.project:nth-child(even){padding-top:0}.project img,.project:nth-child(even) img{height:360px}.filters{gap:0;justify-content:space-between}.filters button{padding:10px 11px;font-size:10px}.services,.inquiry{padding:70px 6%;grid-template-columns:1fr;gap:35px}.services h2{font-size:50px}.pause{height:470px}.pause h2{letter-spacing:-2px}.footer-bottom{gap:25px;flex-wrap:wrap}.footer-bottom span:first-child{width:100%}dialog[open]{display:block}dialog>img{height:330px}.dialog-copy{padding:30px}.dialog-copy h2{font-size:35px}.dialog-controls{margin-top:20px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.reveal{opacity:1;transform:none}}

.project-actions{display:flex;justify-content:space-between;margin-top:15px;gap:15px}.project-actions button{width:auto;font-size:11px;border-bottom:1px solid #9ca18c;padding:5px 0;color:var(--ink)}.project:last-child{grid-column:1/-1;max-width:85%;margin:0 auto;width:100%}.project:last-child>button>img{height:520px}.dialog-media{background:#23281f;display:flex;flex-direction:column;justify-content:center;min-width:0}.dialog-media>img,.dialog-media>video{width:100%;height:490px;object-fit:contain}.dialog-media [hidden]{display:none}#media-thumbs{display:flex;gap:7px;padding:14px;overflow-x:auto}#media-thumbs button{flex:0 0 68px;height:52px;padding:0;border:2px solid transparent;background:#404939;color:var(--paper)}#media-thumbs button[aria-pressed="true"]{border-color:#eee2c8}#media-thumbs img{width:100%;height:100%;object-fit:cover}.film-thumb span{display:block;font-size:8px;margin-top:5px}.dialog-copy{padding-top:60px}.project-info{gap:12px}.project-info span{text-align:right}.filters button{white-space:nowrap}.hero-image img{object-position:center 57%}@media(max-width:760px){.project:last-child{max-width:100%}.project:last-child>button>img{height:360px}.dialog-media>img,.dialog-media>video{height:300px}.dialog-copy{padding-top:30px}.project-info h3{font-size:20px}.filters{flex-wrap:wrap}.filters button{padding:10px}.hero-image{height:460px}} 
/* V2: a place, through time */
:root{--paper:#ede9df;--ink:#333a2e;--clay:#995f46}header{position:absolute;top:0;left:0;right:0;margin:0 4%;border-color:#ffffff45;color:#f9f4e9;z-index:25;height:100px}.nav-contact{border-color:#ffffff80}.time-story{height:290vh;position:relative;background:#19231e}.time-stage{position:sticky;top:0;height:100svh;min-height:650px;overflow:hidden;color:#fff8e8}.time-images{position:absolute;inset:0;transform:scale(1.06);will-change:transform}.time-images img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:center 54%;max-width:none}.time-images #light-dusk{opacity:0}.time-images #light-dawn{opacity:1}.time-shade{position:absolute;inset:0;background:linear-gradient(180deg,#12221d65 0%,#12221d08 40%,#12221d95 100%)}.hero-kicker{position:absolute;left:4%;right:4%;top:135px;display:flex;justify-content:space-between;font-size:9px;letter-spacing:2px}.time-title{position:absolute;left:4%;top:20%;font-size:clamp(56px,6.6vw,108px);line-height:1.03;letter-spacing:-.055em;margin:0;will-change:opacity,transform;text-shadow:0 2px 30px #0002}.time-title em{color:inherit}.time-wordmark{position:absolute;left:3%;bottom:13%;font-family:Georgia,serif;font-size:clamp(160px,32vw,540px);letter-spacing:-.085em;line-height:.7;opacity:0;transform:translateY(25px);pointer-events:none}.hero-note{position:absolute;left:4%;bottom:6%;font-size:13px;line-height:1.8}.hero-note p{margin:0}.hero-note span{font-size:10px;opacity:.7}.time-console{position:absolute;bottom:17%;right:4%;width:260px}.time-current{display:flex;justify-content:space-between;align-items:center;letter-spacing:1px;font-size:9px}#light-time{font:italic 28px Georgia}#light-control{margin:22px 0 10px;width:100%;height:2px;padding:0;border:none;appearance:none;background:#fff6;cursor:ew-resize;accent-color:#f6e2b9}#light-control::-webkit-slider-thumb{appearance:none;background:#f6e2b9;width:13px;height:13px;border-radius:50%;box-shadow:0 0 0 5px #fff2}.time-labels{display:flex;justify-content:space-between;font-size:7px;letter-spacing:1px}.time-console p{font-size:10px;margin-top:25px}.time-console p span{float:right}.skip-story{position:absolute;right:4%;bottom:6%;font-size:10px;border-bottom:1px solid #fff6;padding-bottom:6px}.light-disclosure{position:absolute;right:4%;bottom:3%;font-size:7px;letter-spacing:1px;opacity:.65}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.intro{padding-top:140px;padding-bottom:140px}.worlds{background:#343c2f;color:#ece8db;padding:100px 6%;display:grid;grid-template-columns:1fr 1.2fr;gap:10%}.worlds-intro .eyebrow{display:block;color:#bbc1ac}.worlds h2{font-size:clamp(40px,4.5vw,72px)}.worlds em{color:#cbb89a}.world-list details{border-top:1px solid #ffffff30;padding:30px 0}.world-list details:last-child{border-bottom:1px solid #ffffff30}.world-list summary{font-size:clamp(27px,3vw,45px)}.world-list details p{padding:0;margin:25px 0;color:#c8cebc;font-size:14px;line-height:1.9}.world-list details>div{padding-left:42px}.world-list a{font-size:11px;border-bottom:1px solid #9ca18c;padding-bottom:8px;display:inline-block}.world-list details[open] summary b{transform:rotate(90deg)}.work{background:#e9e5da}.section-top h2{font-size:clamp(42px,6vw,90px)}.project>button{border-radius:1px}.project:nth-child(even){padding-top:160px}.pause{height:75vh;min-height:470px}.services{padding-top:110px;padding-bottom:110px}footer{background:#30372b}.reveal{transition-duration:1.2s}.time-stage:focus-within .time-console{opacity:1}@media(min-width:1600px){main,header,footer{max-width:none}header{margin:0 4%}}@media(max-width:760px){header{height:85px}nav{color:var(--ink)}.time-story{height:240vh}.time-stage{min-height:650px}.hero-kicker{top:110px;font-size:7px}.hero-kicker span:last-child{display:none}.time-title{top:23%;font-size:clamp(44px,10vw,72px)}.time-images img{object-position:47% center}.time-console{width:200px;bottom:19%;right:6%}.time-wordmark{font-size:60vw;bottom:43%;left:4%}.hero-note{bottom:8%;left:6%;font-size:11px}.hero-note span{font-size:8px}.skip-story{bottom:4%;right:6%}.light-disclosure{left:6%;right:auto;bottom:2%;font-size:6px}.intro{padding-top:80px;padding-bottom:80px}.worlds{grid-template-columns:1fr;gap:30px;padding:70px 6%}.world-list summary{font-size:32px}.project:nth-child(even){padding-top:0}.time-labels{font-size:6px}}@media(prefers-reduced-motion:reduce){.time-story{height:100svh;min-height:650px}.time-stage{position:relative}.time-images{transform:none!important}.time-title{opacity:1!important;transform:none!important}.time-wordmark{display:none}.time-console p{font-size:0}.time-console p:before{content:'Use the slider to explore the light';font-size:10px}.time-console p span{display:none}}
header .menu{color:inherit}

.pricing{grid-template-columns:.85fr 1.15fr;gap:8%}.price-list article{border-top:1px solid var(--line);padding:26px 0}.price-list article:last-child{border-bottom:1px solid var(--line)}.price-heading{display:flex;justify-content:space-between;gap:22px;align-items:baseline}.price-heading h3{font-size:23px;letter-spacing:-.6px;font-weight:400;margin:0}.price-heading span{font-size:11px;white-space:nowrap;color:var(--clay)}.price-list p{max-width:430px;margin:14px 0}.price-list a{font-size:10px;border-bottom:1px solid #a3a994;padding-bottom:5px;display:inline-block}header nav{gap:24px}@media(max-width:760px){.pricing{grid-template-columns:1fr;gap:35px}.price-heading{display:block}.price-heading h3{font-size:23px;margin-bottom:8px}.price-list article{padding:24px 0}}

.rate-section{padding:110px 5%}.rate-intro{display:flex;justify-content:space-between;align-items:end;gap:40px}.rate-intro>p{font-size:13px;line-height:1.8;margin-bottom:35px}.rate-draft{font-size:10px;letter-spacing:.4px;padding:14px 0;border-top:1px solid var(--line);color:#76634e}.size-control{display:flex;align-items:center;gap:20px;margin:20px 0 35px}.size-control label{font-size:12px}.size-control select{padding:13px 35px 13px 15px;border:1px solid #a8ae9a;background:transparent;color:var(--ink);font:inherit;font-size:12px;max-width:100%}.size-control>span{font-size:10px;color:var(--muted);margin-left:auto}.bundle-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.bundle-grid article{padding:35px 28px;border:1px solid #b5b9a7;display:flex;flex-direction:column}.bundle-grid .eyebrow{font-size:8px;margin-bottom:25px}.bundle-grid h3{font-size:27px;font-weight:400;letter-spacing:-1px;margin:0;min-height:65px}.bundle-price{font-size:57px;letter-spacing:-3px;margin:18px 0}.bundle-grid p{font-size:12px;line-height:1.8;min-height:45px}.bundle-grid ul{padding-left:16px;font-size:12px;line-height:2;flex:1}.bundle-grid a{font-size:11px;border-top:1px solid #a5ad96;padding-top:20px;margin-top:25px}.featured-bundle{background:#343c2f;color:#eee9dc}.rate-columns{display:grid;grid-template-columns:1fr 1fr;gap:70px;margin-top:65px}.rate-columns h3{font-weight:400;font-size:28px;letter-spacing:-1px}.rate-row{display:flex;gap:25px;justify-content:space-between;border-top:1px solid var(--line);padding:21px 0}.rate-row h4{font-weight:500;font-size:14px;margin:0 0 8px}.rate-row p{font-size:11px;line-height:1.7;color:var(--muted);margin:0;max-width:330px}.rate-row strong{font-weight:400;white-space:nowrap;font-size:18px}.rate-notes{margin-top:30px;padding-top:20px;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:70px}.rate-notes p{font-size:10px;line-height:1.8;color:var(--muted)}@media(max-width:900px){.bundle-grid{grid-template-columns:1fr}.bundle-grid h3{min-height:0}.bundle-grid p{min-height:0}.rate-intro{display:block}.size-control{flex-wrap:wrap}.size-control>span{width:100%;margin-left:0}.rate-columns,.rate-notes{grid-template-columns:1fr;gap:25px}.rate-section{padding:70px 6%}.bundle-price{font-size:48px}}

.flat-rate-note{font-size:13px;line-height:1.8;max-width:750px;margin:20px 0 35px;color:var(--muted)}

.included-note{padding:18px 22px;border:1px solid var(--line);font-size:12px;line-height:1.9;margin:0 0 25px}.included-note strong{font-weight:500}

/* Soft architectural corners */
:root{--radius-lg:24px;--radius-md:16px;--radius-sm:10px}.project>button,.project>button>img{border-radius:var(--radius-lg)}.project-actions button{border-radius:0}.bundle-grid article{border-radius:var(--radius-lg)}.included-note{border-radius:var(--radius-md)}dialog{border-radius:var(--radius-lg);overflow:hidden}.dialog-media{border-radius:var(--radius-lg) 0 0 var(--radius-lg);overflow:hidden}#media-thumbs button,#media-thumbs img{border-radius:var(--radius-sm)}.submit{border-radius:var(--radius-md)}.pause{margin:0 4%;border-radius:var(--radius-lg)}.worlds{margin:0 4%;border-radius:var(--radius-lg)}.delivery-promise{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:0 0 20px}.delivery-promise>div{background:#dedfd2;border-radius:var(--radius-md);padding:22px}.delivery-promise strong{display:block;font-size:23px;font-weight:400;letter-spacing:-.6px}.delivery-promise span{display:block;font-size:12px;line-height:1.7;margin-top:8px;color:#626b55}.form-row input,form>label>input,form textarea{border:1px solid #abb19b;border-radius:var(--radius-sm);padding:13px 14px;margin-top:9px}.choices span{border-radius:var(--radius-sm)}@media(max-width:760px){.delivery-promise{grid-template-columns:1fr}.worlds{margin:0 4%;padding:50px 6%}.dialog-media{border-radius:var(--radius-lg) var(--radius-lg) 0 0}dialog{overflow:auto}.pause{margin:0 4%}}
/* Subtle corners; edge-to-edge square hero. */
:root{--radius-lg:14px;--radius-md:10px;--radius-sm:8px}.time-story{margin:0}.time-stage{top:0;height:100svh;border-radius:0;clip-path:none}.time-images,.time-shade{border-radius:0}.project>button{overflow:hidden}.bundle-grid article,.worlds,.pause{overflow:hidden}@media(max-width:760px){:root{--radius-lg:12px;--radius-md:10px;--radius-sm:8px}.time-story{margin:0}.time-stage{top:0;height:100svh}}@media(prefers-reduced-motion:reduce){.time-story{height:auto}}

.time-images #light-noon{opacity:0}.time-labels{gap:8px}

/* Loma wordmark: soft, expressive serif with a precise descriptor. */
.logo,.footer-logo,.time-wordmark{font-family:'DM Serif Display',Georgia,serif;font-weight:400;letter-spacing:-.045em}.logo{font-size:58px;line-height:.85;display:inline-flex;flex-direction:column;align-items:center;flex-shrink:0}.logo span{font-family:'DM Sans',sans-serif;font-weight:500;font-size:8px;letter-spacing:.25em;line-height:1;margin-top:12px;padding-left:.25em}.footer-logo{display:inline-flex;flex-direction:column;align-items:center;font-size:clamp(110px,21vw,330px);line-height:.8}.footer-logo span{margin:25px 0 0;padding-left:.25em;font-family:'DM Sans',sans-serif;font-weight:500;font-size:clamp(9px,1.25vw,18px);letter-spacing:.25em;line-height:1}.time-wordmark{line-height:.8;letter-spacing:-.045em}@media(max-width:760px){.logo{font-size:47px}.logo span{font-size:6.5px;margin-top:10px;letter-spacing:.25em}.footer-logo span{margin-top:19px}}

/* Footer navigation */
.footer-links{display:grid;grid-template-columns:1fr 1fr 1fr;gap:40px;margin-top:65px;font-family:'DM Sans',sans-serif}.footer-links>div{display:flex;flex-direction:column;align-items:flex-start;gap:13px;min-width:0}.footer-links .footer-heading{font-size:10px;letter-spacing:.16em;text-transform:uppercase;opacity:.65;margin-bottom:8px}.footer-links a,.footer-links p{font-size:13px;line-height:1.7;margin:0;overflow-wrap:anywhere}.footer-links p{max-width:260px}.footer-links a:hover{text-decoration:underline;text-underline-offset:5px}.footer-links a:focus-visible{outline:2px solid currentColor;outline-offset:5px}@media(max-width:760px){.footer-links{grid-template-columns:1fr 1fr;gap:32px;margin-top:45px}.footer-links>div:last-child{grid-column:1/-1}}@media(max-width:420px){.footer-links{grid-template-columns:1fr}}

/* Blue Stocking Hollow: scroll-controlled aerial passage */
.flight-story{height:190vh;background:#273128;position:relative}.flight-stage{position:sticky;top:0;height:100vh;height:100svh;min-height:560px;overflow:hidden;color:#f3efe5}.flight-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.flight-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(15,27,17,.58),transparent 75%),linear-gradient(0deg,rgba(15,27,17,.65),transparent 45%)}.flight-top{position:absolute;top:35px;left:5%;right:5%;display:flex;justify-content:space-between;gap:20px;font-size:10px;letter-spacing:.16em}.flight-copy{position:absolute;left:8%;top:24%}.flight-copy .eyebrow{font-size:10px;display:block;margin-bottom:20px}.flight-copy h2{font-family:Georgia,serif;font-size:clamp(64px,8vw,128px);line-height:.95;letter-spacing:-.055em;margin-bottom:24px}.flight-copy p{font-size:14px;line-height:1.7}.flight-copy button{margin-top:12px;background:transparent;color:inherit;border:0;border-bottom:1px solid #f3efe580;padding:10px 0;font-size:12px;cursor:pointer}.flight-controls{position:absolute;bottom:75px;right:6%;width:min(350px,40%)}.flight-controls label{display:flex;justify-content:space-between;gap:15px;font-size:11px}.flight-controls label span{opacity:.75}.flight-controls input{accent-color:#ede9df;margin:18px 0 12px;padding:0;cursor:ew-resize}.flight-track{display:flex;justify-content:space-between;font-size:9px;letter-spacing:.15em}.flight-skip{position:absolute;bottom:28px;right:6%;font-size:11px}@media(max-width:760px){.flight-top{font-size:8px;top:25px}.flight-copy{top:19%;left:6%}.flight-copy h2{font-size:76px}.flight-controls{left:6%;right:6%;width:auto;bottom:78px}.flight-stage{min-height:650px}.flight-image{object-position:60% center}}@media(prefers-reduced-motion:reduce){.flight-story{height:auto}.flight-stage{position:relative}}

.flight-views{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:20px}.flight-views button{border:1px solid #f3efe570;border-radius:20px;background:#24302460;color:#f3efe5;font:11px 'DM Sans',sans-serif;padding:10px 13px;cursor:pointer;min-height:40px}.flight-views button[aria-pressed=true]{background:#ede9df;color:#333a2e}.flight-view-caption{font:11px/1.6 'DM Sans',sans-serif;margin:12px 0 0;color:#f3efe5}.flight-scrubber[hidden]{display:none}.flight-story{height:230vh}@media(max-width:760px){.flight-copy{top:15%}.flight-copy h2{font-size:64px}.flight-controls{bottom:70px}.flight-views{margin-bottom:14px}.flight-copy p{font-size:12px}.flight-views button{min-height:44px;padding:10px}}@media(prefers-reduced-motion:reduce){.flight-story{height:auto}}

/* A photographic orbit with six real viewpoints. */
.house-orbit-layers{position:absolute;inset:0;overflow:hidden;background:#283428}.house-orbit-layers img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;will-change:opacity,transform;object-position:50% 50%}.house-orbit-layers[hidden]{display:none}.flight-story{height:420vh}.flight-copy{top:auto;bottom:100px;left:5%}.flight-copy h2{font-size:clamp(42px,4.3vw,72px);margin-bottom:14px}.flight-copy p{margin-bottom:0}.flight-copy .eyebrow{margin-bottom:15px}.flight-shade{background:linear-gradient(0deg,rgba(15,27,17,.85),transparent 55%),linear-gradient(180deg,rgba(15,27,17,.35),transparent 20%)}.flight-controls{width:min(410px,43%)}@media(max-width:760px){.flight-story{height:380vh}.house-orbit-layers img{object-fit:contain;object-position:center 20%;background:#283428}.flight-stage>.flight-image{object-fit:contain;object-position:center 20%;background:#283428}.flight-copy{top:45%;bottom:auto;left:6%}.flight-copy .eyebrow{display:none}.flight-copy h2{font-size:40px;margin-bottom:10px}.flight-copy h2 br{display:none}.flight-copy h2 em{margin-left:8px}.flight-copy p{display:none}.flight-copy button{margin-top:0}.flight-controls{width:auto;bottom:66px}.flight-views{gap:5px}.flight-views button{font-size:10px;padding:9px}.flight-shade{background:linear-gradient(0deg,rgba(15,27,17,.8),transparent 75%)}}@media(prefers-reduced-motion:reduce){.flight-story{height:auto}}

/* Window light study */
.flight-story{height:290vh}.window-light-layers img{object-position:center center}.flight-stage>.flight-image{object-position:center center}@media(max-width:760px){.flight-story{height:260vh}.window-light-layers img{object-position:center 12%}.flight-stage>.flight-image{object-position:center 12%}}@media(prefers-reduced-motion:reduce){.flight-story{height:auto}}

.flight-track{gap:8px;flex-wrap:wrap;font-size:8px}.flight-story{height:340vh}@media(prefers-reduced-motion:reduce){.flight-story{height:auto}}

#media-thumbs .film-thumb{min-width:110px;width:110px;height:82px;white-space:normal;flex-shrink:0}#media-thumbs .film-thumb span{font-size:10px;line-height:1.35;padding:4px 6px;text-align:center}

/* Viewport-fitted media viewer with persistent photo/video navigation. */
#project-dialog{width:min(1200px,calc(100vw - 24px));height:min(800px,calc(100dvh - 24px));max-height:calc(100dvh - 24px);max-width:calc(100vw - 24px);overflow:hidden}
#project-dialog[open]{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(240px,1fr);grid-template-rows:minmax(0,1fr)}
#project-dialog .close{z-index:5;width:44px;height:44px;top:8px;right:8px}
#project-dialog .dialog-media{display:grid;grid-template-rows:minmax(0,1fr) auto;min-height:0;min-width:0;padding-top:12px}
#project-dialog .dialog-media>img,#project-dialog .dialog-media>video{width:100%;height:100%;min-height:0;max-height:100%;object-fit:contain;grid-row:1;grid-column:1}
#project-dialog .dialog-media>[hidden],#project-dialog #media-thumbs{display:none!important}
.media-navigation{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;gap:12px;align-items:center;padding:12px;color:var(--paper);grid-row:2}
.media-navigation>button{width:44px;height:44px;border:1px solid #c7c9ba70;border-radius:50%;background:#404939;color:var(--paper);font-size:22px}
.media-picker{min-width:0;text-align:center}.media-picker select{display:block;width:100%;min-width:0;max-width:100%;border:1px solid #c7c9ba70;border-radius:8px;background:#30372b;color:var(--paper);padding:10px 8px;font:13px 'DM Sans',sans-serif;text-overflow:ellipsis}.media-picker option,.media-picker optgroup{background:#30372b;color:var(--paper)}#media-position{display:block;font-size:11px;margin-top:7px}
#project-dialog .dialog-copy{overflow-y:auto;min-height:0;min-width:0;padding:65px 24px 24px;justify-content:flex-start}#project-dialog .dialog-copy h2{font-size:clamp(24px,3vw,42px);overflow-wrap:anywhere}#project-dialog .dialog-controls{margin-top:auto;padding-top:24px;gap:12px;flex-shrink:0}#project-dialog .dialog-controls button{flex-shrink:0;width:44px;height:44px}
@media(max-width:760px){#project-dialog[open]{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr) auto}#project-dialog .dialog-media{border-radius:0;padding-top:48px}#project-dialog .dialog-copy{max-height:30dvh;padding:14px 18px}#project-dialog .dialog-copy h2{font-size:23px;margin:5px 0 8px}#project-dialog .dialog-copy p{display:none}#project-dialog .dialog-controls{margin:10px 0 0;padding:0}#project-dialog .dialog-copy>span{font-size:9px}.media-navigation{gap:8px;padding:10px}.media-picker select{font-size:16px}}
@media(max-height:480px) and (min-width:600px){#project-dialog[open]{grid-template-columns:minmax(0,1.8fr) minmax(200px,1fr);grid-template-rows:minmax(0,1fr)}#project-dialog .dialog-copy{max-height:none;padding:50px 15px 12px}#project-dialog .dialog-media{padding-top:0}.media-navigation{padding:8px}#project-dialog .dialog-copy p{display:none}}

/* Consistent portfolio card sizing across all listings. */
.gallery{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:40px 28px}
.gallery .project,.gallery .project:nth-child(even),.gallery .project:last-child{padding-top:0;grid-column:auto;max-width:none;margin:0;width:100%;min-width:0}
.gallery .project>button{aspect-ratio:4/3;width:100%}
.gallery .project>button>img,.gallery .project:nth-child(even)>button>img,.gallery .project:last-child>button>img{height:100%;width:100%;object-fit:cover}
.gallery .project-info{min-height:52px;margin-top:14px;align-items:center}
.gallery .project-info h3{font-size:clamp(19px,2vw,25px)}
.gallery .project-actions{margin-top:10px}
@media(max-width:760px){.gallery{grid-template-columns:minmax(0,1fr);gap:32px}.gallery .project-info h3{font-size:21px}}

/* Keep the sculptural hero wordmark within its own space beside the light controls. */
.time-wordmark{left:4%;right:calc(8% + 260px);width:auto;max-width:92%;white-space:nowrap;font-size:min(32vw,calc((84vw - 260px)/2.25),48svh);line-height:1;bottom:13%}
@media(max-width:760px){.time-wordmark{left:4%;right:4%;max-width:92%;font-size:min(40vw,30svh);bottom:43%}}

footer .footer-credit{margin:16px 0 0;font-size:8px;line-height:1.6;letter-spacing:.025em;opacity:.5;text-align:center}
