
.genie-note{position:relative;display:flex;align-items:center;gap:clamp(12px,2vw,28px);max-width:100%;margin:16px 0 24px;padding:4px 44px 4px 8px;border-radius:22px;background:rgba(255,252,244,.55);isolation:isolate;color:#164b40}
.genie-note .genie-visual{width:clamp(120px,19vw,200px);height:clamp(115px,17vw,175px);object-fit:contain;flex:none;margin:0;aspect-ratio:auto;filter:none}
.genie-note .genie-words{font:500 clamp(17px,2.1vw,24px)/1.35 system-ui,sans-serif;max-width:520px;margin:0;text-wrap:balance;color:#164b40}
.genie-note .genie-dismiss{position:absolute;top:9px;right:8px;min-width:36px;min-height:36px;width:36px;height:36px;padding:0;border:0;border-radius:50%;background:transparent;color:#526d61;font:400 22px/1 system-ui,sans-serif;display:grid;place-items:center;cursor:pointer;box-shadow:none}
.genie-note .genie-dismiss:hover{background:#dce9de;color:#143f36}
.genie-note .genie-dismiss:active{transform:scale(.95)}
.genie-note .genie-dismiss:focus-visible{outline:2px solid #a95b2a;outline-offset:2px}
.genie-empty{justify-content:center;background:#fbf4e7;margin:18px 0 0}
.genie-empty .genie-visual{width:130px;height:130px}
.genie-empty .genie-words{font-size:17px;max-width:245px}
.genie-breakfast{background:#edf0dd}
.genie-dinner{background:#f0e5ed}
.genie-beach{background:rgba(255,252,244,.45)}
@media(prefers-reduced-motion:no-preference){.genie-arrived .genie-visual{animation:genie-hello 900ms ease-out 1 both}@keyframes genie-hello{0%{transform:translateY(7px) rotate(-2deg);opacity:.65}60%{transform:translateY(-3px) rotate(1deg);opacity:1}100%{transform:translateY(0) rotate(0);opacity:1}}}
@media(max-width:480px){.genie-note{gap:8px;padding-right:36px;margin:12px 0 20px;border-radius:18px}.genie-note .genie-visual{width:112px;height:120px}.genie-note .genie-words{font-size:16px}.genie-empty .genie-visual{width:92px;height:112px}.genie-empty .genie-words{font-size:15px}}

.home-welcome.genie-team{background:#f0bea7}
.home-welcome .genie-team-art{position:relative;min-height:300px;padding:0;align-self:stretch;overflow:hidden;isolation:isolate}
.genie-team-art::before{content:"";position:absolute;width:88%;aspect-ratio:1;left:-10%;top:5%;border-radius:45% 55% 63% 37%;background:#f7d46f;z-index:-1;transform:rotate(-12deg)}
.home-welcome .genie-team-art>img:first-child{width:100%;height:100%;min-height:300px;max-height:420px;aspect-ratio:auto;object-fit:contain;object-position:center bottom}
.home-welcome .genie-team-art .genie-team-friend{position:absolute;width:34%;height:auto;aspect-ratio:400/360;object-fit:contain;right:-1%;bottom:1%;transform:rotate(7deg);filter:drop-shadow(0 4px 0 #fff5df)}
@media(max-width:720px){.home-welcome .genie-team-art{min-height:260px}.home-welcome .genie-team-art>img:first-child{height:310px;min-height:0}.home-welcome .genie-team-art .genie-team-friend{width:30%;right:6%}}

.home-arrival .genie-note{padding:0 30px 0 0;gap:6px;margin:12px 0 0;background:transparent}
.home-arrival .genie-note .genie-visual{width:125px;height:135px}
.home-arrival .genie-note .genie-words{font-size:17px}
.home-arrival .genie-note .genie-dismiss{right:0;top:0}

/* Keep the Deseos bag logo clear. */
.home-welcome .genie-team-art .genie-team-friend{left:1%;right:auto;bottom:2%;width:23%}
@media(max-width:720px){.home-welcome .genie-team-art .genie-team-friend{left:1%;right:auto;width:23%}}

.home-welcome .genie-team-art>img:first-child{height:420px;min-height:0;max-height:none;object-fit:contain}
@media(max-width:720px){.home-welcome .genie-team-art>img:first-child{height:310px}}
