@font-face{font-family:'Newsreader';font-style:normal;font-weight:200 800;font-display:swap;src:url(assets/fonts/newsreader-latin-opsz-normal.woff2) format('woff2-variations');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Newsreader';font-style:italic;font-weight:200 800;font-display:swap;src:url(assets/fonts/newsreader-latin-opsz-italic.woff2) format('woff2-variations');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Newsreader';font-style:normal;font-weight:200 800;font-display:swap;src:url(assets/fonts/newsreader-rupee.woff2) format('woff2-variations');unicode-range:U+20B9}
@font-face{font-family:'Schibsted Grotesk';font-style:normal;font-weight:400 900;font-display:swap;src:url(assets/fonts/schibsted-grotesk-latin-wght-normal.woff2) format('woff2-variations');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Schibsted Grotesk';font-style:normal;font-weight:400 900;font-display:swap;src:url(assets/fonts/schibsted-grotesk-rupee.woff2) format('woff2-variations');unicode-range:U+20B9}
@font-face{font-family:'Caveat';font-style:normal;font-weight:400;font-display:swap;src:url(assets/fonts/caveat-latin-400-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
:root{--paper:#f3efdf;--ink:#292820;--muted:#64645b;--red:#a64431;--blue:#214ebe;--line:#aaa799;--serif:'Newsreader','Iowan Old Style','Palatino Linotype',Georgia,serif;--text:var(--serif);--sans:'Schibsted Grotesk','Helvetica Neue',Arial,sans-serif;--hand:'Caveat',cursive;font-family:var(--sans);background:var(--paper);color:var(--ink);font-synthesis:none;color-scheme:light}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:35px}body{margin:0}body:has(dialog[open]){overflow:hidden}main{overflow:hidden;isolation:isolate}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:400}em{font-family:var(--serif);font-weight:400}p{line-height:1.75}button,input,textarea{font:inherit}button,a{color:inherit;-webkit-tap-highlight-color:transparent}a{text-decoration:none}button{cursor:pointer;border:0;background:none}img{display:block;max-width:100%}button,input,textarea,a,summary{touch-action:manipulation}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid var(--blue);outline-offset:6px}[hidden]{display:none!important}.skip{position:fixed;top:-100px;left:20px;z-index:100;background:var(--paper);padding:15px}.skip:focus{top:15px}.header{position:absolute;inset:0 0 auto;z-index:10;display:flex;justify-content:space-between;align-items:center;padding:24px 5vw;gap:25px}.identity{font-family:var(--serif);font-size:24px;line-height:1.2;font-weight:500;letter-spacing:-.01em;color:var(--ink)}.header-contact{font-family:var(--sans);font-size:14px;font-weight:500;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px;padding:8px 0}.hand-link{font-family:var(--serif);font-style:italic;font-size:21px;line-height:1.2;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px;padding:8px 0;display:inline-block}.hand-link:hover{color:var(--red)}a.work-invitation{font-family:var(--hand);font-style:normal;font-size:25px;color:var(--ink);text-underline-offset:6px}
/* 1 · opening: what I make, over the tracing-paper collage */
.making{position:relative;isolation:isolate;max-width:1600px;margin:0 auto;padding:12% 24px 0;aspect-ratio:3/2}
.making-art{position:absolute;left:0;top:0;width:100%;max-width:none;height:auto;z-index:-1;mix-blend-mode:multiply;pointer-events:none}
.making-copy{max-width:560px;margin:0 auto;text-align:center}
.making-copy h1{font-family:var(--serif);font-size:clamp(40px,3.7vw,54px);line-height:1.05;letter-spacing:-.015em;font-weight:400;margin-bottom:24px}
.making-copy h1 em{color:var(--blue)}
.making-copy>p{font-family:var(--text);font-size:18px;line-height:1.6;max-width:450px;margin:0 auto 16px;text-wrap:pretty}
.scope-note{margin:6px auto 0}
.scope-note>summary{font-family:var(--sans);font-size:13px;line-height:1.5;color:var(--muted);list-style:none;cursor:pointer;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px;padding:10px 0}
.scope-note>summary::-webkit-details-marker{display:none}
.scope-note>p{font-family:var(--text);font-size:18px;line-height:1.6;max-width:420px;margin:14px auto 0}
.work-invitation{position:absolute;left:50%;top:72%;transform:translateX(-50%) rotate(-5deg);z-index:2;white-space:nowrap}
/* 2 · the work: four stops, each composed on its own */
.work-landscape{position:relative;max-width:1600px;margin:0 auto;padding:30px 5vw 20px}
.work-landscape>h2{position:relative;z-index:1;font-family:var(--serif);font-size:40px;line-height:1.1;letter-spacing:-.01em;font-weight:400;margin:0 0 10px;padding-bottom:18px;border-bottom:1px solid var(--line)}
.stop{position:relative;z-index:1;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:2vw;align-items:center;padding:60px 0}
.stop-words{position:relative;max-width:440px}
.stop h3{font-family:var(--serif);font-size:46px;line-height:1.05;letter-spacing:-.015em;font-weight:400;color:var(--red);margin:0 0 12px}
.stop h3 a{text-decoration:none}.stop h3 a:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:6px}
.stop-line{font-family:var(--serif);font-size:20px;line-height:1.5;margin:0 0 16px;text-wrap:pretty}
.stop-links{display:flex;flex-wrap:wrap;align-items:center;gap:6px 26px}
.stop-primary{color:var(--red);font-size:18px}
.stop-secondary{font-size:13px;font-weight:400;color:var(--muted);text-decoration:underline;text-underline-offset:5px;padding:10px 0}
.stop-art{position:relative;display:block}
.world{display:block;width:100%;height:auto}
.stop-phone{position:absolute;width:23%;height:auto;border-radius:14px;background:#fff;border:1px solid #d9d4c3;box-shadow:0 16px 36px -18px #29282040}
.screen{display:block;width:100%;height:auto;background:#0b0f1a;border:1px solid #cfc9b6;box-shadow:0 30px 60px -30px #29282080;transform:rotate(-1deg)}
.screen-second{position:absolute;left:-2%;bottom:0;width:44%;height:auto;background:#0b0f1a;border:1px solid #cfc9b6;box-shadow:0 20px 40px -20px #29282080;transform:rotate(1.5deg)}
#leetify .stop-art{grid-column:1/8;grid-row:1;padding:0 4% 9% 0}
#leetify .stop-words{grid-column:8/13;grid-row:1;align-self:end;padding-bottom:8%}
#elsewhere .stop-words{grid-column:2/6;grid-row:1;align-self:start;padding-top:14%}
#elsewhere .stop-art{grid-column:6/13;grid-row:1;margin-top:0}
#elsewhere .stop-phone{right:3%;bottom:-6%;transform:rotate(3deg)}
#second-nature .stop-art{grid-column:1/7;grid-row:1;max-width:560px;margin-top:0}
#second-nature .stop-words{grid-column:8/12;grid-row:1;align-self:end;padding-bottom:6%}
#second-nature .stop-phone{left:0;bottom:-2%;transform:rotate(-3deg)}
#side-note .stop-words{grid-column:1/5;grid-row:1;align-self:center;padding-top:6%}
#side-note .stop-art{grid-column:5/12;grid-row:1}
#side-note .stop-phone{right:4%;bottom:-8%;transform:rotate(2.5deg)}
.working{max-width:1600px;margin:0 auto;padding:30px 5vw 40px}.working h2{font-family:var(--serif);font-size:40px;line-height:1.1;letter-spacing:-.01em;font-weight:400;margin:0 0 26px}.steps{list-style:none;counter-reset:step;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px 4vw;border-top:1px solid var(--line);padding-top:30px}.steps li{counter-increment:step;font-family:var(--text);font-size:17px;line-height:1.55;position:relative;padding-top:30px}.steps li::before{content:counter(step,decimal-leading-zero);position:absolute;top:0;left:0;font-family:var(--sans);font-size:12px;color:var(--muted);letter-spacing:.06em}.steps li strong{display:block;font-weight:600;margin-bottom:4px}.working-note{font-family:var(--text);font-size:17px;line-height:1.55;color:var(--muted);margin:30px 0 0;max-width:620px}
.costs{margin-top:54px;border-top:1px solid var(--line);padding-top:30px}.costs h3{font-family:var(--serif);font-size:30px;line-height:1.1;letter-spacing:-.01em;font-weight:400;margin:0 0 6px}
.price-list{list-style:none;margin:0;padding:0}.price-list li{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,6fr) minmax(0,2fr) minmax(0,3fr);gap:8px 4vw;align-items:start;padding:24px 0;border-bottom:1px solid var(--line);font-family:var(--text);font-size:17px;line-height:1.5}
.price-name{font-weight:600}.price-time{font-family:var(--sans);font-size:13px;line-height:1.5;color:var(--muted);padding-top:3px}
.price-from{text-align:right;font-weight:500;font-size:25px;line-height:1.1;white-space:nowrap;font-variant-numeric:lining-nums}.price-from small{display:block;font-family:var(--sans);font-size:12px;font-weight:400;color:var(--muted);margin-top:7px;white-space:normal}
.price-terms{font-family:var(--text);font-size:17px;line-height:1.55;color:var(--muted);margin:22px 0 0;max-width:760px}.price-terms a{color:var(--red);text-decoration-thickness:1px;text-underline-offset:4px}
.budget legend span,form>label>span{font-size:12px;font-weight:400;color:var(--muted)}
.footer-links{display:flex;flex-wrap:wrap;gap:6px 24px;align-items:center}.footer-links a{font-size:14px;text-decoration:underline;text-underline-offset:5px;padding:10px 0}
.work-disclosure{position:relative;z-index:1;margin:50px 0 0;font-size:12px;color:var(--muted);border-top:1px solid var(--line);padding-top:22px}
/* 3 · closing: contact, over the paper-world collage */
.closing{position:relative;isolation:isolate;max-width:1600px;margin:0 auto;padding:11% 24px 70px;aspect-ratio:1000/707}
.closing-art{position:absolute;left:-3%;top:0;width:106%;max-width:none;height:auto;z-index:-1;mix-blend-mode:multiply;pointer-events:none}
.contact-heading{max-width:700px;text-align:center;margin:0 auto}.contact-heading h2{font-family:var(--hand);font-size:46px;line-height:1.2;font-weight:400;transform:rotate(-3deg)}.email{font-family:var(--hand);font-style:normal;font-size:clamp(36px,3.4vw,50px);line-height:1.15;color:var(--red);margin:12px auto 0;overflow-wrap:anywhere;text-underline-offset:9px}.contact-details>summary{font-family:var(--hand);font-style:normal;font-size:27px;text-underline-offset:7px}.contact-details{max-width:660px;margin:25px auto 0}.contact-details>summary{list-style:none;cursor:pointer;display:block;width:max-content;max-width:100%;margin:auto;text-align:center;font-size:24px}.contact-details>summary::-webkit-details-marker{display:none}.contact-form-wrap{margin:40px auto 0;padding:40px 38px;background:var(--paper);border-radius:20px;box-shadow:0 15px 55px #39352a0b}fieldset{border:0;padding:0;margin:0 0 30px}legend{font-size:15px;font-weight:500;margin-bottom:12px}.choices{display:flex;flex-wrap:wrap;gap:10px 10px}.choices label{position:relative;cursor:pointer}.choices input{position:absolute;width:1px;height:1px;opacity:0}.choices span{display:block;font-family:var(--sans);font-size:15px;font-weight:500;line-height:1.3;padding:9px 15px;border:1px solid var(--line);border-radius:999px;transition:border-color .15s,color .15s}.choices input:checked+span{border-color:var(--red);color:var(--red);box-shadow:inset 0 0 0 1px var(--red)}.choices label:hover span{border-color:var(--ink)}.choices input:focus-visible+span{outline:2px solid var(--blue);outline-offset:3px}form>label,.form-pair>label{display:block;font-size:14px;margin:0 0 28px}.form-pair{display:grid;grid-template-columns:1fr 1fr;gap:25px}.form-pair label>span{font-size:12px;color:var(--muted)}input:not([type=radio]),textarea{display:block;width:100%;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;color:var(--ink);padding:13px 0;font-size:16px;line-height:1.65;resize:vertical}input::placeholder,textarea::placeholder{color:#77756b}.send-button{font-family:var(--sans);font-size:15px;font-weight:500;display:inline-block;width:auto;padding:13px 24px;min-height:48px;background:var(--ink);color:var(--paper);border-radius:999px}.send-button:hover{background:var(--red);color:var(--paper)}.form-note{font-size:12px;line-height:1.8;color:var(--muted);margin-top:15px;max-width:470px}.enquiry-result h3{font-family:var(--serif);font-size:34px;line-height:1.15;font-weight:400;letter-spacing:-.01em;margin-bottom:18px}.enquiry-result>p{font-family:var(--text);font-size:18px;margin-bottom:24px}.enquiry-result>label{font-size:14px}.enquiry-result textarea{margin:12px 0 20px;padding:15px;border:1px solid var(--line);border-radius:10px}.draft-actions{display:flex;flex-wrap:wrap;align-items:center;gap:20px}.draft-actions>button{font-family:var(--sans);font-size:15px;font-weight:500;min-height:44px;padding:8px 0;text-decoration:underline;text-underline-offset:5px}.draft-actions>.send-button{flex-basis:100%}
footer{display:flex;justify-content:space-between;align-items:center;padding:25px 5vw 40px;gap:30px}.footer-name{font-family:var(--serif);font-size:24px;font-weight:500;letter-spacing:-.01em;color:var(--ink)}footer button{font-size:13px;text-decoration:underline;text-underline-offset:5px;padding:10px 0}
dialog{background:var(--paper);color:var(--ink);border:0;padding:0}dialog::backdrop{background:#22221d91;backdrop-filter:blur(6px)}.about-dialog{width:min(580px,calc(100vw - 32px));max-height:88svh;overflow:auto;padding:65px 40px 35px;border-radius:22px;transform:rotate(-1deg)}.about-dialog h2{font-family:var(--serif);font-size:36px;line-height:1.15;font-weight:400;letter-spacing:-.01em;margin-bottom:22px}.about-dialog p{font-family:var(--text);font-size:18px;line-height:1.6;margin-bottom:20px}.about-close{position:absolute;top:16px;right:25px;font-family:var(--sans);font-size:14px;font-weight:500;padding:8px;text-decoration:underline;text-underline-offset:4px}
@media(min-width:1600px){}
@media(max-width:1000px){.stop h3{font-size:40px}.stop-line{font-size:20px}.stop-words{max-width:380px}#leetify .stop-art{grid-column:1/8}#leetify .stop-words{grid-column:8/13}#elsewhere .stop-words{grid-column:1/6}#elsewhere .stop-art{grid-column:6/13}#second-nature .stop-art{grid-column:1/7}#second-nature .stop-words{grid-column:7/13}#side-note .stop-words{grid-column:1/6}#side-note .stop-art{grid-column:6/13}.steps{grid-template-columns:1fr 1fr;gap:26px 5vw}.price-list li{grid-template-columns:minmax(0,4fr) minmax(0,7fr) minmax(0,4fr);grid-template-areas:"name what from" "time what from";grid-template-rows:auto 1fr;gap:4px 4vw}.price-name{grid-area:name}.price-what{grid-area:what}.price-time{grid-area:time;padding-top:0}.price-from{grid-area:from}.making{padding:120px 24px 0;aspect-ratio:auto}.making-copy{max-width:460px}.making-art{position:static;width:116%;margin:10px 0 0 -8%}.work-invitation{position:static;display:block;width:max-content;margin:-13% auto 40px;transform:rotate(-5deg)}.closing{padding:90px 24px 60px;aspect-ratio:auto}.closing-art{position:static;width:140%;margin:0 0 -30px -20%}.contact-details{margin-top:10px}}
@media(max-width:760px){.work-landscape{padding:26px 24px 10px}.work-landscape>h2{font-size:32px;margin:0 0 6px;padding-bottom:14px}.stop{display:flex;flex-direction:column;align-items:stretch;padding:42px 0 34px}.stop-words{order:1;max-width:none;padding:0!important}.stop-art{order:2;margin:22px 0 0!important;padding:0!important;max-width:none!important;width:100%}.stop h3{font-size:36px}.stop-line{font-size:18px}.stop-primary{font-size:18px}.stop-secondary{font-size:13px}.stop-phone{width:27%}#leetify .stop-art{padding:0 0 10% 0!important}#elsewhere .stop-phone{right:0;bottom:-4%}#second-nature .stop-art{width:84%}#second-nature .stop-phone{left:auto;right:-14%;bottom:-2%}#side-note .stop-phone{right:0;bottom:-6%}.working{padding:20px 24px 30px}.working h2{font-size:32px}.steps{grid-template-columns:1fr;gap:22px;padding-top:24px}.steps li{font-size:16px;padding-top:26px}.working-note{font-size:16px;margin-top:26px}.costs{margin-top:40px;padding-top:24px}.costs h3{font-size:26px}.price-list li{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"name from" "what what" "time time";gap:6px 18px;padding:20px 0;font-size:16px}.price-from{font-size:22px}.price-from small{margin-top:4px}.price-terms{font-size:16px;margin-top:18px}.identity{font-size:22px}.footer-links{gap:4px 18px}.footer-name{font-size:22px}.work-disclosure{font-size:12px;padding-top:18px}.making{padding:120px 0 0;aspect-ratio:auto}.making-copy{max-width:none;margin:0 24px}.making-copy h1{font-size:37px;line-height:1.08}.making-copy>p{font-size:18px;max-width:360px}.scope-note>summary{font-size:13px}.making-art{position:static;width:150%;margin:0 0 0 -25%}.work-invitation{position:static;display:block;width:max-content;margin:-40px auto 0;font-size:24px;transform:rotate(-5deg)}.closing{padding:60px 0 50px;margin-top:0;aspect-ratio:auto}.closing-art{position:static;width:172%;margin:0 0 -30px -36%}.contact-heading{margin:0 24px}.contact-details{margin:0 24px 0}html{scroll-padding-top:20px}.header{padding:20px 23px}.identity{font-size:22px}.header-contact{font-size:13px;line-height:1.25;text-align:right;white-space:nowrap}.contact-heading h2{font-size:38px}.email{font-size:34px;text-underline-offset:6px}.contact-details>summary{font-size:24px}.contact-details{margin-top:20px}.contact-details>summary{font-size:23px}.contact-form-wrap{margin:30px -8px 0;padding:25px 12px;box-shadow:none;border-radius:14px}.choices{gap:8px 8px}.choices span{font-size:15px}.form-pair{grid-template-columns:1fr;gap:0}.enquiry-result h3{font-size:28px}.draft-actions{gap:10px 20px}footer{padding:25px 24px 35px}.footer-name{font-size:22px}footer button{font-size:12px}.about-dialog{padding:65px 25px 25px}.about-dialog h2{font-size:30px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
/* Lift the closing collage without moving the enquiry controls. */
.closing-art{transform:translateY(-42px)}
@media(max-width:760px){.closing-art{transform:translateY(-28px)}}
/* Mobile controls have their own touch area. The artwork remains in the same
   position, while its wrapper occupies only the illustrated half of each row. */
@media(max-width:760px){
 .header .identity,.header .header-contact,.footer-links a,footer button,
 .working-links a,.making-bio .scope-note>summary,.contact-details>summary,.about-close{
  min-height:44px;
  display:inline-flex;
  align-items:center;
 }
 .header .header-contact{justify-content:flex-end}
 footer{flex-wrap:wrap;gap:12px 24px}
 .making-bio .scope-note>summary,.contact-details>summary{justify-content:center}
 .choices span{min-height:44px;display:flex;align-items:center}
 html[data-work-layout="original"] body main .work-landscape :is(#leetify,#elsewhere,#second-nature,#side-note) .stop-words{
  width:calc(44% * var(--work-copy-width-scale,1));
 }
 html[data-work-layout="original"] body main .work-landscape :is(#elsewhere,#side-note) .stop-words{margin-left:53%}
 html[data-work-layout="original"] body main .work-landscape :is(#leetify,#elsewhere,#second-nature,#side-note) .stop-art{
  inset:0 0 0 50%;
  width:50%!important;
  mask-image:linear-gradient(90deg,transparent 0%,#000 10%,#000 100%);
 }
 html[data-work-layout="original"] body main .work-landscape :is(#elsewhere,#side-note) .stop-art{
  inset:0 50% 0 0;
  mask-image:linear-gradient(90deg,#000 0%,#000 88%,transparent 100%);
 }
 html[data-work-layout="original"] body main .work-landscape .work-scene{
  flex-basis:250%!important;
  width:250%!important;
  margin-right:-20%;
 }
 html[data-work-layout="original"] body main .work-landscape :is(#elsewhere,#side-note) .work-scene{margin-right:0;margin-left:-20%}
 /* These positions are measured against the new half-width wrapper, preserving
    the existing hero proofs on the paper's foreground. */
 html[data-work-layout="original"] body main .work-landscape :is(#elsewhere,#second-nature,#side-note) .stop-phone{width:66%}
 html[data-work-layout="original"] body main .work-landscape :is(#elsewhere,#side-note) .stop-phone{left:8%;right:auto}
 html[data-work-layout="original"] body main .work-landscape #second-nature .stop-phone{left:auto;right:8%}
 html[data-work-layout="original"] body main .work-landscape .stop h3 a{display:inline-flex;align-items:center;justify-content:center;min-height:44px}
 html[data-work-layout="original"] body main .work-landscape .stop-links{display:grid;grid-template-columns:1fr;gap:4px}
 html[data-work-layout="original"] body main .work-landscape :is(.stop-primary,.stop-secondary){display:flex;align-items:center;justify-content:center;min-height:44px;font-size:13px;padding:8px 0;line-height:1.35}
}
/* Tablet-sized touch surfaces retain the wide composition with larger controls. */
@media(min-width:761px) and (max-width:1100px){
 .header .identity,.header .header-contact,.footer-links a,footer button,
 .working-links a,.making-bio .scope-note>summary,.contact-details>summary{
  min-height:44px;display:inline-flex;align-items:center;
 }
 .choices span{min-height:44px;display:flex;align-items:center}
 html[data-work-layout="original"] body main .work-landscape .stop h3 a{display:inline-flex;align-items:center;justify-content:center;min-height:44px}
 html[data-work-layout="original"] body main .work-landscape :is(.stop-primary,.stop-secondary){display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:8px 0}
 .about-close{min-height:44px}
}
