@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@600;700;800&family=DM+Sans:wght@400;500;600;700&family=DM+Serif+Display:ital@0;1&family=Caveat:wght@600&display=swap');
:root{--butter:#f2edbd;--red:#d83a23;--cream:#f8f5e9;--ink:#26251f;--bg:#f2edbd;--progress:0;--egg-x:65%;--egg-y:51%;--egg-scale:1;--egg-rotate:-13deg;--egg-alpha:1;--bird-alpha:0;--bird-shift:25%;--bird-scale:1.2;--broken-alpha:0;--broken-scale:.7;--landing-x:70%}
*{box-sizing:border-box}html{scroll-behavior:smooth;scrollbar-color:var(--red) var(--butter)}body{margin:0;color:var(--ink);background:var(--cream);font-family:'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid currentColor;outline-offset:5px}.skip-link{position:fixed;left:20px;top:-100px;background:var(--ink);color:var(--cream);padding:12px;z-index:99}.skip-link:focus{top:12px}.masthead{position:fixed;inset:0 0 auto;height:138px;padding:24px 4.4%;display:flex;justify-content:space-between;align-items:flex-start;z-index:30;pointer-events:none}.masthead a{pointer-events:auto}.brand{position:relative;display:block;width:134px;height:120px;background:var(--cream);border:1px solid #26251f38;transform:rotate(-5deg);overflow:hidden;flex-shrink:0}.brand img{position:absolute;width:250px;max-width:none;left:-58px;top:-95px;clip-path:inset(30% 23% 30% 23%)}.masthead nav{display:flex;gap:38px;padding-top:22px;font-size:14px;font-weight:500}.masthead nav a{position:relative;padding-bottom:8px}.masthead nav a::after{content:'';position:absolute;bottom:0;left:0;width:100%;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .25s}.masthead nav a:hover::after,.masthead nav a[aria-current]::after{transform:scaleX(1)}.masthead-note{font-size:11px;line-height:1.55;letter-spacing:.07em;padding-top:24px}.scroll-story{position:relative;height:430svh}.poster{position:sticky;top:0;height:100svh;min-height:700px;background:var(--bg);overflow:clip}.poster-border{position:absolute;inset:17px;border:1px solid #26251f1f;pointer-events:none;z-index:20}.scene{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .28s,visibility .28s;z-index:5}.scene.active{opacity:1;visibility:visible}.scene-heading{position:absolute;left:7.5%;top:22%}.kicker{font-size:11px;font-weight:600;letter-spacing:.09em;line-height:1.5;margin:0 0 19px}h1{font-family:'Barlow Condensed',Impact,'Arial Narrow',sans-serif;font-weight:800;font-size:clamp(84px,9.2vw,164px);line-height:.78;letter-spacing:-.025em;margin:0}h1 span{color:var(--red)}.intro-foot{position:absolute;left:7.5%;bottom:11%;display:flex;align-items:flex-end;gap:30px}.intro-foot p{font-family:'DM Serif Display',Georgia,serif;font-size:27px;line-height:1.08;margin:0}.intro-foot em{font-weight:400;color:var(--red)}.intro-foot>span{font-size:12px;line-height:1.6;max-width:235px;padding-bottom:1px}.seal{position:absolute;right:9%;top:21%;width:118px;height:118px;border:1px solid var(--red);border-radius:50%;color:var(--red);font-size:10px;font-weight:700;line-height:1.4;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;transform:rotate(12deg)}.seal span{font-family:'DM Serif Display',Georgia,serif;font-size:32px;line-height:1.2}.seal i{font-style:normal;font-size:18px;margin-top:3px}.hand-note{font-family:'Caveat',cursive;font-size:28px;position:absolute;right:8%;bottom:15%;transform:rotate(-9deg);color:var(--red)}.artwork{position:absolute;inset:0;pointer-events:none;z-index:3}.hero-egg{position:absolute;width:min(43vw,610px);height:66svh;object-fit:contain;left:var(--egg-x);top:var(--egg-y);transform:translate(-50%,-50%) rotate(var(--egg-rotate)) scale(var(--egg-scale));opacity:var(--egg-alpha);will-change:transform,left,top,opacity}.bird{position:absolute;left:45%;top:22%;width:70vw;height:55svh;object-fit:contain;object-position:left center;opacity:var(--bird-alpha);transform:translateX(var(--bird-shift)) scale(var(--bird-scale));transform-origin:43% 78%;will-change:transform,opacity;mask-image:linear-gradient(#000 92%,transparent)}.broken-egg{position:absolute;left:var(--landing-x);top:73%;width:43vw;height:38svh;object-fit:contain;transform:translate(-50%,-50%) scale(var(--broken-scale));opacity:var(--broken-alpha);will-change:transform,opacity}.corner-number{position:absolute;right:5%;bottom:30%;display:flex;align-items:center;gap:10px;font-family:'DM Serif Display',Georgia,serif;font-size:17px;z-index:10}.corner-number #scene-number{font-size:38px}.number-rule{height:1px;width:28px;background:currentColor}.side-caption{position:absolute;left:21px;top:49%;writing-mode:vertical-rl;transform:rotate(180deg);font-size:9px;letter-spacing:.1em;z-index:10}.story-footer{position:absolute;left:4.4%;right:4.4%;bottom:30px;display:flex;gap:22px;align-items:center;font-size:10px;letter-spacing:.065em;z-index:10}.scroll-line{height:1px;background:#26251f33;flex:1;overflow:hidden}.scroll-line span{display:block;height:1px;width:100%;background:currentColor;transform:scaleX(var(--progress));transform-origin:left}.down-arrow{font-size:22px}.story-credit{font-size:9px}.anchor{position:absolute;height:1px;pointer-events:none}#beginning{top:0}#craft{top:165svh}#mess{top:330svh}.craft-heading{position:absolute;left:7.5%;top:23%;width:41%}.craft-heading h2{font-family:'DM Serif Display',Georgia,serif;font-weight:400;font-size:clamp(48px,5.6vw,91px);line-height:.98;letter-spacing:-.04em;margin:0 0 20px}.craft-heading h2 em{font-weight:400}.craft-intro{font-size:17px;line-height:1.5}.scene-craft{color:var(--cream)}.services{position:absolute;left:7.5%;top:57%;width:38%;max-width:560px}.services>div{display:grid;grid-template-columns:28px 1fr;gap:4px 12px;border-top:1px solid #f8f5e970;padding:14px 0}.services span{grid-row:1/3;font-size:12px;padding-top:5px}.services h3{font-size:21px;line-height:1.2;font-weight:500;margin:0}.services p{grid-column:2;font-size:12px;line-height:1.4;margin:0;color:#f8f5e9c9}.scene-craft .hand-note{color:var(--cream);right:12%;bottom:13%}.mess-heading{position:absolute;left:7.5%;top:25%;max-width:58%}.mess-heading h2{font-family:'Barlow Condensed',Impact,'Arial Narrow',sans-serif;font-weight:800;font-size:clamp(65px,8.4vw,144px);line-height:.88;letter-spacing:-.025em;margin:0;color:var(--red)}.mess-heading h2 em{font-family:'DM Serif Display',Georgia,serif;font-weight:400;font-size:1.06em}.mess-heading>p:not(.kicker){font-size:16px;line-height:1.55;margin:25px 0}.talk-button{display:inline-flex;align-items:center;justify-content:space-between;gap:40px;border:1px solid var(--ink);border-radius:0;background:var(--ink);color:var(--cream);padding:17px 22px;font-size:14px;font-weight:500;transition:background .2s,transform .2s}.talk-button:hover{background:var(--red);border-color:var(--red);transform:translateY(-2px)}.talk-button span{font-size:22px;line-height:1}.scene-mess .hand-note{right:10%;top:27%;bottom:auto;max-width:240px}.last-word{position:absolute;right:8%;bottom:11%;font-size:11px;letter-spacing:.07em;line-height:1.5}.colophon{padding:30px 4.4%;display:flex;justify-content:space-between;align-items:center;border-top:1px solid #26251f25;gap:20px;font-size:12px}.colophon>a{border-bottom:1px solid var(--ink);padding-bottom:5px}.colophon p{font-family:'DM Serif Display',Georgia,serif;font-size:22px;margin:0}.colophon em{color:var(--red)}body[data-phase="1"] .masthead,body[data-phase="1"] .story-footer,body[data-phase="1"] .corner-number,body[data-phase="1"] .side-caption{color:var(--cream)}dialog{width:min(570px,92vw);max-height:90svh;border:1px solid var(--ink);background:var(--butter);color:var(--ink);padding:44px;box-shadow:12px 12px 0 var(--red)}dialog::backdrop{background:#26251fa6;backdrop-filter:blur(6px)}dialog .close{position:absolute;top:12px;right:17px;border:0;background:transparent;font-size:30px}dialog h2{font-family:'DM Serif Display',Georgia,serif;font-size:58px;line-height:.95;margin:25px 0;font-weight:400}dialog h2 em{color:var(--red)}dialog>p{font-size:16px;line-height:1.5}form{display:flex;flex-direction:column;gap:10px}form label{margin-top:12px;font-size:14px}input,textarea{width:100%;font-size:16px;color:var(--ink);padding:13px;border:1px solid #26251f66;background:#ffffff42;border-radius:0;resize:vertical}form .talk-button{margin-top:13px;align-self:flex-start}.form-note{font-size:12px;line-height:1.4;margin-bottom:0}
@media(min-aspect-ratio:18/10) and (min-width:701px){h1{font-size:12svh}.intro-foot{bottom:12%}.scene-heading{top:24%}.services{top:56%}.services>div{padding:9px 0}.craft-heading h2{font-size:8svh}.mess-heading h2{font-size:11svh}}
@media(max-width:1000px) and (min-width:701px){.masthead nav{gap:22px}.masthead-note{font-size:9px}.intro-foot{display:block}.intro-foot>span{display:none}.services{width:41%}.services h3{font-size:18px}.craft-heading h2{font-size:52px}.mess-heading h2{font-size:82px}.story-credit{display:none}.seal{right:6%;width:100px;height:100px}.hero-egg{width:49vw}}
@media(max-width:700px){.masthead{height:115px;padding:17px 6%}.brand{width:95px;height:88px}.brand img{width:185px;left:-46px;top:-69px}.masthead nav{padding-top:19px;gap:18px;font-size:11px}.masthead nav a:first-child{display:none}.masthead-note{display:none}.poster{min-height:740px}.poster-border{inset:9px}.scene-heading{left:7%;top:23%}.kicker{font-size:9px;max-width:190px;margin-bottom:17px}h1{font-size:16.5vw;line-height:.87}.hero-egg{width:52vw;height:39svh}.intro-foot{left:7%;bottom:13%;display:block;max-width:85%}.intro-foot p{font-size:28px}.intro-foot>span{display:block;font-size:12px;margin-top:12px}.seal{width:79px;height:79px;top:21%;right:7%;font-size:7px}.seal span{font-size:25px}.seal i{font-size:12px;margin-top:1px}.scene-intro .hand-note{bottom:28%;right:8%;font-size:23px}.corner-number{right:8%;bottom:14%;font-size:12px;gap:5px}.corner-number #scene-number{font-size:27px}.number-rule{width:16px}.side-caption{display:none}.story-footer{left:7%;right:7%;bottom:26px;font-size:8px;gap:12px}.story-credit{display:none}.craft-heading{left:7%;top:19%;width:86%;z-index:6}.craft-heading h2{font-size:48px}.craft-intro{font-size:14px;margin-top:15px;max-width:48%}.services{left:7%;top:auto;bottom:12%;width:86%}.services>div{grid-template-columns:24px 1fr;padding:11px 0;gap:3px 8px}.services h3{font-size:20px}.services p{font-size:11px}.scene-craft .hand-note{display:none}.bird{left:49%;top:30%;width:92vw;height:27svh}.broken-egg{top:67%;width:75vw;height:25svh}.mess-heading{left:7%;top:21%;max-width:89%}.mess-heading h2{font-size:16vw;line-height:.89}.mess-heading>.kicker{font-size:9px;max-width:270px}.mess-heading>p:not(.kicker){font-size:14px;line-height:1.5;max-width:95%;margin:20px 0}.scene-mess .hand-note{display:none}.mess-heading .talk-button{font-size:13px;padding:14px 18px}.last-word{left:7%;right:auto;bottom:13%;font-size:9px}.scene-mess .mess-heading{z-index:6}.colophon{padding:28px 7%;flex-wrap:wrap;font-size:10px}.colophon p{width:100%;font-size:23px}dialog{padding:35px 24px}dialog h2{font-size:48px}.talk-button{gap:20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}.hero-egg,.bird,.broken-egg{will-change:auto}}
@media(max-width:700px){.broken-egg{top:72%}}
/* Scroll-scrubbed rubber stamp and its impression travel with the egg. */
.egg-photo{width:100%;height:100%;object-fit:contain;display:block}
.ink-mark{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) rotate(-9deg);font-family:'Barlow Condensed',Impact,sans-serif;font-size:clamp(30px,4vw,62px);line-height:.9;font-weight:800;letter-spacing:.02em;color:#a82417;border:5px double currentColor;padding:10px 18px;text-align:center;opacity:var(--ink-alpha,0);mix-blend-mode:multiply;border-radius:8px}
.rubber-stamp{position:absolute;left:var(--stamp-x,70%);top:var(--stamp-y,-40%);width:28vw;height:31svh;object-fit:contain;object-position:center bottom;transform:translate(-50%,-100%);opacity:var(--stamp-alpha,0);z-index:4;will-change:top,opacity}
@media(max-width:700px){.rubber-stamp{width:39vw;height:23svh}.ink-mark{font-size:30px;border-width:3px;padding:7px 10px;border-radius:4px}}
@media(prefers-reduced-motion:reduce){.rubber-stamp{will-change:auto}}
@media(max-width:700px){.rubber-stamp{height:19svh;width:33vw}.craft-heading h2{font-size:42px}}
/* Rooster approval: the foot presses, then retreats to reveal its print. */
.stamping-claw{position:absolute;left:var(--claw-left,110%);top:var(--claw-top,40%);width:52vw;height:auto;opacity:var(--claw-alpha,0);transform:rotate(var(--claw-angle,0deg));transform-origin:85% 50%;z-index:4;will-change:left,top,transform,opacity}
.ink-mark{border:0;border-radius:0;padding:0;top:54%;width:42%;font-size:35px;line-height:.93;letter-spacing:.025em;display:flex;flex-direction:column;align-items:center;gap:7px;color:#8c251c}
.ink-mark img{display:block;width:102px;height:95px;object-fit:contain}
@media(max-width:700px){.stamping-claw{width:72vw}.ink-mark{width:70%;font-size:25px;gap:4px}.ink-mark img{width:65px;height:60px}}
@media(prefers-reduced-motion:reduce){.stamping-claw{will-change:auto}}
/* Crop only the symbol from the supplied logo; preserve its original strokes. */
.ink-mark{width:40%;aspect-ratio:540/365;top:53%;display:block;gap:0}
.logo-impression{display:block;width:100%;height:100%;overflow:hidden}
@media(max-width:700px){.ink-mark{width:66%}}
@media(min-width:701px){.ink-mark{width:44%;aspect-ratio:832/718}} @media(max-width:700px){.ink-mark{width:70%;aspect-ratio:832/718}}
.work-link{position:absolute;left:7.5%;bottom:10.5%;font-size:14px;padding-bottom:8px;border-bottom:1px solid currentColor;display:flex;gap:38px;align-items:center}.work-link span{font-size:22px}@media(max-width:700px){.scene-craft .services{bottom:16%}.work-link{left:7%;bottom:9%;font-size:13px}}
.colophon{flex-wrap:wrap}.colophon .social-link{font-size:12px;border-bottom:1px solid currentColor;padding-bottom:5px;white-space:nowrap}.colophon .social-link:hover{color:var(--red)}
.colophon .phone-link{font-size:12px;white-space:nowrap;border-bottom:1px solid currentColor;padding-bottom:5px}.phone-link:hover,.contact-phone:hover{color:var(--red)}.contact-phone{display:block;width:fit-content;font-size:13px;line-height:1.5;margin-top:16px}.contact-phone span{white-space:nowrap;text-decoration:underline;text-underline-offset:3px}@media(max-width:700px){.contact-phone{font-size:12px;margin-top:12px}}
