.bfm-page{--bfm-ink:#4b4d55;--bfm-rose:#a65d77;color:var(--bfm-ink);background:#fff;font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;font-size:18px;line-height:1.95;letter-spacing:.015em;width:100%;margin:0 auto}.bfm-page *{box-sizing:border-box}.bfm-page .bfm-section{padding:64px max(24px,calc((100% - 800px)/2));margin:0!important;scroll-margin-top:100px}.bfm-page h1,.bfm-page h2{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-weight:500;line-height:1.55;letter-spacing:.025em;background:none;border:0;padding:0;box-shadow:none;color:var(--bfm-ink)}.bfm-page h1{font-family:Georgia,serif;font-size:56px;margin:0 0 28px}.bfm-page h2{font-size:32px;margin:0 0 30px}.bfm-page h3{font-size:21px;line-height:1.8;margin:26px 0 16px;padding:0;border:0;background:none;color:var(--bfm-ink)}.bfm-page h2:before,.bfm-page h2:after,.bfm-page h3:before,.bfm-page h3:after{display:none}.bfm-page p{margin:0 0 20px}.bfm-page ul{margin:20px 0 28px;padding-left:1.4em}.bfm-page li{margin:12px 0}.bfm-page .wp-block-buttons{margin:28px 0;display:flex;flex-wrap:wrap;gap:14px}.bfm-page .wp-block-button{max-width:100%}.bfm-page .wp-block-button__link{display:inline-block;padding:16px 30px;border-radius:30px;text-decoration:none;line-height:1.7;font-size:17px;white-space:normal;overflow-wrap:anywhere;text-align:center}.bfm-page .bfm-primary a{color:#fff;background:var(--bfm-rose);border:1px solid var(--bfm-rose)}.bfm-page .bfm-secondary a{color:#76586a;background:#fff;border:1px solid #d8cbd6;font-size:16px}.bfm-page a{color:#89536b;text-underline-offset:5px}.bfm-page a:focus-visible,.bfm-page summary:focus-visible{outline:3px solid #677d99;outline-offset:4px}.bfm-page .bfm-hero{background:linear-gradient(130deg,#f5f1f8,#f0f7fa 70%,#fff);padding-top:80px;padding-bottom:72px}.bfm-page .bfm-hero>p:first-child,.bfm-page .bfm-program>p:first-child{font-family:Georgia,serif;letter-spacing:.16em;color:#96677b}.bfm-page .bfm-tint{background:#f6f7fa}.bfm-page .bfm-included{background:#fcfafb}.bfm-page .bfm-included ul{list-style:none;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:12px}.bfm-page .bfm-included li{margin:0;padding:18px 20px;background:#fff;border:1px solid #e6e1e9;border-radius:12px}.bfm-page .bfm-detail{border-bottom:1px solid #eceaf0}.bfm-page .bfm-experience{background:#f4f8fb}.bfm-page .bfm-program{background:#f3eff7}.bfm-page .bfm-support,.bfm-page .bfm-next{background:#fafafa}.bfm-page .bfm-next{font-size:16px;border-top:1px solid #e8e5ec}.bfm-page .bfm-next h2{font-size:27px}.bfm-page .bfm-closing{background:linear-gradient(120deg,#f3f7fb,#f6f0f6)}.bfm-page .bfm-booking{border-top:1px solid #e6e0e9}.bfm-page .bfm-booking p:last-child{font-size:15px;color:#73717a}.bfm-preview-note{padding:10px 20px;background:#f2eff5;text-align:center;color:#67626e;font:14px/1.8 sans-serif}body:has(>.bfm-preview-note){margin:0}html{scroll-behavior:smooth}@media(max-width:600px){.bfm-page{font-size:17px;line-height:1.95}.bfm-page .bfm-section{padding:42px 24px}.bfm-page h1{font-size:38px}.bfm-page h2{font-size:26px;margin-bottom:24px}.bfm-page h3{font-size:20px}.bfm-page .bfm-included ul{grid-template-columns:1fr}.bfm-page .wp-block-buttons,.bfm-page .wp-block-button{width:100%}.bfm-page .wp-block-button__link{width:100%;padding:15px 20px}.bfm-page .bfm-hero{padding-top:50px;padding-bottom:50px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Venue selection: scoped to Beauty for Me only. */
.bfm-page .bfm-reception fieldset{border:0;padding:0;margin:24px 0}
.bfm-page .bfm-reception legend{font-size:24px;font-weight:600;margin-bottom:20px}
.bfm-page .bfm-venues{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.bfm-page .bfm-venues label{display:flex;align-items:center;gap:10px;padding:22px 16px;border:1px solid #c9c5d3;border-radius:12px;background:#fff;cursor:pointer}
.bfm-page .bfm-venues label:has(input:checked){background:#f4eef5;border-color:#a65c77;box-shadow:0 0 0 1px #a65c77}
.bfm-page .bfm-venues input{appearance:auto;width:20px;height:20px;flex-shrink:0;accent-color:#a65c77}
.bfm-page .bfm-reception textarea{display:block;box-sizing:border-box;width:100%;font:inherit;line-height:1.8;padding:18px;margin:12px 0;background:#fff;color:#45414a;border:1px solid #d8d3dc;border-radius:8px;resize:vertical}
.bfm-page .bfm-copy{font:inherit;border:1px solid #a65c77;border-radius:8px;padding:12px 20px;background:#fff;color:#784459;cursor:pointer}
.bfm-page .bfm-copy:disabled{opacity:.5;cursor:default}
.bfm-page .bfm-reservation-note{background:#edf3f7;padding:22px;border-radius:10px}
.bfm-page .bfm-line{display:inline-block;padding:18px 28px;border-radius:40px;background:#a65c77;color:#fff;text-decoration:none;text-align:center;font-weight:600}
.bfm-page .bfm-line[hidden]{display:none!important}
.bfm-page .bfm-reception :focus-visible{outline:3px solid #6b5890;outline-offset:4px}
.bfm-page .bfm-small,.bfm-page .bfm-copy-status{font-size:15px}
@media(max-width:600px){.bfm-page .bfm-venues{grid-template-columns:1fr}.bfm-page .bfm-line{display:block;padding:17px 15px}.bfm-page .bfm-reception legend{font-size:22px}}
