:root{--bg:#efe5d4;--ink:#29382a;--muted:#4c584a;--accent:#354737;--accent-ink:#fff6e7;--surface:#e2d3b8;--line:#b9b69e}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.6 Manrope,Arial,sans-serif}h1,h2,h3,p,figure{margin:0}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}a,button,label{ -webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}img{display:block;width:100%;height:100%;object-fit:cover}svg{width:24px;height:24px;flex-shrink:0}button,a,input,textarea{outline-offset:5px}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid currentColor}a,button{transition:background .2s,color .2s,transform .2s}a:hover,button:hover{filter:brightness(1.08)}.wrap{width:min(1220px,calc(100% - 88px));margin-inline:auto}.demo{background:var(--ink);color:var(--bg);font-size:13px;text-align:center;padding:8px 16px}.skip{position:absolute;left:12px;top:-100px;z-index:100;background:var(--bg);padding:12px}.skip:focus{top:12px}header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-block:25px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;font-size:24px;letter-spacing:-1px}.brand img{width:48px;height:48px;border-radius:50%;object-fit:contain}.brand b{white-space:nowrap}nav{display:flex;gap:28px}nav a{padding:12px 0}.head-cta{display:flex;gap:16px;align-items:center;border-bottom:1px solid;padding:10px 0;font-weight:700}.hero{display:grid;grid-template-columns:1fr 1fr;gap:50px;padding-block:64px 70px;align-items:center}.eyebrow{font-size:12px;letter-spacing:1.9px;font-weight:800;display:block}.hero h1{font-family:'Playfair Display',Georgia,serif;font-weight:500;font-size:clamp(56px,5.8vw,84px);line-height:1.06;letter-spacing:-3.5px;margin:25px 0}.hero p{font-size:18px;line-height:1.8;color:var(--muted);margin-bottom:30px}em{font-weight:inherit}.btn{display:inline-flex;justify-content:center;align-items:center;gap:18px;min-height:55px;background:var(--accent);color:var(--accent-ink);padding:16px 24px;border:0;font-weight:700}.hero-foot{display:flex;align-items:center;gap:18px;font-size:13px;line-height:1.6;margin-top:46px}.seal{font-family:Georgia,serif;font-size:23px;line-height:1;text-align:center;border:1px solid var(--line);border-radius:50%;padding:20px 15px;transform:rotate(-10deg)}.seal i{font-size:14px}.hadi-art{position:relative;height:580px}.cake-photo{border-radius:180px 180px 12px 12px;object-position:center 65%}.round-note{position:absolute;right:-22px;bottom:40px;background:#a7663e;color:#fff3df;width:128px;height:128px;border-radius:50%;display:grid;place-content:center;text-align:center;font-size:12px;font-weight:700;letter-spacing:1px;transform:rotate(12deg)}.photo-note{position:absolute;left:20px;bottom:18px;font-size:11px;letter-spacing:1px;background:var(--bg);color:var(--ink);padding:8px 12px}.ribbon{background:var(--accent);color:var(--accent-ink);display:flex;justify-content:center;gap:50px;padding:21px;align-items:center;font-weight:600}.section{padding-block:88px}.section-title{margin-bottom:40px}.section-title h2,h2{font-family:'Playfair Display',Georgia,serif;font-weight:500;font-size:clamp(38px,4vw,56px);line-height:1.15;letter-spacing:-1.5px}.section-title h2{margin:16px 0}.section-title p{color:var(--muted)}.dessert-grid{display:grid;grid-template-columns:1fr 1fr;gap:36px}.dessert-grid article:nth-child(2){padding-top:70px}.dessert-image{height:410px;background:var(--surface);overflow:hidden}.dessert-image img{transition:transform .5s}.dessert-image:hover img{transform:scale(1.025)}.card-line{display:flex;justify-content:space-between;font-size:12px;margin-top:20px;gap:12px}.card-line span{letter-spacing:1.5px;font-weight:800}.card-line a{text-decoration:underline;text-underline-offset:3px}h3{font-size:26px;line-height:1.25;letter-spacing:-.6px}.dessert-grid h3{font-family:'Playfair Display',Georgia,serif;font-size:34px;margin:14px 0}.dessert-grid p{max-width:440px;color:var(--muted)}.text-link{display:inline-flex;align-items:center;gap:16px;border:0;border-bottom:1px solid;background:none;color:inherit;padding:12px 0;font-weight:700;min-height:46px}.choose{background:var(--surface);padding:76px 0}.choose-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px}.choose h2{margin:18px 0 22px}.choose-grid>div>p{max-width:420px}form{min-width:0}fieldset{border:0;margin:0;padding:0}legend{font-weight:800;margin-bottom:14px}.options{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:24px}.options label{position:relative}.options input{position:absolute;opacity:0;inset:0;width:100%;height:100%;margin:0;cursor:pointer}.options span{display:block;border:1px solid var(--line);padding:13px 16px;border-radius:4px;font-size:15px;font-weight:700}.options input:checked+span{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.options input:focus-visible+span{outline:3px solid var(--ink);outline-offset:3px}.field{font-weight:700;display:block}textarea{display:block;resize:vertical;width:100%;border:1px solid var(--line);color:var(--ink);background:var(--bg);padding:15px;margin:10px 0 20px;border-radius:4px}textarea::placeholder{color:var(--muted);opacity:1}.small{font-size:13px;line-height:1.7;color:var(--muted);margin-top:18px}.contacts{background:var(--accent);color:var(--accent-ink);padding:70px 0}.contact-row{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.contacts h2{margin-top:18px}.contacts .small{color:inherit;opacity:.85}.address{font-size:22px;margin-bottom:12px}.bottom{display:flex;align-items:center;justify-content:space-between;padding-block:24px;font-size:13px}.bottom a{display:flex;align-items:center;gap:12px;min-height:44px}dialog{border:0;padding:44px;background:var(--bg);color:var(--ink);width:min(600px,calc(100% - 32px));max-height:90dvh;overflow:auto}dialog::backdrop{background:#17131ebd;backdrop-filter:blur(5px)}dialog h2{font-size:40px;margin:20px 0}dialog pre{white-space:pre-wrap;overflow-wrap:anywhere;font:15px/1.7 Manrope,Arial,sans-serif;background:var(--surface);padding:20px;margin:24px 0}.close{position:absolute;top:6px;right:8px;width:44px;height:44px;border:0;background:transparent;color:inherit;font-size:30px}
.rave{--bg:#17131e;--ink:#f8edf4;--muted:#c6b9ca;--accent:#f66ac2;--accent-ink:#211126;--surface:#292032;--line:#59455d}.rave header .brand{font-size:26px;font-style:italic;letter-spacing:-1.7px}.rave .hero{padding-top:55px;gap:65px}.rave .hero h1,.rave h2,.rave h3{font-family:Manrope,Arial,sans-serif;font-weight:800;letter-spacing:-3px}.rave .hero h1{font-size:clamp(70px,7.6vw,110px);line-height:.94}.rave .hero h1 em{color:var(--accent);font-style:normal}.rave .btn{border-radius:0}.rave-art{position:relative;height:610px;padding:18px 15px}.rave-art>img{position:relative;transform:rotate(3deg);object-position:50% 45%;filter:saturate(.85)}.photo-outline{position:absolute;inset:0;border:2px solid var(--accent);transform:rotate(-4deg)}.rave-stamp{position:absolute;bottom:25px;right:-12px;background:var(--accent);color:var(--accent-ink);padding:20px 24px;font-size:28px;font-weight:800;font-style:italic;line-height:1;transform:rotate(-7deg)}.rave .photo-note{left:20px;top:24px;bottom:auto;max-width:75%;font-size:10px}.big-star{font-size:72px;line-height:1;color:var(--accent)}.rave .hero-foot{margin-top:30px}.rave .ribbon{transform:rotate(-1deg);font-size:20px;letter-spacing:3px}.dance-grid{display:grid;grid-template-columns:1fr 1fr .9fr;gap:22px}.dance-card{position:relative;min-height:450px;overflow:hidden}.dance-card::after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 20%,#17131ef2 100%)}.dance-card>img{position:absolute;inset:0}.dance-card>div{position:absolute;bottom:24px;left:24px;right:24px;z-index:1}.dance-card h3{font-size:35px;margin:12px 0;letter-spacing:-1px}.dance-card .eyebrow{font-size:10px}.dance-note{padding:28px;background:#46325b;display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;gap:22px}.dance-note h3{font-size:27px;letter-spacing:-1px}.dance-note p{font-size:15px}.rave .choose h2 em{font-style:normal;color:var(--accent)}.rave .contacts{background:#f66ac2}.rave .contacts .eyebrow{color:#211126}
.bambino{--bg:#f7e7b9;--ink:#33304b;--muted:#575168;--accent:#61508d;--accent-ink:#fff3d8;--surface:#e5b46f;--line:#a69a7c;font-family:Nunito,Arial,sans-serif}.bambino .brand{font-family:Nunito,Arial,sans-serif;font-size:29px}.bambino .hero h1,.bambino h2,.bambino h3{font-family:Nunito,Arial,sans-serif;font-weight:900;letter-spacing:-2px}.bambino .hero h1{font-size:clamp(54px,5.4vw,76px);line-height:1.08}.bambino .hero h1 em{font-style:normal;color:#61508d}.bambino .btn{border-radius:50px}.bambino-art{position:relative;height:550px;padding:12px 10px}.bambino-photo{height:100%;overflow:hidden;border-radius:45% 45% 12% 12%;border:10px solid #73bfb5;transform:rotate(3deg)}.bambino-photo img{transform:rotate(-3deg) scale(1.08)}.shape{position:absolute;z-index:2}.flower{left:-16px;top:-20px;font-size:130px;line-height:1;color:#ea9747;transform:rotate(12deg)}.dot{width:60px;height:60px;border-radius:50%;background:#61508d;bottom:-12px;left:24px}.play-tag{position:absolute;bottom:20px;right:-20px;transform:rotate(-9deg);background:#b7ddd1;border:2px solid #33304b;border-radius:18px;padding:24px;font-weight:900;font-size:26px;line-height:1.1}.age{background:#73bfb5;border-radius:25px;padding:12px 22px;font-size:25px;font-weight:900}.age small{font-size:12px;display:block;text-align:center}.bambino-band{background:#73bfb5;display:flex;justify-content:center;align-items:center;gap:60px;font-weight:900;font-size:28px;padding:23px;color:#233d39}.bambino-band i{font-style:normal;font-size:36px}.bambino-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.learning-photo{height:480px;border-radius:32px;overflow:hidden;transform:rotate(-2deg)}.learning-list article{display:flex;gap:22px;padding:24px 0;border-bottom:1px solid var(--line)}.learning-list article>span{border-radius:50%;width:46px;height:46px;flex-shrink:0;background:#73bfb5;display:grid;place-content:center;font-weight:900}.learning-list article:nth-child(2)>span{background:#e9ae6b}.learning-list article:nth-child(3)>span{background:#b9a3d3}.learning-list h3{font-size:25px;letter-spacing:-.6px;margin-bottom:12px}.bambino .choose{background:#b7ddd1}.bambino .options span{border-radius:24px}.bambino textarea{border-radius:18px}.bambino .contacts{background:#61508d}.bambino dialog{border-radius:24px}.hub{--bg:#e5dfd2;--ink:#242623}.hub h1{font-size:clamp(45px,6vw,85px);line-height:1.05;letter-spacing:-3px;margin:25px 0}.hub-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:45px}.hub-card{background:var(--bg);color:var(--ink);display:block;overflow:hidden;border-radius:10px}.hub-card>img{height:330px}.hub-card>div{padding:25px}.hub-card h2{font-size:34px;margin:15px 0 26px}.hub-card>div>span:last-child{display:flex;gap:20px;align-items:center;font-weight:700}.hub-card .eyebrow{font-size:10px}
@media(min-width:1600px){.hero{padding-block:90px}.hero h1{font-size:86px}}@media(max-width:1050px){.wrap{width:calc(100% - 48px)}nav{display:none}.head-cta{font-size:13px}.hero{gap:30px}.hero h1{font-size:60px}.rave .hero h1{font-size:80px}.hadi-art{height:510px}.rave-art{height:530px}.bambino-art{height:480px}.choose-grid,.bambino-grid{gap:36px}.dance-grid{grid-template-columns:1fr 1fr}.dance-note{grid-column:1/-1;display:grid;grid-template-columns:auto 1fr 1fr;align-items:center}.dance-note .text-link{grid-column:2/4}.ribbon{gap:25px;font-size:14px}.bambino-band{gap:30px}.hub-grid{gap:14px}.hub-card h2{font-size:27px}}
@media(max-width:650px){.wrap{width:calc(100% - 36px)}.demo{font-size:11px;padding:7px 10px}.demo span{display:block}.brand{font-size:22px}.brand img{width:40px;height:40px}header{padding-block:16px}.head-cta{font-size:0;gap:0;border:1px solid var(--line);padding:10px}.head-cta svg{width:22px;height:22px}.hero{grid-template-columns:1fr;gap:36px;padding-block:38px 48px}.eyebrow{font-size:10px;letter-spacing:1.4px}.hero h1{font-size:56px;letter-spacing:-2.8px;margin:20px 0}.hero p{font-size:17px;line-height:1.7}.hero-foot{margin-top:28px}.hadi-art{height:460px;margin-inline:7px}.round-note{width:105px;height:105px;font-size:10px;right:-8px}.photo-note{font-size:9px;left:12px;max-width:90%}.ribbon{gap:16px;padding:18px;font-size:12px;flex-wrap:wrap}.ribbon span:nth-child(4),.ribbon span:nth-child(5){display:none}.section{padding-block:55px}.section-title h2,h2{font-size:37px}.dessert-grid{grid-template-columns:1fr;gap:35px}.dessert-grid article:nth-child(2){padding-top:0}.dessert-image{height:360px}.dessert-grid h3{font-size:30px}.choose{padding-block:50px}.choose-grid,.contact-row,.bambino-grid{grid-template-columns:1fr;gap:32px}.choose-grid>div>p{max-width:none}.options{gap:8px}.options span{font-size:14px;padding:12px 14px}.btn{font-size:14px;padding:16px 20px}.contacts{padding-block:48px}.contacts h2{font-size:38px}.address{font-size:20px}.bottom{font-size:11px;gap:16px}.bottom svg{width:18px}.rave .hero{padding-top:38px;gap:30px}.rave .hero h1{font-size:81px;letter-spacing:-4px}.rave-art{height:490px;margin:0 8px}.rave-stamp{right:-4px;font-size:24px}.rave .ribbon{font-size:15px;letter-spacing:1px}.rave h2{font-size:37px;letter-spacing:-2px}.dance-grid{gap:16px;grid-template-columns:1fr}.dance-card{min-height:440px}.dance-note{display:flex;grid-column:auto;padding:26px}.dance-note .text-link{grid-column:auto}.bambino .hero h1{font-size:51px;letter-spacing:-2px}.bambino-art{height:460px;margin:0 10px}.flower{font-size:100px;top:-14px}.play-tag{right:-9px;font-size:23px;padding:19px}.bambino-band{gap:15px;font-size:18px;padding:18px 10px}.bambino-band i{font-size:22px}.learning-photo{height:360px}.learning-list article{padding:20px 0}.learning-list h3{font-size:24px}.bambino h2{font-size:38px}dialog{padding:34px 23px}dialog h2{font-size:34px}dialog pre{padding:15px;font-size:14px}.hub-grid{grid-template-columns:1fr}.hub-card>img{height:340px}.hub h1{font-size:52px;letter-spacing:-2px}.hub-card h2{font-size:34px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

.hero-copy,.hero>*{min-width:0}@media(max-width:650px){.rave .hero h1{font-size:clamp(60px,18vw,81px)}}


body{overflow-x:clip}

.rave .ribbon{transform:none}

.bambino-band .band-dot{display:block;width:6px;height:6px;border-radius:50%;background:currentColor;flex-shrink:0}
