/* Magic Leon site palette: red #e00f0f / #cb1010, burgundy, warm logo gold and soft mauve. */
.ml-page--kids{--ml-red:#e00f0f;--ml-ink:#38202c;--ml-muted:#6b5b65;--ml-paper:#fffcfa;--ml-lilac:#f4edf4;--ml-line:#e5d7e0;background:radial-gradient(ellipse 540px 420px at 0 0,#fff0ce 0,transparent 80%),radial-gradient(ellipse 680px 520px at 100% 0,#eedde9 0,transparent 85%),#fffcfa}
.ml-page--kids .ml-hero h1 em{color:#e00f0f;position:relative;text-decoration:underline;text-decoration-color:#ffcf59;text-decoration-thickness:.11em;text-underline-offset:.06em;text-decoration-skip-ink:none}
.ml-page--kids .ml-hero h1{letter-spacing:-.055em;line-height:1.13}
.ml-page--kids .ml-hero h1 .ml-color-word{color:#672d49}
.ml-page--kids .ml-button{border-radius:100px;box-shadow:0 5px 0 #a20b1730;gap:17px}
.ml-page--kids .ml-button:hover{background:#cb1010;transform:translateY(-3px)}
.ml-page--kids .ml-button.ml-ghost{background:#fffcfa;box-shadow:none;border:2px solid #e1ccd7}
.ml-page--kids .ml-button.ml-ghost:hover{background:#f5e8ee}
.ml-page--kids .ml-kicker{color:#76394f;letter-spacing:.16em}
.ml-page--kids .ml-hero-art:before{content:"";position:absolute;inset:5% -2% 5% 6%;background:#e0c4d9;border-radius:45% 55% 52% 48%;transform:rotate(-9deg);z-index:-1}
.ml-page--kids .ml-hero-art:after{content:"✦";position:absolute;left:2%;bottom:8%;font-size:62px;color:#ffab40;transform:rotate(12deg);pointer-events:none}
.ml-page--kids .ml-photo-frame{border:7px solid white;box-shadow:0 18px 0 #6a304228;border-radius:110px 30px 110px 30px}
.ml-page--kids .ml-star{color:#ffab40;text-shadow:3px 3px 0 #fff;font-size:106px;z-index:1}
.ml-page--kids .ml-photo-label{background:#fff1e2;border:2px solid white;border-radius:18px;z-index:2}
.ml-page--kids .ml-stamp{background:#ffcf59;border:6px solid white;box-shadow:0 5px 0 #9f6a1a1c;z-index:3}
.ml-page--kids .ml-trust{border:0;border-radius:26px;padding:28px 20px;background:#f0e2ed;box-shadow:0 5px 0 #d5bfce66}
.ml-page--kids .ml-trust>div:nth-child(1) strong{color:#672d49}
.ml-page--kids .ml-trust>div:nth-child(2) strong{color:#672d49}
.ml-page--kids .ml-trust>div:nth-child(3) strong{color:#cb1010}
.ml-page--kids .ml-occasions{gap:18px}
.ml-page--kids .ml-occasion{border:0;border-radius:25px;padding:25px 22px;background:#fff0d6;box-shadow:0 5px 0 #e7c79255}
.ml-page--kids .ml-occasion:nth-child(2){background:#efe3ef;box-shadow:0 5px 0 #cbb4cd55}
.ml-page--kids .ml-occasion:nth-child(3){background:#fde2e2;box-shadow:0 5px 0 #dfb1b855}
.ml-page--kids .ml-occasion:nth-child(4){background:#f4e9ee;box-shadow:0 5px 0 #ceb4c455}
.ml-page--kids .ml-icon{width:48px;height:48px;display:grid;place-items:center;background:#ffffffb3;border-radius:15px;color:#8d3046;font-size:31px;transform:rotate(-6deg)}
.ml-page--kids .ml-occasion:nth-child(even) .ml-icon{transform:rotate(6deg);color:#672d49}
.ml-page--kids .ml-video-section{background:#38202c;position:relative;border-radius:50px 50px 0 0}
.ml-page--kids .ml-video-section .ml-kicker{color:#ffcf59}
.ml-page--kids .ml-video-section .ml-kicker:before{background:#ffcf59}
.ml-page--kids .ml-video-section p{color:#fff4f7}
.ml-page--kids .ml-video-section small{color:#ddc9d4}
.ml-page--kids .ml-video{border:5px solid #9a768c;border-radius:25px;box-shadow:0 10px 0 #29182133}
.ml-page--kids .ml-play{background:#ffcf59;color:#38202c;box-shadow:0 0 0 10px #ffffff20}
.ml-page--kids .ml-pricing{background:radial-gradient(circle at 5% 50px,#ffab4033 0 34px,transparent 35px),radial-gradient(circle at 96% 180px,#bb91b54d 0 64px,transparent 65px),#f4edf4;border-bottom:1px solid #e4d5df}
.ml-page--kids .ml-pricing-intro h2{color:#38202c}
.ml-page--kids .ml-toggles{gap:18px}
.ml-page--kids .ml-toggles button{background:#fff;border:2px solid #d3b8c7;border-radius:18px;box-shadow:0 5px 0 #ac799930;color:#532838}
.ml-page--kids .ml-toggles button:hover{background:#fae7eb}
.ml-page--kids .ml-toggles button[aria-expanded=true]{background:#cb1010;border-color:#cb1010;color:#fff;box-shadow:0 5px 0 #a40c17}
.ml-page--kids .ml-toggles button[data-event=public]{border-color:#ba9eaf;color:#532838}
.ml-page--kids .ml-toggles button[data-event=public][aria-expanded=true]{background:#672d49;border-color:#672d49;color:#fff;box-shadow:0 5px 0 #3b162b}
.ml-page--kids .ml-package{--card-accent:#b6202c;--card-tint:#fff0f0;border:1px solid #e8c4c9;border-top:7px solid var(--card-accent);border-radius:22px;padding:25px 21px;background:linear-gradient(var(--card-tint),white 220px);box-shadow:0 6px 0 #38202c08}
.ml-page--kids .ml-package:nth-child(2){--card-accent:#672d49;--card-tint:#f4ebf3;border-color:#d6bdd0;border-top-color:var(--card-accent)}
.ml-page--kids .ml-package:nth-child(3){--card-accent:#85434c;--card-tint:#f8ecee;border-color:#dfc4cd;border-top-color:var(--card-accent)}
.ml-page--kids .ml-package:nth-child(4){--card-accent:#87540b;--card-tint:#fff1d5;border-color:#e9c997;border-top-color:#ffab40}
.ml-page--kids .ml-package h3{color:var(--card-accent)}
.ml-page--kids .ml-package-index{color:var(--card-accent);margin-bottom:22px}
.ml-page--kids .ml-package-index span:last-child{font-size:26px;line-height:1}
.ml-page--kids .ml-package .ml-button{background:var(--card-accent);box-shadow:none;border-radius:12px}
.ml-page--kids .ml-package .ml-button:hover{filter:brightness(.9)}
.ml-page--kids .ml-features li:before{color:var(--card-accent)}
.ml-page--kids .ml-anchor{background:#ffffffa6;border-radius:8px;padding:7px 9px;color:#68545f}
.ml-page--kids .ml-gallery img{border:6px solid #fff;box-shadow:0 7px 0 #38202c0c;border-radius:23px}
.ml-page--kids .ml-gallery figure:first-child{transform:rotate(-2deg)}
.ml-page--kids .ml-gallery figure:last-child{transform:rotate(2deg)}
.ml-page--kids .ml-steps article{padding:26px;border-radius:22px;background:#fff0d6}
.ml-page--kids .ml-steps article:nth-child(2){background:#f2e4ee}
.ml-page--kids .ml-steps article:nth-child(3){background:#fce7e7}
.ml-page--kids .ml-steps{gap:20px}
.ml-page--kids .ml-faq{background:#f4edf4}
.ml-page--kids .ml-faq details{background:#fffdfb;border:1px solid #e0cedb;border-radius:15px;margin-bottom:12px;padding:20px}
.ml-page--kids .ml-contact:before,.ml-page--kids .ml-contact:after{content:"✦";position:absolute;color:#ffab40;font-size:70px;top:20%;left:0;transform:rotate(-12deg);pointer-events:none}
.ml-page--kids .ml-contact:after{left:auto;right:0;top:50%;color:#e00f0f;font-size:52px;transform:rotate(12deg)}
.ml-page--kids .ml-contact h2 em{color:#85434c}

.ml-page--adults{--ml-red:#a82a31;--ml-ink:#302029;--ml-muted:#6d6068;--ml-paper:#fffcfa;--ml-lilac:#f2eaee;--ml-line:#dfd0d8;background:#fffcfa}
.ml-page--adults .ml-hero{position:relative;isolation:isolate;color:#fff9f5;--ml-muted:#d6c5ce;--ml-line:#806a78;--ml-ink:#fff9f5;padding-block:88px}
.ml-page--adults .ml-hero:before{content:"";position:absolute;inset:0;background:#291821;box-shadow:0 0 0 100vmax #291821;clip-path:inset(0 -100vmax);z-index:-1}
.ml-page--adults .ml-hero h1{font-family:Georgia,"Times New Roman",serif;font-weight:400;font-size:clamp(48px,5.6vw,82px);letter-spacing:-.055em;line-height:1.13}
.ml-page--adults .ml-hero h1 em{color:#ffcf59;font-style:italic}
.ml-page--adults .ml-kicker{color:#a82a31}
.ml-page--adults .ml-hero .ml-kicker{color:#ffcf59}
.ml-page--adults .ml-button{background:#e00f0f;border-radius:5px;box-shadow:none}
.ml-page--adults .ml-button:hover{background:#cb1010}
.ml-page--adults .ml-hero .ml-button,.ml-page--adults .ml-video-section .ml-button{background:#ffcf59;color:#302029!important}
.ml-page--adults .ml-hero .ml-button:hover,.ml-page--adults .ml-video-section .ml-button:hover{background:#ffe18e}
.ml-page--adults .ml-hero .ml-ghost{background:transparent;border-color:#917181;color:#fff9f5!important}
.ml-page--adults .ml-hero .ml-ghost:hover{background:#4b2b3b}
.ml-page--adults .ml-photo-frame{border-radius:100px 8px 8px 8px;transform:none;border:1px solid #845c70}
.ml-page--adults .ml-photo-frame img{transform:none;object-position:center 25%}
.ml-page--adults .ml-star{display:none}
.ml-page--adults .ml-photo-label{border-radius:4px;transform:none;background:#fff0d6;border:1px solid #e2bf88;left:-22px;bottom:60px;color:#38202c}
.ml-page--adults .ml-stamp{border:1px solid #a98755;background:#291821;color:#ffcf59;border-radius:6px;transform:none;width:120px;height:110px;bottom:10px;right:0}
.ml-page--adults .ml-stamp strong{font-size:24px;letter-spacing:.04em;font-weight:400}
.ml-page--adults .ml-stamp small{font-size:11px;margin-top:8px;color:#e1ced7}
.ml-page--adults .ml-trust{background:#f2eaee;border:0;padding-block:32px}
.ml-page--adults .ml-trust strong{color:#8b354b;font-family:Georgia,serif;font-weight:400}
.ml-page--adults .ml-video-section{background:#38202c}
.ml-page--adults .ml-video-section .ml-kicker{color:#ffcf59}
.ml-page--adults .ml-video-section p{color:#e1cfd8}
.ml-page--adults .ml-story img{border-radius:6px}
.ml-page--adults .ml-pricing{background:#f2eaee;border-block:1px solid #dfced9}
.ml-page--adults .ml-toggles button{border:1px solid #c7adbd;border-radius:5px;background:#fffcfa}
.ml-page--adults .ml-toggles button:hover{background:#f0dfe8}
.ml-page--adults .ml-toggles button[aria-expanded=true]{background:#e00f0f;border-color:#e00f0f;color:white}
.ml-page--adults .ml-duration-toggle{background:#e2d2dc;border-radius:5px}
.ml-page--adults .ml-duration-toggle button{border-radius:3px}
.ml-page--adults .ml-package{border-radius:7px;border:1px solid #dcc5d2;border-top:3px solid #a77689;background:#fffcfa;padding:30px 25px}
.ml-page--adults .ml-package-index{letter-spacing:.16em;font-weight:500;color:#963044}
.ml-page--adults .ml-package h3{font-family:Georgia,serif;font-weight:400;letter-spacing:-.035em}
.ml-page--adults .ml-package .ml-price{letter-spacing:-.035em}
.ml-page--adults .ml-anchor{color:#6d5b65}
.ml-page--adults .ml-gallery img{border-radius:5px}
.ml-page--adults .ml-faq{background:#f4edf4}
.ml-page--adults .ml-faq details{border-color:#dfced9}
.ml-page--adults .ml-contact h2 em{color:#a82a31}

@media(max-width:700px){
 .ml-page--kids .ml-hero h1{font-size:clamp(40px,11.3vw,55px)}
 .ml-page--kids .ml-photo-frame{border-radius:80px 25px 80px 25px}
 .ml-page--kids .ml-occasion{padding:20px 15px;border-radius:20px}
 .ml-page--kids .ml-occasion h3{font-size:19px}
 .ml-page--kids .ml-occasions{gap:14px}
 .ml-page--kids .ml-trust{padding:23px 10px;border-radius:20px}
 .ml-page--kids .ml-video-section{border-radius:30px 30px 0 0}
 .ml-page--kids .ml-package{padding:27px 24px}
 .ml-page--kids .ml-contact:before,.ml-page--kids .ml-contact:after{display:none}
 .ml-page--adults .ml-hero{padding-block:50px}
 .ml-page--adults .ml-hero h1{font-size:clamp(44px,12vw,60px)}
 .ml-page--adults .ml-photo-label{left:0;max-width:240px;font-size:11px;bottom:125px}
 .ml-page--adults .ml-photo-label b{font-size:14px}
 .ml-page--adults .ml-stamp{bottom:0}
}

/* Shared brand treatment across both audiences. */
.ml-page a:focus-visible,.ml-page button:focus-visible,.ml-page summary:focus-visible{outline-color:#cb1010}
.ml-page--kids .ml-package .ml-button{background:#e00f0f;color:#fff!important}
.ml-page--kids .ml-package .ml-button:hover{background:#cb1010;filter:none}
.ml-page--kids .ml-package h3{color:#38202c}
.ml-page--kids .ml-package-index{color:#a82a31}
.ml-page--kids .ml-toggles button[data-event=public][aria-expanded=true]{background:#38202c;border-color:#38202c;box-shadow:0 5px 0 #291821}
.ml-page--adults .ml-hero .ml-button:not(.ml-ghost),.ml-page--adults .ml-video-section .ml-button{background:#e00f0f;color:#fff!important}
.ml-page--adults .ml-hero .ml-button:not(.ml-ghost):hover,.ml-page--adults .ml-video-section .ml-button:hover{background:#cb1010}
.ml-page--adults .ml-package{border-top-color:#cb1010}
