:root{--paper:#f5f4f0;--ink:#191918;--muted:#706f6a;--line:#cfcec8;--gutter:3.2vw}*{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}body.locked{overflow:hidden}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:2px solid currentColor;outline-offset:6px}::selection{background:#242420;color:var(--paper)}.micro{font-size:10px;line-height:1.5;letter-spacing:.035em;text-transform:uppercase;font-weight:400}.serif{font-family:Georgia,'Times New Roman',serif;font-style:italic;font-weight:400;letter-spacing:-.06em}.header{margin:0 var(--gutter);height:80px;display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center}.brand{font-weight:800;font-size:22px;letter-spacing:-1.5px}.header-note{justify-self:center;width:100%}.header nav{display:flex;justify-content:flex-end;gap:32px;font-size:11px;text-transform:uppercase}.header nav a,.text-link,.worlds a{position:relative}.header nav a:after,.text-link:after,.worlds a:after{content:'';position:absolute;bottom:-4px;left:0;width:100%;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .3s}.header nav a:hover:after,.text-link:hover:after,.worlds a:hover:after{transform:scaleX(1)}.hero{padding:30px var(--gutter) 47px}.hero-meta{display:flex;justify-content:space-between}.hero h1{font-size:22.9vw;font-weight:600;letter-spacing:-1.6vw;line-height:.92;margin:18px 0 25px -1.1vw}.hero-bottom{display:grid;grid-template-columns:1fr 1fr auto;align-items:end}.hero-bottom p{margin:0}.hero-bottom p:first-child{font-size:24px;line-height:1.05;letter-spacing:-.7px}.hero-bottom p:nth-child(2){padding-left:8px}.hero-bottom a{display:flex;gap:42px;align-items:center}.hero-bottom a span{font-size:24px}.section-line{margin:0 var(--gutter);border-top:1px solid var(--line);padding:15px 0 25px;display:flex;justify-content:space-between}.section-line h2{font-size:inherit;font-weight:400;margin:0}.spread{margin:0 var(--gutter);display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:2.4vw}figure{margin:0;min-width:0}figure button{padding:0;border:0;display:block;width:100%;background:#e2e0da;cursor:zoom-in;overflow:hidden;position:relative}figure img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .9s cubic-bezier(.2,.65,.3,1),opacity .5s}figure button:hover img{transform:scale(1.025)}.image-hint{position:absolute;right:18px;bottom:18px;background:var(--paper);color:var(--ink);padding:9px 12px;font-size:9px;letter-spacing:.06em;text-transform:uppercase;opacity:0;transform:translateY(5px);transition:opacity .3s,transform .3s}figure button:hover .image-hint,figure button:focus-visible .image-hint{opacity:1;transform:none}figcaption{display:flex;justify-content:space-between;gap:16px;padding-top:12px;font-size:10px;line-height:1.5;letter-spacing:.02em;text-transform:uppercase}figcaption span:last-child{color:var(--muted);text-align:right}.fashion-main{grid-column:1/8}.fashion-main figure button{aspect-ratio:4/5}.fashion-main img{object-position:50% 40%}.fashion-side{grid-column:9/13;padding-top:68px}.chapter h3{font-size:clamp(36px,4vw,70px);letter-spacing:-.065em;font-weight:400;line-height:.98;margin:22px 0 39px}.chapter h3 span{display:block}.fashion-side figure button{aspect-ratio:4/5}.fashion-side img{object-position:50% 37%}.side-note{margin-top:26px;color:var(--muted)}.worlds{margin:104px var(--gutter) 126px;display:flex;justify-content:space-between;align-items:center;gap:30px}.worlds>span{color:var(--muted)}.worlds>div{display:flex;gap:30px}.worlds sup{font-size:8px;margin-right:7px;color:var(--muted)}.music{background:#191918;color:var(--paper);padding:54px 0 26px}.music-heading{margin:0 var(--gutter) 41px;display:flex;align-items:center;justify-content:space-between}.music-heading h3{font-size:clamp(60px,8.5vw,145px);font-weight:400;letter-spacing:-.065em;line-height:1;margin:0}.music figure button{aspect-ratio:2.05;background:#242222}.music figure img{object-position:50% 55%}.music figcaption{margin:0 var(--gutter);padding-top:17px}.music figcaption span:last-child{color:#bbb9b1}.music-foot{display:flex;justify-content:space-between;margin:51px var(--gutter) 0;color:#aaa8a1}.hospitality{padding:160px 0 170px;align-items:start}.hospitality-small{grid-column:2/6;padding-top:135px}.hospitality-small figure button{aspect-ratio:3/4}.hospitality-main{grid-column:7/13}.hospitality-main .chapter{padding-bottom:55px}.hospitality-main .chapter h3{margin-bottom:22px}.hospitality-main .chapter h3 span{display:inline}.hospitality-main figure button{aspect-ratio:1.22}.category-label{color:var(--muted)}.weddings{margin:0 var(--gutter) 155px;padding-top:30px;border-top:1px solid var(--line)}.wedding-heading{display:grid;grid-template-columns:1fr 2fr 1fr;align-items:start;margin-bottom:54px}.wedding-heading h3{font-size:clamp(55px,7.5vw,125px);font-weight:400;letter-spacing:-.065em;line-height:.95;margin:0}.wedding-heading>span:last-child{text-align:right}.weddings figure{margin-left:16.666%}.weddings figure button{aspect-ratio:1.9}.weddings img{object-position:50% 60%}.about{margin:0 var(--gutter);padding:61px 0 115px;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 2fr;gap:4vw}.about h2{font-size:16px;font-weight:400;margin-top:22px;letter-spacing:-.4px}.about-lead{font-size:clamp(34px,4.3vw,74px);line-height:1.04;letter-spacing:-.055em;margin:0 0 36px}.bio{max-width:440px;font-size:15px;line-height:1.6;margin:0 0 18px}.secondary{color:var(--muted)}.text-link{display:inline-block;margin-top:24px;padding-bottom:6px;border-bottom:1px solid var(--ink)}.text-link span{margin-left:35px}.contact{padding:43px var(--gutter) 55px;background:#deddd5}.contact-top{display:flex;justify-content:space-between}.contact h2{display:flex;align-items:center;font-size:14vw;font-weight:400;letter-spacing:-.085em;line-height:1;margin:39px 0 31px;gap:3vw}.contact h2>span:last-child{margin-left:auto;font-size:11vw;font-weight:300}.contact #contact-details{color:#595953}footer{padding:27px var(--gutter) 17px}.footer-main{display:flex;justify-content:space-between;align-items:center}.prototype-note{border-top:1px solid var(--line);margin:26px 0 0;padding-top:12px;font-size:10px;color:var(--muted);line-height:1.5}.skip{position:absolute;left:15px;top:-100px;z-index:100;background:var(--paper);padding:12px}.skip:focus{top:10px}.reveal{opacity:0;transform:translateY(18px);transition:opacity .85s ease,transform .85s cubic-bezier(.2,.65,.3,1)}.reveal.visible{opacity:1;transform:none}.viewer{background:#171716;color:var(--paper);width:100vw;max-width:none;height:100dvh;max-height:none;border:0;padding:22px var(--gutter);margin:0}.viewer::backdrop{background:#171716}.viewer[open]{display:flex;flex-direction:column}.viewer-top,.viewer-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px}.viewer button{border:0;background:transparent;cursor:pointer;padding:12px}.viewer-close{font-size:11px;text-transform:uppercase}.viewer-image{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;padding:24px 0}.viewer-image img{width:100%;height:100%;object-fit:contain}.viewer-bottom h2{font-size:14px;font-weight:400;text-transform:uppercase;margin:0 0 7px}.viewer-bottom p{color:#b5b2aa;margin:0}.viewer-controls{display:flex;align-items:center;gap:18px}.viewer-controls button{font-size:26px;min-width:44px;min-height:44px}
@media(min-width:1700px){.micro,figcaption,.header nav{font-size:12px}.hero-bottom p:first-child{font-size:32px}}
@media(max-width:760px){:root{--gutter:5vw}html{scroll-padding-top:20px}.header{height:76px;grid-template-columns:1fr 1fr}.brand{font-size:20px}.header-note{display:none}.header nav{gap:22px;font-size:10px}.header nav a{padding:12px 0}.hero{padding-top:43px;padding-bottom:43px}.hero-meta{font-size:8px;gap:20px}.hero-meta span:last-child{max-width:105px;text-align:right}.hero h1{font-size:19.9vw;margin:23px 0 29px;letter-spacing:-1.45vw}.hero-bottom{grid-template-columns:1fr auto}.hero-bottom p:first-child{font-size:20px}.hero-bottom p:nth-child(2){display:none}.hero-bottom a{gap:17px;font-size:9px}.section-line{padding-top:13px;padding-bottom:20px;font-size:9px}.spread{grid-template-columns:repeat(6,minmax(0,1fr));gap:0}.fashion-main{grid-column:1/7}.fashion-main figure button{aspect-ratio:4/5}.fashion-side{grid-column:2/7;padding-top:60px}.chapter h3{font-size:47px;margin:18px 0 27px}.fashion-side .chapter{margin-left:0}.fashion-side figure button{aspect-ratio:4/5}.micro{font-size:9px}figcaption{font-size:9px;padding-top:11px;gap:10px}.side-note{margin-top:18px}.worlds{margin-top:61px;margin-bottom:65px;align-items:flex-start;flex-direction:column;gap:22px}.worlds>div{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:20px}.worlds a{padding:7px 0}.music{padding-top:29px}.music-heading{display:grid;grid-template-columns:1fr 1fr;gap:27px;margin-bottom:27px}.music-heading h3{grid-row:2;grid-column:1/3;font-size:17vw}.music-heading>span:last-child{grid-row:1;grid-column:2;text-align:right}.music figure button{aspect-ratio:4/5}.music figure img{object-position:43% 50%}.music-foot{margin-top:34px;font-size:8px}.hospitality{padding-top:79px;padding-bottom:82px}.hospitality-small{grid-column:1/6;grid-row:2;padding-top:45px}.hospitality-main{grid-column:1/7;grid-row:1}.hospitality-main .chapter{padding-bottom:30px}.hospitality-main .chapter h3{font-size:44px}.hospitality-main figure button{aspect-ratio:1.15}.hospitality-small figure button{aspect-ratio:4/5}.weddings{margin-bottom:80px;padding-top:25px}.wedding-heading{grid-template-columns:1fr 1fr;gap:28px;margin-bottom:30px}.wedding-heading h3{grid-column:1/3;grid-row:2;font-size:18vw}.wedding-heading>span:last-child{grid-column:2;grid-row:1}.weddings figure{margin-left:0}.weddings figure button{aspect-ratio:4/5}.weddings img{object-position:49% 50%}.about{padding-top:30px;padding-bottom:65px;grid-template-columns:1fr;gap:35px}.about h2{margin-top:8px;font-size:14px}.about-lead{font-size:9vw;margin-bottom:27px}.bio{font-size:14px}.text-link{margin-top:14px}.contact{padding-top:28px;padding-bottom:32px}.contact-top{gap:20px;font-size:8px}.contact-top span:last-child{max-width:132px;text-align:right}.contact h2{font-size:18vw;margin:35px 0 29px}.contact h2>span:last-child{font-size:14vw}footer{padding-top:24px}.footer-main{font-size:8px;gap:12px}.footer-main .brand{font-size:18px}.prototype-note{font-size:9px}.viewer{padding-top:12px;padding-bottom:22px}.viewer-image{padding:16px 0}.viewer-top>span{font-size:8px}.viewer-bottom h2{font-size:11px}.viewer-controls{gap:5px}.viewer-bottom{gap:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.reveal{opacity:1;transform:none}figure button:hover img{transform:none}}

/* Revision 02: continuous portfolio, retaining the original type and image UI. */
:root{--paper:#211c1e;--ink:#eee9e3;--muted:#b8adae;--line:rgba(235,222,221,.23)}
::selection{background:#eee9e3;color:#211c1e}
figure button{background:#443c3e}.image-hint{background:#eee9e3;color:#211c1e}
.intro{margin:0 var(--gutter);padding:44px 0 42px;display:grid;grid-template-columns:1fr 1fr;gap:7vw;align-items:center}
.intro h1{font-size:clamp(42px,5vw,76px);letter-spacing:-.065em;line-height:1;margin:0 0 21px;font-weight:600}
.intro-identity>p{font-size:25px;letter-spacing:-.035em;line-height:1.12;margin:0 0 24px}
.intro-identity>.micro{color:var(--muted)}.intro-note{max-width:365px;margin-left:7vw;scroll-margin-top:40px}.intro-note>.micro{color:var(--muted)}
.intro-note p{font-size:14px;line-height:1.75;margin:15px 0 0;color:#d3c9c8}
.worlds{margin:0 var(--gutter) 30px;padding:12px 0 9px;border-top:1px solid var(--line)}.worlds>div{width:100%;display:flex;justify-content:space-between;gap:20px}.worlds a{font-size:11px;padding:10px 0}.worlds sup{color:var(--muted)}
.portfolio-section{padding:0 0 130px;scroll-margin-top:28px}
.category-heading{margin:0 var(--gutter) 40px;padding-top:25px;border-top:1px solid var(--line);display:grid;grid-template-columns:6.5vw 1fr auto;gap:15px;align-items:baseline}
.category-heading h3{font-size:clamp(30px,4.5vw,76px);font-weight:400;text-transform:uppercase;letter-spacing:-.055em;line-height:1.08;margin:0}.category-heading p{color:var(--muted);margin:0;text-align:right}
.category-number{color:var(--muted);font-size:12px}
.sequence{margin:0 var(--gutter);display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:2.4vw;row-gap:85px;align-items:start}
.sequence figure{margin:0}.sequence figure button{aspect-ratio:4/5}.sequence .offset{margin-top:140px}
.sequence .large-portrait{grid-column:1/8}.sequence .small-portrait{grid-column:9/13}
.sequence .landscape{grid-column:1/9}.sequence .landscape button{aspect-ratio:1.55}.sequence .portrait-right{grid-column:9/13;align-self:end}
.sequence .panorama{grid-column:1/-1;margin-left:calc(-1 * var(--gutter));margin-right:calc(-1 * var(--gutter))}.sequence .panorama button{aspect-ratio:1.85;max-height:90svh}.sequence .panorama figcaption{margin:0 var(--gutter)}
.sequence .pair-left{grid-column:2/7}.sequence .pair-right{grid-column:8/13}
.sequence .wide-inset{grid-column:2/12}.sequence .wide-inset button{aspect-ratio:1.65}
.sequence .portrait-left{grid-column:1/5}.sequence .landscape-right{grid-column:6/13}.sequence .landscape-right button{aspect-ratio:1.12}
.sequence .portrait-center{grid-column:4/10}.sequence .portrait-center button{aspect-ratio:4/5}
[data-photo="fashion"] img{object-position:50% 40%}[data-photo="portrait"] img{object-position:50% 37%}
.contact{background:transparent;border-top:1px solid var(--line);margin:0 var(--gutter);padding-left:0;padding-right:0}.contact #contact-details{color:var(--muted)}
.viewer{background:#211c1e;color:var(--ink)}.viewer::backdrop{background:#211c1e}.viewer-bottom p{color:var(--muted)}
@media(max-width:1000px){.category-heading{grid-template-columns:40px 1fr}.category-heading p{grid-column:2;text-align:left}.intro-note{margin-left:0}.category-heading h3{font-size:4.8vw}}
@media(max-width:760px){
 .intro{padding:35px 0 41px;grid-template-columns:1fr;gap:34px}.intro h1{font-size:42px;margin-bottom:16px}.intro-identity>p{font-size:22px;margin-bottom:19px}.intro-note{max-width:390px;margin-left:15%;}.intro-note p{font-size:13px;line-height:1.7;margin-top:12px}
 .worlds{margin-bottom:38px;padding:0}.worlds>div{display:grid;grid-template-columns:1fr 1fr;gap:7px 15px}.worlds a{font-size:10px}
 .portfolio-section{padding-bottom:76px}.category-heading{grid-template-columns:27px 1fr;gap:10px;margin-bottom:28px;padding-top:21px}.category-heading h3{font-size:clamp(23px,6.5vw,43px);letter-spacing:-.05em}.category-number{font-size:10px}.category-heading p{grid-column:2;font-size:9px;line-height:1.6}
 .sequence{grid-template-columns:repeat(6,minmax(0,1fr));column-gap:3vw;row-gap:44px}.sequence .offset{margin-top:0}
 .sequence .large-portrait{grid-column:1/7}.sequence .small-portrait{grid-column:2/7}.sequence .landscape{grid-column:1/7}.sequence .landscape button{aspect-ratio:1.2}.sequence .portrait-right{grid-column:2/7}
 .sequence .panorama{grid-column:1/-1}.sequence .panorama button{aspect-ratio:4/5;max-height:none}
 .sequence .pair-left{grid-column:1/6}.sequence .pair-right{grid-column:2/7}.sequence .wide-inset{grid-column:1/7}.sequence .wide-inset button{aspect-ratio:1.2}
 .sequence .portrait-left{grid-column:1/6}.sequence .landscape-right{grid-column:1/7}.sequence .portrait-center{grid-column:2/7}
 .contact{padding-top:28px}.intro-note .micro{font-size:9px}
}
@media(hover:none){.image-hint{display:none}figure button:hover img{transform:none}}

.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}

/* Revision 03: the same repeated, 2:3 photographic strip in every category. */
.intro.intro-large{display:block;padding:36px 0 57px;margin:0 var(--gutter)}
.intro-large h1{font-size:22.9vw;font-weight:600;letter-spacing:-1.6vw;line-height:.92;margin:18px 0 37px -1.1vw}
.intro-details{display:grid;grid-template-columns:1fr 1fr;gap:7vw;align-items:start}
.intro-large .intro-note{margin-left:7vw;max-width:390px}.intro-large .intro-note p{margin:0;font-size:13px;line-height:1.65}
.intro-large .intro-identity>p{margin-bottom:18px}.intro-large .intro-identity>.micro{font-size:10px}
.portfolio-section{padding-bottom:74px}.category-heading{grid-template-columns:50px 1fr auto;gap:18px;margin-bottom:26px;padding-top:23px;align-items:center}
.category-heading h3{font-size:clamp(28px,4vw,62px)}
.carousel-controls{display:flex;align-items:center;gap:14px}.carousel-controls button{background:none;border:0;padding:8px;min-width:44px;min-height:44px;font-size:26px;cursor:pointer}.carousel-controls button:hover{color:var(--muted)}.carousel-count{min-width:44px;text-align:center;color:var(--muted)}
.carousel-viewport{margin:0 var(--gutter);overflow:hidden;touch-action:pan-y pinch-zoom;position:relative}
.carousel-track{display:flex;position:relative;gap:16px;will-change:transform}
.carousel-slide{flex:0 0 calc((100% - 32px)/3.15);min-width:0;margin:0}
.carousel-slide button{aspect-ratio:2/3;width:100%;position:relative}
.carousel-slide img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;user-select:none;-webkit-user-drag:none}
.carousel-slide figcaption{display:none}
@media(max-width:1000px){.category-heading{grid-template-columns:32px 1fr auto;gap:12px}.carousel-controls{gap:5px}.intro-large .intro-note{margin-left:0}}
@media(max-width:760px){
 .intro.intro-large{padding:27px 0 36px}.intro-large h1{font-size:21.8vw;letter-spacing:-1.6vw;margin:12px 0 27px -1vw}
 .intro-details{grid-template-columns:1fr;gap:25px}.intro-large .intro-identity>p{font-size:22px;margin-bottom:13px}.intro-large .intro-note{margin-left:14%;max-width:none}.intro-large .intro-note p{font-size:12px;line-height:1.65}
 .category-heading{grid-template-columns:25px 1fr;gap:10px;margin-bottom:20px;padding-top:20px}.category-heading h3{font-size:clamp(23px,6.5vw,40px)}
 .carousel-controls{grid-column:2;justify-self:end;margin-top:0;gap:8px}.carousel-controls button{padding:4px}.carousel-count{font-size:9px}
 .portfolio-section{padding-bottom:46px}.carousel-track{gap:12px}.carousel-slide{flex-basis:88%}
}

/* Instagram link and real contact details. */
.header{grid-template-columns:1fr 1fr auto;column-gap:30px}
.instagram{margin:0 var(--gutter);padding:32px 0 48px;border-top:1px solid var(--line)}.instagram>a{display:block}.instagram h2{margin:0 0 22px;font-weight:400}.instagram p{display:flex;justify-content:space-between;align-items:center;margin:0;font-size:clamp(48px,10vw,155px);letter-spacing:-.065em;line-height:1}.instagram p>span{font-size:.7em}
.contact #contact-details{display:grid;grid-template-columns:1fr 1fr;gap:24px;color:var(--ink)}#contact-details>div{display:flex;flex-wrap:wrap;align-items:baseline;gap:12px 23px}#contact-details>div>.micro:first-child{flex-basis:100%;color:var(--muted)}#contact-details a{font-size:clamp(18px,2.1vw,30px);letter-spacing:-.03em}#contact-details .whatsapp{font-size:10px;letter-spacing:.02em}#contact-details a:hover{text-decoration:underline;text-underline-offset:5px}.design-credit{color:var(--muted)}.design-credit>span[aria-hidden]{font-size:10px}.footer-main{border-top:1px solid var(--line);padding-top:23px;padding-bottom:12px}

@media(max-width:1000px){.header-note{display:none}.header{grid-template-columns:1fr auto;column-gap:20px}}
@media(max-width:760px){.header{height:auto;min-height:94px;padding:15px 0 10px;grid-template-columns:1fr auto;row-gap:2px}.header nav{gap:18px}.instagram{padding-top:26px;padding-bottom:34px}.instagram p{font-size:12vw}.instagram h2{font-size:10px}.contact #contact-details{grid-template-columns:1fr;gap:26px}.footer-main{display:grid;grid-template-columns:1fr auto;row-gap:19px}.design-credit{grid-column:1/-1;font-size:9px}}

/* The same dark room: scroll sets its hue; CSS moves the ambient light. */
:root{--paper:#1d1b1c;--ambient-rgb:89,79,84}
body{isolation:isolate}
body::before,body::after{content:"";position:fixed;inset:-30%;z-index:-1;pointer-events:none;background-repeat:no-repeat;will-change:transform,opacity}
body::before{background:radial-gradient(ellipse at 23% 30%,rgba(var(--ambient-rgb),.38),rgba(var(--ambient-rgb),.18) 38%,transparent 76%);animation:ambient-drift 47s ease-in-out infinite alternate}
body::after{background:radial-gradient(ellipse at 79% 73%,rgba(var(--ambient-rgb),.27),rgba(var(--ambient-rgb),.09) 42%,transparent 79%);animation:ambient-depth 67s ease-in-out infinite alternate}
@keyframes ambient-drift{0%{transform:translate(-9%,-5%) scale(1.02);opacity:.70}46%{transform:translate(5%,4%) scale(1.16);opacity:1}100%{transform:translate(10%,-3%) scale(1.07);opacity:.78}}
@keyframes ambient-depth{0%{transform:translate(7%,7%) scale(1.1);opacity:.86}57%{transform:translate(-5%,-5%) scale(1);opacity:.58}100%{transform:translate(-10%,5%) scale(1.15);opacity:.96}}
@media(min-width:761px){.instagram p{font-size:clamp(48px,8vw,124px)}}
@media(prefers-reduced-motion:reduce){body::before,body::after{animation:none!important;transform:none;will-change:auto;opacity:.65}}
