/* Definitive Moy identity. Artwork stays in its original proportions. */
:root{--accent:#face14;--copper:#f2ae70;--brand-blue:#048fd7;--brand-glow:#048fd71c;--mascot-filter:none}
body[data-palette=azul-naranja]{--accent:#face14;--brand-glow:#048fd722}
body[data-palette=esmeralda-coral]{--accent:#ffe047;--brand-glow:#009f7028}
body[data-palette=violeta-oro]{--accent:#61e5df;--brand-glow:#6827c938}
body[data-palette=fucsia-lima]{--accent:#d8f343;--brand-glow:#d91c832a}
body[data-palette=amarillo-cobalto]{--accent:#ffd438;--brand-glow:#ffd4381a}
.hero{background:radial-gradient(ellipse at 80% 51%,var(--brand-glow),transparent 55%);--hero-logo-width:270px;--hero-logo-clearance:42px}
.hero h1{font-size:clamp(58px,6.8vw,98px)}
.hero-art{margin-top:-5px;height:470px;margin-bottom:28px}
.wordmark-switch{background:none;padding:0;text-align:left}.wordmark-switch:hover .brand-star{color:var(--accent)}
.hanging-logo{padding:0;border:0;background:none;text-align:left;border-radius:4px;isolation:isolate}
.hanging-logo img{width:100%;height:auto}.logo-hint{position:absolute;left:35%;bottom:-15px;font:italic 11px Georgia,serif;white-space:nowrap;color:var(--copper)}
.hanging-logo:focus-visible{outline-offset:6px}.hanging-logo:hover{transform:rotate(.5deg)}
.mascot-parallax{inset:14px -35px 15px -32px;transform:none;will-change:auto;transition:none}
.mascot-float{display:flex;align-items:center;animation:none;transform:none;height:100%}
.mascot-image{width:100%;height:auto;filter:none!important;transition:opacity .2s;transform-origin:50% 90%;animation:brand-breathe 7s ease-in-out infinite}
.mascot-button{border-radius:30%;transition:filter .25s}.mascot-button:hover{filter:drop-shadow(0 0 18px #face1414)}
.mascot-button:active{filter:drop-shadow(0 0 22px #face1428)}
.orbit-one{border-color:#d8e1ce17}.orbit-two{border-color:#d8e1ce12}
.mascot-note{bottom:-2px;right:8%;color:var(--copper)}
.palette-controls{left:0;right:0;bottom:-53px;display:flex;align-items:center;justify-content:center;gap:4px;flex-wrap:wrap}
.palette-dot{width:36px;height:44px;flex:0 0 36px;padding:10px 7px;background:none!important;border:0;outline:0;outline-offset:0;border-radius:6px}
.palette-dot>span{display:block;width:22px;height:22px;border-radius:50%;border:1px solid #fff5;outline:1px solid transparent;outline-offset:4px;transition:transform .2s}
.palette-dot:hover>span{transform:scale(1.12)}.palette-dot[aria-pressed=true]>span{outline-color:var(--cream)}.palette-dot:focus-visible{outline:2px solid var(--cream)}
[data-set-palette=azul-naranja]>span{background:linear-gradient(135deg,#048fd7 50%,#fd6c03 50%)}
[data-set-palette=esmeralda-coral]>span{background:linear-gradient(135deg,#009f70 50%,#ff7848 50%)}
[data-set-palette=violeta-oro]>span{background:linear-gradient(135deg,#6827c9 50%,#ffd137 50%)}
[data-set-palette=fucsia-lima]>span{background:linear-gradient(135deg,#d91c83 50%,#d8f343 50%)}
[data-set-palette=amarillo-cobalto]>span{background:linear-gradient(135deg,#ffd438 50%,#174ac9 50%)}
.palette-controls>span{font-size:9px;min-width:125px;text-align:center;margin-left:4px;color:#bec8b9}.motion-toggle{min-width:36px;min-height:44px;padding:6px;margin-left:0}
.character-explore{position:absolute;bottom:-86px;left:50%;transform:translateX(-50%);padding:8px 0;white-space:nowrap;background:none;border-bottom:1px solid #ffffff30;font-size:11px;letter-spacing:.02em;color:var(--cream)}
.character-explore span{margin-left:18px}.character-explore:hover{color:var(--accent);border-color:var(--accent)}
.hero-bottom{padding-top:24px}.hero-bottom>a:hover{color:var(--accent)}
.photo-demo>img{filter:none}.photo-demo{background:#c8bda7}.video-demo>img{opacity:1}
.video-demo.playing>img{animation:brand-breathe 7s ease-in-out infinite;transform-origin:50% 90%}
#panel-web .browser-body{padding-bottom:160px}#panel-web .browser-body>img{width:220px;bottom:-24px;max-width:60%}
.manifesto-bottom{grid-template-columns:1fr 1.6fr 1fr;gap:40px}.manifesto-mascot{background:none;padding:0;position:relative;width:100%;max-width:260px;text-align:center}
.manifesto-mascot img{width:100%;filter:none}.manifesto-mascot span{display:block;font:italic 13px Georgia,serif;color:var(--copper);margin-top:8px}.manifesto-mascot:hover span{color:var(--accent)}
.about-character{position:absolute;bottom:45px;left:-6%;width:110%;padding:0;background:none;transform:rotate(-7deg)}
.about-character img{width:100%;filter:none}.about-character:hover{filter:drop-shadow(0 0 16px #face1415)}
.hanging-character{height:430px;position:absolute;top:-8px;right:-25px;width:auto;aspect-ratio:2/3;padding:0;background:none;transform:rotate(5deg);transform-origin:50% 2%}
.hanging-character img{height:100%;width:auto;max-width:none;filter:none}.hanging-character:hover{filter:drop-shadow(0 0 15px #face141c)}
.footer-logo{padding:0;background:none;width:170px}.footer-logo img{width:100%}.footer-logo:hover{filter:drop-shadow(0 0 15px #face1422)}
.request-mascot{position:absolute;top:60px;right:33px;width:132px;pointer-events:none}.dialog-inner h2{max-width:75%}
.character-dialog{width:min(1000px,calc(100% - 32px));max-width:1000px;max-height:92svh;background:#10251e;border:1px solid #c7d4bd40;border-radius:14px;overflow:auto}
.character-shell{padding:30px 38px}.character-top{display:flex;justify-content:space-between;align-items:flex-start}.character-top .eyebrow{font-size:9px;color:var(--copper)}
.character-top h2{font-size:42px;line-height:1;margin-top:13px}.character-top h2 em{color:var(--accent)}
.character-close{width:44px;height:44px;background:#ffffff0b;border:1px solid #ffffff26;border-radius:50%;font:30px/1 Arial;position:sticky;top:0;z-index:5}
.character-stage{display:grid;grid-template-columns:44px 1fr 44px;align-items:center;gap:16px;margin-top:-35px;min-height:310px}
.character-view{width:100%;height:min(37vh,350px);padding:0;background:radial-gradient(ellipse,var(--brand-glow),transparent 65%);display:flex;align-items:center;justify-content:center}
.character-view img{width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain;filter:none}
.character-arrow{width:44px;height:44px;border:1px solid #ffffff38;border-radius:50%;background:none;font-size:20px}.character-arrow:hover{color:var(--accent);border-color:var(--accent)}
.character-caption{text-align:center;margin-top:5px}.character-caption>span{font-size:9px;letter-spacing:.15em;color:var(--copper)}.character-caption h3{font:26px/1.3 Georgia,serif;margin:6px 0}.character-caption p{font-size:12px;color:var(--muted);min-height:20px}
.pose-selector{display:flex;justify-content:center;gap:4px;flex-wrap:wrap;margin-top:18px}.pose-selector>button{background:none;border:1px solid #ffffff26;color:#c3ccbe;border-radius:5px;min-width:38px;height:38px;font-size:11px}.pose-selector>button[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:#101713}.pose-selector>button:hover{border-color:var(--cream)}
.character-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:20px;padding-top:17px;border-top:1px solid var(--line);gap:12px}.character-bottom>span{font-size:10px;color:var(--muted)}.character-bottom>.text-link{background:none;color:var(--cream);font-size:11px}
.motion-paused .mascot-image,.motion-paused .video-demo.playing>img{animation:none}
@keyframes brand-breathe{0%,100%{transform:scaleY(1)}50%{transform:scaleY(1.003)}}
@media(min-width:1600px){.hero{--hero-logo-width:290px}.hero-art{height:510px}}
@media(max-width:1150px){.hero{--hero-logo-width:230px}.hero-art{height:390px}.mascot-parallax{inset:15px -30px 15px -25px}.palette-controls>span{min-width:105px}.palette-dot{flex-basis:30px;width:30px;padding:10px 4px}.about-character{bottom:75px;width:120%;left:-15%}.hanging-character{height:390px;right:-10px}}
@media(max-width:850px){.hero{--hero-logo-width:210px}.hero-art{height:330px}.palette-controls{bottom:-85px}.palette-controls>span{min-width:125px}.character-explore{bottom:-119px}.hero-art{margin-bottom:50px}.mascot-note{right:0;bottom:-4px}.manifesto-bottom{gap:25px}.hanging-character{height:350px;right:-18px}}
@media(max-width:700px){.hero{--hero-logo-width:185px;--hero-logo-clearance:34px}.logo-hint{font-size:10px;bottom:-13px}.hero h1{font-size:clamp(53px,10.5vw,77px);white-space:normal}.hero-inner{padding-bottom:22px}.hero-art{height:clamp(290px,71vw,440px);margin:28px -6px 105px}.mascot-parallax{inset:20px -6px 14px -10px}.palette-controls{bottom:-58px;left:0;right:0;gap:3px}.palette-dot{width:34px;flex-basis:34px;padding:10px 6px}.palette-controls>span{min-width:112px;margin-left:0;font-size:9px}.character-explore{bottom:-99px}.mascot-note{right:5%;bottom:0}.hero-bottom{padding-top:5px}.hero-description{max-width:390px}.manifesto-bottom{grid-template-columns:105px 1fr;gap:20px}.manifesto-bottom .handwritten{grid-column:2}.manifesto-mascot{align-self:start;padding-top:12px}.manifesto-mascot span{font-size:11px;line-height:1.4}.about-character{bottom:45px;width:110%;left:-7%}.hanging-character{height:345px;right:20px;top:0}.footer-logo{width:160px}.request-mascot{width:90px;right:21px;top:70px}.dialog-inner h2{max-width:78%}.character-shell{padding:24px 20px}.character-top h2{font-size:34px}.character-stage{margin-top:12px;grid-template-columns:36px 1fr 36px;gap:4px;min-height:250px}.character-view{height:33vh;min-height:220px}.character-arrow{height:36px;width:36px}.character-caption h3{font-size:23px}.character-caption p{font-size:11px;max-width:300px;margin:0 auto;min-height:34px}.pose-selector{gap:5px}.pose-selector>button{min-width:35px;height:36px}.character-bottom>span{display:none}.character-bottom{justify-content:center}.character-close{width:40px;height:40px;flex:0 0 40px}.character-dialog{width:calc(100% - 20px)}}
@media(max-width:390px){.palette-controls>span{flex-basis:calc(100% - 55px)}.palette-controls{bottom:-82px}.character-explore{bottom:-118px}.hero-art{margin-bottom:125px}.hero .actions{gap:14px}.hero .button{font-size:10px}.hero .text-link{font-size:10px}.hanging-character{right:0}.request-mascot{width:70px}.dialog-inner h2{font-size:36px}}
@media(prefers-reduced-motion:reduce){.mascot-image,.video-demo.playing>img{animation:none!important}.hanging-logo:hover{transform:none}*{scroll-behavior:auto!important}}
