:root{color-scheme:light;--paper:#f7f5eb;--ink:#354b3e;--muted:#526151;--peach:#a9523c;--rule:rgba(53,75,62,.2);--edge:clamp(24px,5vw,88px)}
*{box-sizing:border-box}
html{min-height:100%;background:var(--paper)}
body{margin:0;color:var(--ink);font-family:"Segoe UI",Arial,sans-serif;-webkit-font-smoothing:antialiased}
button,a{-webkit-tap-highlight-color:transparent;touch-action:manipulation}
button{font:inherit}
button:focus-visible,a:focus-visible{outline:2px solid var(--peach);outline-offset:7px}
::selection{background:#efd0bc;color:var(--ink)}
.landscape{position:fixed;inset:0;overflow:hidden;background:var(--paper) url('assets/poster.jpg') center/cover no-repeat}
.landscape video{width:100%;height:100%;object-fit:cover;object-position:50% 50%}
.landscape:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(247,245,235,.98) 0%,rgba(247,245,235,.92) 24%,rgba(247,245,235,.55) 44%,rgba(247,245,235,0) 67%),linear-gradient(180deg,rgba(247,245,235,.88),rgba(247,245,235,.12) 20%,transparent 52%,rgba(247,245,235,.5) 81%,var(--paper) 100%)}
.page{position:relative;min-height:100vh;min-height:100svh;display:flex;flex-direction:column;padding:0 var(--edge)}
.header{display:flex;align-items:center;justify-content:space-between;padding-top:max(30px,env(safe-area-inset-top));gap:20px}
.brand{display:flex;flex-direction:column;align-items:center;text-decoration:none;color:#6f7750;width:240px;flex-shrink:0;gap:6px}
.brand-image{display:block;position:relative;width:100%;aspect-ratio:375/132;overflow:hidden;clip-path:polygon(0 0,100% 0,100% 68%,62% 68%,62% 100%,0 100%)}
.brand-image img{position:absolute;width:119.2%;max-width:none;height:auto;left:-8%;top:-18.94%;filter:url(#logo-ink)}
.brand-tagline{font-size:9px;text-transform:uppercase;letter-spacing:1.7px;color:#796750}
.status{display:flex;align-items:center;gap:10px;font-size:11px;letter-spacing:1.6px;text-transform:uppercase;background:rgba(247,245,235,.8);border:1px solid var(--rule);border-radius:30px;padding:13px 18px}
.status-dot{height:6px;width:6px;border-radius:50%;background:#77936a;box-shadow:0 0 0 4px rgba(119,147,106,.12)}
.main{flex:1;display:flex;align-items:center;padding:64px 0 66px}
.intro{max-width:750px;animation:appear .9s cubic-bezier(.2,.65,.3,1) both}
.eyebrow{display:flex;align-items:center;gap:14px;font-size:10px;font-weight:600;letter-spacing:2.5px;text-transform:uppercase;margin-bottom:30px}
.line{width:34px;height:1px;background:var(--peach)}
h1{font-family:Georgia,"Times New Roman",serif;font-weight:400;font-size:clamp(52px,5.9vw,94px);line-height:1.1;letter-spacing:-4px;margin:0 0 28px}
h1 em{font-weight:400;color:var(--peach);letter-spacing:-3px}
.intro p{font-size:15px;line-height:1.85;color:var(--muted);margin:0}
.signature{display:flex;align-items:center;gap:12px;margin-top:34px;color:var(--peach)}
.signature svg{width:37px;height:37px}
.signature span{font-family:Georgia,serif;font-size:18px;font-style:italic}
.footer{min-height:85px;display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--rule);padding:14px 0 max(18px,env(safe-area-inset-bottom));font-size:11px;color:var(--muted)}
.footer-note{letter-spacing:.3px}
.footer-brand{font-size:9px;letter-spacing:2px;position:absolute;left:50%;transform:translateX(-50%)}
.footer-brand span{margin:0 8px}
.motion-button{display:flex;align-items:center;gap:12px;padding:0;background:none;border:0;color:var(--ink);cursor:pointer;min-height:46px;font-size:10px;letter-spacing:.5px}
.motion-button[hidden]{display:none}
.motion-icon{display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--rule);border-radius:50%;transition:background .25s,border-color .25s,transform .25s}
.motion-icon svg{width:16px;height:16px;stroke:currentColor;stroke-width:1.5;fill:none}
.motion-button:hover .motion-icon{background:rgba(247,245,235,.8);border-color:var(--peach);transform:scale(1.06)}
.motion-button:active .motion-icon{transform:scale(.95)}
.pause-icon{display:none}.is-playing .pause-icon{display:block}.is-playing .play-icon{display:none}
@keyframes appear{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1600px){.main{padding-top:100px}.intro{margin-bottom:3vh}}
@media(max-width:900px) and (min-width:601px){h1{font-size:64px}.landscape:after{background:linear-gradient(90deg,rgba(247,245,235,.94),rgba(247,245,235,.75) 38%,rgba(247,245,235,.1) 85%),linear-gradient(0deg,var(--paper),transparent 45%)}}
@media(max-width:600px){
  .page{min-height:100svh}
  .header{padding-top:max(24px,env(safe-area-inset-top));align-items:center}
  .brand{width:164px;gap:4px}.brand-tagline{font-size:6px;letter-spacing:1px}
  .status{font-size:8px;letter-spacing:1.1px;padding:11px 12px;gap:8px}
  .status-dot{width:5px;height:5px}
  .landscape video{object-position:50% 28%}
  .landscape:after{background:linear-gradient(180deg,rgba(247,245,235,.78) 0%,rgba(247,245,235,.08) 18%,rgba(247,245,235,.02) 31%,rgba(247,245,235,.75) 47%,rgba(247,245,235,.98) 66%,var(--paper) 100%)}
  .main{align-items:flex-end;padding:clamp(130px,26svh,350px) 0 32px}
  .eyebrow{font-size:8px;letter-spacing:1.8px;gap:10px;margin-bottom:20px}
  .line{width:24px}
  h1{font-size:clamp(34px,10.7vw,64px);letter-spacing:-2px;line-height:1.12;margin-bottom:20px}
  h1 em{letter-spacing:-1.8px}
  .intro p{font-size:13px;line-height:1.8}
  .signature{margin-top:20px;gap:9px}.signature svg{width:29px;height:29px}.signature span{font-size:16px}
  .footer{min-height:73px;gap:8px;font-size:9px;padding-top:11px;padding-bottom:max(12px,env(safe-area-inset-bottom))}
  .footer-brand{display:none}.motion-label{font-size:9px}.motion-icon{height:40px;width:40px}
}
@media(max-height:500px) and (orientation:landscape){.header{padding-top:18px}.brand{font-size:34px}.main{padding:30px 0}.eyebrow{margin-bottom:14px}h1{font-size:44px;margin-bottom:14px;letter-spacing:-2px}.signature{display:none}.footer{min-height:60px}.intro p{font-size:13px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}

/* A little playfulness, using the original, unmodified handwritten logo. */
.landscape video{transform:translate3d(var(--drift-x,0px),var(--drift-y,0px),0) scale(1.06);transition:transform 1.3s cubic-bezier(.2,.7,.2,1)}
.bloom-button{border:0;background:transparent;padding:0;min-height:44px;cursor:pointer;text-align:left}
.bloom-button[hidden]{display:none}
.bloom-button svg{transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.bloom-button:hover svg{transform:rotate(60deg)}
.bloom-button span{border-bottom:1px solid transparent;transition:border-color .25s}
.bloom-button:hover span{border-color:currentColor}
.bloom-button:active svg{transform:rotate(90deg) scale(.9)}
.garden-effects{position:fixed;inset:0;pointer-events:none;overflow:hidden;z-index:5}
.garden-flower{position:absolute;display:block;will-change:transform,opacity;pointer-events:none}
.garden-flower svg{display:block;width:100%;height:100%;overflow:visible}
.touch-hint{display:none}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
@media(pointer:coarse){.mouse-hint{display:none}.touch-hint{display:inline}}
@media(max-width:360px){.header{gap:9px}.brand{width:140px}.brand-tagline{font-size:5.5px;letter-spacing:.75px}.status{font-size:7px;letter-spacing:.6px;padding:10px}.footer-note{max-width:160px;line-height:1.6}.main{padding-top:110px}}
@media(prefers-reduced-motion:reduce){.landscape video{transform:none}}
