/* Generated by tools/build-delivery.mjs; edit the source files. */
/* paw-entrance.css */
/* The camera follows a descending paw trail into the real homepage. */
html { scrollbar-gutter: stable; }
html.paw-entry-pending:not(.paw-entry-active)::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: 1000;
  background: #087d50;
}

html.paw-entry-active {
  overflow: hidden;
  overscroll-behavior: none;
}
html.paw-entry-active body { overflow: clip; }
html.paw-entry-active .pumpurr-cursor { visibility: hidden; }
/* Keep the arrival silhouette stable while planning and moving the camera.
   Its regular breathing resumes from the same resting pose at the handoff. */
html.paw-entry-pending .hero-cat,
html.paw-entry-active .hero-cat {
  animation: none !important;
  translate: 0 0 !important;
  scale: 1 !important;
  rotate: 0deg !important;
}

.paw-entrance {
  --step-size: 38px;
  position: fixed;
  inset: 0;
  z-index: 1000;
  overflow: hidden;
  overflow: clip;
  background: transparent;
  color: #edffe8;
  touch-action: none;
  -webkit-tap-highlight-color: transparent;
}

.entrance-world {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: calc(var(--entrance-distance, 0px) + 100vh);
  height: calc(var(--entrance-distance, 0px) + 100dvh);
  background: transparent;
  transform: translate3d(0, calc(0px - var(--entrance-camera-y, 0px)), 0);
  will-change: transform;
  pointer-events: none;
}

.entrance-field {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: calc(var(--entrance-distance, 0px) + 120px);
  z-index: 1;
  -webkit-mask-image: linear-gradient(to bottom, #000 calc(100% - 120px), transparent);
  mask-image: linear-gradient(to bottom, #000 calc(100% - 120px), transparent);
  background:
    radial-gradient(ellipse 100% 70vh at 8% 15vh, #6adca612, transparent 75%),
    linear-gradient(to bottom, #087d50 0, #096a46 35%, #087d50 89%, #087d50 100%);
}

.entrance-landing {
  position: absolute;
  left: 0;
  top: var(--entrance-distance, 0px);
  width: 100%;
  height: 100vh;
  height: 100dvh;
  background-color: #064d35;
  background-position: 0 0;
  background-repeat: no-repeat;
}

.page-stage.entrance-page {
  position: relative;
  z-index: 1001;
  transform: translate3d(0, calc(var(--entrance-distance, 0px) - var(--entrance-camera-y, 0px)), 0);
  will-change: transform;
  /* The camera reveals only the landing viewport. Avoid rasterizing the
     entire long page into a moving GPU surface during this short scene. */
  clip-path: inset(0 0 max(0px, calc(100% - 100vh - 80px)) 0);
  clip-path: inset(0 0 max(0px, calc(100% - 100dvh - 80px)) 0);
}

.entrance-trail {
  position: absolute;
  inset: 0;
  z-index: 2;
  pointer-events: none;
  user-select: none;
}

.entrance-paw {
  position: absolute;
  display: block;
  width: var(--step-size);
  height: var(--step-size);
  margin: calc(var(--step-size) / -2);
  background: #d3f8c5;
  -webkit-mask: url("assets/cat-paw.svg") center / contain no-repeat;
  mask: url("assets/cat-paw.svg") center / contain no-repeat;
  transform: rotate(var(--step-angle, 180deg));
  transform-origin: 50% 58%;
  opacity: 0;
  animation: entrance-paw-walk 2.6s ease-out var(--step-delay, 0ms) both;
}
.paw-entrance:not(.is-running) .entrance-paw { animation-play-state: paused; }
/* The renderer owns their clock, including when an embedded page is hidden. */
.paw-entrance .entrance-paw { animation-play-state: paused !important; }

.entrance-cage {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 240px;
  z-index: 4;
  pointer-events: none;
}
.cage-fallback {
  position: absolute;
  top: -10px;
  left: 50%;
  width: 300px;
  height: 106px;
  transform: translateX(-50%);
  border: 7px solid #9bcbad;
  border-radius: 13px;
  background: linear-gradient(#052e21e8, #075638c0);
  box-shadow: 0 6px 18px #022b2b80, inset 0 0 0 2px #d7f1dd;
  perspective: 650px;
}
.cage-fallback-door {
  position: absolute;
  inset: -2px;
  border: 5px solid #c5e3cc;
  border-radius: 8px;
  background: repeating-linear-gradient(90deg, transparent 0 27px, #648672 27px 28px, #eef6e5 28px 31px, #a0cab4 31px 33px, transparent 33px 41px);
  box-shadow: inset 0 0 0 1px #698574, 0 1px 4px #001d1b80;
  transform-origin: 0 50%;
}
.cage-fallback-latch {
  position: absolute;
  width: 21px;
  height: 9px;
  right: -10px;
  top: 45%;
  border-radius: 5px;
  background: linear-gradient(#e9d7a3, #7a6948);
}
.is-running .cage-fallback-door { animation: cage-breakout 1.2s cubic-bezier(.18,.75,.15,1) both; }
.has-cage-renderer .cage-fallback { display: none; }
@keyframes cage-breakout {
  0%, 12% { transform: rotateY(0deg) translateX(0); }
  20% { transform: rotateY(2deg) translateX(2px); }
  28% { transform: rotateY(-2deg) translateX(-2px); }
  37% { transform: rotateY(3deg) translateX(1px); }
  44% { transform: rotateY(0deg); }
  74% { transform: rotateY(-108deg); }
  86% { transform: rotateY(-94deg); }
  100% { transform: rotateY(-99deg); }
}

.entrance-controls {
  position: fixed;
  inset: 0;
  z-index: 1002;
  pointer-events: none;
}
.entrance-controls:focus { outline: none; }

.entrance-replay {
  position: fixed;
  right: max(20px, env(safe-area-inset-right, 0px));
  bottom: max(20px, env(safe-area-inset-bottom, 0px));
  z-index: 999;
  min-height: 44px;
  padding: 11px 18px;
  border: 1px solid #d5efd0;
  border-radius: 24px;
  background: #efffe7;
  color: #163d29;
  box-shadow: 0 4px 18px #072b2933;
  font: 600 13px/1.4 Body, sans-serif;
}
.entrance-replay:hover { background: #d9f3c9; }
.entrance-replay:focus-visible { outline: 2px solid #fff9d9; outline-offset: 4px; }
.entrance-replay:disabled { opacity: .6; }

@keyframes entrance-paw-walk {
  0% { opacity: 0; transform: rotate(var(--step-angle, 180deg)) scale(.94); }
  4% { opacity: .55; transform: rotate(var(--step-angle, 180deg)) scale(1); }
  40% { opacity: .5; }
  70% { opacity: .36; }
  100% { opacity: 0; transform: rotate(var(--step-angle, 180deg)) scale(1); }
}

@media (max-width: 600px) {
  .paw-entrance { --step-size: 34px; }
  .cage-fallback { width: 220px; height: 87px; }
}

@media (prefers-reduced-motion: reduce) {
  html.paw-entry-pending:not(.paw-entry-active)::before,
  .paw-entrance,
  .entrance-controls,
  .entrance-replay { display: none; }
  .page-stage.entrance-page { transform: none; will-change: auto; }
  html.paw-entry-active,
  html.paw-entry-active body { overflow: visible; overscroll-behavior: auto; }
}

/* campaign.css */
@font-face{font-family:Display;src:url('assets/display.woff2') format('woff2');font-display:swap;font-weight:100 900}
@font-face{font-family:Body;src:url('assets/body.woff2') format('woff2');font-display:swap;font-weight:300 700}
@font-face{font-family:Hand;src:url('assets/campaign/handwriting.ttf') format('truetype');font-display:swap;font-weight:500}
:root{--cream:#e9ffee;--mint:#a1ffd2;--ink:#003e2c;--page-width:min(100vw,1920px);--unit:calc(var(--page-width)/1440);color-scheme:dark;scroll-behavior:smooth}
*{box-sizing:border-box}body{margin:0;color:var(--cream);background:#00492f;font-family:Body,Arial,sans-serif;font-size:16px;-webkit-font-smoothing:antialiased;position:relative;isolation:isolate}body::before{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,#002f2220,transparent 20% 80%,#002f2220),url('assets/campaign/background.png') center/100% 100% no-repeat;z-index:-1}a{color:inherit;text-decoration:none}button,input{font:inherit}button{color:inherit;border:0}button,a{-webkit-tap-highlight-color:transparent}button:not(:disabled),a[href]{cursor:pointer}a[aria-disabled=true],button:disabled{cursor:default}img{display:block;max-width:100%}svg{display:block}h1,h2,h3,p{margin:0}h2{font-weight:700;line-height:1.01;letter-spacing:-.045em;font-size:clamp(32px,calc(60*var(--unit)),80px)}h3{font-weight:500}ul,ol{padding:0;margin:0;list-style:none}dl{margin:0}.icon{width:32px;height:32px;fill:currentColor;flex-shrink:0}.icon-library{position:absolute;width:0;height:0;overflow:hidden}.page-stage{max-width:1920px;margin:0 auto;overflow:clip}.eyebrow{text-transform:uppercase;font-size:clamp(11px,calc(15*var(--unit)),20px);font-weight:600;letter-spacing:.19em;line-height:1.4;margin-bottom:12px}.handwritten{font-family:Hand,'Comic Sans MS',cursive;font-weight:500;line-height:1;letter-spacing:-.01em}.skip-link{position:fixed;left:20px;top:12px;z-index:100;padding:12px 20px;background:#eaffec;color:#003c29;border-radius:10px;transform:translateY(-200%)}.skip-link:focus{transform:none}:focus-visible{outline:3px solid #fff0b8;outline-offset:5px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.site-header{height:calc(84*var(--unit));min-height:68px;padding:0 9.2%;display:flex;align-items:center;justify-content:space-between;gap:24px;position:relative;z-index:10}.brand{display:inline-flex;align-items:center;gap:9px;white-space:nowrap}.brand span{font-family:Display,Impact,sans-serif;font-size:clamp(26px,calc(40*var(--unit)),52px);line-height:1;font-weight:800;letter-spacing:-.025em}.brand .icon{width:calc(36*var(--unit));height:calc(36*var(--unit));min-width:27px;min-height:27px}.main-nav{display:flex;align-items:center;gap:calc(38*var(--unit));font-size:clamp(12px,calc(15*var(--unit)),20px)}.main-nav a{padding:7px 0;position:relative}.main-nav a::after{content:'';position:absolute;left:0;right:0;bottom:1px;height:1px;background:currentColor;opacity:0;transform:scaleX(.4);transition:.18s}.main-nav a[aria-current="location"]::after,.main-nav a:hover::after{opacity:.7;transform:scaleX(1)}.menu-toggle{display:none}
.mint-button{height:calc(64*var(--unit));min-height:46px;padding:0 calc(30*var(--unit));border-radius:999px;background:linear-gradient(180deg,#caffdf 0%,#a7ffd4 42%,#82f9c7 100%);color:#003c2d;display:inline-flex;align-items:center;justify-content:center;gap:calc(16*var(--unit));font-size:clamp(13px,calc(19*var(--unit)),24px);font-weight:700;box-shadow:inset 0 2px 2px #fff9,inset 0 -3px 2px #28c38b8a,0 0 23px #5dffb787,0 7px 18px #003d2c55;white-space:nowrap;transition:transform .18s,box-shadow .18s;position:relative;z-index:4}.mint-button .icon{width:calc(31*var(--unit));height:calc(31*var(--unit));min-width:23px;min-height:23px}.button-arrow{width:calc(23*var(--unit));height:calc(23*var(--unit));min-width:18px;min-height:18px;fill:none;margin-left:5px;flex-shrink:0}.mint-button[href]:hover,.mint-button:is(button):hover{transform:translateY(-2px);box-shadow:inset 0 2px 2px #fffc,inset 0 -3px 2px #28c38b8a,0 0 30px #5dffb7a8,0 8px 22px #003d2c55}.mint-button:active{transform:translateY(1px)}.join-button{height:calc(58*var(--unit));padding:0 calc(28*var(--unit));font-size:clamp(12px,calc(18*var(--unit)),23px)}
.hero{height:calc(576*var(--unit));position:relative;isolation:isolate}.hero h1{position:absolute;top:calc(-5*var(--unit));left:8.9%;right:8.9%;text-align:center;font-family:Display,Impact,sans-serif;font-weight:900;font-size:calc(335*var(--unit));line-height:.82;letter-spacing:-.012em;background:linear-gradient(180deg,#edfff0 5%,#b6f6d2 90%);color:#d1ffe0;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;z-index:0}.hero-cat{position:absolute;width:45.5%;left:27.25%;top:calc(-22*var(--unit));z-index:2;filter:drop-shadow(0 17px 13px #00231f40)}.hero-left{position:absolute;left:9.1%;top:calc(296*var(--unit));z-index:4}.hero-note{font-size:calc(55*var(--unit));transform:rotate(-7deg)}.hero-note span{padding-left:20px}.scribble{display:block;width:calc(140*var(--unit));height:15px;position:relative;margin:12px 0 24px;transform:rotate(-7deg)}.scribble::before{content:'';position:absolute;left:0;right:0;top:4px;height:9px;border-top:2px solid currentColor;border-radius:60% 25% 0 0;transform:skew(-25deg)}.scribble::after{content:'';position:absolute;left:4px;top:3px;width:33px;height:10px;border-bottom:2px solid currentColor;transform:rotate(-15deg)}.hero-left .scribble{margin:5px 0 calc(26*var(--unit)) calc(110*var(--unit));width:calc(120*var(--unit))}.tiny-paw{position:absolute;right:20%;top:calc(119*var(--unit));width:24px;height:24px;transform:rotate(15deg);color:#c0ffe0}.hero-right{position:absolute;right:7.5%;top:calc(323*var(--unit));font-size:calc(36*var(--unit));transform:rotate(-10deg);text-align:left;z-index:3}.hero-right>span>span{padding-left:16px}.handwritten sup{font-family:Body,Arial,sans-serif;font-size:.28em;vertical-align:super;position:relative;left:4px;top:-.8em}.cat-doodle{height:calc(55*var(--unit));width:calc(55*var(--unit));min-width:38px;min-height:38px;fill:currentColor;margin:12px 0 0 55%}.hero-ground{position:absolute;bottom:calc(10*var(--unit));left:28%;width:43%;height:calc(34*var(--unit));background:radial-gradient(ellipse,#001d2080,transparent 70%);filter:blur(9px);z-index:1}
.about-section{height:calc(435*var(--unit));position:relative;overflow:hidden;isolation:isolate}.about-cat{position:absolute;left:5%;top:calc(2*var(--unit));width:41%;max-width:none;z-index:1}.about-copy{position:absolute;left:48%;top:calc(105*var(--unit));z-index:3}.about-copy h2{font-size:calc(61*var(--unit))}.benefits{display:flex;align-items:flex-start;gap:calc(62*var(--unit));margin-top:calc(30*var(--unit));text-align:center;font-size:clamp(12px,calc(19*var(--unit)),25px);line-height:1.25;letter-spacing:-.035em}.benefits .icon{width:calc(49*var(--unit));height:calc(49*var(--unit));margin:0 auto 13px;color:#bdffda;filter:drop-shadow(0 3px 2px #086945)}.about-tail{position:absolute;right:-8%;top:calc(103*var(--unit));width:32%;transform:rotate(72deg);opacity:.85;z-index:0}.about-doodle{position:absolute;right:10.5%;top:calc(186*var(--unit));font-size:calc(35*var(--unit));transform:rotate(-12deg);z-index:3}.about-doodle span{margin-left:12px}.about-doodle .icon{width:calc(35*var(--unit));height:calc(35*var(--unit));margin:10px 0 0 70%;transform:rotate(22deg);color:#5fdaa3}.wave-cut{position:absolute;bottom:-1px;left:-1%;width:102%;height:calc(83*var(--unit));z-index:2;pointer-events:none}
.tokenomics-section{height:calc(320*var(--unit));position:relative;padding:0 6.9%;display:grid;grid-template-columns:31% 24% 21% 24%;align-items:center;isolation:isolate}.token-copy{align-self:start;padding-top:calc(46*var(--unit));z-index:2}.token-copy h2{font-size:calc(60*var(--unit))}.token-copy .scribble{margin:10px 0 22px;width:74px}.token-copy .mint-button{padding:0 calc(25*var(--unit));font-size:calc(18*var(--unit));height:calc(64*var(--unit))}.token-chart{align-self:center;width:100%;max-width:310px;filter:drop-shadow(0 13px 7px #00432850)}.token-chart svg{width:100%}.token-legend{padding-left:12px;font-size:clamp(11px,calc(17*var(--unit)),23px);position:relative;z-index:2}.token-legend>div{display:flex;align-items:center;margin:calc(15*var(--unit)) 0;gap:10px}.token-legend dt{display:contents;white-space:nowrap}.token-legend dd{margin:0;font-weight:700;order:-1;min-width:29px;text-align:right}.legend-dot{display:inline-block;width:calc(24*var(--unit));height:calc(24*var(--unit));border:1px solid #afffd49c;border-radius:50%;box-shadow:inset 0 1px 1px #fff7,0 2px 3px #003b2555;order:-2;flex-shrink:0}.legend-dot.community{background:#a7ffd1}.legend-dot.development{background:#4bc99a}.legend-dot.marketing{background:#e3f6d7}.legend-dot.liquidity{background:#389b70}.legend-dot.treasury{background:#58d3a3}.sleep-cat{width:110%;max-width:none;position:relative;left:0%;top:calc(16*var(--unit));filter:drop-shadow(0 10px 9px #004d3150)}
.roadmap-section{position:relative;height:calc(390*var(--unit));isolation:isolate}.roadmap-heading{position:absolute;top:calc(30*var(--unit));left:7.1%;z-index:2}.roadmap-heading h2{font-size:calc(48*var(--unit))}.roadmap-heading .scribble{margin-top:15px;width:calc(133*var(--unit))}.yarn{position:absolute;left:2.6%;bottom:calc(63*var(--unit));width:calc(178*var(--unit));transform:rotate(-8deg);z-index:2}.roadmap-thread{position:absolute;left:0;right:0;width:100%;bottom:calc(44*var(--unit));height:calc(134*var(--unit));z-index:0}.roadmap-steps{position:absolute;left:20.7%;right:7.1%;top:calc(95*var(--unit));display:grid;grid-template-columns:repeat(4,1fr);gap:calc(32*var(--unit));z-index:2;text-align:center}.roadmap-steps li{display:flex;flex-direction:column;align-items:center}.roadmap-steps img{width:calc(216*var(--unit));max-width:115%;height:calc(216*var(--unit));object-fit:contain;margin:0 auto calc(9*var(--unit));filter:drop-shadow(0 7px 4px #00352345)}.step-number{font-size:calc(19*var(--unit));font-weight:700;width:calc(36*var(--unit));height:calc(36*var(--unit));min-width:27px;min-height:27px;display:grid;place-items:center;border:2px solid #9effc3;border-radius:50%;background:#087b52b8;box-shadow:0 0 13px #55ed9b65}.roadmap-steps h3{font-size:calc(20*var(--unit));margin-top:10px;letter-spacing:-.03em}
.rewards-section{height:calc(625*var(--unit));position:relative;display:grid;grid-template-columns:32% 40% 23%;gap:2.5%;padding:calc(36*var(--unit)) 5.3% 0;align-items:start;isolation:isolate;scroll-margin-top:25px}.anchor-alias{position:absolute;top:0;left:0}.rewards-intro{height:100%;position:relative}.rewards-intro .eyebrow{margin-top:calc(19*var(--unit))}.rewards-intro h2{font-size:calc(49*var(--unit));letter-spacing:-.035em;position:relative;z-index:2}.rewards-intro .scribble{width:calc(104*var(--unit));margin-top:10px;z-index:2}.rewards-cat{position:absolute;width:104%;max-width:none;left:-3%;bottom:calc(35*var(--unit));filter:drop-shadow(0 10px 8px #003e304f);z-index:1}.reward-heart{position:absolute;right:14%;top:calc(173*var(--unit));font-size:calc(65*var(--unit));transform:rotate(-15deg);z-index:3}.reward-card{position:relative;width:100%;aspect-ratio:1296/1190;margin-top:calc(12*var(--unit));filter:drop-shadow(0 15px 8px #002e2480);transition:transform .24s;isolation:isolate}.reward-frame{position:absolute;inset:0;width:100%;height:100%;object-fit:fill;pointer-events:none}.reward-card-inner{position:absolute;left:9.6%;right:8.5%;top:26%;bottom:10%;color:#073c2c;z-index:1}.reward-label{display:block;font-size:calc(17*var(--unit));line-height:1.3;font-weight:600;text-transform:uppercase;letter-spacing:-.035em}.reward-display{height:calc(127*var(--unit));padding:calc(15*var(--unit)) calc(18*var(--unit));border-radius:calc(21*var(--unit));box-shadow:inset 0 3px 4px #6e796e40,inset 0 -1px 2px #fff,0 2px 0 #fff6;border:1px solid #a6b697;position:relative;overflow:hidden;background:radial-gradient(#a8b9972b .7px,transparent .9px),linear-gradient(145deg,#f7f5e4,#fffff2);background-size:4px 4px,100% 100%}.reward-amount{display:flex;align-items:center;gap:calc(18*var(--unit));margin-top:calc(29*var(--unit));font-size:calc(36*var(--unit));font-weight:700;line-height:1;letter-spacing:-.05em}.reward-amount output:empty{display:block;width:calc(85*var(--unit));height:calc(8*var(--unit));background:#083b2c;flex-shrink:0}.reward-stamp{position:absolute;right:calc(13*var(--unit));top:calc(15*var(--unit));height:calc(60*var(--unit));width:calc(60*var(--unit));border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,#faffed,#e0e8ca);border:1px solid #b7c399;box-shadow:inset 0 2px 1px #fff,0 4px 5px #5c725438;color:#a1cda3}.reward-stamp .icon{width:62%;height:62%;filter:drop-shadow(0 2px 1px #66876b50)}#rewards-form{margin-top:calc(16*var(--unit))}#rewards-wallet{display:block;width:100%;min-width:0;height:calc(49*var(--unit));padding:0 calc(15*var(--unit));border-radius:calc(15*var(--unit));border:1px solid #a2b292;background:#fffeef;color:#0b402f;font-size:calc(20*var(--unit));box-shadow:inset 0 3px 5px #77836b40,0 2px 0 #f5ffe9;margin-top:calc(8*var(--unit));outline-offset:2px;color-scheme:light}#rewards-wallet::placeholder{color:#667f6b;opacity:1}#rewards-wallet[aria-invalid=true]{border-color:#a04535;outline:2px solid #a04535}.reward-submit{display:flex;align-items:center;justify-content:center;gap:calc(17*var(--unit));width:90%;height:calc(65*var(--unit));margin-top:calc(18*var(--unit));border-radius:calc(23*var(--unit));background:linear-gradient(180deg,#219561,#147244 55%,#095a36);border:1px solid #0b6940;box-shadow:inset 0 3px 2px #c0ffcf50,inset 0 -4px 2px #03452d80,0 5px 8px #33593a57;color:#f1fff2;font-size:calc(25*var(--unit));font-weight:700;line-height:1;white-space:nowrap;transition:transform .15s,filter .15s}.reward-submit .icon{width:calc(31*var(--unit));height:calc(31*var(--unit))}.reward-submit:hover{filter:brightness(1.08)}.reward-submit:active{transform:translateY(2px)}.rewards-status{min-height:1.3em;margin-top:10px;font-size:clamp(11px,calc(13*var(--unit)),17px);line-height:1.3;font-weight:600;color:#793c2c}.reward-card.is-checked{transform:translateY(-4px)}
.official-sidebar{padding-top:calc(65*var(--unit))}.outline-button{display:flex;align-items:center;gap:calc(14*var(--unit));height:calc(66*var(--unit));padding:0 calc(20*var(--unit));border-radius:999px;border:2px solid #93edbf96;background:linear-gradient(180deg,#12805b9c,#00482e9c);box-shadow:inset 0 2px 3px #b2ffcf45,0 4px 6px #002c2261;color:#f4fff6;font-size:calc(17*var(--unit));font-weight:600;white-space:nowrap;transition:transform .2s,background .2s;margin-bottom:calc(14*var(--unit))}.outline-button[href]:hover{transform:translateY(-2px);background:#11744e}.outline-button .icon{width:calc(31*var(--unit));height:calc(31*var(--unit))}.outline-button .button-arrow{margin-left:auto}.contract{margin-top:calc(28*var(--unit))}.contract .eyebrow{font-size:calc(13*var(--unit));margin-bottom:10px;letter-spacing:.15em}.contract-field{border:1px solid #42c88d9c;border-radius:calc(17*var(--unit));background:#005c3e70;padding:6px;display:flex;align-items:center;gap:5px;min-height:calc(62*var(--unit))}#contract-address{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;padding-left:8px;font-size:calc(16*var(--unit));white-space:nowrap}#copy-ca{display:flex;align-items:center;justify-content:center;gap:5px;min-height:calc(46*var(--unit));padding:0 calc(14*var(--unit));border-radius:calc(12*var(--unit));color:#00482e;background:linear-gradient(180deg,#c7ffdf,#91f6c4);font-size:calc(16*var(--unit));font-weight:700;white-space:nowrap;box-shadow:inset 0 2px 1px #fff8,0 2px 2px #003c2855}#copy-ca .icon{width:20px;height:20px}.community-doodle{margin:calc(44*var(--unit)) 0 0 calc(30*var(--unit));font-size:calc(34*var(--unit));transform:rotate(-10deg);white-space:nowrap}.community-doodle>span{padding-left:15px}.community-doodle .cat-doodle{margin-top:16px}
.site-footer{height:calc(145*var(--unit));min-height:120px;padding:0 6.3%;display:flex;align-items:center;justify-content:space-between;gap:25px;position:relative;font-size:clamp(11px,calc(14*var(--unit)),18px)}.site-footer nav{display:flex;gap:calc(36*var(--unit))}.site-footer nav a:hover{text-decoration:underline;text-underline-offset:7px}.footer-end{display:flex;flex-direction:column;gap:17px;align-items:flex-end}.social-icons{display:flex;gap:23px;align-items:center}.social-icons .icon{height:calc(25*var(--unit));width:calc(25*var(--unit));min-width:20px;min-height:20px}.social-icons a[href]:hover{color:var(--mint)}.site-footer small{font-size:clamp(10px,calc(13*var(--unit)),17px);white-space:nowrap}dialog{width:min(92vw,490px);border:1px solid #9be7be80;border-radius:25px;padding:40px;background:linear-gradient(145deg,#076542,#003f2c);color:var(--cream);box-shadow:0 20px 80px #00160e80}dialog::backdrop{background:#001e18b8;backdrop-filter:blur(6px)}dialog h2{font-size:43px}.dialog-close{position:absolute;right:15px;top:10px;font-size:32px;line-height:1;background:transparent;padding:8px;cursor:pointer}.allocation-details{margin-top:25px}.allocation-details>div{display:flex;justify-content:space-between;padding:14px 0;border-top:1px solid #9dcbaa40}.allocation-details dd{margin:0;font-weight:700}
/* Preserve each supplied cutout's real proportions when its display width changes. */
img{height:auto}
.reward-frame{height:100%}
.roadmap-steps img{height:calc(246*var(--unit));width:calc(246*var(--unit))}
body::before{filter:saturate(1.28) contrast(1.07)}
.hero-cat{width:44%;left:28%;top:calc(-40*var(--unit))}
.hero h1{-webkit-user-select:none;user-select:none}
.about-tail{width:42%;right:-16%;top:calc(70*var(--unit));transform:rotate(-15deg) scaleY(-1)}
.about-cat{mask-image:linear-gradient(#000 0 89%,transparent 100%)}
.rewards-cat{bottom:calc(-28*var(--unit))}
.roadmap-section{height:calc(410*var(--unit))}
.roadmap-steps{top:calc(80*var(--unit))}
.yarn{width:calc(140*var(--unit))}
@media(min-width:1921px){body::before{background-size:1920px 100%;background-color:#00492f}}
@media(max-width:1100px) and (min-width:761px){.site-header{padding:0 6.5%;gap:18px}.main-nav{gap:20px}.join-button{padding:0 18px;gap:8px}.token-legend{padding-left:4px}.token-legend>div{gap:6px}.token-legend dd{min-width:20px}.mint-button{padding:0 22px}}
@media(max-width:760px){:root{--unit:1px}body::before{background-size:auto 100%;background-position:center;opacity:.93}.site-header{height:78px;padding:0 5%;gap:12px}.brand span{font-size:31px}.brand .icon{width:28px;height:28px}.join-button{min-height:39px;height:39px;font-size:12px;padding:0 14px;gap:7px;margin-left:auto}.join-button .icon{width:21px;height:21px;min-width:21px;min-height:21px}.menu-toggle{display:flex;flex-direction:column;gap:5px;align-items:center;justify-content:center;background:#a2ffcb14;border:1px solid #d1ffdb50;border-radius:50%;width:37px;height:37px;flex-shrink:0;order:3}.menu-toggle span{height:2px;width:15px;background:#e9ffee;transition:transform .18s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.main-nav{display:none;position:absolute;top:70px;left:5%;right:5%;background:#004d36f2;border:1px solid #9ee1be55;box-shadow:0 12px 25px #00302560;border-radius:18px;padding:17px 22px;gap:6px;font-size:16px}.main-nav.is-open{display:flex;flex-direction:column;align-items:stretch}.main-nav a{padding:9px}.main-nav a::after{display:none}.hero{height:610px}.hero h1{left:3%;right:3%;top:8px;font-size:clamp(83px,22.7vw,171px);letter-spacing:-.005em;line-height:.9}.hero-cat{width:min(95%,540px);left:50%;top:37px;transform:translateX(-50%);filter:drop-shadow(0 15px 10px #00231f40)}.hero-left{left:7%;top:auto;bottom:28px}.hero-note{font-size:36px}.hero-note span{padding-left:12px}.hero-left .scribble{margin:8px 0 15px 80px;width:95px}.tiny-paw{top:79px;right:13%;width:19px;height:19px}.mint-button{height:47px;min-height:47px;padding:0 20px;gap:10px;font-size:14px}.mint-button .icon{width:24px;height:24px}.button-arrow{width:18px;height:18px;margin-left:2px}.hero-right{right:7%;top:auto;bottom:74px;font-size:26px}.hero-right .cat-doodle{width:38px;height:38px;margin-top:8px}.hero-ground{bottom:186px;left:15%;width:70%;height:24px}.about-section{height:530px}.about-copy{top:22px;left:45%;right:4%;z-index:3}.eyebrow{font-size:11px;margin-bottom:10px}.about-copy h2{font-size:36px;line-height:1.02}.about-cat{left:-8%;top:95px;width:76%}.benefits{gap:15px;margin-top:25px;font-size:11px;line-height:1.2;letter-spacing:-.03em;position:relative;left:-5px}.benefits .icon{width:31px;height:31px;margin-bottom:9px}.about-tail{width:69%;right:-33%;top:261px;transform:rotate(65deg)}.about-doodle{right:11%;top:310px;font-size:30px}.about-doodle .icon{width:27px;height:27px}.wave-cut{height:100px;bottom:0}.tokenomics-section{height:auto;min-height:560px;padding:35px 6% 35px;display:grid;grid-template-columns:1fr 1fr;gap:4px 22px}.token-copy{padding-top:0;align-self:start;z-index:2}.token-copy h2{font-size:37px}.token-copy .mint-button{font-size:12px;padding:0 15px;gap:7px;height:45px}.token-copy .mint-button .icon{width:20px;height:20px;min-width:20px;min-height:20px}.token-copy .button-arrow{width:15px;min-width:15px}.token-copy .scribble{margin:8px 0 15px;width:70px}.token-chart{grid-column:2;grid-row:1;width:105%;max-width:245px;justify-self:center;align-self:start;transform:translateY(-20px)}.token-legend{font-size:13px;grid-row:2;grid-column:1;padding-left:0;align-self:start}.token-legend>div{margin:14px 0;gap:9px}.token-legend dd{min-width:20px}.legend-dot{width:20px;height:20px}.sleep-cat{grid-row:2;grid-column:2;align-self:center;width:119%;left:-3%;top:10px}.roadmap-section{height:740px}.roadmap-heading{top:25px;left:7%}.roadmap-heading h2{font-size:39px}.roadmap-heading .scribble{margin-top:10px;width:110px}.roadmap-steps{left:8%;right:8%;top:157px;grid-template-columns:1fr 1fr;gap:25px 28px}.roadmap-steps img{width:190px;height:190px;max-width:115%;margin-bottom:0}.step-number{width:30px;height:30px;font-size:16px}.roadmap-steps h3{font-size:16px;margin-top:6px}.roadmap-thread{height:420px;bottom:51px;transform:rotate(-8deg);opacity:.65}.yarn{left:67%;top:35px;bottom:auto;width:113px}.rewards-section{height:auto;display:flex;flex-wrap:wrap;gap:0;padding:34px 6% 35px;scroll-margin-top:15px}.rewards-intro{width:100%;height:265px;padding-top:10px}.rewards-intro .eyebrow{margin-top:0;font-size:11px}.rewards-intro h2{font-size:38px;z-index:3}.rewards-intro .scribble{width:80px;margin-top:10px}.rewards-cat{width:65%;max-width:300px;left:auto;right:-6%;bottom:0;z-index:1}.reward-heart{font-size:46px;top:132px;left:28%;right:auto;z-index:4}.reward-card{width:min(100%,520px);margin:10px auto 0;aspect-ratio:1296/1190}.reward-card-inner{top:26%;left:9.6%;right:8.5%}.reward-label{font-size:clamp(11px,3.2vw,17px)}.reward-display{height:clamp(88px,24vw,127px);padding:13px 14px;border-radius:18px}.reward-amount{margin-top:22px;font-size:clamp(23px,6.7vw,35px);gap:15px}.reward-amount output:empty{width:clamp(47px,13vw,85px);height:7px}.reward-stamp{width:clamp(40px,11vw,60px);height:clamp(40px,11vw,60px);right:11px;top:13px}#rewards-form{margin-top:12px}#rewards-wallet{height:clamp(37px,10vw,49px);padding:0 12px;border-radius:12px;font-size:clamp(13px,3.8vw,20px);margin-top:7px}.reward-submit{width:88%;height:clamp(43px,11.6vw,61px);margin-top:13px;gap:10px;border-radius:18px;font-size:clamp(16px,4.6vw,25px)}.reward-submit .icon{width:clamp(23px,6.5vw,31px);height:clamp(23px,6.5vw,31px)}.rewards-status{font-size:11px;margin-top:6px}.official-sidebar{width:100%;padding-top:30px;display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:start}.outline-button{height:47px;padding:0 13px;gap:8px;font-size:12px;margin-bottom:0;border-width:1px}.outline-button .icon{width:24px;height:24px}.outline-button .button-arrow{width:16px;min-width:16px}.contract{grid-column:1/-1;margin-top:12px}.contract .eyebrow{font-size:11px}.contract-field{min-height:57px;border-radius:14px}#contract-address{font-size:14px}#copy-ca{font-size:14px;min-height:43px;padding:0 17px}.community-doodle{grid-column:1/-1;justify-self:center;text-align:center;font-size:29px;margin:15px 0 0;transform:rotate(-7deg)}.community-doodle .cat-doodle{margin:10px auto 0;width:39px;height:39px}.site-footer{height:auto;padding:25px 7% 28px;display:flex;flex-wrap:wrap;gap:25px;justify-content:space-between}.site-footer .brand span{font-size:28px}.site-footer nav{width:100%;order:3;gap:18px;justify-content:center;font-size:11px}.footer-end{gap:13px}.social-icons{gap:15px}.social-icons .icon{width:20px;height:20px}.site-footer small{font-size:9px}.site-footer .brand .icon{width:27px;height:27px}dialog{padding:30px}dialog h2{font-size:36px}}
@media(max-width:390px){.join-button{font-size:11px;padding:0 11px}.join-button .icon{display:none}.hero{height:563px}.hero-right{font-size:23px;right:6%;bottom:76px}.hero-left{left:6%;bottom:24px}.hero-note{font-size:32px}.hero-left .mint-button{font-size:12px;padding:0 17px;gap:7px}.about-section{height:475px}.about-copy h2{font-size:31px}.benefits{gap:11px;font-size:10px}.benefits .icon{width:27px;height:27px}.about-doodle{top:281px;right:8%;font-size:27px}.tokenomics-section{min-height:505px;gap:0 16px}.token-copy h2{font-size:33px}.token-copy .mint-button{font-size:11px;padding:0 11px}.roadmap-steps img{height:170px;width:170px}.roadmap-section{height:690px}.rewards-intro{height:239px}.rewards-intro h2{font-size:34px}.official-sidebar{gap:9px}.outline-button{font-size:11px;padding:0 11px;gap:6px}.site-footer nav{gap:13px}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}.reward-card.is-checked{transform:none}}
/* Mobile places benefits below the portrait and scales the real form to its frame. */
@media(max-width:760px){.benefits{position:absolute;top:340px;right:0;left:auto;width:calc(100vw - 48px);justify-content:center;gap:42px;margin:0;font-size:13px}.about-cat{mask-image:linear-gradient(#000 0 84%,transparent 100%)}.about-tail{width:56%;right:-28%;top:245px;transform:rotate(15deg) scaleY(-1)}.about-doodle{top:260px}.wave-cut{display:none}.roadmap-thread{height:90px;bottom:320px;transform:none}.rewards-cat{width:58%;right:-3%}.reward-card-inner{top:22%}.reward-display{height:clamp(72px,20vw,110px);padding:11px 13px}.reward-amount{margin-top:16px}.reward-label{font-size:clamp(11px,3vw,17px)}#rewards-form{margin-top:8px}#rewards-wallet{height:clamp(34px,9.2vw,46px);margin-top:5px}.reward-submit{height:clamp(40px,10.8vw,54px);margin-top:12px}.rewards-status{font-size:10px}}

/* clean.css */
/* Quiet continuous emerald field, restored from the original site. */
:root {
  --page-width: min(88vw, 1440px);
  --unit: calc(var(--page-width) / 1440);
  --current-base: #064d35;
  --current-cover: #087d50;
  --cover-height: clamp(700px, 100svh, 1200px);
}
body { background: var(--current-base); }
body::before {
  background:
    radial-gradient(ellipse 95% 780px at 110% 32%, #13855a, transparent 85%),
    radial-gradient(ellipse 85% 660px at -8% 55%, #087045, transparent 80%),
    radial-gradient(ellipse 95% 740px at 110% 78%, #259460, transparent 85%),
    linear-gradient(to bottom, var(--current-cover) 0,
      var(--current-cover) calc(var(--cover-height) * .47),
      var(--current-base) calc(var(--cover-height) * 1.04),
      var(--current-base) 100%);
  background-size: auto;
  opacity: 1;
  filter: none;
}
body::after {
  content: '';
  position: absolute;
  inset: calc(756px - 8%) 0 0;
  z-index: -1;
  pointer-events: none;
  opacity: .42;
  /* The identical soft field is baked once, rather than blurred across a
     several-thousand-pixel page on every newly rasterized scroll tile. */
  background: url('assets/optimized/emerald-current-desktop.webp') center/100% 100% no-repeat;
  filter: none;
}
@media (max-width:760px) {
  body::after { background-image:url('assets/optimized/emerald-current-mobile.webp'); }
}
.page-stage { width: 88%; max-width: 1440px; }
.site-header { padding: 0 6%; height: calc(96 * var(--unit)); }
.brand span { font-size: clamp(26px, calc(36 * var(--unit)), 36px); }
.main-nav { gap: calc(34 * var(--unit)); font-size: 14px; }
.mint-button {
  box-shadow: inset 0 2px 2px #fff9, inset 0 -3px 2px #28c38b70,
    0 5px 16px #003d2c44;
}
.hero { height: calc(600 * var(--unit)); scroll-margin-top: max(78px, calc(96 * var(--unit))); }
#main:focus { outline:none; }
.hero h1 { top: calc(48 * var(--unit)); left: 6%; right: 6%; font-size: calc(315 * var(--unit)); }
.hero-cat { width: 39%; left: 30.5%; top: calc(28 * var(--unit)); }
.hero .hero-cat { pointer-events: none; cursor: inherit; touch-action: auto; -webkit-user-select: none; user-select: none; }
.hero-left {
  left: 50%; top: auto; bottom: calc(20 * var(--unit));
  transform: translateX(-50%);
}
.hero-ground { left: 32%; width: 36%; bottom: calc(100 * var(--unit)); }
.about-section {
  height: auto; min-height: calc(260 * var(--unit));
  padding: calc(65 * var(--unit)) 6% calc(75 * var(--unit));
  overflow: visible;
}
.about-copy {
  position: static;
  display: grid;
  grid-template-columns: .9fr 1.1fr;
  column-gap: 9%;
  align-items: center;
}
.about-copy .eyebrow { grid-column: 1; grid-row: 1; }
.about-copy h2 { grid-column: 1; grid-row: 2; font-size: calc(50 * var(--unit)); max-width: 8em; }
.benefits {
  position: static; grid-column: 2; grid-row: 1 / span 2;
  margin: 0; display: grid; grid-template-columns: repeat(3, 1fr);
  gap: 22px; font-size: 15px;
}
.benefits .icon { width: 39px; height: 39px; margin-bottom: 16px; filter: none; }
.tokenomics-section {
  height: calc(340 * var(--unit)); padding: 0 6%;
  grid-template-columns: 32% 22% 24% 22%;
}
.token-copy { padding-top: calc(54 * var(--unit)); }
.token-copy h2 { font-size: calc(50 * var(--unit)); }
.token-chart { width: 90%; }
.token-legend { padding-left: 18px; font-size: 14px; }
.token-legend > div { gap: 9px; margin: 17px 0; }
.token-legend dd { min-width: 22px; }
.sleep-cat { width: 98%; left: 2%; top: calc(14 * var(--unit)); }
.roadmap-section {
  height: auto;
  padding: calc(70 * var(--unit)) 6% calc(90 * var(--unit));
}
.roadmap-heading { position: static; }
.roadmap-heading h2 { font-size: calc(48 * var(--unit)); }
.roadmap-heading .scribble { margin: 10px 0 0; }
.roadmap-track { position: relative; margin: calc(44 * var(--unit)) 0 0 11%; }
.roadmap-steps {
  position: relative; inset: auto; grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: calc(28 * var(--unit)); z-index: 2;
}
.roadmap-steps img {
  width: 100%; max-width: 100%; height: calc(190 * var(--unit));
  margin: 0 0 calc(22 * var(--unit));
}
.step-number {
  width: calc(34 * var(--unit)); height: calc(34 * var(--unit));
  min-width: 27px; min-height: 27px;
  font-size: clamp(13px, calc(18 * var(--unit)), 18px);
  background: #09563b; box-shadow: none;
}
.roadmap-steps h3 { margin-top: 14px; font-size: 16px; }
.roadmap-thread {
  left: -14%; right: auto; top: calc(205 * var(--unit)); bottom: auto;
  width: 114%; height: calc(48 * var(--unit));
  opacity: 1; transform: none; z-index: 1;
}
.yarn {
  left: -15%; top: calc(165 * var(--unit)); bottom: auto;
  width: calc(105 * var(--unit)); transform: rotate(-8deg); z-index: 2;
}
.rewards-section {
  height: calc(665 * var(--unit)); padding: calc(45 * var(--unit)) 6% 0;
  grid-template-columns: 29% 40% 25%; gap: 3%;
}
.rewards-intro .eyebrow { margin-top: calc(20 * var(--unit)); }
.rewards-intro h2 { font-size: calc(42 * var(--unit)); }
.rewards-cat { width: 100%; left: -2%; bottom: calc(25 * var(--unit)); }
.reward-card { margin-top: calc(15 * var(--unit)); }
.official-sidebar { padding-top: calc(80 * var(--unit)); }
.outline-button { height: calc(61 * var(--unit)); font-size: 15px; }
.site-footer { padding: 0 6%; height: calc(155 * var(--unit)); }
.site-footer nav { gap: 24px; font-size: 12px; }
.site-footer small { font-size: 11px; }
@media (min-width: 761px) and (max-width: 1100px) {
  .page-stage { width: 92%; }
  :root { --page-width: 92vw; }
  .main-nav { gap: 18px; font-size: 12px; }
  .brand span { font-size: 28px; }
  .benefits { font-size: 13px; gap: 14px; }
  .token-legend { font-size: 12px; padding-left: 4px; }
  .token-legend > div { gap: 6px; }
  .outline-button { font-size: 12px; padding: 0 13px; gap: 8px; }
  .site-footer nav { gap: 16px; font-size: 11px; }
}
@media (max-width: 760px) {
  :root { --page-width: 100vw; --unit: 1px; --cover-height: clamp(680px, 100svh, 820px); }
  .page-stage { width: 100%; }
  body::before { background-size: auto; opacity: 1; }
  body::after { inset: calc(648px - 8%) 0 0; opacity: .3; }
  .site-header { height: 78px; padding: 0 6%; }
  .brand span { font-size: 29px; }
  .main-nav { font-size: 16px; }
  .hero { height: clamp(410px, 108vw, 580px); }
  .hero h1 { top: 18px; left: 5%; right: 5%; font-size: clamp(80px, 21.8vw, 166px); }
  .hero-cat { top: 37px; left: 50%; width: min(87%, 480px); }
  .hero-left { left: 50%; bottom: 30px; }
  .hero-ground { left: 18%; width: 64%; bottom: 100px; }
  .about-section { height: auto; min-height: 0; padding: 45px 7% 65px; }
  .about-copy { display: block; text-align: center; }
  .about-copy h2 { font-size: 34px; max-width: none; }
  .benefits { width: 100%; margin-top: 36px; grid-template-columns: repeat(3, 1fr); gap: 14px; font-size: 12px; }
  .benefits .icon { width: 32px; height: 32px; margin-bottom: 13px; }
  .tokenomics-section {
    height: auto; min-height: 440px; padding: 30px 7% 40px;
    grid-template-columns: 1fr 1fr; gap: 12px 18px;
  }
  .token-copy { padding-top: 0; }
  .token-copy h2 { font-size: 34px; }
  .token-chart { width: 90%; transform: none; }
  .token-legend { font-size: 12px; padding: 0; }
  .token-legend > div { gap: 8px; margin: 16px 0; }
  .sleep-cat { width: 105%; left: 0; top: 0; }
  .roadmap-section { height: auto; padding: 55px 7% 65px; }
  .roadmap-heading h2 { font-size: 35px; }
  .roadmap-track { margin: 40px 0 0; }
  .roadmap-steps { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 30px 25px; }
  .roadmap-steps img { height: 155px; width: 100%; margin-bottom: 20px; }
  .step-number { width: 30px; height: 30px; font-size: 15px; }
  .roadmap-steps h3 { font-size: 15px; margin-top: 10px; }
  .roadmap-thread { top: 166px; left: -2%; width: 104%; height: 48px; }
  .roadmap-track::after {
    content: ''; position: absolute; left: -2%; right: -2%; top: 429px; height: 48px;
    pointer-events: none; z-index: 1;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 60' preserveAspectRatio='none'%3E%3Cpath d='M0 30C200 8 400 52 600 30S1000 8 1200 30' fill='none' stroke='%23023b2a' stroke-width='7'/%3E%3Cpath d='M0 30C200 8 400 52 600 30S1000 8 1200 30' fill='none' stroke='%23aee6bd' stroke-width='3.5'/%3E%3C/svg%3E") center/100% 100% no-repeat;
  }
  .yarn { width: 75px; left: auto; right: 0; top: -107px; }
  .rewards-section { height: auto; padding: 35px 7% 45px; display: flex; gap: 0; }
  .rewards-intro { height: 235px; }
  .rewards-intro .eyebrow { margin-top: 0; }
  .rewards-intro h2 { font-size: 32px; }
  .rewards-cat { width: 54%; max-width: 290px; left: auto; right: -2%; bottom: 0; }
  .reward-card { width: min(100%, 520px); margin-top: 15px; }
  .official-sidebar { padding-top: 32px; }
  .outline-button { height: 47px; font-size: 11px; padding: 0 11px; gap: 7px; }
  .site-footer { height: auto; padding: 25px 7% 30px; }
  .site-footer nav { font-size: 11px; gap: 13px; }
  .site-footer small { font-size: 9px; }
}
@media (max-width: 360px) {
  .hero { height: 395px; }
  .about-copy h2 { font-size: 30px; }
  .roadmap-steps img { height: 140px; }
  .roadmap-thread { top: 151px; }
  .roadmap-track::after { top: 399px; }
  .rewards-intro h2 { font-size: 29px; }
}

/* alive.css */
/* One emerald world, with a clear holder-reward story. */
.identity-rail {
  width: 88%; margin: 0 auto; padding: 18px 0 23px;
  display: flex; justify-content: center; align-items: center; gap: 30px;
  border-bottom: 1px solid #c5ffdd20; font-size: 13px; color: #daf5e3;
}
.identity-address { display: flex; align-items: center; gap: 15px; min-width: 0; }
.identity-key { font-size: 11px; letter-spacing: .13em; color: #b1d4bc; }
.identity-value { max-width: 350px; min-width: 160px; font-size: 12px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; user-select: all; }
.identity-value:empty { border-bottom: 1px solid #bce7c44a; width: 220px; height: 15px; }
.identity-copy { display: inline-flex; align-items: center; gap: 7px; padding: 9px 0; background: none; color: #edfff1; font-size: 12px; flex-shrink: 0; }
.identity-copy .icon { width: 16px; height: 16px; }
.identity-x { display: inline-flex; align-items: center; gap: 10px; padding: 8px 0 8px 28px; border-left: 1px solid #c6ffde30; white-space: nowrap; }
.identity-x .icon { width: 17px; height: 17px; }
.identity-copy:disabled, .identity-x[aria-disabled=true] { opacity: .65; }
.identity-copy.is-copied { color: #a8ffd2; }
.mechanism-section { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: 7%; padding: calc(80 * var(--unit)) 6% calc(70 * var(--unit)); }
.mechanism-copy h2 { font-size: clamp(30px, calc(47 * var(--unit)), 47px); line-height: 1.12; letter-spacing: -.045em; }
.mechanism-copy h2 span { color: #b5e8c2; }
.mechanism-description { font-size: 14px; line-height: 1.7; color: #c7dfce; margin-top: 22px; }
.mechanism-visual { min-width: 0; }
.mechanism-scene { height: calc(235 * var(--unit)); min-height: 170px; position: relative; perspective: 900px; isolation: isolate; border-radius: 50%; }
.capsule-orbit { width: 60%; height: 47%; position: absolute; top: 26%; left: 20%; z-index: 2; }
.flow-capsule { display: flex; height: 100%; width: 100%; border-radius: 999px; position: relative; transform: rotate(-28deg); transform-style: preserve-3d; filter: drop-shadow(8px 16px 10px #002f2447); }
.capsule-green, .capsule-white { position: relative; width: 50%; height: 100%; border: 1px solid #d3ffe9b3; }
.capsule-green { border-radius: 999px 3px 3px 999px; background: radial-gradient(ellipse at 39% 23%, #83ecc3 0%, #28b27c 26%, #147044 62%, #064932 100%); box-shadow: inset 0 5px 5px #c9ffe98a, inset 3px 0 3px #fff7, inset 0 -10px 12px #002c2180; }
.capsule-white { display: grid; place-items: center; border-radius: 3px 999px 999px 3px; background: linear-gradient(180deg,#ffffff 0%,#f1f9f0 35%,#dfebdf 65%,#9eaFA5 100%); box-shadow: inset 0 5px 4px #fff, inset 0 -8px 10px #758b794a, inset -2px 0 3px #fff; }
.capsule-white .icon { color: #11704a; width: 30%; height: 45%; filter: drop-shadow(0 1px 1px #fff); opacity: .9; }
.capsule-seam { position: absolute; top: 1%; bottom: 1%; left: 49.5%; width: 1.5%; border-radius: 50%; background: linear-gradient(#fff9,#6eb29185,#012c2170); box-shadow: 1px 0 2px #fff9; }
.capsule-reflection { position: absolute; top: 13%; left: 10%; right: 11%; height: 13%; border-radius: 70%; background: linear-gradient(90deg,#fff0,#edfff7c9 13%,#fff9 43%,#ffff 49%,#fff5 72%,#fff0); transform: rotate(-2deg); opacity: .85; pointer-events: none; }
.capsule-shadow { position: absolute; width: 65%; height: 14%; left: 18%; bottom: 11%; background: radial-gradient(ellipse,#002e2460,transparent 70%); filter: blur(7px); }
.capsule-ripple { position: absolute; left: 12%; bottom: 9%; width: 78%; height: 24%; border: 1px solid #ace5bd2b; border-radius: 50%; transform: rotate(-5deg); z-index: 0; }
.ripple-two { left: 20%; width: 62%; bottom: 14%; height: 17%; }
.mechanism-flow { display: flex; align-items: center; gap: 17px; font-size: 13px; margin-top: 12px; white-space: nowrap; }
.mechanism-flow>span:not(.flow-connector) { display: flex; align-items: center; gap: 9px; }
.mechanism-flow i { font-size: 10px; letter-spacing: .05em; color: #abd2b5; font-style: normal; }
.flow-connector { flex: 1; min-width: 22px; height: 1px; position: relative; background: #b0e8c349; }
.flow-connector::after { content: ''; position: absolute; right: 0; top: -3px; width: 6px; height: 6px; border-right: 1px solid #bee9ce; border-top: 1px solid #bee9ce; transform: rotate(45deg); }
.flow-connector b { position: absolute; width: 6px; height: 6px; left: 0; top: -2.5px; border-radius: 50%; background: #bdffd6; box-shadow: 0 0 7px #b4ffcf80; }
.tokenomics-section { margin-top: calc(5 * var(--unit)); }
.roadmap-steps h3 { font-size: 15px; line-height: 1.3; letter-spacing: -.025em; }
.step-detail { margin-top: 9px; font-size: 12px; line-height: 1.65; color: #c0dcca; }
.step-state { margin-top: 12px; color: #b5f0c7; font-size: 10px; letter-spacing: .09em; text-transform: uppercase; border: 1px solid #c0ecca44; border-radius: 999px; padding: 5px 10px; }
.step-state[hidden] { display: none; }
.rewards-description { margin-top: 18px; color: #c6e0ce; font-size: 13px; line-height: 1.7; }
.rewards-intro h2 { font-size: calc(43 * var(--unit)); line-height: 1.12; }
.rewards-intro .scribble { margin-top: 14px; }
.hero-cat, .sleep-cat, .yarn, .mechanism-scene { cursor: pointer; -webkit-tap-highlight-color: transparent; touch-action: manipulation; }
.hero-cat:focus-visible, .sleep-cat:focus-visible, .yarn:focus-visible { outline: 2px solid #e7ffeb; outline-offset: 8px; border-radius: 24px; }
.mechanism-scene:focus-visible { outline: 2px solid #e7ffeb; outline-offset: 7px; }
@media(min-width:761px) and (max-width:1100px) {
  .identity-rail { width: 88%; gap: 20px; }
  .identity-value { max-width: 250px; min-width: 100px; }
  .identity-value:empty { width: 160px; }
  .mechanism-section { gap: 5%; padding-top: 45px; padding-bottom: 45px; }
  .mechanism-description { font-size: 12px; }
  .mechanism-flow { gap: 9px; font-size: 11px; }
  .mechanism-flow i { display: none; }
  .step-detail { font-size: 11px; }
  .roadmap-steps h3 { font-size: 13px; }
}
@media(max-width:760px) {
  .identity-rail { width: 86%; padding: 0 0 24px; margin-top: -12px; gap: 17px; flex-wrap: wrap; justify-content: space-between; }
  .identity-address { flex: 1; gap: 10px; }
  .identity-value { min-width: 0; max-width: 155px; font-size: 10px; flex: 1; }
  .identity-value:empty { width: auto; min-width: 45px; }
  .identity-copy { font-size: 10px; gap: 4px; }
  .identity-copy .icon { width: 14px; height: 14px; }
  .identity-x { border-left: 0; padding-left: 0; }
  .identity-x span { display: none; }
  .mechanism-section { grid-template-columns: 1fr; padding: 50px 7% 45px; gap: 22px; }
  .mechanism-copy h2 { font-size: clamp(29px,7.6vw,43px); }
  .mechanism-description { font-size: 13px; margin-top: 16px; }
  .mechanism-visual { max-width: 500px; width: 100%; justify-self: center; }
  .mechanism-scene { height: clamp(170px,46vw,235px); }
  .mechanism-flow { font-size: 12px; gap: 12px; }
  .mechanism-flow>span:not(.flow-connector) { gap: 7px; }
  .tokenomics-section { margin-top: 0; }
  .step-detail { font-size: 11px; margin-top: 8px; }
  .roadmap-steps h3 { font-size: 13px; }
  .roadmap-steps { gap: 32px 22px; }
  .roadmap-track::after { top: 475px; }
  .rewards-intro { height: 235px; }
  .rewards-intro h2 { font-size: 32px; }
  .rewards-description { margin-top: 13px; font-size: 11px; line-height: 1.6; max-width: 49%; }
  .rewards-cat { width: 51%; right: -2%; bottom: 5px; }
}
@media(max-width:360px) {
  .identity-rail { gap: 12px; }
  .mechanism-flow { font-size: 10px; }
  .mechanism-flow i { display: none; }
  .roadmap-track::after { top: 445px; }
  .rewards-intro h2 { font-size: 29px; }
}

/* alive-motion.css */
/* Living cutouts use individual transforms so the responsive artwork stays in place. */
.alive-motion { animation-play-state: paused; }
.hero .hero-cat {
  animation: pumpurr-hero-float 7.2s ease-in-out infinite;
  animation-play-state: paused;
  translate: 0 0;
  rotate: none;
  scale: none;
  transition: none;
  will-change: auto;
}
.hero .hero-cat.is-alive-visible { animation-play-state: running; will-change: translate; }
.sleep-cat.alive-motion {
  transform-origin: 50% 82%;
  animation: pumpurr-snooze 5.6s ease-in-out infinite;
  animation-play-state: paused;
}
.yarn.alive-motion { transform-origin: 50% 62%; }
.alive-motion.is-alive-visible,
.mechanism-scene.is-alive-visible .alive-motion { animation-play-state: running; }
.alive-motion.is-alive-reacting,
.mechanism-scene.is-alive-reacting .alive-motion { animation-play-state: paused; }
.sleep-cat[role=button], .yarn[role=button],
.mechanism-scene[role=button] { touch-action: manipulation; -webkit-user-select: none; user-select: none; }
.sleep-cat[role=button]:focus-visible,
.yarn[role=button]:focus-visible { outline: 2px dashed #c5ffdd; outline-offset: 3px; border-radius: 24px; }
.mechanism-scene[role=button]:focus-visible { outline: 2px solid #c5ffdd; outline-offset: 6px; }

.capsule-orbit.alive-motion {
  animation: pumpurr-capsule-bob 6.2s ease-in-out infinite;
  animation-play-state: paused;
  rotate: var(--alive-tilt, 0deg);
  transition: rotate .4s ease-out;
  transform-origin: center;
}
.flow-capsule.alive-motion {
  animation: pumpurr-capsule-turn 8s ease-in-out infinite;
  animation-play-state: paused;
  transform-origin: center;
}
.flow-connector b.alive-motion {
  opacity: 0;
  animation: pumpurr-reward-transit 4.5s linear infinite;
  animation-play-state: paused;
}
.mechanism-scene.is-alive-visible ~ .mechanism-flow .flow-connector b.alive-motion {
  animation-play-state: running;
}

/* These reveals are progressive enhancement: content is visible without the script. */
body.alive-ready [data-reveal] {
  opacity: 0;
  translate: 0 12px;
  transition: opacity .65s ease-out, translate .65s cubic-bezier(.2,.65,.3,1);
}
body.alive-ready [data-reveal].is-revealed { opacity: 1; translate: 0 0; }

@media (hover: hover) and (pointer: fine) {
  .roadmap-steps li img { transition: translate .35s ease-out; }
  .roadmap-steps li:hover img { translate: 0 -4px; }
}

body.alive-page-hidden .alive-motion,
body.alive-blocked .alive-motion,
body.motion-paused .alive-motion,
body.alive-page-hidden .hero-cat,
body.alive-blocked .hero-cat,
body.motion-paused .hero-cat { animation-play-state: paused !important; will-change: auto !important; }
body.alive-page-hidden .alive-motion,
body.alive-blocked .alive-motion,
body.motion-paused .alive-motion { transition: none !important; }
body.alive-reduced .alive-motion,
body.alive-reduced .hero-cat { animation: none !important; rotate: none !important; translate: none !important; scale: none !important; transition: none !important; will-change: auto !important; }
body.alive-reduced [data-reveal] { opacity: 1 !important; translate: none !important; transition: none !important; }
body.alive-reduced .roadmap-steps li img { translate: none !important; transition: none !important; }

@keyframes pumpurr-hero-float {
  0%, 100% { translate: 0 0; }
  50% { translate: 0 -4px; }
}
@keyframes pumpurr-snooze {
  0%, 100% { scale: 1 1; }
  50% { scale: 1.002 1.012; }
}
@keyframes pumpurr-capsule-bob {
  0%, 100% { translate: 0 0; }
  50% { translate: 0 -4px; }
}
@keyframes pumpurr-capsule-turn {
  0%, 100% { rotate: y -9deg; }
  50% { rotate: y 13deg; }
}
@keyframes pumpurr-reward-transit {
  0% { translate: 0 0; opacity: 0; }
  12% { opacity: 1; }
  82% { opacity: 1; }
  100% { translate: var(--flow-travel, 0px) 0; opacity: 0; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .alive-motion,.hero-cat { animation: none !important; rotate: none !important; translate: none !important; scale: none !important; transition: none !important; will-change: auto !important; }
  body.alive-ready [data-reveal] { opacity: 1; translate: none; transition: none; }
  .roadmap-steps li img { translate: none !important; transition: none !important; }
}

/* paw-cursor.css */
/* The pointing fingertip is the hotspot. Both images share a registered palm. */
@media (hover: hover) and (pointer: fine) {
  html, body, body * {
    cursor: url("assets/rounded-paw-cursor-native.png") 15 4, auto !important;
  }
  dialog::backdrop { cursor: url("assets/rounded-paw-cursor-native.png") 15 4, auto !important; }
  html.paw-cursor-active, html.paw-cursor-active body, html.paw-cursor-active body * {
    cursor: none !important;
  }
  html.paw-entry-pending, html.paw-entry-pending body, html.paw-entry-pending body *,
  html.paw-entry-active, html.paw-entry-active body, html.paw-entry-active body * {
    cursor: url("assets/rounded-paw-cursor-native.png") 15 4, auto !important;
  }
  body input:not([type=button]):not([type=submit]):not([type=reset]):not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]),
  body textarea, body [contenteditable]:not([contenteditable=false]),
  body [contenteditable]:not([contenteditable=false]) *,
  html.paw-cursor-active body textarea,
  html.paw-cursor-active body [contenteditable]:not([contenteditable=false]),
  html.paw-cursor-active body [contenteditable]:not([contenteditable=false]) * {
    cursor: text !important;
  }
}
.pumpurr-cursor {
  position: fixed; left: 0; top: 0; width: 42px; height: 42px;
  z-index: 2147483647; pointer-events: none; visibility: hidden;
  filter: drop-shadow(0 1px 1px #002d2340);
}
.pumpurr-cursor.is-visible { visibility: visible; }
.pumpurr-cursor .cursor-paw {
  position: relative; display: block; width: 100%; height: 100%;
  transform: translate(-31%, -8%); isolation: isolate;
  user-select: none; -webkit-user-drag: none;
}
.pumpurr-cursor .cursor-paw img {
  position: absolute; inset: 0; display: block; width: 100%; height: 100%; object-fit: contain;
  user-select: none; -webkit-user-drag: none;
  transition: opacity .09s ease-out;
  mix-blend-mode: plus-lighter;
}
.pumpurr-cursor .cursor-paw-rest { opacity: 1; }
.pumpurr-cursor .cursor-paw-press { opacity: 0; }
.pumpurr-cursor.is-pressed .cursor-paw-rest { opacity: 0; transition-duration: .045s; }
.pumpurr-cursor.is-pressed .cursor-paw-press { opacity: 1; transition-duration: .045s; }
@media (prefers-reduced-motion: reduce) {
  .pumpurr-cursor .cursor-paw img { transition: none; }
}
.motion-paused .pumpurr-cursor .cursor-paw img { transition: none; }
@media (hover: none), (pointer: coarse) { .pumpurr-cursor { display: none; } }

/* ambient-paws.css */
/* The last wandering-paw treatment, restored to the current page layout. */
#main { position:relative; isolation:isolate; }
.ambient-paws { position:absolute; inset:0; z-index:-1; overflow:hidden; contain:strict; pointer-events:none; user-select:none; }
.ambient-trail { position:absolute; inset:0; pointer-events:none; }
.ambient-paw { position:absolute; display:block; opacity:0; background:#d3f8c5; -webkit-mask:url('assets/cat-paw.svg') center/contain no-repeat; mask:url('assets/cat-paw.svg') center/contain no-repeat; animation:ambient-paw-step 2.6s ease-out both; pointer-events:none; }
@keyframes ambient-paw-step {
  0% { opacity:0; transform:rotate(var(--step-angle)) scale(.87); }
  8% { opacity:.36; transform:rotate(var(--step-angle)) scale(1); }
  50% { opacity:.3; }
  100% { opacity:0; transform:rotate(var(--step-angle)) scale(1); }
}
.motion-paused .ambient-paws,.page-hidden .ambient-paws,.alive-page-hidden .ambient-paws,.alive-blocked .ambient-paws { display:none; }
@media(prefers-reduced-motion:reduce) {
  .ambient-paws { display:none; }
  .ambient-paw { animation:none; }
}

/* official-bar.css */
/* The official links sit in one quiet, bevelled strip below the hero. */
.official-action-bar {
  width:min(100%,1120px);
  margin:12px auto 0;
  padding:20px 25px 24px;
  display:grid;
  grid-template-columns:minmax(0,1fr) 136px 216px 184px;
  gap:18px;
  align-items:end;
  position:relative;
  border:1px solid #c0e9b936;
  border-radius:29px;
  background:linear-gradient(155deg,#a3c79922,#718d7614 58%,#123e2b3b);
  box-shadow:inset 0 2px 2px #d6efc814,inset 0 -2px 2px #173b2a24,0 10px 22px #002d2126;
  color:#f0f8e7;
  scroll-margin-top:30px;
}
.action-contract { min-width:0; }
.action-contract-label {
  display:block;
  margin:0 0 8px;
  color:#d3e8c9;
  font-size:13px;
  font-weight:600;
  line-height:1.2;
}
.action-contract-field {
  min-width:0;
  height:44px;
  display:flex;
  align-items:center;
  border:1px solid #bbdfb327;
  border-radius:13px;
  background:linear-gradient(180deg,#9cbb9261,#93b18c40);
  box-shadow:inset 0 1px 3px #264a3026,0 1px 1px #d6f4c51c;
  overflow:hidden;
}
.action-contract-value {
  flex:1;
  min-width:0;
  padding:0 13px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:13px;
  font-weight:500;
  letter-spacing:-.025em;
  user-select:all;
  line-height:1.4;
}
.action-copy-icon {
  display:grid;
  place-items:center;
  flex:0 0 44px;
  align-self:stretch;
  padding:0;
  background:#d2edc417;
  border-left:1px solid #d4edc415;
  color:#ebf5df;
  transition:background .18s;
}
.action-copy-icon .icon { width:24px; height:24px; }
.official-action {
  display:flex;
  justify-content:center;
  align-items:center;
  gap:12px;
  height:52px;
  min-width:0;
  padding:0 18px;
  margin:0;
  border-radius:999px;
  font-size:15px;
  font-weight:700;
  line-height:1.2;
  white-space:nowrap;
  text-align:center;
  transition:transform .18s,filter .18s,box-shadow .18s;
}
.action-copy {
  color:#f0f9e7;
  border:2px solid #bbe7ad;
  background:linear-gradient(180deg,#8cbf7f,#6a9d60 56%,#527f4b);
  box-shadow:inset 0 2px 3px #e6ffd391,inset 0 -2px 2px #396e3960,0 3px 5px #123e2940,0 0 0 1px #add39b30;
  font-size:18px;
}
.action-buy {
  color:#193f2a;
  border:1px solid #d9f5d2;
  background:linear-gradient(180deg,#efffec,#dbf4d6 53%,#c5e7bd);
  box-shadow:inset 0 2px 2px #ffffffb3,inset 0 -2px 2px #a5c69b57,0 3px 5px #113c2b33;
}
.action-buy .icon {
  width:28px;
  height:28px;
  filter:drop-shadow(0 1px 1px #0a3f2550);
}
.action-x {
  color:#f1f6ea;
  border:1px solid #64805b48;
  background:linear-gradient(180deg,#2c4930,#203c29 56%,#172f22);
  box-shadow:inset 0 2px 2px #b6c9a320,inset 0 -2px 2px #091f2480,0 3px 5px #10332740;
}
.action-x .icon { width:25px; height:25px; }
.official-action:not(:disabled):not([aria-disabled=true]):hover { transform:translateY(-2px); filter:brightness(1.08); }
.official-action:not(:disabled):not([aria-disabled=true]):active { transform:translateY(1px); }
.action-copy-icon:not(:disabled):hover { background:#d2edc433; }
.action-copy.is-copied { background:linear-gradient(#8fc681,#4a864f); }
.official-action-bar :focus-visible { outline:2px solid #f9ffe5; outline-offset:4px; }
.action-copy-icon:focus-visible { outline-offset:-4px; }
@media(max-width:1100px) {
  .official-action-bar {
    grid-template-columns:1fr 1.4fr 1.2fr;
    gap:16px;
    padding:20px;
  }
  .action-contract { grid-column:1/-1; }
}
@media(max-width:760px) {
  .official-action-bar { width:calc(100% - 32px); max-width:600px; }
}
@media(max-width:600px) {
  .official-action-bar {
    margin-top:5px;
    padding:18px;
    border-radius:24px;
    grid-template-columns:1fr 1fr;
    gap:12px;
  }
  .action-contract-label { font-size:12px; margin-bottom:9px; }
  .action-contract-field { height:46px; }
  .action-contract-value { padding:0 10px; font-size:12px; }
  .action-copy-icon { flex-basis:46px; }
  .official-action { height:48px; padding:0 12px; gap:9px; font-size:14px; }
  .action-copy { grid-column:1; font-size:16px; }
  .action-x { grid-column:2; grid-row:2; }
  .action-buy { grid-column:1/-1; }
  .action-buy .icon { width:25px; height:25px; }
  .action-x .icon { width:21px; height:21px; }
}
@media(max-width:360px) {
  .official-action { padding:0 10px; gap:7px; font-size:12px; }
  .action-copy { font-size:15px; }
  .action-x .icon { width:18px; height:18px; }
}
@media(prefers-reduced-motion:reduce) {
  .official-action,.action-copy-icon { transition:none; }
}

/* stickers.css */
/* Two opposed sticker streams, on the site's continuous emerald background. */
.stickers-section {
  width:min(92%,1120px);
  margin:20px auto 70px;
  padding:45px 0;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,500px);
  align-items:center;
  gap:80px;
  scroll-margin-top:35px;
}
.stickers-copy h2 {
  font-family:Body,Arial,sans-serif;
  font-size:clamp(36px,3.55vw,52px);
  line-height:1.08;
  letter-spacing:-.045em;
  font-weight:700;
  color:#edffef;
}
.stickers-copy p {
  margin:24px 0 29px;
  color:#c0dec9;
  font-size:16px;
  line-height:1.6;
}
.stickers-cta {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:11px;
  min-height:48px;
  padding:0 23px;
  border:1px solid #d8f6ce;
  border-radius:15px;
  background:linear-gradient(180deg,#ebffe4,#c7edc5);
  box-shadow:inset 0 2px 1px #ffffff9c,inset 0 -2px 1px #8ebd9366,0 4px 8px #07372c38;
  color:#174a34;
  font-size:14px;
  font-weight:700;
  transition:translate .2s,box-shadow .2s;
}
.stickers-cta .icon { width:19px; height:19px; }
.stickers-cta:hover { translate:0 -2px; box-shadow:inset 0 2px 1px #ffffff9c,inset 0 -2px 1px #8ebd9366,0 7px 13px #07372c38; }
.stickers-cta:active { translate:0 1px; }
.stickers-cta:focus-visible { outline:2px solid #f5ffdf; outline-offset:5px; }
.sticker-gallery {
  height:530px;
  min-width:0;
  position:relative;
  border-radius:22px;
}
.sticker-gallery:focus-visible { outline:2px solid #c0edc4; outline-offset:7px; }
.sticker-window {
  --sticker-gap:18px;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:var(--sticker-gap);
  height:100%;
  overflow:hidden;
  mask-image:linear-gradient(to bottom,transparent,#000 10%,#000 90%,transparent);
  -webkit-mask-image:linear-gradient(to bottom,transparent,#000 10%,#000 90%,transparent);
}
.sticker-column { min-width:0; }
.sticker-track { display:flex; flex-direction:column; }
.sticker-sequence {
  display:flex;
  flex-direction:column;
  gap:var(--sticker-gap);
  padding:0 0 var(--sticker-gap);
  margin:0;
  list-style:none;
  flex-shrink:0;
}
.sticker-tile {
  aspect-ratio:1;
  width:100%;
  flex-shrink:0;
  position:relative;
  border-radius:20px;
  overflow:hidden;
  background:#b9d9bd;
  box-shadow:0 5px 10px #002f261e;
}
.sticker-tile::after {
  content:'';
  position:absolute;
  inset:0;
  border-radius:inherit;
  box-shadow:inset 0 0 0 1px #f8fff43d;
  pointer-events:none;
}
.sticker-tile img {
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
  user-select:none;
}
.sticker-gallery.is-ready .sticker-track {
  animation:pumpurr-sticker-stream 40s linear infinite;
  animation-delay:-2s;
  animation-play-state:paused;
  will-change:auto;
}
.sticker-gallery.is-ready .sticker-column-down .sticker-track {
  animation-duration:46s;
  animation-direction:reverse;
  animation-delay:-7s;
}
@media(prefers-reduced-motion:no-preference) {
  .sticker-gallery.is-ready.is-in-view:not(.is-page-hidden):not(:focus-visible) .sticker-track { animation-play-state:running; will-change:transform; }
}
.sticker-gallery.is-ready.is-page-hidden .sticker-track,
.sticker-gallery.is-ready:focus-visible .sticker-track { animation-play-state:paused; will-change:auto; }
/* Keyboard visitors can inspect every tile while the streams are paused. */
.sticker-gallery.is-ready:focus-visible .sticker-track { animation:none; will-change:auto; }
.sticker-gallery:focus-visible .sticker-sequence[aria-hidden=true] { display:none; }
.sticker-gallery:focus-visible .sticker-window {
  overflow-y:auto;
  mask-image:none;
  -webkit-mask-image:none;
  scrollbar-width:thin;
  scrollbar-color:#b5d9ba transparent;
}
@keyframes pumpurr-sticker-stream {
  from { transform:translateY(0); }
  to { transform:translateY(-50%); }
}
@media(max-width:1100px) and (min-width:761px) {
  .stickers-section { grid-template-columns:minmax(0,1fr) minmax(0,46%); gap:42px; }
  .stickers-copy h2 { font-size:clamp(32px,3.7vw,41px); }
  .sticker-gallery { height:460px; }
  .stickers-copy p { font-size:15px; }
  .sticker-window { --sticker-gap:14px; }
}
@media(max-width:760px) {
  .stickers-section {
    width:calc(100% - 40px);
    max-width:500px;
    grid-template-columns:1fr;
    gap:36px;
    margin:10px auto 35px;
    padding:30px 0;
  }
  .stickers-copy { text-align:center; }
  .stickers-copy h2 { font-size:clamp(31px,7.9vw,40px); line-height:1.1; }
  .stickers-copy p { margin:18px 0 22px; font-size:14px; }
  .stickers-cta { min-height:48px; font-size:13px; padding:0 21px; }
  .sticker-gallery { height:clamp(340px,105vw,480px); }
  .sticker-window { --sticker-gap:12px; }
  .sticker-tile { border-radius:16px; }
}
@media(prefers-reduced-motion:reduce) {
  .sticker-gallery.is-ready .sticker-track { animation:none; will-change:auto; }
  .sticker-gallery .sticker-sequence[aria-hidden=true] { display:none; }
  .sticker-window { overflow-y:auto; scrollbar-width:thin; scrollbar-color:#b5d9ba transparent; }
  .stickers-cta { transition:none; }
}

/* emerald-panels.css */
/* Native glass panels: the decorative art never replaces live text or controls. */
.skip-link:not(:focus-visible) { opacity:0; pointer-events:none; }
.emerald-panel-world { width:min(100%,1120px); margin:38px auto 16px; }
.emerald-rewards, .emerald-tokenomics { position:relative; scroll-margin-top:34px; }
.emerald-rewards {
  isolation:isolate;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);
  align-items:center;
  gap:42px;
  padding:105px 45px 38px;
  min-height:475px;
}
.emerald-rewards-frame { position:absolute; inset:0; width:100%; height:100%; z-index:-1; pointer-events:none; filter:drop-shadow(0 14px 20px #002d2230); }
.emerald-rewards-frame img { width:100%; height:100%; }
.emerald-kicker { margin:0 0 23px; font-size:12px; font-weight:700; letter-spacing:.37em; line-height:1.4; color:#edfff2; }
.emerald-rewards-title { font-size:clamp(32px,3.55vw,49px); line-height:1.12; letter-spacing:-.04em; font-weight:700; color:#e1ffed; text-shadow:0 3px 1px #003c2442; }
.emerald-description-row > p { margin:21px 0 0; max-width:36ch; font-size:18px; line-height:1.5; color:#ddf3e2; }
.emerald-hold-note {
  position:absolute; top:65px; right:31px; width:136px; padding:24px 9px 14px;
  transform:rotate(11deg); z-index:2;
  background:linear-gradient(120deg,#fff8d7,#f6e4a9 80%);
  border:2px solid #fff7d7; border-radius:3px;
  box-shadow:inset 0 0 15px #b59b6030,0 9px 11px #002f2470;
  text-align:center; color:#064630; font-family:Hand,'Comic Sans MS',cursive;
  font-size:26px; font-weight:700; line-height:1.02; letter-spacing:-.035em;
}
.emerald-hold-note::before {
  content:''; position:absolute; top:-12px; left:calc(50% - 13px); width:26px; height:26px;
  border-radius:50%; background:radial-gradient(circle at 32% 20%,#eaffb3 0,#71c653 23%,#168c45 48%,#045428 85%);
  box-shadow:inset 0 1px 1px #d0ffa3,3px 3px 3px #12432766;
}
.emerald-hold-note .icon { width:25px; height:25px; margin:8px auto 0; fill:none; stroke:currentColor; stroke-width:2; }
.emerald-reward-console {
  padding:26px 24px 23px; min-width:0; border:1px solid #9bd9ad66; border-radius:34px;
  background:linear-gradient(145deg,#72b68a1c,#003f2c42);
  box-shadow:inset 0 1px 1px #e6ffe332,0 15px 20px #002d2938;
}
.emerald-reward-summary { display:flex; align-items:center; gap:20px; min-height:100px; padding-right:62px; }
.emerald-paw-badge {
  width:76px; height:76px; flex-shrink:0; display:grid; place-items:center; border:1px solid #a6eab679; border-radius:50%;
  background:radial-gradient(ellipse at 35% 10%,#b9f1a96b,transparent 55%),linear-gradient(145deg,#3a8b5c,#075534);
  box-shadow:inset 0 2px 3px #dbffbd7d,inset 0 -4px 4px #003e3066,0 8px 10px #002d283d;
}
.emerald-paw-badge .icon { width:40px; height:40px; color:#f4ffe9; filter:drop-shadow(0 3px 2px #023c2580); }
.emerald-reward-value { min-width:0; }
.emerald-reward-value > p { font-size:10px; letter-spacing:.35em; font-weight:700; margin:0 0 14px; white-space:nowrap; }
.emerald-amount-line { display:flex; align-items:baseline; gap:9px; font-size:35px; font-weight:700; line-height:1.1; letter-spacing:-.045em; color:#dfffea; white-space:nowrap; }
.emerald-amount-line output:empty::before { content:'—'; }
.emerald-rewards #rewards-form { margin:21px 0 0; }
.emerald-wallet-field { position:relative; }
.emerald-wallet-field > .icon { position:absolute; left:21px; top:50%; translate:0 -50%; width:25px; height:25px; color:#f0fff2; pointer-events:none; }
.emerald-rewards #rewards-wallet {
  position:static; display:block; width:100%; min-width:0; height:58px; min-height:48px;
  margin:0; padding:0 16px 0 58px; border:1px solid #d3f2d742; border-radius:19px;
  background:linear-gradient(145deg,#c2e9cb22,#a2dbb41a); color:#f1fff3;
  box-shadow:inset 0 1px 2px #d0ffd122; font-size:14px; line-height:1.3; letter-spacing:0; color-scheme:dark;
  outline-offset:4px;
}
.emerald-rewards #rewards-wallet::placeholder { color:#d1e4d7; opacity:1; }
.emerald-rewards #rewards-wallet:focus-visible { outline:2px solid #d0ffe1; border-color:#b1f6cc; }
.emerald-rewards #rewards-wallet[aria-invalid=true] { border-color:#ffc2a7; outline:2px solid #ffc2a7; }
.emerald-check-button {
  width:100%; min-height:64px; display:flex; justify-content:center; align-items:center; gap:16px; margin:20px 0 0; padding:11px 15px;
  border:1px solid #aafbd6; border-radius:999px; color:#f6fff8; font-size:21px; font-weight:700; line-height:1.2;
  background:radial-gradient(ellipse 70% 24px at 50% 0,#eaffdbb8,transparent),linear-gradient(180deg,#a1ffc0 0,#44d98c 22%,#1ab374 43%,#00814f 100%);
  box-shadow:inset 0 3px 2px #fff9,inset 0 -3px 3px #39d9918a,0 7px 13px #002e2a66;
  text-shadow:0 2px 2px #00653d70; transition:filter .18s,translate .18s;
}
.emerald-check-button .icon { width:33px; height:33px; filter:drop-shadow(0 2px 2px #00653d70); }
.emerald-check-button:hover { filter:brightness(1.09); }
.emerald-check-button:active { translate:0 2px; }
.emerald-check-button:focus-visible { outline:2px solid #efffe8; outline-offset:5px; }
.emerald-rewards-status { margin:14px 2px 0; color:#daeee0; font-size:12px; line-height:1.5; }
.emerald-rewards-status:empty { display:none; }
.emerald-rewards-status[data-state=error] { color:#ffdbc5; }
.emerald-tokenomics {
  margin-top:31px; padding:35px 26px 30px; border:1px solid #a0ddb18a; border-radius:39px;
  background:radial-gradient(ellipse 85% 45% at 50% 0,#84d2a434,transparent),linear-gradient(130deg,#65ba8530,#00714933);
  box-shadow:inset 0 2px 2px #e5ffdb4a,inset 0 -1px 1px #aaffc422,0 15px 25px #002f2430;
}
.emerald-tokenomics .emerald-kicker { margin:0 13px 19px; }
.emerald-tokenomics-header { display:flex; align-items:center; justify-content:space-between; gap:28px; margin:0 13px 28px; }
.emerald-tokenomics-header h2 { display:flex; align-items:center; gap:15px; font-size:clamp(28px,3.2vw,44px); line-height:1.12; letter-spacing:-.035em; color:#e0ffec; }
.emerald-tokenomics-header h2 .icon { width:43px; height:43px; color:#bdffdb; filter:drop-shadow(0 4px 2px #003d2d70); }
.emerald-tokenomics-header > p { max-width:26ch; font-size:16px; line-height:1.5; color:#e1f5e7; }
.emerald-allocations { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:13px; }
.emerald-allocation {
  min-width:0; padding:19px 13px 23px; border:1px solid #a3dcb15b; border-radius:34px; text-align:center;
  background:linear-gradient(145deg,#d3f8d81c,#074f3733);
  box-shadow:inset 0 1px 1px #e0ffd22e,0 14px 16px #003a292e;
}
.emerald-allocation img { width:116px; height:116px; object-fit:contain; margin:0 auto 14px; filter:drop-shadow(0 7px 7px #002d2855); }
.emerald-percentage { display:block; font-size:42px; font-weight:700; line-height:1; letter-spacing:-.045em; color:var(--medal-color); text-shadow:0 3px 2px #003c2b8a; }
.emerald-allocation h3 { margin:9px 0 13px; font-size:22px; line-height:1.2; font-weight:700; letter-spacing:-.025em; }
.emerald-allocation > p { font-size:15px; line-height:1.45; color:#e4f3e7; }
.allocation-meow { --medal-color:#ffb36e; }
.allocation-cuteness { --medal-color:#ffa5c5; }
.allocation-zoomies { --medal-color:#caffbe; }
.allocation-catnip { --medal-color:#d1a8ff; }
.allocation-naps { --medal-color:#ffe189; }
@media(min-width:761px) and (max-width:1100px) {
  .emerald-rewards { gap:27px; padding:95px 30px 32px; min-height:440px; }
  .emerald-rewards-title { font-size:clamp(31px,3.8vw,42px); }
  .emerald-description-row > p { font-size:16px; }
  .emerald-reward-console { padding:22px 18px; border-radius:29px; }
  .emerald-reward-summary { gap:13px; padding-right:45px; }
  .emerald-paw-badge { width:60px; height:60px; }
  .emerald-paw-badge .icon { width:33px; height:33px; }
  .emerald-amount-line { font-size:28px; }
  .emerald-reward-value > p { font-size:9px; letter-spacing:.25em; }
  .emerald-hold-note { width:110px; font-size:22px; top:62px; right:26px; }
  .emerald-check-button { font-size:18px; min-height:59px; gap:12px; }
  .emerald-rewards #rewards-wallet { font-size:13px; padding-left:49px; }
  .emerald-wallet-field > .icon { width:21px; height:21px; left:17px; }
  .emerald-tokenomics-header { gap:22px; margin:0 7px 24px; align-items:flex-end; }
  .emerald-tokenomics-header h2 { font-size:32px; }
  .emerald-tokenomics-header h2 .icon { width:35px; height:35px; }
  .emerald-tokenomics-header > p { font-size:14px; max-width:25ch; }
  .emerald-tokenomics { padding:31px 20px 26px; }
  .emerald-allocation { padding:17px 10px 20px; border-radius:28px; }
  .emerald-allocation img { width:96px; height:96px; margin-bottom:11px; }
  .emerald-percentage { font-size:36px; }
  .emerald-allocation h3 { font-size:19px; }
  .emerald-allocation > p { font-size:13px; }
}
@media(max-width:760px) {
  .emerald-panel-world { width:calc(100% - 32px); max-width:600px; margin-top:25px; }
  .emerald-rewards { grid-template-columns:1fr; gap:28px; padding:76px 23px 29px; min-height:0; }
  .emerald-kicker { font-size:10px; margin-bottom:17px; letter-spacing:.33em; }
  .emerald-rewards-title { font-size:clamp(30px,7.7vw,42px); }
  .emerald-description-row { display:flex; align-items:center; gap:18px; margin-top:22px; }
  .emerald-description-row > p { margin:0; max-width:26ch; font-size:14px; }
  .emerald-hold-note { position:relative; inset:auto; flex-shrink:0; width:87px; padding:19px 5px 9px; margin:0 2px 0 auto; font-size:18px; transform:rotate(9deg); }
  .emerald-hold-note::before { width:20px; height:20px; top:-10px; left:calc(50% - 10px); }
  .emerald-hold-note .icon { width:18px; height:18px; margin-top:5px; }
  .emerald-reward-console { padding:21px 17px; border-radius:25px; }
  .emerald-reward-summary { min-height:71px; gap:15px; padding-right:0; }
  .emerald-paw-badge { width:60px; height:60px; }
  .emerald-paw-badge .icon { width:34px; height:34px; }
  .emerald-reward-value > p { font-size:9px; margin-bottom:10px; letter-spacing:.25em; }
  .emerald-amount-line { font-size:29px; gap:8px; }
  .emerald-rewards #rewards-form { margin-top:20px; }
  .emerald-rewards #rewards-wallet { height:55px; font-size:16px; padding-left:45px; border-radius:15px; }
  .emerald-wallet-field > .icon { width:21px; height:21px; left:14px; }
  .emerald-check-button { min-height:57px; font-size:18px; gap:11px; margin-top:16px; }
  .emerald-check-button .icon { width:29px; height:29px; }
  .emerald-tokenomics { padding:28px 19px 24px; border-radius:29px; margin-top:23px; }
  .emerald-tokenomics .emerald-kicker { margin:0 3px 16px; }
  .emerald-tokenomics-header { display:block; margin:0 3px 23px; }
  .emerald-tokenomics-header h2 { font-size:clamp(27px,6.7vw,38px); max-width:14ch; gap:11px; }
  .emerald-tokenomics-header h2 .icon { width:35px; height:35px; }
  .emerald-tokenomics-header > p { max-width:31ch; margin-top:17px; font-size:14px; }
  .emerald-allocations { grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px 12px; }
  .emerald-allocation { padding:17px 11px 21px; border-radius:25px; }
  .emerald-allocation:last-child { grid-column:1 / -1; width:calc(50% - 6px); justify-self:center; }
  .emerald-allocation img { width:105px; height:105px; max-width:100%; margin-bottom:11px; }
  .emerald-percentage { font-size:38px; }
  .emerald-allocation h3 { font-size:20px; margin:9px 0 12px; }
  .emerald-allocation > p { font-size:13px; }
}
@media(max-width:380px) {
  .emerald-rewards { padding-left:18px; padding-right:18px; }
  .emerald-rewards-title { font-size:29px; }
  .emerald-description-row { gap:13px; }
  .emerald-description-row > p { font-size:13px; }
  .emerald-hold-note { width:76px; font-size:16px; }
  .emerald-reward-console { padding:19px 13px; }
  .emerald-reward-summary { gap:12px; }
  .emerald-paw-badge { width:53px; height:53px; }
  .emerald-amount-line { font-size:27px; }
  .emerald-check-button { font-size:17px; gap:9px; }
  .emerald-tokenomics { padding-left:15px; padding-right:15px; }
  .emerald-tokenomics-header h2 { font-size:27px; }
  .emerald-allocation { padding-left:8px; padding-right:8px; }
  .emerald-allocation img { width:92px; height:92px; }
  .emerald-percentage { font-size:34px; }
  .emerald-allocation h3 { font-size:18px; }
  .emerald-allocation > p { font-size:12px; }
}
@media(prefers-reduced-motion:no-preference) {
  .emerald-reward-console.is-checked .emerald-check-button { animation:emerald-reward-check .65s ease; }
  @keyframes emerald-reward-check { 40% { filter:brightness(1.16); } }
}

/* rewards-atelier.css */
/* An illustrated paper composition, with native wallet controls. */
.rewards-atelier { position:relative; isolation:isolate; display:grid; grid-template-columns:minmax(0,1.08fr) minmax(0,1fr); align-items:center; gap:66px; padding:54px 65px 38px; min-height:590px; border:1px solid #fff9da; border-radius:32px; color:#163e2c; background:radial-gradient(ellipse at 0 0,#faffeb,transparent 65%),#f3eedb; box-shadow:0 18px 34px #002d2447,inset 0 1px 1px #fff; scroll-margin-top:28px; }
.rewards-atelier::before { content:''; position:absolute; inset:0; z-index:-1; pointer-events:none; border-radius:inherit; opacity:.13; background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='grain'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.68' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23grain)' opacity='.45'/%3E%3C/svg%3E"); }
.atelier-copy { position:relative; min-width:0; }
.atelier-title { font-family:Display,Impact,sans-serif; font-size:64px; line-height:1.02; font-weight:800; letter-spacing:-.015em; color:#173e29; }
.atelier-title > span { color:#267b4d; }
.atelier-description { margin:20px 0 0; max-width:35ch; color:#4e6450; font-size:15px; line-height:1.55; }
.atelier-illustration { position:relative; margin:12px -16px -4px; }
.atelier-illustration img { width:100%; height:292px; object-fit:contain; filter:drop-shadow(0 7px 5px #6072441a); }
.atelier-receipt-wrap { position:relative; min-width:0; padding:5px 0 24px; }
.atelier-receipt-wrap::before { content:''; position:absolute; inset:11px -13px 15px -7px; z-index:-1; border-radius:19px; background:#b8d6a8; transform:rotate(-3deg); box-shadow:0 7px 14px #4360411a; }
.atelier-receipt { position:relative; isolation:isolate; min-width:0; padding:32px 31px 35px; border:1px solid #ded8bb; border-radius:12px 12px 2px 2px; background:#fffaf0; box-shadow:0 8px 14px #57623d20; }
.atelier-receipt::after { content:''; position:absolute; left:-1px; right:-1px; top:calc(100% - 1px); height:11px; background:linear-gradient(135deg,#fffaf0 50%,transparent 50%) 0 0/16px 16px repeat-x,linear-gradient(225deg,#fffaf0 50%,transparent 50%) 0 0/16px 16px repeat-x; }
.atelier-receipt-top { display:flex; justify-content:space-between; align-items:center; gap:12px; }
.atelier-receipt-top > p { color:#52634f; font-size:10px; font-weight:700; letter-spacing:.2em; line-height:1.4; }
.atelier-reward-summary { margin-top:25px; }
.atelier-amount-line { display:flex; align-items:baseline; gap:12px; color:#184832; font-family:Display,Impact,sans-serif; font-size:61px; line-height:1; letter-spacing:-.02em; white-space:nowrap; }
.atelier-amount-line output:empty::before { content:'—'; }
.atelier-reward-summary > p { margin-top:11px; color:#5d6f55; font-size:12px; line-height:1.5; }
.atelier-perforation { display:block; border-top:1px dashed #bfc4a7; margin:25px -32px 23px; position:relative; }
.atelier-perforation::before,.atelier-perforation::after { content:''; position:absolute; width:14px; height:14px; border-radius:50%; background:#b8d6a8; top:-7px; }
.atelier-perforation::before { left:-7px; }
.atelier-perforation::after { right:-7px; }
.rewards-atelier #rewards-form { margin:0; }
.atelier-wallet-label { display:block; font-size:12px; line-height:1.5; font-weight:600; color:#314d38; margin-bottom:9px; }
.atelier-wallet-field { position:relative; }
.atelier-wallet-field > .icon { position:absolute; left:16px; top:50%; translate:0 -50%; width:22px; height:22px; color:#61725a; pointer-events:none; }
.rewards-atelier #rewards-wallet { position:static; display:block; width:100%; min-width:0; height:57px; min-height:48px; margin:0; padding:0 13px 0 49px; border:1px solid #c2c8af; border-radius:13px; background:#f5f1e4; color:#244a33; font-size:13px; line-height:1.3; letter-spacing:0; box-shadow:inset 0 1px 2px #6d7b5410; color-scheme:light; outline-offset:4px; }
.rewards-atelier #rewards-wallet::placeholder { color:#5d7359; opacity:1; }
.rewards-atelier #rewards-wallet:focus-visible { border-color:#397c48; outline:2px solid #397c48; }
.rewards-atelier #rewards-wallet[aria-invalid=true] { border-color:#a44633; outline:2px solid #a44633; }
.atelier-check-button { display:flex; align-items:center; justify-content:space-between; gap:15px; width:100%; min-height:57px; margin-top:17px; padding:14px 20px; border:1px solid #18492f; border-radius:13px; background:#28764d; box-shadow:0 4px 0 #164830; color:#f5f8df; font-size:17px; line-height:1.2; font-weight:700; transition:background .15s,translate .15s,box-shadow .15s; }
.atelier-check-button .icon { width:22px; height:22px; }
.atelier-check-button:hover { background:#34885a; }
.atelier-check-button:active { translate:0 3px; box-shadow:0 1px 0 #164830; }
.atelier-check-button:focus-visible { outline:2px solid #275d34; outline-offset:6px; }
.atelier-status { color:#55714f; font-size:12px; line-height:1.5; margin:18px 1px 0; }
.atelier-status:empty { display:none; }
.atelier-status[data-state=error] { color:#9e442f; }
.atelier-wallet-help { margin:19px 0 0; color:#5d6f55; font-size:11px; line-height:1.5; }
.atelier-receipt-bottom { display:flex; justify-content:space-between; align-items:center; gap:10px; margin-top:24px; padding-top:18px; border-top:1px solid #e3e0cc; color:#52674b; font-size:10px; font-weight:600; letter-spacing:.08em; line-height:1.3; }
.atelier-receipt-bottom .icon { width:15px; height:15px; color:#d88664; }
/* The filmed paper includes its fixed pin; the original remains a still fallback. */
.atelier-paper-tab { position:absolute; z-index:2; top:-43px; right:-18px; width:174px; transform:rotate(3deg); pointer-events:none; }
.atelier-paper-sheet { display:block; width:100%; height:auto; overflow:visible; filter:drop-shadow(1px 4px 3px #62523230); transform-origin:54% 17%; }
.atelier-paper-sheet > image { filter:none; }
.atelier-paper-film { filter:drop-shadow(2px 6px 3px #4d463b38); }
.atelier-paper-tab.has-paper-film .atelier-paper-sheet,
.atelier-paper-tab.has-paper-film .atelier-paper-pin { visibility:hidden; }
.atelier-paper-sheet.is-paper-still > image { filter:none; }
.atelier-paper-pin { position:absolute; z-index:3; top:9%; left:54%; width:17px; height:20px; transform:translateX(-50%) rotate(12deg); border:1px solid #294127; border-radius:52% 48% 46% 48%; background:radial-gradient(ellipse at 33% 23%,#a2b77b 0 7%,#638855 19%,#355a34 48%,#17391f 79%,#122e18 100%); box-shadow:0 2px 0 #17351e,1px 5px 3px #554b3447; }
.atelier-paper-pin::after { content:''; position:absolute; z-index:-1; left:4px; top:12px; width:11px; height:10px; border-radius:50%; background:#274725; box-shadow:1px 3px 2px #584c3545; }
@media(min-width:761px) and (max-width:1100px) {
  .rewards-atelier { gap:36px; padding:44px 42px 29px; min-height:545px; }
  .atelier-title { font-size:clamp(44px,5.4vw,57px); }
  .atelier-description { font-size:14px; max-width:32ch; }
  .atelier-illustration { margin:10px -13px -3px; }
  .atelier-illustration img { height:250px; }
  .atelier-receipt { padding:28px 24px 29px; }
  .atelier-amount-line { font-size:52px; }
  .atelier-perforation { margin-left:-25px; margin-right:-25px; }
  .atelier-wallet-label { font-size:11px; }
  .rewards-atelier #rewards-wallet { font-size:12px; padding-left:41px; height:54px; }
  .atelier-wallet-field > .icon { left:12px; width:19px; height:19px; }
  .atelier-check-button { font-size:16px; padding:14px 15px; min-height:54px; }
  .atelier-paper-tab { right:-14px; top:-41px; width:148px; }
  .atelier-receipt-bottom { font-size:9px; gap:7px; letter-spacing:.04em; }
}
@media(max-width:760px) {
  .rewards-atelier { grid-template-columns:1fr; gap:34px; padding:33px 25px 34px; min-height:0; border-radius:25px; }
  .atelier-title { font-size:clamp(42px,12vw,64px); }
  .atelier-description { max-width:35ch; margin-top:18px; font-size:14px; }
  .atelier-illustration { margin:7px -15px -15px; }
  .atelier-illustration img { height:230px; }
  .atelier-receipt-wrap { margin:6px 4px 0; padding:5px 0 16px; }
  .atelier-receipt-wrap::before { inset:9px -8px 7px -7px; transform:rotate(-2.5deg); }
  .atelier-receipt { padding:27px 22px 30px; }
  .atelier-receipt-top > p { font-size:9px; }
  .atelier-reward-summary { margin-top:23px; }
  .atelier-amount-line { font-size:55px; }
  .atelier-perforation { margin:24px -23px 23px; }
  .atelier-wallet-label { font-size:11px; }
  .rewards-atelier #rewards-wallet { font-size:16px; height:56px; padding-left:41px; padding-right:10px; }
  .atelier-wallet-field > .icon { left:12px; width:19px; height:19px; }
  .atelier-check-button { min-height:56px; font-size:17px; padding:14px 16px; }
  .atelier-wallet-help { font-size:11px; }
  .atelier-receipt-bottom { font-size:9px; letter-spacing:.05em; gap:7px; }
  .atelier-paper-tab { top:-36px; right:-13px; width:144px; }
  .atelier-paper-pin { width:15px; height:17px; }
}
@media(max-width:380px) {
  .rewards-atelier { padding:30px 20px 28px; gap:31px; }
  .atelier-title { font-size:40px; }
  .atelier-description { font-size:13px; }
  .atelier-illustration img { height:210px; }
  .atelier-receipt { padding:25px 16px 27px; }
  .atelier-amount-line { font-size:49px; }
  .atelier-perforation { margin-left:-17px; margin-right:-17px; }
  .atelier-check-button { font-size:15px; padding:14px 12px; gap:8px; }
  .atelier-check-button > span { white-space:nowrap; }
  .atelier-check-button .icon { width:18px; height:18px; flex-shrink:0; }
  .atelier-receipt-bottom { font-size:9px; gap:5px; letter-spacing:0; }
}
@media(prefers-reduced-motion:no-preference) {
  .atelier-receipt.is-checked .atelier-check-button { animation:atelier-check .65s ease; }
  @keyframes atelier-check { 40% { background:#3c955e; } }
}
@media(prefers-reduced-motion:reduce) {
  .atelier-paper-sheet > image { filter:none; }
}

/* tokenomics-plush.css */
/* Centered plush tokenomics: linked notes on desktop, one touch detail on mobile. */
.tokenomics-plush { position:relative; isolation:isolate; min-height:800px; margin-top:32px; border:1px solid #b5dbc080; border-radius:32px; color:#f5f0dc; background:radial-gradient(ellipse at 50% 48%,#217a51,#0b4931 72%); box-shadow:inset 0 1px 1px #f0ffdd33,0 18px 32px #002d2429; scroll-margin-top:28px; }
.tokenomics-plush::before { content:''; position:absolute; inset:0; z-index:-1; border-radius:inherit; opacity:.04; pointer-events:none; background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='grain'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.6' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23grain)'/%3E%3C/svg%3E"); }
.plush-heading { position:absolute; inset:39px 26px auto; z-index:5; text-align:center; }
.plush-kicker { margin:0 0 15px; color:#d2e4c4; font-size:10px; line-height:1.4; font-weight:700; letter-spacing:.25em; }
.plush-heading h2 { margin:0; font-family:Display,Impact,sans-serif; font-size:54px; font-weight:800; line-height:1.05; letter-spacing:-.015em; color:#f5f0dc; }
.plush-heading h2 span { color:#e8a86b; }
.plush-intro { max-width:48ch; margin:16px auto 0; color:#d2e4c4; font-size:14px; line-height:1.55; }
.plush-art { position:absolute; z-index:3; width:44%; left:50%; top:27%; transform:translateX(-50%); min-width:0; margin:0; }
.plush-illustration { position:relative; width:100%; }
.plush-illustration img { display:block; width:100%; height:auto; }
.plush-piece-light { position:absolute; inset:0; width:100%; height:100%; overflow:visible; pointer-events:none; }
.plush-lit-piece { opacity:0; filter:drop-shadow(0 0 7px #fff3ce) drop-shadow(0 0 22px var(--piece-glow)); transition:opacity .22s ease; }
.plush-lit-piece image { filter:brightness(1.24) saturate(1.14); }
.tokenomics-plush.is-interactive .plush-lit-piece.is-active { opacity:1; }
.tokenomics-plush.is-interactive .plush-illustration.is-over-piece { cursor:pointer; }
.plush-art-share { position:absolute; translate:-50% -50%; display:flex; align-items:center; justify-content:center; min-width:70px; min-height:62px; padding:0; border:0; border-radius:50%; background:transparent; color:#683d28; font-family:Display,Impact,sans-serif; font-size:clamp(26px,3.3vw,42px); font-weight:800; line-height:1; white-space:nowrap; letter-spacing:-.01em; text-shadow:0 1px 1px #fff5; transition:transform .24s ease,background .24s ease,box-shadow .24s ease; }
.plush-art-share small { font-size:.55em; margin-left:1px; }
.plush-art-meow { left:86%; top:39%; transform:rotate(13deg); }
.plush-art-cuteness { left:69%; top:77%; color:#7b4055; transform:rotate(-12deg); }
.plush-art-zoomies { left:27%; top:71%; color:#386244; transform:rotate(12deg); }
.plush-art-catnip { left:19%; top:39%; color:#625086; transform:rotate(-12deg); }
.plush-art-naps { left:36%; top:16%; color:#76521d; transform:rotate(-12deg); }
.plush-connections { position:absolute; inset:0; width:100%; height:100%; z-index:2; overflow:visible; fill:none; stroke:#d8e7c8; stroke-width:1.3; stroke-dasharray:3 4; pointer-events:none; }
.plush-connections path { vector-effect:non-scaling-stroke; opacity:.55; transition:opacity .2s ease,stroke-width .2s ease; }
.tokenomics-plush.is-interactive .plush-art-share.is-active { text-shadow:0 1px 2px #fff8e5; }
.tokenomics-plush.is-interactive .plush-connections path.is-active { opacity:1; stroke-width:2; }
.plush-allocations { padding:0; margin:0; list-style:none; }
.plush-allocations li { position:absolute; z-index:4; isolation:isolate; width:21%; padding:8px 4px; transition:transform .24s ease; }
.plush-allocations li::before { content:''; position:absolute; inset:-6px -8px; border-radius:16px; background:#315f48; opacity:0; z-index:-1; transition:opacity .2s ease; pointer-events:none; }
.tokenomics-plush.is-interactive .plush-allocations li.is-active { transform:translateY(-4px); }
.tokenomics-plush.is-interactive .plush-allocations li.is-active::before { opacity:1; }
.plush-allocations h3 { margin:0 0 8px; font-family:Body,Arial,sans-serif; font-size:20px; line-height:1.2; font-weight:700; letter-spacing:0; color:#f5f0dc; }
.plush-note-trigger { display:flex; align-items:baseline; gap:8px; padding:0; border:0; background:transparent; color:inherit; font:inherit; text-align:left; }
.plush-allocations h3 strong { font-family:Display,Impact,sans-serif; font-size:34px; font-weight:800; line-height:1; color:var(--plush-color); white-space:nowrap; }
.plush-allocations h3 strong small { font-size:.65em; }
.plush-allocations p { max-width:22ch; margin:0; font-size:14px; line-height:1.5; color:#e0edd7; }
.plush-note-meow { right:4%; top:35%; --plush-color:#e8a86b; }
.plush-note-cuteness { right:4%; top:70%; --plush-color:#e7a7b3; }
.plush-note-zoomies { left:4%; top:72%; --plush-color:#b5d7a5; }
.plush-note-catnip { left:4%; top:47%; --plush-color:#c3afe1; }
.plush-note-naps { left:15%; top:24%; --plush-color:#edd58b; }
.plush-touch-help,.plush-mobile-detail,.plush-mobile-selectors { display:none; }
.tokenomics-plush button:disabled { opacity:1; cursor:default; }
.tokenomics-plush button:focus-visible { outline:2px solid #fff8e5; outline-offset:5px; }
.plush-mobile-detail { --plush-color:#e8a86b; position:relative; width:100%; max-width:360px; min-height:148px; margin:10px auto 0; padding:20px 22px; border-radius:20px; color:#164735; background:#f7f0dc; box-shadow:0 5px 0 #082e292b; }
.plush-mobile-detail::before { content:''; position:absolute; inset:7px; border:1px dashed #77906677; border-radius:14px; pointer-events:none; }
.plush-detail-title { display:flex; align-items:center; gap:15px; position:relative; }
.plush-detail-title strong { font-family:Display,Impact,sans-serif; font-size:38px; font-weight:800; line-height:1; letter-spacing:-.03em; }
.plush-detail-title h3 { margin:0; font-family:Body,Arial,sans-serif; font-size:22px; line-height:1.2; font-weight:700; }
.plush-mobile-detail p { position:relative; margin:10px 0 0; font-size:14px; line-height:1.45; }
.plush-detail-stitch { display:block; width:35px; height:5px; margin-top:12px; border-radius:8px; background:var(--plush-color); }
.plush-mobile-selectors { justify-content:space-between; gap:0; width:100%; max-width:264px; margin:13px auto 0; }
.plush-dot { display:grid; place-items:center; flex:0 0 44px; width:44px; height:44px; padding:0; border:0; border-radius:50%; background:transparent; }
.plush-dot span { display:block; width:13px; height:13px; border-radius:50%; background:var(--plush-color); transition:transform .2s ease,box-shadow .2s ease; }
.plush-dot.is-active span { transform:scale(1.12); box-shadow:0 0 0 4px #174d38,0 0 0 5px #f7f0dcd9; }
.plush-dot-meow { --plush-color:#e8a86b; }.plush-dot-cuteness { --plush-color:#e7a7b3; }.plush-dot-zoomies { --plush-color:#b5d7a5; }.plush-dot-catnip { --plush-color:#c3afe1; }.plush-dot-naps { --plush-color:#edd58b; }
.plush-mobile-detail.is-changing { animation:plush-detail-lift .24s ease; }
@keyframes plush-detail-lift { from { transform:translateY(5px); } to { transform:translateY(0); } }
@media (min-width:761px) and (max-width:1100px) {
  .tokenomics-plush { min-height:690px; }
  .plush-heading { top:32px; }
  .plush-heading h2 { font-size:45px; }
  .plush-intro { font-size:13px; }
  .plush-art-share { font-size:31px; }
  .plush-allocations h3 { font-size:17px; }
  .plush-note-trigger { gap:6px; }
  .plush-allocations h3 strong { font-size:28px; }
  .plush-allocations p { font-size:12px; }
}
@media (max-width:760px) {
  .tokenomics-plush { display:flex; flex-direction:column; min-height:0; margin-top:23px; padding:34px 25px 31px; border-radius:25px; }
  .plush-heading { position:relative; inset:auto; width:100%; }
  .plush-kicker { font-size:9px; margin-bottom:13px; }
  .plush-heading h2 { font-size:clamp(35px,8vw,48px); max-width:16ch; margin-inline:auto; }
  .plush-intro { max-width:34ch; font-size:13px; margin-top:15px; }
  .plush-art { position:relative; inset:auto; transform:none; width:100%; max-width:280px; margin:22px auto 5px; }
  .plush-art-share { min-width:56px; min-height:52px; font-size:29px; }
  .plush-connections { display:none; }
  .plush-allocations { display:grid; width:100%; max-width:490px; margin:22px auto 0; gap:0; }
  .plush-allocations li { position:relative; inset:auto; width:100%; padding:17px 0; border-top:1px solid #bddbb940; }
  .plush-allocations h3 { font-size:18px; margin-bottom:6px; }
  .plush-note-trigger { gap:10px; }
  .plush-allocations h3 strong { font-size:29px; min-width:59px; }
  .plush-allocations p { max-width:none; margin-left:69px; font-size:13px; }
  .tokenomics-plush.is-interactive .plush-intro,.tokenomics-plush.is-interactive .plush-allocations { display:none; }
  .tokenomics-plush.is-interactive .plush-touch-help { display:block; margin:14px 0 0; font-size:13px; line-height:1.45; color:#e0edd7; }
  .tokenomics-plush.is-interactive .plush-mobile-detail { display:block; }
  .tokenomics-plush.is-interactive .plush-mobile-selectors { display:flex; }
}
@media (max-width:400px) {
  .tokenomics-plush { padding:31px 20px 26px; }
  .plush-heading h2 { font-size:35px; }
  .plush-art-share { font-size:26px; }
  .plush-allocations h3 { font-size:17px; }
  .plush-allocations p { font-size:12px; }
}
@media (prefers-reduced-motion:reduce) {
  .tokenomics-plush .plush-lit-piece,.tokenomics-plush .plush-art-share,.tokenomics-plush .plush-connections path,.tokenomics-plush .plush-allocations li,.tokenomics-plush .plush-allocations li::before,.tokenomics-plush .plush-dot span { transition:none; }
  .plush-mobile-detail.is-changing { animation:none; }
  .tokenomics-plush.is-interactive .plush-allocations li.is-active { transform:none; }
}

/* roadmap-cinema.css */
/* Rendered performances keep the original timeline frame and poster placement. */
.roadmap-character {
  position: relative;
  display: block;
  width: 100%;
  height: calc(190 * var(--unit));
  margin: 0 0 calc(22 * var(--unit));
  isolation: isolate;
}
.roadmap-steps .roadmap-character > img,
.roadmap-character > .roadmap-cinema {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  max-width: none;
  margin: 0;
  object-fit: contain;
  translate: none !important;
  pointer-events: none;
}
.roadmap-character > .roadmap-cinema {
  visibility: hidden;
  filter: drop-shadow(0 7px 4px #00352345);
}
.roadmap-character.is-cinema-ready > img { visibility: hidden; }
.roadmap-character.is-cinema-ready > .roadmap-cinema { visibility: visible; }
.roadmap-character.is-reduced > img { visibility: visible; }
.roadmap-character.is-reduced > .roadmap-cinema { visibility: hidden; }
@media (max-width: 760px) {
  .roadmap-character { height: 155px; margin-bottom: 20px; }
}
@media (max-width: 390px) {
  .roadmap-character { height: 140px; }
}
@media (prefers-reduced-motion: reduce) {
  .roadmap-character.is-cinema-ready > img { visibility: visible; }
  .roadmap-character > .roadmap-cinema { display: none; }
}

/* roadmap-yarn.css */
/* One strand of the same soft green wool, laid out in actual screen pixels. */
/* The wool crosses the page's content gutter, ending at the viewport. */
html { overflow-x: clip; }
.page-stage { overflow: visible; }

.roadmap-section { padding: clamp(48px, calc(66 * var(--unit)), 66px) 6% clamp(60px, calc(88 * var(--unit)), 88px); }
.roadmap-heading { position: relative; inset: auto; }
.roadmap-heading h2 { font-family: Body, Arial, sans-serif; font-weight: 750; font-size: clamp(30px, calc(56 * var(--unit)), 56px); line-height: 1.12; letter-spacing: -.055em; }
.roadmap-heading .scribble { display: none; }
.roadmap-title-row { position: relative; display: flex; align-items: center; gap: clamp(20px, calc(30 * var(--unit)), 30px); width: max-content; }
.roadmap-title-row h2 { position: relative; z-index: 3; white-space: nowrap; }
.roadmap-title-row > .yarn {
  position: relative; inset: auto; flex: 0 0 auto; width: clamp(86px, calc(124 * var(--unit)), 124px);
  height: auto; margin: -4px 0; z-index: 2; transform: none;
  clip-path: polygon(0 0, 100% 0, 100% 58%, 78% 58%, 77% 67%, 74% 76%, 69% 84%, 61% 91%, 48% 98%, 0 100%);
  filter: drop-shadow(0 6px 5px #073c2a42);
}
.roadmap-heading > .roadmap-heading-thread {
  position: absolute; top: 0; left: var(--yarn-left, 0px);
  width: var(--yarn-width, 100vw); height: 100%; overflow: visible;
  pointer-events: none; z-index: 1;
}

.roadmap-track > .roadmap-thread {
  left: var(--yarn-left, -14%);
  right: auto;
  top: 0;
  bottom: auto;
  width: var(--yarn-width, 114%);
  height: 100%;
  overflow: visible;
  transform: none;
  opacity: 1;
  pointer-events: none;
  z-index: 1;
}
.roadmap-track::after { content: none; }
.roadmap-thread .wool-shadow, .roadmap-heading-thread .wool-shadow { filter: blur(.65px); }
.roadmap-thread .wool-raster, .roadmap-heading-thread .wool-raster { filter: drop-shadow(0 2px 1.25px #052f234d); }
.roadmap-track { margin: clamp(42px, calc(85 * var(--unit)), 85px) 0 0; }
.roadmap-steps { gap: clamp(18px, calc(35 * var(--unit)), 35px); }
.roadmap-character { height: clamp(165px, calc(245 * var(--unit)), 245px); margin: 0 0 8px; }
.roadmap-steps .step-number {
  position: relative; isolation: isolate; width: clamp(62px, calc(82 * var(--unit)), 82px);
  height: clamp(57px, calc(75 * var(--unit)), 75px); min-width: 0; min-height: 0;
  background: transparent; border: 0; border-radius: 0; box-shadow: none;
  font-family: Body, Arial, sans-serif; font-size: clamp(21px, calc(28 * var(--unit)), 28px);
  font-weight: 750; color: #effff1; line-height: 1; padding-top: 8px;
}
.roadmap-steps .step-number::before { content: ''; position: absolute; inset: 0; z-index: -1; background: url('assets/roadmap-badge-cat.svg') center/100% 100% no-repeat; }
.roadmap-steps li:nth-child(2) .step-number { padding-top: 23px; }
.roadmap-steps li:nth-child(2) .step-number::before { background-image: url('assets/roadmap-badge-paw.svg'); }
.roadmap-steps li:nth-child(3) .step-number::before { background-image: url('assets/roadmap-badge-yarn.svg'); }
.roadmap-steps li:nth-child(4) .step-number::before { background-image: url('assets/roadmap-badge-tail.svg'); }
.roadmap-steps h3 { font-size: clamp(16px, calc(24 * var(--unit)), 24px); line-height: 1.25; margin-top: 18px; letter-spacing: -.025em; }
.roadmap-steps .step-detail { font-size: clamp(13px, calc(18 * var(--unit)), 18px); line-height: 1.65; margin-top: 14px; }

@media (max-width: 760px) {
  .roadmap-title-row { gap: 9px; }
  .roadmap-section { padding: 48px 7% 62px; }
  .roadmap-title-row h2 { font-size: clamp(25px, 8vw, 33px); }
  .roadmap-title-row > .yarn { width: 74px; margin: -2px 0; }
  .roadmap-track { margin: 48px 0 0; }
  .roadmap-steps { gap: 42px 22px; }
  .roadmap-character { height: 155px; margin-bottom: 9px; }
  .roadmap-steps .step-number { width: 62px; height: 57px; font-size: 22px; padding-top: 6px; }
  .roadmap-steps li:nth-child(2) .step-number { padding-top: 17px; }
  .roadmap-steps h3 { font-size: 16px; margin-top: 13px; }
  .roadmap-steps .step-detail { font-size: 12px; margin-top: 10px; }
}
@media (max-width: 360px) {
  .roadmap-title-row > .yarn { width: 64px; }
  .roadmap-character { height: 135px; }
  .roadmap-steps { column-gap: 16px; }
  .roadmap-steps h3 { font-size: 14px; }
}

/* rewards-gaze.css */
/* Registered eyes and butterfly share the original artwork's contain plane. */
.atelier-illustration > .rewards-gaze-layer {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  pointer-events: none;
  overflow: visible;
  opacity: 0;
}

.atelier-illustration > .rewards-gaze-layer.is-butterfly-ready { opacity: 1; }
.rewards-curiosity-head { opacity: 0; }
.is-gaze-active > .rewards-curiosity-head { opacity: 1; }
.atelier-illustration > .rewards-head-canvas {
  position: absolute;
  pointer-events: none;
  filter: drop-shadow(0 7px 5px #6072441a);
}
.atelier-illustration.has-head-rig > img { opacity: 0; }
.atelier-illustration > .rewards-gaze-layer { z-index: 1; }


@media (prefers-reduced-motion: reduce) {
  .atelier-illustration > .rewards-head-canvas { display: none; }
  .atelier-illustration.has-head-rig > img { opacity: 1; }
}

/* rewards-cinema.css */
/* The 4:3 film extends around the still's registered 850x567 contain plane. */
.atelier-illustration > .rewards-cinema-canvas {
  position: absolute;
  display: block;
  z-index: 2;
  pointer-events: none;
  visibility: hidden;
  opacity: 0;
  filter: drop-shadow(0 7px 5px #6072441a);
}
.atelier-illustration.has-rewards-cinema > .rewards-cinema-canvas {
  visibility: visible;
  opacity: 1;
}
.atelier-illustration.has-rewards-cinema > img { opacity: 0; }
.atelier-illustration.has-rewards-cinema > .rewards-gaze-layer,
.atelier-illustration.has-rewards-cinema > .rewards-head-canvas {
  visibility: hidden !important;
  opacity: 0 !important;
}
body.alive-reduced .atelier-illustration > .rewards-cinema-canvas {
  visibility: hidden;
  opacity: 0;
}
body.alive-reduced .atelier-illustration.has-rewards-cinema > img { opacity: 1; }
@media (prefers-reduced-motion: reduce) {
  .atelier-illustration > .rewards-cinema-canvas { visibility: hidden; opacity: 0; }
  .atelier-illustration.has-rewards-cinema > img { opacity: 1; }
}

/* footer.css */
/* A transparent closing section, with the supplied chrome wordmark. */
.site-footer.footer-reference {
  display:block;
  position:relative;
  height:auto;
  min-height:0;
  padding:54px 0 34px;
  margin-top:32px;
  border-top:1px solid #cfe9bd1c;
  background:transparent;
  color:#eff7e7;
  font-size:14px;
}
.footer-content { width:min(100%,1120px); margin:0 auto; }
.footer-main-row {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:40px;
  padding-bottom:32px;
}
.footer-identity { min-width:0; }
.footer-logo { display:block; width:280px; max-width:100%; }
.footer-logo img { width:100%; height:auto; object-fit:contain; }
.footer-tagline { margin:11px 0 0; color:#d3e2c8; font-size:14px; line-height:1.5; }
.footer-social-links { display:flex; align-items:center; gap:12px; }
.footer-social-link {
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-width:173px;
  min-height:47px;
  padding:12px 18px;
  border:1px solid #c7e3bc59;
  border-radius:4px;
  background:#ebffe505;
  color:#e3f0d6;
  font-family:ui-monospace,SFMono-Regular,Consolas,monospace;
  font-size:12px;
  font-weight:500;
  line-height:1.4;
  letter-spacing:.08em;
  text-transform:uppercase;
  white-space:nowrap;
  transition:border-color .18s,background .18s,color .18s;
}
.footer-social-link .icon { width:19px; height:19px; }
.footer-social-link[aria-disabled=true] { cursor:default; }
.footer-social-link[href]:hover { border-color:#def1cdaa; color:#f7ffe9; background:#ddf4ca12; }
.footer-social-link[href]:active { background:#ddf4ca1d; }
.footer-reference :focus-visible { outline:2px solid #f5ffe2; outline-offset:5px; }
.footer-contract-row {
  display:flex;
  align-items:center;
  gap:23px;
  padding:20px 0;
  border-top:1px solid #c7e3bc2e;
  border-bottom:1px solid #c7e3bc2e;
}
.footer-contract-label {
  flex-shrink:0;
  color:#afc4aa;
  font-family:ui-monospace,SFMono-Regular,Consolas,monospace;
  font-size:11px;
  line-height:1.5;
  letter-spacing:.22em;
  text-transform:uppercase;
}
.footer-contract-chip {
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:10px;
  min-width:0;
  max-width:100%;
  padding:11px 14px;
  border:1px solid #c9e4bd0a;
  border-radius:4px;
  background:transparent;
  color:#d9e8cd;
  font-family:ui-monospace,SFMono-Regular,Consolas,monospace;
  font-size:13px;
  line-height:1.6;
}
.footer-contract-address {
  min-width:0;
  font:inherit;
  overflow-wrap:anywhere;
  user-select:all;
}
.footer-contract-address:empty { display:none; }
.footer-contract-chip:has(.footer-contract-address:not(:empty)) .footer-contract-empty { display:none; }
.footer-contract-empty { color:#b4c7ad; }
.footer-contract-divider { color:#9caf98; }
.footer-chain { white-space:nowrap; color:#b6cfaa; }
.footer-fine-print { padding-top:22px; }
.footer-disclaimer { max-width:100%; color:#c2d3b8; font-size:13px; line-height:1.75; }
.site-footer.footer-reference small {
  display:block;
  margin-top:18px;
  color:#b2c9aa;
  font-size:11px;
  line-height:1.6;
  letter-spacing:.025em;
  white-space:normal;
}
@media(max-width:1100px) and (min-width:761px) {
  .footer-content { width:92%; }
  .footer-main-row { gap:24px; }
  .footer-social-link { min-width:150px; padding-inline:14px; font-size:11px; }
  .footer-logo { width:260px; }
}
@media(max-width:760px) {
  .site-footer.footer-reference { margin-top:24px; padding:36px 0 30px; }
  .footer-content { width:calc(100% - 40px); max-width:600px; text-align:center; }
  .footer-main-row { display:block; padding-bottom:25px; }
  .footer-logo { width:280px; max-width:100%; margin-inline:auto; }
  .footer-tagline { margin-top:11px; font-size:14px; }
  .footer-social-links { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin-top:26px; }
  .footer-social-link { min-width:0; min-height:49px; padding:12px 9px; gap:8px; font-size:11px; letter-spacing:.06em; }
  .footer-social-link .icon { width:17px; height:17px; }
  .footer-contract-row { display:block; padding:20px 0 23px; }
  .footer-contract-label { display:block; margin-bottom:12px; }
  .footer-contract-chip { width:100%; justify-content:center; gap:9px; padding:12px 13px; font-size:12px; text-align:center; }
  .footer-fine-print { padding-top:23px; }
  .footer-disclaimer { font-size:13px; line-height:1.8; }
}
@media(max-width:360px) {
  .footer-social-link { padding-inline:6px; gap:6px; font-size:10px; letter-spacing:.035em; }
  .footer-social-link .icon { width:16px; height:16px; }
}
@media(prefers-reduced-motion:reduce) {
  .footer-social-link { transition:none; }
}
