@import url('https://fonts.googleapis.com/css2?family=Caveat:wght@400;500&display=swap');
:root{--paper:#f4e8de;--ink:#272743;--muted:#5e5c70;--line:#cec5cc;--moss:#5964a0;--soft:#d6dcf3;--table:#e4ebcf;--accent:#7c5184}
body{transition:background-color .4s,color .4s}body[data-palette=pistachio]{--paper:#f1f3df;--ink:#203a34;--muted:#51665d;--line:#c2cdb8;--moss:#405aaa;--soft:#cdd8f1;--table:#dfcbe0;--accent:#405aaa}body[data-palette=powder]{--paper:#e7eff2;--ink:#29394d;--muted:#54677b;--line:#bccdd3;--moss:#9f4e48;--soft:#f0cbc1;--table:#e5dfef;--accent:#9f4e48}
.identity{gap:12px}.identity img{width:53px;height:33px}.identity span{font-size:16px;line-height:1.2;letter-spacing:-.035em;white-space:nowrap;font-weight:500}header{padding:27px 5%;background:var(--paper)}header nav{font-size:11px;gap:25px}.preview{background:var(--ink)}.intro{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(220px,.7fr);gap:8%;padding:70px 8% 80px;align-items:start}.intro h1{font-size:clamp(70px,8.1vw,126px);line-height:.98;margin:28px 0 30px}.intro h1 i{color:var(--moss)}.intro-bottom{display:block}.intro-bottom p{max-width:350px}.intro-bottom .text-link{margin-top:12px}.intro-note{padding-top:63px;position:relative}.intro-note .eyebrow{display:block;margin-bottom:15px;font-size:8px;letter-spacing:.12em}.intro-note button{width:100%;height:268px;position:relative;z-index:1}.intro-note button:before{content:'';position:absolute;inset:25px -25px -23px 25px;background:var(--soft);z-index:-1}.intro-note img{width:100%;height:100%;object-fit:cover}.note-caption{display:block;margin-top:37px;text-align:right;font-size:9px;letter-spacing:.1em;color:var(--muted)}.hero{margin:0 13% 0 0;overflow:visible;height:72vh;max-height:830px;min-height:420px;isolation:isolate}.hero:after{content:'';position:absolute;right:-5%;bottom:-25px;width:64%;height:36%;background:var(--table);z-index:-1}.hero-photo{overflow:hidden}.hero-caption{position:static;background:none;color:var(--ink);padding:18px 0 0 9%;font-size:9px}.journal{padding-top:125px}.journal-layout{grid-template-columns:1fr 1fr;gap:13%}.diptych{grid-template-columns:1.2fr .85fr;gap:8%;align-items:start}.diptych button:last-child{margin-top:130px}.diptych button:last-child img{height:450px}.table-section{background:var(--table)}.food-grid{gap:35px}.food-story:nth-child(2){margin-top:65px}.food-story:nth-child(3){margin-top:125px}.food-story p{border-color:var(--line)}.brand-pause{background:var(--soft);padding:70px 5%;text-align:center;display:flex;flex-direction:column;align-items:center}.brand-pause img{width:96px;height:65px;object-fit:contain}.brand-pause>span{font-size:22px;letter-spacing:-.04em;margin-top:16px;white-space:nowrap}.brand-pause p{font-size:10px;letter-spacing:.05em;color:var(--muted);margin:12px 0 0}.film-grid video{background:var(--paper)}.film-grid article:nth-child(2){margin-top:55px}.film-grid article:nth-child(3){margin-top:110px}.filters button{border-color:var(--line)}.filters button.active,.filters button:hover{background:var(--ink);color:var(--paper)}.gallery .caption{color:var(--muted)}footer{background:var(--soft)}body[data-placement=center] header{display:grid;grid-template-columns:1fr auto 1fr;row-gap:22px}body[data-placement=center] header .identity{grid-column:2;grid-row:1;flex-direction:column;gap:14px}body[data-placement=center] header .identity img{width:64px;height:44px}body[data-placement=center] header nav{grid-column:1/-1;grid-row:2;justify-content:center}body[data-placement=center] header .instagram{grid-column:3;grid-row:1;justify-self:end}
@media(max-width:1000px) and (min-width:801px){header{flex-wrap:wrap}header nav{order:3;width:100%;justify-content:center}.intro{gap:6%;padding-left:6%;padding-right:6%}.intro h1{font-size:78px}}
@media(max-width:800px){header{padding:22px 6%;gap:20px}.identity img{width:45px;height:30px}.identity span{font-size:16px;letter-spacing:-.035em}header nav{width:100%;justify-content:space-between;gap:12px}.intro{display:block;padding:45px 6% 55px}.intro h1{font-size:clamp(55px,11.5vw,82px);margin:24px 0 25px}.intro-bottom p{font-size:13px}.intro-note{width:55%;margin:35px 6% 0 auto;padding-top:0}.intro-note button{height:210px}.intro-note button:before{inset:20px -18px -18px 20px}.intro-note .eyebrow{font-size:7px}.note-caption{margin-top:28px;font-size:8px}.hero{margin-right:7%;height:55vh;min-height:330px}.hero-caption{font-size:7px;gap:15px;padding-left:6%}.journal{padding-top:100px}.journal-layout{grid-template-columns:1fr;gap:10px}.diptych{gap:20px}.diptych button:last-child{margin-top:80px}.diptych button:last-child img{height:260px}.food-story:nth-child(n),.film-grid article:nth-child(n){margin-top:0}.food-grid{gap:30px}.brand-pause{padding:50px 6%}.brand-pause>span{font-size:21px}footer .identity span{font-size:14px}body[data-placement=center] header{display:flex;flex-direction:column}body[data-placement=center] header nav{justify-content:center;gap:20px}}
@media(max-width:480px){.intro-note{width:61%;margin-top:30px}.intro-note button{height:190px}.intro-note .eyebrow{letter-spacing:.04em}.intro h1{font-size:56px}.preview-links{gap:10px}.preview-links a{font-size:7px}}
@media(prefers-reduced-motion:reduce){body{transition:none}}
.study-preview>.preview{display:none}
/* A deeper, quieter alternative: the name can carry the identity. */

:root{--paper:#202633;--ink:#ede7dd;--muted:#bdc5d0;--line:#525d6d;--moss:#b7c6db;--soft:#343e4e;--table:#2b3442;--accent:#c9af97}
body[data-palette=apricot]{--paper:#f4e8de;--ink:#272743;--muted:#5e5c70;--line:#cec5cc;--moss:#5964a0;--soft:#d6dcf3;--table:#e4ebcf;--accent:#7c5184}
body[data-palette=aubergine]{--paper:#30252e;--ink:#f2e7dc;--muted:#cdbbc5;--line:#69535e;--moss:#d2bdc9;--soft:#493641;--table:#3b3037;--accent:#cdbca0}
body[data-palette=charcoal]{--paper:#292925;--ink:#eee9df;--muted:#c7c4b7;--line:#605f54;--moss:#cbb98f;--soft:#41443e;--table:#343731;--accent:#bac3bd}
body[data-palette=midnight] .identity img,body[data-palette=aubergine] .identity img,body[data-palette=charcoal] .identity img,body[data-palette=midnight] .brand-pause img,body[data-palette=aubergine] .brand-pause img,body[data-palette=charcoal] .brand-pause img{filter:brightness(0) invert(1)}
body[data-weight=wordmark] .identity img,body[data-weight=wordmark] .brand-pause img{display:none}.identity span{font-size:20px;letter-spacing:-.04em;font-weight:500}body[data-lettering=editorial] .identity span,body[data-lettering=editorial] .brand-pause>span{font-family:'Libre Caslon Display',Georgia,serif;font-size:28px;letter-spacing:-.025em;font-weight:400}body[data-lettering=personal] .identity span,body[data-lettering=personal] .brand-pause>span{font-family:Caveat,cursive;font-size:31px;letter-spacing:0;font-weight:400}.brand-pause>span{font-size:30px;letter-spacing:-.045em}.brand-pause{padding:65px 5%}.preview{background:var(--soft);color:var(--ink)}.preview a{color:var(--ink)}.filters button.active,.filters button:hover{color:var(--paper);background:var(--ink)}
@media(max-width:800px){.identity span{font-size:20px}body[data-lettering=editorial] .identity span{font-size:27px}body[data-lettering=personal] .identity span{font-size:30px}.brand-pause>span{font-size:25px}footer .identity span{font-size:18px}}
:root{--pastel-blue:#b6cae3;--rose:#ddb8c8;--butter:#e6d495}
body[data-palette=midnight] .intro-note button:before,body[data-palette=aubergine] .intro-note button:before,body[data-palette=charcoal] .intro-note button:before{background:var(--pastel-blue)}body[data-palette=midnight] .hero:after,body[data-palette=aubergine] .hero:after,body[data-palette=charcoal] .hero:after{background:var(--rose)}body[data-palette=midnight] .intro-copy>.eyebrow,body[data-palette=aubergine] .intro-copy>.eyebrow,body[data-palette=charcoal] .intro-copy>.eyebrow{color:var(--butter)}body[data-palette=midnight] .food-story>span{color:var(--rose)}
.will-introduce{overflow:hidden}.will-introduce body>:not(#landing){opacity:0}.will-introduce.intro-reveal body>:not(#landing){opacity:1;transition:opacity .9s ease}.landing{position:fixed;inset:0;z-index:10000;background:var(--paper);color:var(--ink);transition:background-color .9s ease;display:grid;place-items:center;overflow:hidden}.landing[hidden]{display:none}.landing.is-revealing{background:transparent;pointer-events:none}.landing-name{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:flex;align-items:baseline;white-space:nowrap;font-size:clamp(24px,5.4vw,84px);line-height:1.2;letter-spacing:-.045em;font-weight:400}.landing-word{display:inline-flex;align-items:baseline;margin-right:.2em;transition:margin-right .55s cubic-bezier(.65,0,.25,1)}.landing-word:last-child{margin-right:0}.landing-tail{display:inline-flex;overflow:hidden;white-space:nowrap;transition:width .55s cubic-bezier(.65,0,.25,1),opacity .45s ease}.landing-letter{display:inline-block;opacity:0;transform:translateY(.15em)}.landing.is-typing .landing-letter{animation:landing-letter-in .25s ease forwards;animation-delay:var(--delay)}.landing-initial{transition:color .5s}.landing.is-folding .landing-tail{opacity:0}.landing.is-folding .landing-word{margin-right:.035em}.landing.is-folding .landing-word:nth-child(2) .landing-initial{color:var(--pastel-blue)}.landing.is-folding .landing-word:nth-child(3) .landing-initial{color:var(--rose)}.landing-caret{width:5px;height:5px;display:block;border-radius:50%;background:var(--butter);margin:0 0 .12em .2em;animation:landing-blink .65s steps(1) infinite;transition:opacity .2s}.landing.is-folding .landing-caret{opacity:0;animation:none}.landing-skip{position:absolute;right:5%;bottom:35px;border:0;border-bottom:1px solid currentColor;padding:8px 0;background:none;color:var(--ink);font-size:10px}.landing.is-revealing .landing-skip{opacity:0}.replay-intro{border:0;border-bottom:1px solid currentColor;padding:6px 0;background:none;color:inherit;font-size:10px}.landing-caption{position:absolute;left:5%;bottom:35px;font-size:9px;letter-spacing:.06em;color:var(--muted);transition:opacity .3s}.landing.is-revealing .landing-caption{opacity:0}body[data-lettering=editorial] .landing-name{font-family:'Libre Caslon Display',Georgia,serif}body[data-lettering=personal] .landing-name{font-family:Caveat,cursive}@keyframes landing-letter-in{to{opacity:1;transform:translateY(0)}}@keyframes landing-blink{50%{opacity:0}}@media(prefers-reduced-motion:reduce){.landing{display:none!important}.will-introduce body>:not(#landing){opacity:1!important;transition:none!important}}

.landing.is-folding .landing-caret{width:0;margin:0}.preview .replay-intro{font-size:9px;border:0;padding:0;letter-spacing:.04em}@media(max-width:480px){.preview .replay-intro{font-size:7px}.preview-links{gap:8px}}
:root{--reading-scale:1}button{color:inherit}.header-tools{display:flex;align-items:center;gap:22px}.reading-tools{display:flex;gap:2px;align-items:center}.reading-tools button{font:500 14px 'DM Sans',sans-serif;min-width:44px;min-height:44px;border:1px solid var(--line);background:none;color:var(--ink);border-radius:50%;padding:0}.reading-tools button:hover:not(:disabled){background:var(--soft)}.reading-tools button:disabled{opacity:.4;cursor:default}.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}
body{font-size:calc(16px * var(--reading-scale))}header{flex-wrap:wrap}header nav{font-size:calc(14px * var(--reading-scale));flex-wrap:wrap}.instagram{font-size:calc(13px * var(--reading-scale))}.intro p{font-size:calc(16px * var(--reading-scale))}.eyebrow{font-size:calc(11px * var(--reading-scale))}.intro-note .eyebrow{font-size:calc(11px * var(--reading-scale));letter-spacing:.06em}.note-caption,.hero-caption{font-size:calc(12px * var(--reading-scale))}.text-link,.section-heading p,.load-more{font-size:calc(14px * var(--reading-scale))}.journal-layout p:not(.lead),.about p:not(.lead){font-size:calc(16px * var(--reading-scale))}.lead{font-size:calc(22px * var(--reading-scale))}.filters button{font-size:calc(13px * var(--reading-scale));color:var(--ink)}.filters button.active,.filters button:hover{color:var(--paper)}.gallery-meta{font-size:calc(11px * var(--reading-scale))}.gallery .caption{font-size:calc(12px * var(--reading-scale));gap:12px}.food-story>span{font-size:calc(12px * var(--reading-scale))}.food-story p,.food-note,.film-grid p,.brand-pause p{font-size:calc(14px * var(--reading-scale))}.food-story{color:var(--ink)}footer>span{font-size:calc(11px * var(--reading-scale))}footer>a:last-child,.replay-intro{font-size:calc(13px * var(--reading-scale))}.preview{gap:12px;flex-wrap:wrap;align-items:center;font-size:calc(11px * var(--reading-scale))}.preview-links{flex-wrap:wrap;align-items:center}.preview-links a,.preview .replay-intro{font-size:calc(11px * var(--reading-scale))}.viewer-bottom p{font-size:calc(13px * var(--reading-scale))}.viewer-bottom #viewer-counter{font-size:calc(11px * var(--reading-scale))}
.will-introduce header .identity img{opacity:0}.will-introduce.intro-mark-arrived header .identity img{opacity:1;transition:opacity .3s ease}.landing.is-locking .landing-initial{color:var(--ink)!important}
body[data-placement=center] header .header-tools{grid-column:3;grid-row:1;justify-self:end}
@media(max-width:800px){header{gap:12px}.header-tools{margin-left:auto;gap:10px}.reading-tools button{min-width:44px;min-height:44px}header nav{order:3;justify-content:space-between;width:100%;gap:14px}.intro p{font-size:calc(16px * var(--reading-scale))}.hero-caption{font-size:calc(11px * var(--reading-scale));flex-wrap:wrap;gap:8px}.intro-note{width:65%}.intro-note .eyebrow{font-size:calc(10px * var(--reading-scale))}.gallery-meta span:last-child{display:none}body[data-placement=center] header .header-tools{margin-left:0}.preview-links{gap:12px}.preview{padding:9px 6%}.viewer-bottom p{font-size:calc(12px * var(--reading-scale))}}
@media(prefers-reduced-motion:reduce){.replay-intro{display:none}}
.photo-sheet{margin:auto;padding:0;border:1px solid var(--line);width:min(600px,calc(100vw - 24px));height:min(850px,calc(100dvh - 32px));max-width:none;max-height:none;background:#202633;color:#ede7dd;overflow:auto;text-transform:lowercase;animation:sheet-enter .25s ease}.photo-sheet[open]{display:block}.photo-sheet::backdrop{background:#000a;backdrop-filter:blur(6px)}.sheet-head{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:18px 24px;border-bottom:1px solid #525d6d;font-size:calc(13px * var(--reading-scale))}.sheet-head button{width:44px;height:44px;background:none;border:1px solid #69758a;border-radius:50%;font-size:28px;color:inherit}.sheet-tabs{display:flex;position:sticky;top:0;z-index:2;background:#202633;padding:0 24px;border-bottom:1px solid #525d6d}.sheet-tabs button{flex:1;padding:15px 8px;background:none;border:0;border-bottom:2px solid transparent;font-size:calc(14px * var(--reading-scale));color:inherit}.sheet-tabs button[aria-selected=true]{border-bottom-color:#b6cae3}.sheet-panel{padding:25px}.sheet-panel[hidden]{display:none}.sheet-panel h2{font-size:42px;margin:20px 0}.sheet-panel>p,.sheet-panel>a,.sheet-panel label{font-size:calc(16px * var(--reading-scale))}#sheet-thumb{width:100%;max-height:200px;object-fit:contain;background:#151a22}.sheet-panel dl{display:grid;grid-template-columns:1fr 1.4fr;gap:14px;border-top:1px solid #525d6d;padding-top:20px;font-size:calc(15px * var(--reading-scale))}.sheet-panel dt{color:#bdc5d0}.sheet-panel dd{margin:0;overflow-wrap:anywhere}.sheet-panel .sheet-note{font-size:calc(13px * var(--reading-scale));color:#bdc5d0}.sheet-button{display:block;width:100%;min-height:46px;margin:15px 0;padding:12px;border:1px solid #69758a;background:none;color:inherit;font-size:calc(15px * var(--reading-scale))}.sheet-button.primary{background:#ede7dd;color:#202633}.sheet-button:disabled{opacity:.4;cursor:default}.credit-label{display:block;margin-bottom:8px}#photo-credit{width:100%;padding:12px;border:1px solid #69758a;background:#2b3442;color:#ede7dd;resize:vertical;font:calc(14px * var(--reading-scale))/1.6 'DM Sans',sans-serif}.licence-check{display:flex;align-items:start;gap:12px;margin:20px 0}.licence-check input{width:22px;height:22px;flex:none;accent-color:#b6cae3}.sheet-status{padding:0 25px 20px;font-size:calc(13px * var(--reading-scale));color:#e6d495}@keyframes sheet-enter{from{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}@media(prefers-reduced-motion:reduce){.photo-sheet{animation:none}}

.sheet-head{position:sticky;top:0;z-index:4;background:#202633}.sheet-tabs{top:var(--sheet-head-height,81px)}#viewer-detail{margin-left:14px;font-size:calc(11px * var(--reading-scale));letter-spacing:.04em;color:#bdc5d0}
/* Ink trail: Neil's selected signature identity. */
body[data-weight=inktrail] .identity img{display:block;width:clamp(210px,21vw,290px);height:58px;object-fit:contain;filter:none}
body[data-weight=inktrail] .identity span,body[data-weight=inktrail] .brand-pause>span{display:none}
body[data-weight=inktrail] .brand-pause img{display:block;width:min(600px,88vw);height:auto;max-height:150px;object-fit:contain;filter:brightness(0);opacity:.8}
body[data-weight=inktrail][data-palette=apricot] .identity img,body[data-weight=inktrail][data-palette=pistachio] .identity img,body[data-weight=inktrail][data-palette=powder] .identity img{filter:brightness(0);opacity:.85}
body[data-weight=inktrail] footer .identity img{width:230px;height:48px}
@media(max-width:800px){body[data-weight=inktrail] .identity img{width:230px;height:54px}body[data-weight=inktrail] .brand-pause img{width:85vw}}
body[data-weight=inktrail] .identity>.identity-mark{width:52px;height:42px;object-fit:contain;filter:none}
body[data-weight=inktrail] .identity>.identity-name{display:block;width:clamp(190px,18vw,250px);height:54px}
body[data-weight=inktrail] .identity .identity-wordmark{display:block;width:100%;height:100%;object-fit:contain;filter:none}
body[data-weight=inktrail] footer .identity>.identity-name{width:205px;height:45px}
.landing.is-typing .landing-letter{animation:ink-letter-in .2s ease forwards;animation-delay:var(--delay)}
.landing.is-erasing .landing-letter.is-erased{animation:none;opacity:0;clip-path:inset(0 0 0 100%);transform:none;transition:opacity .14s ease}
.landing.is-erasing .landing-caret{opacity:0}
@keyframes ink-letter-in{from{opacity:0;clip-path:inset(0 100% 0 0);transform:none}to{opacity:1;clip-path:inset(0);transform:none}}
@media(max-width:800px){body[data-weight=inktrail] .identity{gap:8px}body[data-weight=inktrail] .identity>.identity-mark{width:46px;height:38px}body[data-weight=inktrail] .identity>.identity-name{width:205px;height:47px}}
/* A transparent viewing room: the current page stays softly visible. */
.viewing-room{background:transparent}.viewing-room::backdrop{background:rgba(25,31,42,.24);backdrop-filter:blur(24px) saturate(.75);-webkit-backdrop-filter:blur(24px) saturate(.75)}
.viewing-room figure{background:none}.viewer-top{background:linear-gradient(rgba(16,23,31,.42),transparent)}.viewer-bottom{background:linear-gradient(transparent,rgba(16,23,31,.48))}
#viewer-engagement{display:block;font-size:calc(11px * var(--reading-scale));color:#fff;line-height:1.5;margin-top:3px;text-shadow:0 1px 5px #18202b}
.engagement-total{max-width:320px;font-size:calc(12px * var(--reading-scale))}.engagement-total summary{cursor:pointer}.engagement-total p{font-size:calc(12px * var(--reading-scale));line-height:1.6;color:var(--muted)}
body[data-weight=inktrail] .identity>.identity-signature{display:block;width:clamp(260px,25vw,330px);height:64px;object-fit:contain;filter:none}
body[data-weight=inktrail] footer .identity>.identity-signature{width:280px;height:56px}
.landing.handwritten .landing-letter{display:inline-flex;opacity:1;transform:none;line-height:1;animation:none!important;overflow:visible;clip-path:none}
.ink-letter-svg{display:block;width:calc(var(--glyph-width) * .014em);height:1.54em;overflow:visible}
.ink-stroke{fill:none;stroke:currentColor;stroke-width:2.1;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1}
.landing.handwritten.is-typing .ink-stroke{animation:pen-write var(--ink-duration) linear forwards;animation-delay:var(--ink-delay)}
.landing.handwritten.is-erasing .landing-letter.is-erased{opacity:1;clip-path:none;transform:none;animation:none}
.landing.handwritten.is-erasing .is-erased .ink-stroke{animation:pen-erase .17s ease forwards;animation-delay:0ms}
@keyframes pen-write{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
@keyframes pen-erase{from{stroke-dashoffset:0}to{stroke-dashoffset:1}}
@media(max-width:800px){body[data-weight=inktrail] .identity>.identity-signature{width:270px;height:54px}}
.landing.handwritten .ink-letter-svg{margin-right:-.1em}
.landing.handwritten .landing-tail .landing-letter:last-child .ink-letter-svg{margin-right:0}
.viewing-room:focus{outline:none}
