@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Outfit:wght@500;600;700&display=swap');
:root{--ink:#172e51;--muted:#425674;--paper:#eef4fa;--line:#c2d0e0;--yellow:#ffdb73}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;background:var(--paper);color:var(--ink);font:18px/1.6 'DM Sans',Arial,sans-serif}header,main,footer{max-width:1180px;margin:auto}a{color:inherit;text-underline-offset:5px}a:focus-visible{outline:3px solid #a34e00;outline-offset:5px}header{padding:30px 40px;display:flex;align-items:center;justify-content:space-between;gap:20px}header>a:last-child{font-size:16px}.brand{text-decoration:none;font-size:23px;letter-spacing:-.04em}.brand strong{font:600 30px Outfit,Arial,sans-serif}.brand span{color:#9c6200;margin-left:7px}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:Outfit,Arial,sans-serif;letter-spacing:-.035em;line-height:1.06;font-weight:600}h1{font-size:clamp(48px,5.6vw,74px)}h1 span{color:#385b8b}.hero{padding:25px 40px 40px;display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:42px}.eyebrow{font-size:13px;font-weight:700;letter-spacing:.1em;margin-bottom:19px}.intro{max-width:490px;color:var(--muted);margin-top:25px;font-size:20px}.facts{font-size:16px;margin:23px 0;color:var(--ink);font-weight:500;max-width:420px}.button{display:inline-block;text-decoration:none;background:var(--yellow);color:var(--ink);padding:16px 23px;border-radius:8px;font-size:18px;font-weight:700;box-shadow:0 3px 0 #dcb95b}.button:hover{background:#ffcf4b}.hero figure{background:#fff;padding:10px 10px 0;border:1px solid var(--line);border-radius:12px;overflow:hidden;box-shadow:0 10px 35px #172e5108}.hero img{display:block;width:100%;height:390px;object-fit:cover;object-position:57% center;border-radius:6px}.hero figcaption{font-size:15px;color:var(--muted);text-align:center;padding:15px 8px;line-height:1.45}.essentials{margin:0 40px;padding:26px 0;display:grid;grid-template-columns:repeat(3,1fr);gap:24px;border-block:1px solid var(--line)}.essentials strong,.essentials span{display:block}.essentials strong{font:600 25px/1.3 Outfit,Arial,sans-serif}.essentials span{font-size:16px;color:var(--muted);margin-top:7px}.bottom{padding:40px 40px 26px;display:grid;grid-template-columns:1fr 1fr;gap:45px;align-items:center}.teacher h2{font-size:38px;margin-bottom:19px}.teacher>p:not(.eyebrow){color:var(--muted);font-size:18px;max-width:480px}.teacher>a{display:inline-block;margin-top:18px;font-size:16px}.booking{background:var(--ink);color:#fff;border-radius:12px;padding:30px}.booking .eyebrow{color:var(--yellow)}.booking h3{font-size:32px;margin-bottom:16px}.booking p:not(.eyebrow){font-size:18px;color:#e2eaf5}.booking .payment{font-size:16px!important;margin-top:22px}.contact{display:inline-block;font-size:17px;margin-top:18px;color:var(--yellow)}.booking .button{margin-top:18px}.note{margin:0 40px;color:var(--muted);font-size:15px;max-width:1000px}footer{padding:28px 40px;display:flex;justify-content:space-between;gap:25px;font-size:14px;color:var(--muted)}footer div{display:flex;gap:20px}@media(max-width:750px){header{padding:22px}.brand{font-size:19px}.brand strong{font-size:25px}header>a:last-child{font-size:14px}.hero{padding:20px 22px 30px;grid-template-columns:1fr;gap:28px}h1{font-size:clamp(47px,9vw,64px)}.intro{font-size:19px;max-width:none}.facts{font-size:16px}.hero img{height:290px}.hero figcaption{font-size:14px}.essentials{margin:0 22px;padding:23px 0;grid-template-columns:1fr;gap:20px}.essentials p{display:grid;grid-template-columns:1fr 1fr;gap:15px;align-items:center}.essentials strong{font-size:22px}.essentials span{font-size:16px;margin:0}.bottom{padding:30px 22px 24px;grid-template-columns:1fr;gap:28px}.teacher h2{font-size:34px}.booking{padding:25px}.note{margin:0 22px;font-size:15px}footer{padding:25px 22px;flex-wrap:wrap}}@media(max-width:380px){header{align-items:flex-start}.brand{font-size:17px}.brand strong{font-size:22px}header>a:last-child{font-size:12px}h1{font-size:43px}.eyebrow{font-size:11px}.essentials p{grid-template-columns:1fr}.button{font-size:17px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.brand-logo{display:block;width:230px;max-width:100%;height:auto}header .brand{flex:0 1 230px}@media(max-width:750px){.brand-logo{width:180px}header .brand{flex-basis:180px}}

.faq{padding:48px 40px;display:grid;grid-template-columns:1fr 1.35fr;gap:45px}.faq h2{font-size:38px}.faq h2 em{font-style:normal;color:#385b8b}.questions details{border-top:1px solid var(--line);padding:18px 0}.questions details:last-child{border-bottom:1px solid var(--line)}.questions summary{cursor:pointer;font-size:20px;font-weight:700;line-height:1.4}.questions details p{color:var(--muted);margin-top:12px;font-size:18px}.questions summary:focus-visible{outline:3px solid #a34e00;outline-offset:5px}@media(max-width:750px){.faq{padding:35px 22px;grid-template-columns:1fr;gap:25px}.faq h2{font-size:34px}.questions summary{font-size:19px}}

.hero img{height:auto;aspect-ratio:1.573;object-fit:contain}.serenade{padding:18px 40px 40px;display:grid;grid-template-columns:1fr 1fr;gap:45px;align-items:center}.serenade figure{background:white;padding:10px;border:1px solid var(--line);border-radius:12px}.serenade img{display:block;width:100%;height:auto;border-radius:6px}.serenade figcaption{font-size:14px;color:var(--muted);padding:12px 5px 4px;line-height:1.5}.serenade h2{font-size:38px}.serenade div>p:not(.eyebrow){margin:20px 0;color:var(--muted)}.serenade a{font-size:16px}@media(max-width:750px){.serenade{padding:15px 22px 30px;grid-template-columns:1fr;gap:25px}.serenade h2{font-size:34px}}
