.greetings-section,.mischief-section{padding-top:76px;padding-bottom:80px}
.greetings-layout{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:8vw;padding-top:45px}
.greetings-wave{display:inline-block;color:#738a4d;font-size:58px;margin-bottom:19px;line-height:1}
.greetings-copy>p{color:var(--muted);font-size:13px;line-height:2.1;margin-top:24px}
.greetings-copy>.text-link{display:inline-block;margin-top:27px}
.greeting-board{border:1px solid var(--ink);padding:27px 32px 23px;background:#e4edcf;box-shadow:8px 8px 0 #d5dcc8}
.greeting-board-top{display:flex;align-items:center;justify-content:space-between;gap:18px;font-size:9px;letter-spacing:.7px;border-bottom:1px solid #b6c3a1;padding-bottom:18px}
.greeting-mode{color:#536141;font-size:8px;letter-spacing:0}
.greeting-today{margin-top:26px;font-size:13px;line-height:1.9}
.greeting-today strong{display:block;font-family:Arial,sans-serif;font-size:clamp(60px,7vw,108px);line-height:1.25;font-weight:900;letter-spacing:-5px;overflow-wrap:anywhere;font-variant-numeric:tabular-nums;padding:4px 0}
.greeting-today>span{font-size:17px;font-weight:600}
.greeting-total{font-size:12px;color:#59684a;line-height:2;border-top:1px dashed #afbd97;margin-top:23px;padding-top:17px;overflow-wrap:anywhere}
.greeting-total strong{font-family:Arial,sans-serif;color:var(--ink);font-size:20px;line-height:1.4;margin:0 3px;font-variant-numeric:tabular-nums}
.greeting-button{width:100%;margin-top:20px}
.greeting-button:disabled{cursor:wait;opacity:.55;transform:none}
.greeting-status{font-size:11px;line-height:1.9;min-height:21px;margin-top:12px;color:#4b583e}
.greeting-note{font-size:9px;color:#657254;margin-top:9px;line-height:1.8}
.greeting-today strong.count-bump{animation:greetingBump .35s ease-out}
@keyframes greetingBump{50%{transform:translateY(-3px);color:#648137}}
.mischief-section{background:#f0e0d5}
.mischief-layout{display:grid;grid-template-columns:1.12fr 1fr;gap:6vw;align-items:center;padding-top:42px}
.mischief-label{font-size:11px;color:#826855;letter-spacing:1px}
.mischief-copy h2{font-size:clamp(27px,3.05vw,49px);line-height:1.55;margin-top:19px;letter-spacing:-1.5px}
.mischief-copy>p:not(.mischief-status){font-size:12px;line-height:2;color:#7c695c;margin-top:24px}
.mischief-copy>.button{margin-top:29px;max-width:100%;text-align:left;line-height:1.8;gap:18px;padding-top:12px;padding-bottom:12px}
.mischief-status{min-height:40px;font-size:10px;line-height:2;margin-top:19px;color:#7c695c}
.mischief-stage{position:relative;min-height:510px;padding:100px 42px 23px;display:flex;align-items:end;justify-content:center;isolation:isolate;background:#e6d1c2;border:1px solid #b89f8c;border-radius:160px 160px 4px 4px;overflow:hidden}
.mischief-stage-label{position:absolute;top:38px;left:0;right:0;text-align:center;font:9px Arial,var(--font);letter-spacing:1.6px;color:#7b6250}
.mischief-photo-frame{position:relative;width:100%;max-width:340px;padding:11px 11px 0;background:var(--paper);border:1px solid var(--ink);box-shadow:7px 8px 0 #cdb29c}
.mischief-photo-frame img{width:100%;height:340px;object-fit:cover;object-position:center 37%;filter:saturate(.75)}
.mischief-photo-frame>span{display:block;text-align:center;padding:12px;font-size:11px;font-weight:600;letter-spacing:1px}
.mischief-stamp{position:absolute;right:12px;bottom:32px;width:72px;height:72px;border-radius:50%;border:1px solid var(--ink);background:var(--mint);display:grid;place-content:center;font-size:13px;font-weight:700;line-height:1.6;text-align:center;transform:rotate(13deg);z-index:2}
.poop-layer{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:3}
.falling-poop{position:absolute;top:-76px;left:var(--drop-x);font-size:57px;line-height:1;will-change:transform,opacity;animation:poopFall 1.45s both cubic-bezier(.35,.1,.6,1)}
@keyframes poopFall{0%{transform:translate(-50%,-10px) rotate(-15deg);opacity:0}9%{opacity:1}57%{transform:translate(-50%,var(--drop-y)) rotate(12deg);opacity:1}67%{transform:translate(-50%,calc(var(--drop-y) - 15px)) rotate(-9deg);opacity:1}80%{transform:translate(-50%,var(--drop-y)) rotate(4deg);opacity:1}100%{transform:translate(-50%,calc(var(--drop-y) + 18px)) scale(.75);opacity:0}}
.falling-poop.reduced-poop{top:var(--rest-y);transform:translateX(-50%);animation:poopFade .9s ease both}
@keyframes poopFade{0%,100%{opacity:0}15%,75%{opacity:1}}
@media(max-width:1050px){.greetings-layout{gap:4vw}.greeting-board{padding:24px}.greeting-today>span{font-size:15px}.mischief-layout{gap:4vw}.mischief-stage{padding-inline:25px;min-height:470px}.mischief-photo-frame img{height:300px}.mischief-copy h2{font-size:30px}}
@media(max-width:700px){.greetings-section,.mischief-section{padding-top:52px;padding-bottom:55px}.greetings-layout,.mischief-layout{grid-template-columns:1fr;gap:34px;padding-top:31px}.greetings-copy h2{font-size:35px}.greetings-wave{font-size:42px;margin-bottom:19px}.greetings-copy>p{font-size:12px;margin-top:18px}.greetings-copy>.text-link{margin-top:21px}.greeting-board{padding:23px 24px 20px;box-shadow:5px 5px 0 #d5dcc8}.greeting-board-top{font-size:8px;gap:8px}.greeting-today{margin-top:22px;font-size:12px}.greeting-today strong{font-size:72px;letter-spacing:-3px}.greeting-today>span{font-size:16px}.greeting-total{font-size:11px}.greeting-note{font-size:8px}.mischief-copy h2{font-size:clamp(25px,6.5vw,36px);letter-spacing:-1px;line-height:1.65}.mischief-copy>.button{font-size:11px;padding-inline:17px;gap:14px}.mischief-copy>p:not(.mischief-status){margin-top:17px}.mischief-copy>.button{margin-top:21px}.mischief-status{min-height:20px;margin-top:14px}.mischief-stage{min-height:460px;padding:95px 27px 23px}.mischief-photo-frame img{height:300px}.mischief-stage-label{font-size:8px}.mischief-stamp{right:7px;width:61px;height:61px;font-size:11px}.falling-poop{font-size:50px}}
@media(prefers-reduced-motion:reduce){.falling-poop.reduced-poop{animation:poopFade .9s ease both!important}}
