
:root{--paper:#e9e0d6;--ink:#171310;--soft:#d8cdc1;--margin:clamp(18px,2.3vw,38px)}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--paper);color:var(--ink)}body{font-family:Georgia,"Times New Roman",serif;-webkit-font-smoothing:antialiased}img{display:block;width:100%;height:auto}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}.home-page{overflow-x:hidden}
/* HOME: one living canvas */
.living-home{height:var(--home-scroll-height,100svh);position:relative;background:var(--paper)}.home-canvas{position:sticky;top:0;height:100svh;overflow:hidden;background:radial-gradient(circle at 48% 45%,#f2ebe3 0,#e9e0d6 55%,#e5dbd0 100%)}
.home-canvas:after,.menu-overlay:after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.22;mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140' viewBox='0 0 140 140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.08'/%3E%3C/svg%3E")}.home-canvas:before{content:"";position:absolute;z-index:8;left:0;right:0;bottom:0;height:30svh;pointer-events:none;background:linear-gradient(to bottom,rgba(233,224,214,0) 0%,rgba(233,224,214,.48) 38%,rgba(233,224,214,.94) 76%,var(--paper) 100%)}
.home-brand-top,.home-location,.home-scroll-copy{position:absolute;z-index:20;left:50%;font-size:clamp(9px,.85vw,13px);letter-spacing:.03em;white-space:nowrap;text-transform:uppercase;pointer-events:none}.home-brand-top{top:30px;transform:translateX(-50%);text-transform:none}.home-scroll-copy{top:50%;width:min(84vw,720px);height:1.4em;transform:translate(-50%,-50%);text-align:center}.home-scroll-copy span{position:absolute;inset:0;will-change:opacity,transform}.home-scroll-copy [data-home-phrase="second"]{opacity:0;transform:translateY(8px)}.home-location{bottom:28px;transform:translateX(-50%);font-size:clamp(8px,.72vw,11px);letter-spacing:.14em}
.menu-trigger{position:fixed;z-index:500;top:28px;right:var(--margin);border:0;background:none;padding:4px;cursor:pointer;font-size:13px;text-transform:uppercase;letter-spacing:.04em}
.floating-stage{position:absolute;inset:0;z-index:6;pointer-events:none}.scroll-composition{position:absolute;inset:0;opacity:0;transform:translate3d(0,100svh,0);will-change:transform,opacity}.scene-photo{position:absolute;z-index:var(--z);left:var(--x);top:var(--y);width:var(--w);height:auto;max-height:84svh;object-fit:contain;transform:rotate(var(--r));box-shadow:0 4px 24px rgba(28,20,14,.08)}
/* MENU */
.menu-overlay{position:fixed;z-index:1000;inset:0;background:#cdb9aa;opacity:0;visibility:hidden;transition:opacity .45s ease,visibility .45s;overflow:hidden}.menu-overlay.is-open{opacity:1;visibility:visible}.menu-close{position:absolute;z-index:10;top:28px;right:var(--margin);border:0;background:none;padding:4px;cursor:pointer;font-size:13px;text-transform:uppercase}.menu-brand-vertical{position:absolute;left:6px;bottom:3vh;writing-mode:vertical-rl;transform:rotate(180deg);font-size:clamp(28px,4.3vw,68px);letter-spacing:.13em;opacity:.13}.menu-links{position:absolute;z-index:8;left:55.5%;top:63%;transform:translate(-5%,-10%);display:flex;flex-direction:column;align-items:flex-start}.menu-links a{font-size:clamp(43px,4.1vw,70px);line-height:1.28;letter-spacing:-.035em;transition:opacity .3s ease,transform .35s ease}.menu-links:hover a{opacity:.32}.menu-links a:hover{opacity:1;transform:translateX(8px)}
.menu-preview{position:absolute;overflow:hidden;background:#b9a99d}.menu-preview img{width:100%;height:100%;object-fit:cover;transition:opacity .28s ease,transform .7s ease;opacity:1}.menu-preview.is-changing img{opacity:.05;transform:scale(1.025)}.menu-preview-left{left:6.5%;top:43%;width:29%;height:57%}.menu-preview-small{left:38%;top:64%;width:14.5%;height:29%}.menu-preview-top{right:10.5%;top:0;width:23%;height:57%}
.instagram-link{display:grid;place-items:center;width:31px;height:31px;color:var(--ink);opacity:.52;transition:opacity .3s ease,transform .3s ease}.instagram-link:hover,.instagram-link:focus-visible{opacity:1;transform:translateY(-2px)}.instagram-link svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.25;stroke-linecap:round;stroke-linejoin:round}.instagram-link .instagram-dot{fill:currentColor;stroke:none}.instagram-menu{position:absolute;z-index:12;left:var(--margin);bottom:25px}.instagram-page-link{position:fixed;z-index:420;right:var(--margin);bottom:23px}
/* minimal header */
.minimal-head{height:0;position:relative;z-index:100}.tiny-monogram{position:fixed;z-index:450;top:19px;left:var(--margin);width:52px;opacity:.72}.tiny-monogram img{height:auto}.portfolio-page .menu-trigger,.editorial-page .menu-trigger{position:fixed}
/* PORTFOLIO */
.portfolio-page{background:#f2eee8;overflow-x:hidden}.portfolio-stream{padding:95px var(--margin) 50px}.portfolio-note{text-align:center;font-family:Arial,sans-serif;font-size:9px;letter-spacing:.22em;text-transform:uppercase;margin:0 0 55px;opacity:.5}.portfolio-grid{columns:3;column-gap:clamp(10px,1.2vw,20px);max-width:1650px;margin:auto}.portfolio-item{display:block;margin:0 0 clamp(10px,1.2vw,20px);break-inside:avoid;opacity:0;transform:translateY(22px);transition:opacity .8s ease,transform .8s ease}.portfolio-item.visible{opacity:1;transform:none}.portfolio-item img{width:100%;height:auto}.portfolio-sentinel{height:4px}
/* temporary about/contact aligned to visual system */
.editorial-page{background:#e7ded5}.placeholder-editorial{min-height:100svh;display:grid;grid-template-columns:56% 44%;align-items:center;padding:7vw}.placeholder-editorial figure{margin:0;width:70%;justify-self:start}.placeholder-editorial section{max-width:440px}.placeholder-editorial section>span{font:10px Arial,sans-serif;letter-spacing:.25em}.placeholder-editorial h1{font-size:clamp(58px,7vw,112px);font-weight:400;letter-spacing:-.05em;margin:.25em 0}.placeholder-editorial p{font-size:18px;line-height:1.7}.contact-placeholder figure{width:58%}
.contact-editorial{min-height:100svh;display:grid;grid-template-columns:minmax(320px,42%) 1fr;gap:clamp(45px,7vw,120px);align-items:start;padding:clamp(105px,9vw,145px) clamp(24px,7vw,120px) 90px}.contact-image{position:sticky;top:105px;margin:0;width:min(100%,560px)}.contact-image img{width:100%;height:auto}.contact-content{max-width:790px}.contact-eyebrow{font:10px Arial,sans-serif;letter-spacing:.25em}.contact-content h1{font-size:clamp(64px,7vw,112px);font-weight:400;letter-spacing:-.05em;margin:.15em 0 .12em}.contact-intro{max-width:590px;font-size:18px;line-height:1.65;margin:0 0 55px}.contact-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:clamp(24px,4vw,58px);row-gap:31px}.contact-field{display:flex;flex-direction:column;gap:10px}.contact-field-wide{grid-column:1/-1}.contact-field label,.contact-consent{font:10px Arial,sans-serif;letter-spacing:.13em;text-transform:uppercase}.contact-field input,.contact-field select,.contact-field textarea{width:100%;border:0;border-bottom:1px solid rgba(23,19,16,.42);border-radius:0;background:transparent;color:var(--ink);padding:4px 0 12px;font:16px Georgia,"Times New Roman",serif;outline:none}.contact-field textarea{resize:vertical;min-height:95px}.contact-field input:focus,.contact-field select:focus,.contact-field textarea:focus{border-color:var(--ink)}.contact-field input::placeholder{color:rgba(23,19,16,.42)}.contact-consent{display:flex;align-items:flex-start;gap:11px;line-height:1.55;letter-spacing:.06em;text-transform:none;cursor:pointer}.contact-consent input{margin:2px 0 0;accent-color:var(--ink)}.contact-submit{display:flex;flex-direction:column;align-items:flex-start;gap:12px;margin-top:8px}.contact-submit button{border:1px solid var(--ink);background:transparent;padding:14px 22px;cursor:pointer;font:11px Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase;transition:background .3s ease,color .3s ease}.contact-submit button:hover,.contact-submit button:focus-visible{background:var(--ink);color:var(--paper)}.contact-submit small{max-width:510px;font:10px/1.5 Arial,sans-serif;opacity:.58}
@media(max-width:900px){.home-brand-top{top:22px}.home-location{bottom:22px;max-width:76vw;text-align:center;white-space:normal;line-height:1.45}.menu-trigger,.menu-close{top:20px}.menu-preview-left{left:5%;top:44%;width:42%;height:56%}.menu-preview-small{display:none}.menu-preview-top{right:9%;width:35%;height:50%}.menu-links{left:52%;top:68%}.menu-links a{font-size:clamp(39px,8vw,62px)}.portfolio-grid{columns:2}.placeholder-editorial{grid-template-columns:1fr;gap:48px;padding:90px 8vw 50px}.placeholder-editorial figure{width:72%}.placeholder-editorial section{margin-left:auto;width:88%}.contact-editorial{grid-template-columns:1fr;padding:95px 8vw 65px;gap:55px}.contact-image{position:static;width:68%;margin-left:auto}.contact-content{max-width:none}.contact-intro{margin-bottom:42px}}
@media(max-width:560px){.home-brand-top,.home-scroll-copy{font-size:8px;letter-spacing:.08em}.home-location{bottom:18px;font-size:7px;letter-spacing:.12em;max-width:68vw}.scene-photo{left:var(--mx);top:var(--my);width:auto;max-width:var(--mw);max-height:var(--mh);transform:none;box-shadow:0 3px 18px rgba(28,20,14,.055)}.home-canvas:before{height:31svh}.menu-trigger{right:18px}.menu-brand-vertical{font-size:32px}.menu-preview-left{left:6%;top:5%;width:55%;height:44%}.menu-preview-top{right:7%;top:18%;width:34%;height:36%}.menu-links{left:31%;top:59%;transform:none}.menu-links a{font-size:44px;line-height:1.35}.instagram-menu{left:16px;bottom:15px}.instagram-page-link{right:14px;bottom:14px}.portfolio-stream{padding:82px 10px 35px}.portfolio-note{margin-bottom:25px}.portfolio-grid{columns:2;column-gap:7px}.portfolio-item{margin-bottom:7px}.tiny-monogram{width:42px;left:15px}.placeholder-editorial figure{width:86%}.placeholder-editorial h1{font-size:58px}.contact-editorial{padding:86px 20px 50px;gap:38px}.contact-image{width:82%;margin-left:0}.contact-content h1{font-size:62px}.contact-intro{font-size:16px;margin-bottom:38px}.contact-form{grid-template-columns:1fr;row-gap:27px}.contact-field-wide{grid-column:auto}.contact-submit button{width:100%;line-height:1.35}}
@media(prefers-reduced-motion:reduce){.portfolio-item,.menu-overlay,.menu-preview img{transition:none!important}}
