@font-face{font-family:"LP Mincho";src:url("assets/fonts/ZenOldMincho-Medium-opt-v1.woff2") format("woff2");font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:"LP Hand";src:url("assets/fonts/KleeOne-UGC-Subset-opt-v1.woff2") format("woff2");font-weight:600;font-style:normal;font-display:swap}
:root{color-scheme:light;font-family:"LP Mincho","Yu Mincho","Hiragino Mincho ProN",serif;font-weight:500;color:#39363a;background:#fff5f7}
*{box-sizing:border-box}
body{margin:0}
.landing-page{container-type:inline-size;width:100%;max-width:750px;margin-inline:auto;background:#fff;box-shadow:0 0 70px #97465b12}
.image-section{position:relative;margin:0;padding:0;line-height:0}
.image-section img{display:block;width:100%;height:auto}
.retouch-visual{position:relative}
.retouch-visual>.retouch-overlay{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;-webkit-mask-image:var(--retouch-mask);mask-image:var(--retouch-mask);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}
.retouch-visual--hero{--retouch-mask:radial-gradient(ellipse 4.4% 2.8% at 61.3% 15.9%,#000 68%,transparent 100%),radial-gradient(ellipse 5.3% 3.2% at 40.5% 38.4%,#000 68%,transparent 100%)}
.retouch-visual--concerns{--retouch-mask:radial-gradient(ellipse 3.5% 2.7% at 4.9% 15.3%,#000 68%,transparent 100%),radial-gradient(ellipse 3.4% 2.7% at 95.9% 16.5%,#000 68%,transparent 100%),radial-gradient(ellipse 3.3% 2.3% at 4% 27.9%,#000 68%,transparent 100%),radial-gradient(ellipse 3.3% 2.4% at 4.4% 40.3%,#000 68%,transparent 100%),radial-gradient(ellipse 3.2% 2.6% at 96.6% 36%,#000 68%,transparent 100%),radial-gradient(ellipse 5% 3.1% at 11% 62.2%,#000 68%,transparent 100%),radial-gradient(ellipse 5% 3.1% at 90.3% 61.9%,#000 68%,transparent 100%)}
.retouch-visual--ugc{--retouch-mask:radial-gradient(ellipse 4% 5% at 6.7% 23.9%,#000 68%,transparent 100%),radial-gradient(ellipse 2.6% 4.2% at 22.8% 83.3%,#000 68%,transparent 100%)}
.retouch-visual--ugc{container-type:inline-size}
.ugc-hand-title{position:absolute;inset:0;margin:0;color:#f52666;font-family:"LP Hand","Yu Mincho",serif;font-weight:600;pointer-events:none}
.ugc-hand-title__intro{position:absolute;top:37%;left:21%;color:#343236;font-family:"LP Mincho","Yu Mincho",serif;font-size:4.8cqw;line-height:1.1;white-space:nowrap}
.ugc-hand-title__ugc{position:absolute;top:46%;left:15%;font-size:13.5cqw;line-height:1;letter-spacing:-.045em;white-space:nowrap;-webkit-text-stroke:.008em currentColor}
.ugc-hand-title__line{position:absolute;top:68%;left:25%;display:flex;align-items:baseline;gap:.12em;font-size:5.6cqw;line-height:1.1;letter-spacing:-.04em;white-space:nowrap;-webkit-text-stroke:.008em currentColor}
.ugc-hand-title__line>span:last-child{color:#343236}
.retouch-visual--examples{--retouch-mask:radial-gradient(ellipse 3.3% 3.2% at 5.6% 15.9%,#000 68%,transparent 100%),radial-gradient(ellipse 3.3% 3.2% at 94.9% 15.9%,#000 68%,transparent 100%),radial-gradient(ellipse 4.5% 4% at 10.3% 88.3%,#000 68%,transparent 100%),radial-gradient(ellipse 4.1% 4% at 93.8% 88.2%,#000 68%,transparent 100%)}
.retouch-visual--followers{--retouch-mask:radial-gradient(ellipse 3.7% 3% at 4.5% 9%,#000 68%,transparent 100%),radial-gradient(ellipse 4% 3.4% at 34% 6.6%,#000 68%,transparent 100%),radial-gradient(ellipse 3.3% 3.1% at 57.6% 20.8%,#000 68%,transparent 100%),radial-gradient(ellipse 2.5% 2% at 74.6% 64.5%,#000 68%,transparent 100%),radial-gradient(ellipse 4.5% 4.1% at 11% 84.6%,#000 68%,transparent 100%),radial-gradient(ellipse 4% 4% at 95.4% 87.9%,#000 68%,transparent 100%)}
.hero-visual{position:relative}
/* A short pause joins two gentle edge fades without a visible colour band. */
.section-bridge{--fade:16px;--pause:22px;--enter:16px;--tone:253 250 248;position:relative;z-index:2;display:block;height:calc(var(--fade) + var(--pause));margin:calc(-1 * var(--fade)) 0 0;padding:0;line-height:0;pointer-events:none;background:linear-gradient(180deg,rgb(var(--tone) / 0) 0,rgb(var(--tone) / .03) calc(var(--fade) * .17),rgb(var(--tone) / .16) calc(var(--fade) * .38),rgb(var(--tone) / .5) calc(var(--fade) * .65),rgb(var(--tone) / .84) calc(var(--fade) * .86),rgb(var(--tone)) var(--fade),rgb(var(--tone)) 100%)}
.section-bridge::after{content:"";position:absolute;top:100%;left:0;width:100%;height:var(--enter);background:linear-gradient(180deg,rgb(var(--tone)),rgb(var(--tone) / .65) 30%,rgb(var(--tone) / 0) 100%)}
.section-bridge--a{--fade:clamp(70px,16cqw,118px);--pause:16px;--enter:24px;--tone:250 249 248}
.section-bridge--b{--fade:clamp(28px,7cqw,52px);--pause:18px;--enter:20px;--tone:249 247 245}
.section-bridge--c{--fade:16px;--pause:22px;--enter:12px;--tone:253 250 248}
.section-bridge--d{--fade:12px;--pause:26px;--enter:18px;--tone:253 250 249}
.section-bridge--e{--fade:12px;--pause:22px;--enter:18px;--tone:253 249 248}
.registration-hotspot{position:absolute;left:4.7%;top:78.6%;width:90.6%;height:9.2%;overflow:hidden;border-radius:999px;cursor:pointer;-webkit-tap-highlight-color:transparent}
.registration-hotspot::after{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(110deg,transparent 32%,#ffffff33 50%,transparent 68%);transform:translateX(-120%);pointer-events:none}
.registration-hotspot:hover{background:#ffffff12}
.registration-hotspot:focus-visible{outline:4px solid #5c1847;outline-offset:3px;background:#ffffff20}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;line-height:1.8}
dialog{width:min(90cqw,420px);padding:30px 24px;border:1px solid #f8d3de;border-radius:20px;text-align:center;box-shadow:0 20px 80px #3b193d26}
dialog::backdrop{background:#36232d66}
dialog h2{font-size:1.25rem;margin:0 0 16px}
dialog p{font-size:1rem;line-height:1.8;margin:0 0 24px}
dialog button{font:inherit;font-weight:700;padding:12px 32px;min-height:48px;border:0;border-radius:999px;color:white;background:#e92663;cursor:pointer}
dialog button:focus-visible{outline:3px solid #5c1847;outline-offset:3px}
@keyframes cta-breathe{0%,100%{box-shadow:0 0 0 0 #e9266300}50%{box-shadow:0 0 0 6px #e9266326,0 8px 22px #d81c5333}}
@keyframes cta-sheen{0%,16%{transform:translateX(-120%);opacity:0}24%{opacity:1}48%{transform:translateX(120%);opacity:0}100%{transform:translateX(120%);opacity:0}}
@media(prefers-reduced-motion:no-preference){.registration-hotspot{animation:cta-breathe 4.8s ease-in-out infinite;transition:background .2s}.registration-hotspot::after{animation:cta-sheen 4.8s ease-in-out infinite}}

.examples-visual{position:relative;aspect-ratio:1024/1275;overflow:hidden}
.examples-artboard{position:relative}
.examples-artboard{container-type:inline-size}
.ugc-feature-label{position:absolute;top:37.5%;left:50%;transform:translateX(-50%);margin:0;color:#f32262;font-size:3.2cqw;font-weight:500;line-height:1;letter-spacing:.12em;white-space:nowrap}
.ugc-feature-bridge{position:relative;height:clamp(54px,9cqw,72px);background:linear-gradient(180deg,#fffafa 0%,#fff8f9 55%,#fff7f8 100%)}
.ugc-feature-bridge::after{content:"";position:absolute;left:50%;top:45%;width:22px;height:15px;transform:translate(-50%,-50%);background:#f76791;clip-path:polygon(0 0,100% 0,50% 100%)}
.ugc-feature-callout{position:relative;aspect-ratio:1024/350;overflow:hidden;background:#fff7f8}
.ugc-feature-callout img{position:absolute;left:-16%;bottom:0;width:132%;max-width:none;height:auto}
.beginner-intro{position:relative;aspect-ratio:1024/515;overflow:hidden;container-type:inline-size}
.beginner-feature-label{position:absolute;top:5.8%;left:9.3%;display:grid;place-items:center;width:24.5%;height:35%;margin:0;border-radius:48% 55% 45% 44%;background:#ffe5eb;color:#f32262;font-size:4.2cqw;font-weight:500;line-height:1;white-space:nowrap}
.beginner-intro::after{content:"";position:absolute;inset:auto 0 0;height:44px;background:linear-gradient(180deg,#fff0,#fffefd)}
.beginner-content{padding:clamp(22px,4.5cqw,42px) clamp(14px,3cqw,30px) clamp(16px,3cqw,28px);background:linear-gradient(180deg,#fffefd 0%,#fffafb 74%,#fff8fa 100%);text-align:center;line-height:1.5}
.beginner-lead{margin:0;color:#3c393a;font-size:clamp(20px,4.2cqw,35px);font-weight:700;letter-spacing:.01em}
.beginner-lead strong{color:#f32262;font-weight:700}
.beginner-note{margin:clamp(12px,2cqw,20px) 0 clamp(24px,4cqw,38px);color:#4b4548;font-size:clamp(14px,2.8cqw,22px)}
.beginner-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(7px,1.4cqw,14px)}
.beginner-card{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;min-width:0;min-height:clamp(150px,28cqw,235px);padding:clamp(38px,6cqw,54px) 5px clamp(11px,1.8cqw,18px);border-radius:clamp(15px,2.4cqw,24px);background:#fff;box-shadow:0 5px 20px #d7799530}
.beginner-number{position:absolute;top:10px;left:10px;display:grid;place-items:center;width:clamp(34px,5cqw,48px);height:clamp(34px,5cqw,48px);border-radius:50%;background:#ff9bb5;color:#fff;font-family:Georgia,serif;font-size:clamp(18px,2.9cqw,28px);line-height:1}
.beginner-card svg{width:clamp(65px,12cqw,112px);height:clamp(65px,12cqw,112px);margin:auto auto clamp(3px,1cqw,9px);padding:clamp(10px,1.5cqw,14px);border-radius:50%;background:#fff0f3;fill:none;stroke:#39383a;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}
.beginner-card:nth-child(3) svg path:first-child{fill:#fce98c;stroke:#333}.beginner-card:nth-child(3) svg path:last-child{stroke:#46a98b}
.beginner-card p{margin:0;color:#383538;font-size:clamp(14px,3.1cqw,22px);font-weight:700;white-space:nowrap}
.beginner-card em{color:#f32262;font-style:normal}
.beginner-sidejob{width:fit-content;max-width:100%;margin:clamp(24px,4cqw,38px) auto 0;padding:clamp(10px,1.8cqw,16px) clamp(18px,3cqw,30px);border-radius:999px;background:#fff0f4;color:#413a3e;font-size:clamp(16px,3cqw,25px);font-weight:700}
.beginner-sidejob strong{color:#f32262;font-weight:700}
.followers-intro{position:relative;aspect-ratio:1024/690;overflow:hidden;background:#fffdfa}
.followers-intro::after{content:"";position:absolute;inset:auto 0 0;height:10%;background:linear-gradient(180deg,#fff0,#fffaf9)}
.followers-photo{width:100%;height:100%!important;object-fit:cover}
.followers-reason{position:absolute;top:5%;left:6%;display:flex;flex-direction:column;align-items:center;justify-content:center;width:clamp(110px,20%,160px);aspect-ratio:1.1;border-radius:55% 47% 52% 48%;background:#ffe5ebdf;transform:rotate(-9deg);line-height:1}
.followers-reason{color:#f32262;font-size:clamp(23px,4.2cqw,32px);font-weight:500;white-space:nowrap}
.followers-headline{position:absolute;top:30%;left:5%;width:50%;margin:0;color:#353437;font-size:clamp(29px,6cqw,60px);font-weight:700;line-height:1.18;text-shadow:0 2px 15px #ffffffb8}
.followers-headline strong{display:block;margin-top:.1em;color:#f32262;font-size:1.35em;font-weight:700;white-space:nowrap}
.followers-summary{padding:clamp(24px,4cqw,40px) 16px clamp(28px,4cqw,42px);background:linear-gradient(180deg,#fffaf9,#fff8fa);text-align:center;line-height:1.5}
.followers-summary p{margin:0;color:#3b373a;font-size:clamp(19px,3.5cqw,29px);font-weight:700}
.followers-summary p+p{margin-top:.4em;font-size:clamp(14px,2.6cqw,20px);font-weight:500}
.followers-summary strong{color:#f32262;font-weight:700}
.followers-details{position:relative;aspect-ratio:1024/686;overflow:hidden;background:#fff8fa}
.followers-details>img{position:absolute;left:0;bottom:0;width:100%;height:auto}
.followers-details>.retouch-overlay{pointer-events:none;-webkit-mask-image:var(--retouch-mask);mask-image:var(--retouch-mask);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}
.video-preview{position:absolute;top:9.6%;width:20.4%;height:22.5%;padding:0;border:0;border-radius:clamp(8px,2.2cqw,22px) clamp(8px,2.2cqw,22px) 0 0;overflow:hidden;background:#161616;cursor:pointer;line-height:1}
.video-preview--beauty{left:10%}.video-preview--app{left:40%}.video-preview--service{left:70%}
.examples-visual .video-preview video{display:block;width:100%;height:100%;object-fit:cover}
.video-preview::before{content:"";position:absolute;z-index:1;top:0;left:25%;width:50%;height:4.5%;background:#080808;border-radius:0 0 8px 8px}
.video-play{position:absolute;z-index:2;right:6px;bottom:8px;display:grid;place-items:center;width:clamp(22px,3.4cqw,32px);height:clamp(22px,3.4cqw,32px);border-radius:50%;background:#fffffff0;box-shadow:0 2px 10px #0003}
.video-play::after{content:"";width:0;height:0;margin-left:2px;border-top:5px solid transparent;border-bottom:5px solid transparent;border-left:7px solid #d92a61}
.video-preview:hover .video-play{background:#fff}
.video-preview:focus-visible{outline:3px solid #a91d4c;outline-offset:3px}
.video-dialog{width:min(92cqw,500px);max-height:94dvh;padding:14px;border-radius:18px;overflow:auto}
.video-dialog-header{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px}
.video-dialog-header h2{font-size:1rem;margin:0;text-align:left}
.video-dialog .video-close{flex:none;display:grid;place-items:center;width:44px;height:44px;min-height:44px;padding:0;background:#fff0f4;color:#a91d4c;font-size:26px;line-height:1}
.video-dialog video{display:block;width:100%;height:min(72dvh,720px);object-fit:contain;background:#080808;border-radius:8px}
.video-dialog .video-error{margin:12px 0 0;font-size:14px}
.video-error a{color:#a91d4c;text-decoration:underline}

.academy-section{padding:clamp(52px,8cqw,72px) clamp(18px,4cqw,32px) clamp(36px,6cqw,52px);background:linear-gradient(180deg,#fff8fa,#fff5f7 70%);text-align:center;line-height:1.8}
.academy-eyebrow{display:flex;justify-content:center;align-items:center;gap:10px;margin:0 0 24px;color:#9a6778;font-size:clamp(12px,2.3cqw,17px);letter-spacing:.02em}
.academy-eyebrow span{padding:4px 12px;border-radius:999px;background:#ffe5ee;color:#d52e60;white-space:nowrap}
.academy-section h2{margin:0 0 clamp(28px,5cqw,42px);color:#3b3439;font-size:clamp(22px,4cqw,30px);font-weight:500;line-height:1.45}
.academy-section h2 span{display:block;margin-bottom:12px;color:#e92c64;font-size:clamp(31px,6cqw,46px);line-height:1.3;letter-spacing:-.02em}
.academy-visual{position:relative;container-type:inline-size;aspect-ratio:1.65;overflow:hidden;border-radius:36px 36px 8px 8px}
.academy-visual img{display:block;width:100%;height:100%;object-fit:cover}
.academy-visual-lead{position:absolute;top:15%;left:6%;margin:0;color:#44383e;text-align:left;font-size:5.2cqw;line-height:1.7}.academy-visual-lead strong{color:#f32262;background:linear-gradient(transparent 78%,#ffd8e3 78%,#ffd8e3 94%,transparent 94%)}
.academy-duration{position:absolute;left:7%;bottom:13%;display:flex;align-items:center;gap:8px;margin:0;color:#b9476b;line-height:1.5}.academy-duration>strong{font-size:13cqw;line-height:1}.academy-duration>span{font-size:3.4cqw;text-align:left}
.academy-description{position:relative;margin:-12px 0 0;padding:clamp(28px,5cqw,42px) clamp(14px,3cqw,24px);border-radius:24px 24px 36px 36px;background:#fff;box-shadow:0 12px 36px #d9809b15}
.academy-description p{margin:0;font-size:clamp(15px,2.8cqw,21px);line-height:1.9}
.academy-description .academy-lead{margin-bottom:18px;font-size:clamp(21px,4cqw,30px);line-height:1.65}.academy-lead strong{color:#f32262;font-weight:700}
.academy-path{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:28px 0 0;padding:0;list-style:none}
.academy-path li{position:relative;padding:10px 2px 14px;border-bottom:2px solid #f9cedb;line-height:1.5}.academy-path li+li::before{content:"›";position:absolute;left:-10px;top:40%;color:#ef92ae;font-size:24px}
.academy-path span{display:block;margin-bottom:7px;color:#c8899d;font-size:13px;letter-spacing:.1em}.academy-path strong{color:#b63e64;font-size:clamp(14px,2.6cqw,20px);font-weight:500;white-space:nowrap}
.instructor-section{position:relative;padding:clamp(68px,10cqw,88px) clamp(22px,5cqw,42px) clamp(80px,12cqw,108px);overflow:hidden;background:#fff5f7;line-height:1.6}
.instructor-inner{position:relative;max-width:666px;margin-inline:auto}
.voices-section{padding:clamp(48px,8cqw,72px) clamp(20px,5cqw,42px) clamp(64px,10cqw,90px);background:#fff5f7;text-align:center;line-height:1.8}
.voices-section h2{margin:0 0 16px;color:#f32262;font-size:clamp(32px,6cqw,46px);font-weight:700;line-height:1.4}
.voices-notice{margin:0 0 clamp(28px,5cqw,40px);color:#8b707a;font-size:clamp(12px,2.2cqw,15px);line-height:1.7}
.voices-list{display:grid;gap:clamp(18px,3cqw,26px)}
.pricing-section{padding:clamp(48px,8cqw,72px) clamp(20px,5cqw,42px) 32px;background:#fff5f7;text-align:center;line-height:1.8}
.pricing-section h2{margin:0 0 28px;color:#f32262;font-size:clamp(32px,6cqw,46px);line-height:1.4}
.pricing-card{padding:clamp(28px,5cqw,42px) clamp(18px,4cqw,32px);border-radius:clamp(28px,5cqw,40px);background:#fff;box-shadow:0 8px 32px #eaa5b71f}
.pricing-duration{margin:0 0 12px;font-size:clamp(16px,2.8cqw,21px)}
.pricing-amount{margin:0;color:#f32262;font-size:clamp(66px,12cqw,90px);font-weight:700;line-height:1.3}.pricing-amount span{font-size:.29em}
.pricing-plus{margin:12px 0;color:#ee7698;font-size:32px;line-height:1}
.pricing-benefit{margin:0;font-size:clamp(18px,3.4cqw,26px);line-height:1.7}.pricing-benefit strong{color:#f32262;font-size:1.2em}.pricing-benefit strong span{font-size:.72em}.pricing-benefit em{font-style:normal;color:#f32262}
.pricing-payback{margin:28px 0 18px;padding:20px 10px;border-radius:22px;background:#fff0f4;font-size:clamp(20px,3.8cqw,28px);line-height:1.6}.pricing-payback strong{color:#f32262}
.pricing-note{margin:0;color:#806c75;text-align:left;font-size:clamp(12px,2.2cqw,15px);line-height:1.8}
.offer-section{padding:clamp(36px,6cqw,54px) clamp(18px,4cqw,32px) clamp(48px,8cqw,70px);background:radial-gradient(ellipse at 100% 15%,#eaf1d9 0%,transparent 42%),radial-gradient(ellipse at 0% 100%,#eff2df 0%,transparent 36%),#fffcfa;text-align:center;line-height:1.7}
.offer-inner{position:relative}
.offer-brand{margin:0 0 28px;color:#3b3439;text-align:left;font-size:clamp(22px,4.2cqw,32px);font-style:italic;line-height:1.3}.offer-brand span{display:block;font-size:.55em;letter-spacing:.08em;font-style:normal}
.offer-story{display:grid;grid-template-columns:55% 45%;align-items:center;margin:0 0 30px;text-align:left}
.offer-section .offer-story h2{font-size:clamp(19px,4.4cqw,33px);line-height:1.8}.offer-story h2 span{display:block;width:fit-content;background:linear-gradient(transparent 72%,#ffd8e3 72%,#ffd8e3 89%,transparent 89%);white-space:nowrap}
.offer-story-copy>p{margin:14px 0 0;font-size:clamp(13px,2.5cqw,19px);line-height:1.7}.offer-story-copy .offer-story-tag{display:inline-block;padding:8px 12px;background:#f885a4;color:#fff;transform:rotate(-3deg);font-size:clamp(14px,2.8cqw,21px)}
.offer-photo{position:relative;aspect-ratio:1;overflow:hidden;border-radius:48% 48% 42% 48%;box-shadow:0 12px 30px #a4b08320}.offer-photo img{position:absolute;left:-18.2%;top:-43.2%;width:301%;max-width:none;height:auto}
.offer-campaign{position:relative;padding:clamp(28px,5cqw,40px) clamp(14px,3cqw,24px);border-radius:48% 44% 28px 28px / 26px 32px 28px 28px;background:#fff;box-shadow:0 12px 40px #d9809b20}
.offer-course{margin:0 0 24px;font-size:clamp(18px,3.3cqw,25px);line-height:1.6}.offer-course strong{color:#f32262;font-size:clamp(23px,4.5cqw,34px);font-weight:700}
.offer-campaign h3{margin:0;color:#3b3439;font-size:clamp(20px,3.9cqw,29px);line-height:1.5}
.offer-button .offer-free{display:grid;place-items:center;flex:none;width:clamp(42px,8cqw,62px);height:clamp(42px,8cqw,62px);border-radius:50%;background:#fff;color:#ef2868;font-size:clamp(15px,2.9cqw,22px)}
.offer-campaign .offer-button{gap:clamp(7px,1.7cqw,13px);padding:14px 10px;font-size:clamp(16px,3.2cqw,24px)}
.offer-limit{display:inline-block;margin:0 0 20px;padding:7px 28px;border-radius:999px;background:#fff0f4;color:#e92c64;font-size:clamp(18px,3.4cqw,25px);font-weight:700;letter-spacing:.08em}
.offer-section h2{margin:0;color:#3b3439;font-size:clamp(23px,4.6cqw,35px);line-height:1.45}
.offer-price{display:flex;align-items:baseline;justify-content:center;flex-wrap:wrap;gap:clamp(10px,2cqw,18px);margin:20px 0;color:#f32262;line-height:1.3}
.offer-usual{color:#8b707a;font-size:clamp(17px,3cqw,23px)}
.offer-usual del{text-decoration-thickness:1px}.offer-arrow{font-size:clamp(22px,4cqw,30px)}
.offer-price strong{font-size:clamp(68px,12cqw,94px);font-weight:700}.offer-price strong span{font-size:.4em}
.offer-copy{margin:22px 0 28px;color:#51414a;font-size:clamp(16px,3cqw,23px);line-height:1.9}
.offer-button{position:relative;display:flex;align-items:center;justify-content:center;gap:14px;overflow:hidden;min-height:76px;padding:18px 14px;border-radius:999px;background:linear-gradient(135deg,#ff4d83,#e92663);color:#fff;text-decoration:none;font-size:clamp(18px,3.3cqw,26px);font-weight:700;line-height:1.45;box-shadow:0 8px 22px #d81c5326}
.offer-button>span:last-child{font-size:1.4em}.offer-button::after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 32%,#ffffff33 50%,transparent 68%);transform:translateX(-120%);pointer-events:none}
.offer-button:hover{background:#e92663}.offer-button:focus-visible{outline:3px solid #5c1847;outline-offset:5px}
@media(prefers-reduced-motion:no-preference){.offer-button::after{animation:cta-sheen 4.8s ease-in-out infinite}}
.offer-section{padding-top:clamp(42px,7cqw,64px);background:radial-gradient(ellipse at 100% 20%,#edf2df 0%,transparent 44%),radial-gradient(ellipse at 0% 100%,#f5e9e6 0%,transparent 48%),#fffcfa}
.offer-brand{margin-bottom:34px;font-size:clamp(25px,4.8cqw,36px);letter-spacing:.02em}
.offer-story{grid-template-columns:54% 46%;align-items:center;margin-bottom:clamp(34px,6cqw,46px)}
.offer-section .offer-story h2{font-size:clamp(19px,5.7cqw,41px);font-weight:500;line-height:1.8;letter-spacing:-.045em}
.offer-story h2 span{background:linear-gradient(transparent 69%,#ffdae5 69%,#ffdae5 88%,transparent 88%)}
.offer-story-copy>p{max-width:95%;margin-top:18px;font-size:clamp(13px,2.8cqw,20px);line-height:1.8}
.offer-story-copy .offer-story-tag{padding:10px 14px;background:#ed789b;box-shadow:3px 4px 0 #ffe4ed;font-size:clamp(14px,3.2cqw,23px);letter-spacing:.03em}
.offer-photo{border:5px solid #fff;border-radius:48% 48% 18% 18%;box-shadow:0 14px 32px #87965e24;transform:rotate(3deg)}
.offer-photo img{transform:rotate(-3deg) scale(1.06)}
.offer-campaign{padding:clamp(30px,5.6cqw,44px) clamp(14px,3cqw,24px) clamp(22px,4cqw,30px);border-radius:36px;background:linear-gradient(180deg,#fff 0%,#fff 80%,#fff8fa 100%);box-shadow:0 14px 40px #d49aab1c,0 0 0 1px #fff}
.offer-course{margin-bottom:26px;font-size:clamp(17px,3.3cqw,24px);letter-spacing:.02em}
.offer-course strong{display:inline-block;margin-top:6px;font-size:clamp(23px,5.1cqw,37px);letter-spacing:-.025em}
.offer-limit{position:relative;margin-bottom:18px;padding:6px 24px;background:#ffe7ef;color:#e52e65;font-size:clamp(17px,3.5cqw,24px)}
.offer-limit::before,.offer-limit::after{content:"";position:absolute;top:50%;width:22px;height:1px;background:#f3a8be}.offer-limit::before{right:calc(100% + 12px)}.offer-limit::after{left:calc(100% + 12px)}
.offer-campaign h3{font-size:clamp(24px,5cqw,36px);font-weight:500;letter-spacing:.03em}.offer-campaign h3 span{color:#ef2868}
.offer-price{align-items:center;gap:clamp(12px,2.5cqw,20px);margin:12px 0 18px}
.offer-usual{font-size:clamp(17px,3.4cqw,24px)}.offer-price strong{font-size:clamp(88px,18cqw,122px);line-height:1.15}.offer-price strong span{font-size:.3em}
.offer-copy{margin:16px 0 24px;font-size:clamp(15px,3.1cqw,22px);letter-spacing:.02em}
.offer-campaign .offer-button{display:grid;grid-template-columns:auto 1fr auto;gap:10px;min-height:clamp(84px,18cqw,108px);padding:14px 16px;font-size:clamp(18px,4.5cqw,28px);letter-spacing:.01em;box-shadow:0 8px 0 #d91d58,0 16px 26px #ed4a7a26}
.offer-button .offer-free{width:clamp(44px,9cqw,64px);height:clamp(44px,9cqw,64px);font-size:clamp(16px,3.3cqw,23px)}
.offer-button>span:last-child{font-size:1.5em;font-weight:500}
.results-section{padding:clamp(40px,7cqw,60px) clamp(20px,5cqw,42px) clamp(40px,7cqw,60px);background:#fff5f7;text-align:center;line-height:1.8}
.results-eyebrow{margin:0 0 12px;color:#9b707f;font-size:clamp(13px,2.4cqw,18px)}
.results-section h2{margin:0 0 26px;color:#f32262;font-size:clamp(32px,6cqw,46px);line-height:1.4}
.results-highlight{margin:0;color:#51414a;font-size:clamp(18px,3cqw,24px)}
.results-highlight strong{display:block;color:#f32262;font-size:clamp(62px,12cqw,92px);font-weight:700;line-height:1.3}
.results-highlight strong span{margin-left:.08em;font-size:.42em}
.results-period{margin:14px 0 24px;font-size:clamp(15px,2.7cqw,20px)}
.results-image{display:block;overflow:hidden;border-radius:clamp(18px,3cqw,26px);box-shadow:0 8px 32px #eaa5b71f}
.results-image img{display:block;width:100%;height:auto}
.results-image:focus-visible{outline:3px solid #a91d4c;outline-offset:5px}
.results-image-note,.results-note{margin:12px 0 0;color:#8b707a;font-size:clamp(12px,2.2cqw,15px);line-height:1.7}
.results-months{margin:24px auto 20px;padding:18px 22px;border-radius:20px;background:#fff;text-align:left;font-size:clamp(16px,2.8cqw,21px)}
.results-months summary{color:#c74770;cursor:pointer}
.results-months table{width:100%;margin-top:18px;border-collapse:collapse;font-variant-numeric:tabular-nums}
.results-months th,.results-months td{padding:9px 12px;font-weight:500}
.results-months th{text-align:left}.results-months td,.results-months thead th:last-child{text-align:right}
.results-months tbody tr:nth-child(odd){background:#fff8fa}.results-months tbody tr:last-child{color:#f32262;background:#ffedf2}
.voice-card{padding:clamp(26px,4.8cqw,38px);border-radius:clamp(24px,4cqw,34px);background:#fff;box-shadow:0 8px 32px #eaa5b71f;text-align:left}
.voice-sample{margin:0 0 14px;color:#9a7783;font-size:clamp(12px,2.2cqw,15px);letter-spacing:.05em}
.voice-card h3{margin:0 0 18px;color:#e92c64;font-size:clamp(23px,4cqw,30px);font-weight:700;line-height:1.5}
.voice-card>p:last-child{margin:0;color:#464045;font-size:clamp(16px,2.8cqw,21px);line-height:1.9}
.instructor-eyebrow{display:flex;justify-content:center;align-items:center;gap:12px;margin:0 0 18px;color:#f22c67;font-size:clamp(16px,2.5cqw,20px);font-weight:700;letter-spacing:.08em}
.instructor-eyebrow span{color:#9e858e;font-family:Arial,sans-serif;font-size:.66em;font-weight:700;letter-spacing:.2em}
.instructor-section h2{margin:0 0 clamp(34px,6cqw,50px);color:#3b3439;font-size:clamp(32px,6.6cqw,52px);font-weight:700;line-height:1.32;letter-spacing:.015em;text-align:center}
.instructor-section h2 em{position:relative;isolation:isolate;color:#f32262;font-style:normal;white-space:nowrap}
.instructor-section h2 em::after{content:"";position:absolute;z-index:-1;left:-.08em;right:-.08em;bottom:.06em;height:.22em;border-radius:55% 45% 50% 45%;background:#fbd8e2;transform:rotate(-2deg)}
.instructor-profile{display:flex;flex-direction:column;align-items:center}
.instructor-photo{position:relative;width:min(78%,470px);aspect-ratio:1;overflow:hidden;border:8px solid #fff;border-radius:clamp(28px,5cqw,42px);background:#f6f4eb;box-shadow:0 16px 42px #d9809b30}
.instructor-photo img{position:absolute;left:-18.2%;top:-43.2%;width:301%;max-width:none;height:auto}
.instructor-copy{width:100%;min-width:0}
.instructor-name{display:flex;justify-content:center;flex-wrap:wrap;align-items:baseline;column-gap:16px;row-gap:0;margin:clamp(24px,4cqw,34px) 0 clamp(26px,4cqw,36px);color:#3b3439;line-height:1.35;text-align:center}
.instructor-name strong{color:#f32262;font-size:clamp(34px,5.8cqw,48px);font-weight:700}
.instructor-name span{font-family:Arial,sans-serif;font-size:clamp(14px,2.6cqw,19px);font-weight:600}
.instructor-facts{display:grid;gap:0;margin:0;padding:clamp(10px,2.5cqw,18px) clamp(20px,4.5cqw,34px);border-radius:clamp(24px,4cqw,34px);background:#fff;box-shadow:0 8px 32px #eaa5b71f;list-style:none}
.instructor-facts li{position:relative;padding:clamp(15px,2.7cqw,21px) 0 clamp(15px,2.7cqw,21px) clamp(28px,4.5cqw,38px);color:#464045;font-size:clamp(16px,3cqw,22px);line-height:1.55}
.instructor-facts li+li{border-top:1px solid #f8e6eb}
.instructor-facts li::before{content:"";position:absolute;top:calc(clamp(15px,2.7cqw,21px) + .55em);left:1px;width:clamp(12px,2cqw,16px);height:clamp(12px,2cqw,16px);border-radius:50%;background:#f888a7;box-shadow:0 0 0 5px #fff1f5}
.instructor-specialties{margin-top:clamp(36px,6cqw,50px);text-align:center}
.instructor-specialties h3{display:inline-block;margin:0 0 18px;padding:0 4px 5px;border-bottom:3px solid #f8a7bd;color:#f32262;font-size:clamp(21px,3.8cqw,29px);font-weight:700}
.instructor-specialties ul{display:flex;justify-content:center;flex-wrap:wrap;gap:clamp(8px,1.6cqw,12px);margin:0;padding:0;list-style:none}
.instructor-specialties li{padding:clamp(9px,1.7cqw,12px) clamp(15px,2.5cqw,22px);border-radius:999px;background:#ffedf2;color:#4a3d43;font-size:clamp(14px,2.4cqw,18px);font-weight:700;line-height:1.35}
@media(max-width:600px){.instructor-section{padding:60px 20px 78px}.instructor-eyebrow{margin-bottom:14px}.instructor-section h2{margin-bottom:30px}.instructor-photo{width:min(100%,420px);border-width:6px}.instructor-name{margin:22px 0 26px}.instructor-facts{padding:8px 20px}.instructor-facts li{padding-left:28px}.instructor-specialties{margin-top:34px}}
.section-bridge--a{--pause:36px}.section-bridge--b{--pause:44px}.section-bridge--c{--pause:38px}.section-bridge--d{--pause:48px}.section-bridge--e{--pause:40px}
.content-bridge{--from:#fff5f7;--to:#fff5f7;position:relative;display:block;overflow:hidden;height:clamp(54px,10cqw,76px);background:var(--from);pointer-events:none;line-height:0}
.content-bridge--curve::after{content:"";position:absolute;left:-20%;bottom:0;width:140%;height:72%;border-radius:50% 50% 0 0 / 100% 100% 0 0;background:var(--to)}
.content-bridge--reverse{background:var(--to)}
.content-bridge--reverse::before{content:"";position:absolute;left:-20%;top:0;width:140%;height:68%;border-radius:0 0 50% 50% / 0 0 100% 100%;background:var(--from)}
.content-bridge--quiet{height:clamp(48px,8cqw,64px)}
.content-bridge--quiet::after{content:"";position:absolute;top:50%;left:50%;width:4px;height:4px;border-radius:50%;background:#edc5d2;box-shadow:-13px 0 0 #edc5d2,13px 0 0 #edc5d2;transform:translate(-50%,-50%)}
.content-bridge--pause{height:clamp(64px,11cqw,82px)}
.academy-section{padding-bottom:32px}.instructor-section{padding-bottom:40px}
.results-section{padding-bottom:32px;background:#fffcfa}.voices-section{padding-bottom:38px}
.pricing-section{background:#fffcfa}
.feature-heading{padding:26px 16px 24px;background:#fffafb;text-align:center;line-height:1.3}
.feature-marker{display:flex;align-items:center;justify-content:center;gap:.2em;width:fit-content;min-width:154px;margin:0 auto;padding:10px 28px;border:1px solid #f6c9d8;border-radius:999px;background:#fff0f5;color:#e92c64;font-family:"LP Mincho","Yu Mincho",serif;font-size:clamp(21px,4cqw,28px);font-weight:500;letter-spacing:.06em;line-height:1.25}
.feature-marker span{font-size:1.05em;letter-spacing:0}
.examples-visual{aspect-ratio:1024/600}
.feature-flow{position:relative;aspect-ratio:1024/675;overflow:hidden;background:#fffafb}
.feature-flow img{position:absolute;top:-88.8889%;left:0;width:100%;height:auto}
.beginner-intro{aspect-ratio:1024/295}
.beginner-intro>img{position:absolute;top:-74.5763%;left:0;width:100%;height:auto}
.followers-headline{top:25%}
@font-face{font-family:"LP Body";src:url("assets/fonts/MPLUSRounded1c-Medium-opt-v1.woff2") format("woff2");font-weight:500;font-style:normal;font-display:swap}
:where(.academy-eyebrow,.academy-description>p:not(.academy-lead),.academy-duration span,.academy-path,.instructor-facts,.instructor-specialties li,.results-eyebrow,.results-period,.results-note,.results-image-note,.results-months,.voices-notice,.voice-card>p,.pricing-duration,.pricing-benefit,.pricing-note,.pricing-payback,.offer-copy,.offer-usual,.offer-story-copy>p,.beginner-lead,.beginner-note,.beginner-sidejob,.beginner-card p,.followers-summary p,dialog p){font-family:"LP Body","Yu Gothic","Meiryo",sans-serif}
.instructor-name span{font-family:"LP Body","Yu Gothic","Meiryo",sans-serif}
#bridge-pricing{height:clamp(30px,5cqw,44px)}
.pricing-section{padding:24px clamp(16px,4cqw,30px) 24px}
.pricing-section h2{margin-bottom:18px;font-size:clamp(30px,7cqw,44px)}
.pricing-card{padding:24px clamp(16px,4cqw,28px);border-radius:26px}
.pricing-duration{margin-bottom:4px;font-size:clamp(15px,3.8cqw,20px);line-height:1.6}
.pricing-amount{display:flex;align-items:baseline;justify-content:center;gap:4px;margin:0 0 18px;font-size:clamp(82px,20cqw,108px);line-height:1.1;letter-spacing:-.035em}
.pricing-amount>span{font-size:.32em;letter-spacing:0}.pricing-amount small{margin-left:2px;font-size:.52em}
.pricing-benefit{padding:14px 12px 16px;border:1px solid #fbe0e9;border-radius:18px;background:#fff8fb;line-height:1.4}
.pricing-benefit p{margin:0}.pricing-benefit-label{color:#9b526b;font-size:clamp(14px,3.8cqw,19px)}
.pricing-benefit .pricing-benefit-value{display:flex;align-items:baseline;justify-content:center;flex-wrap:wrap;gap:10px;margin:7px 0 6px}
.pricing-benefit-value strong{font-size:clamp(30px,8cqw,44px);line-height:1.3;letter-spacing:-.02em}.pricing-benefit-value>span{color:#e92c64;font-size:clamp(17px,4.5cqw,24px)}
.pricing-benefit-qualifier{color:#c63b66;font-size:clamp(17px,4.5cqw,23px);font-weight:500}
.pricing-payback{margin:18px 0 14px;padding:14px 8px;border-radius:16px;font-size:clamp(20px,5.2cqw,27px);line-height:1.5}
.pricing-payback strong{font-size:1.05em}
.pricing-note{font-size:clamp(13px,3.4cqw,15px);line-height:1.75;color:#796b71}
.academy-description p,.instructor-facts li,.voice-card>p:last-child,.results-months,.beginner-note,.followers-summary p+p,.offer-copy{font-size:clamp(18px,4.4cqw,24px);line-height:1.8}
.academy-description .academy-lead{font-size:clamp(23px,5.5cqw,32px)}
.academy-eyebrow{flex-wrap:wrap;font-size:clamp(16px,3.8cqw,20px)}
.academy-duration>span{font-size:clamp(16px,4cqw,23px)}
.academy-visual-lead{font-size:clamp(19px,5.2cqw,34px)}
.academy-path strong{font-size:clamp(16px,3.8cqw,22px);white-space:normal}.academy-path span{font-size:16px}
.instructor-name span,.instructor-specialties li{font-size:clamp(16px,3.8cqw,21px)}
.instructor-eyebrow span{font-size:14px;letter-spacing:.12em}
.results-eyebrow,.results-period,.pricing-duration{font-size:clamp(18px,4.2cqw,23px)}
.voices-notice,.voice-sample,.results-image-note,.results-note,.pricing-note{font-size:clamp(15px,3.7cqw,18px);line-height:1.75}
.pricing-benefit-label{font-size:clamp(17px,4.2cqw,22px)}
.pricing-benefit-qualifier,.pricing-benefit-value>span{font-size:clamp(19px,4.7cqw,25px)}
.offer-story-copy>p{font-size:clamp(17px,4cqw,22px)}
.offer-story-copy .offer-story-tag{font-size:clamp(17px,4cqw,24px);padding:10px 12px}
.offer-brand span{font-size:clamp(15px,3.8cqw,20px)}
.offer-campaign .offer-button{font-size:clamp(19px,4.6cqw,28px)}
.beginner-card p{font-size:clamp(18px,3.8cqw,24px);white-space:normal;line-height:1.5}
.beginner-sidejob{font-size:clamp(18px,4.4cqw,26px);line-height:1.6}
.video-dialog .video-error{font-size:16px}.video-dialog-header h2{font-size:18px}
@media(max-width:480px){.beginner-cards{grid-template-columns:1fr;gap:12px}.beginner-card{display:grid;grid-template-columns:70px minmax(0,1fr);align-items:center;gap:12px;min-height:108px;padding:16px 14px 16px 42px;text-align:left}.beginner-card svg{width:70px;height:70px;margin:0;padding:10px}.beginner-card p{font-size:21px}.beginner-number{top:10px;left:8px;width:28px;height:28px;font-size:16px}.offer-campaign .offer-button{padding-inline:12px;gap:7px}}
.voice-profile{display:grid;grid-template-columns:clamp(88px,22cqw,124px) minmax(0,1fr);align-items:center;gap:18px;margin-bottom:24px}
.voice-profile img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:cover;border-radius:22px}
.voice-profile .voice-sample{margin:0 0 7px;color:#c74770;font-family:"LP Body","Yu Gothic",sans-serif;font-size:clamp(16px,4cqw,21px)}
.voice-lifestyle{margin:0;color:#77666e;font-family:"LP Body","Yu Gothic",sans-serif;font-size:clamp(16px,4cqw,20px);line-height:1.5}
.voice-metric{display:flex;align-items:baseline;gap:12px;margin:0 0 22px;padding:12px 16px;border-radius:18px;background:#fff0f5;color:#ad5472;font-family:"LP Body","Yu Gothic",sans-serif;font-size:clamp(17px,4cqw,22px);line-height:1.3}
.voice-metric strong{color:#ef2868;font-size:clamp(48px,12cqw,66px);font-weight:700;line-height:1.2}.voice-metric strong span{margin-left:3px;font-size:.43em}
.followers-intro{display:flex;flex-direction:column;aspect-ratio:auto;background:#fffafb}
.followers-headline{position:relative;top:auto;left:auto;width:auto;margin:0;padding:16px 20px 22px;text-align:center;font-size:clamp(30px,7cqw,48px);line-height:1.3;text-shadow:none}
.followers-headline strong{margin-top:6px;font-size:1.2em;white-space:normal}
.image-section .followers-photo{display:block;width:100%;height:auto!important;aspect-ratio:1.85;object-fit:cover;object-position:75% 55%}
.followers-intro::after{height:24px}
.brand-logo{position:relative;display:block;aspect-ratio:3.6;overflow:hidden}
.brand-logo img{position:absolute;top:-42%;left:-15%;width:132%;max-width:none;height:auto;mix-blend-mode:multiply}
.hero-brand{position:absolute;top:1.5%;left:4%;width:29%;background:#fff}
.academy-section h2 .academy-brand{width:min(100%,480px);margin:0 auto 20px;line-height:0}
.offer-inner .offer-brand{width:clamp(170px,45%,300px);margin:0 0 30px;line-height:0}
.offer-image-section{position:relative;margin:0;padding:0;line-height:0;background:#fffcfa}
.cta-artwork{position:relative}.cta-artwork>img{display:block;width:100%;height:auto}
.cta-image-action{position:absolute;left:6.3%;top:88.7%;width:87.5%;height:8.1%;overflow:hidden;border-radius:999px;cursor:pointer;-webkit-tap-highlight-color:transparent}
.cta-image-action::after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 32%,#ffffff33 50%,transparent 68%);transform:translateX(-120%);pointer-events:none}
.cta-image-action:hover{background:#ffffff12}.cta-image-action:focus-visible{outline:3px solid #5c1847;outline-offset:4px}
@media(prefers-reduced-motion:no-preference){.cta-image-action::after{animation:cta-sheen 4.8s ease-in-out infinite}}
.pricing-image-section{position:relative;margin:0;padding:0;line-height:0;background:#fffcfa}
.pricing-image-section>img{display:block;width:100%;height:auto}
.feature-artwork{display:block;position:relative;margin:0;padding:0;line-height:0}
.feature-artwork>img{display:block;width:100%;height:auto}
.scroll-cue{display:grid;place-items:center;width:44px;height:44px;margin-inline:auto;border:1px solid #efcbd6;border-radius:50%;background:#ffffffd9;color:#bf6482;text-decoration:none;line-height:0}
.scroll-cue svg{width:24px;height:32px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.scroll-cue--hero{position:absolute;top:91.5%;left:50%;transform:translateX(-50%)}
.scroll-cue-row{padding:16px 0 22px;background:linear-gradient(180deg,#ffe9ed,#fffafb);line-height:0}
.scroll-cue:hover{color:#e92663;background:#fff}.scroll-cue:focus-visible{outline:3px solid #5c1847;outline-offset:4px}
@keyframes scroll-nudge{0%,100%{transform:translateY(-2px);opacity:.7}50%{transform:translateY(3px);opacity:1}}
@media(prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}.scroll-cue svg{animation:scroll-nudge 2.6s ease-in-out infinite}}
.retouch-visual--ugc{aspect-ratio:1536/880;overflow:hidden;background:#fff}
.retouch-visual--ugc>img{position:absolute;top:0;left:0;width:100%;height:auto}
.retouch-visual--ugc>.retouch-overlay{height:auto}
.retouch-visual--ugc::after{content:"";position:absolute;z-index:1;inset:auto 0 0;height:13%;background:#fff}
.ugc-hand-title{z-index:2;inset:auto;top:42%;left:12%;width:76%;display:flex;flex-direction:column;align-items:flex-start;gap:1.6cqw}
.ugc-hand-title__intro,.ugc-hand-title__ugc,.ugc-hand-title__line{position:relative;top:auto;left:auto}
.ugc-hand-title__intro{font-size:4.2cqw;line-height:1.25}
.ugc-hand-title__ugc{font-size:12.8cqw;line-height:1.1;letter-spacing:.015em}
.ugc-hand-title__line{font-size:5.4cqw;line-height:1.3;letter-spacing:0;gap:.18em}
.ugc-description{display:flex;align-items:flex-start;gap:clamp(12px,3cqw,24px);margin:0 4% 24px;padding:clamp(20px,4cqw,30px);border-radius:26px;background:#fff1f5;line-height:1.8}
.ugc-description svg{flex:none;width:clamp(30px,7cqw,46px);height:auto;margin-top:5px;fill:none;stroke:#dd4777;stroke-width:2;stroke-linecap:round}
.ugc-description p{margin:0;font-family:"LP Body","Yu Gothic",sans-serif;font-size:clamp(17px,4cqw,24px);line-height:1.8;color:#443a40}
.ugc-description strong{color:#ef2868;font-weight:700}
@keyframes cta-invite{0%,100%{transform:scale(1);box-shadow:0 0 0 0 #ed286800}45%,55%{transform:scale(1.018);box-shadow:0 6px 22px #ed28682b,0 0 0 4px #ed286816}}
.registration-hotspot{background-image:url("assets/01-hero-20260928-opt-v1-941.webp");background-size:110.3753% 1086.9565%;background-position:50% 86.5639%;background-repeat:no-repeat}
.cta-image-action{background-image:url("assets/cta-mama-ugc-course-opt-v1-870.webp");background-size:114.2857% 1234.5679%;background-position:50.4% 96.5179%;background-repeat:no-repeat}
.registration-hotspot,.cta-image-action{transition:background .2s,box-shadow .2s}
@media(prefers-reduced-motion:no-preference){.registration-hotspot,.cta-image-action{animation:cta-invite 3.8s ease-in-out infinite}.registration-hotspot::after,.cta-image-action::after{animation:cta-sheen 3.8s ease-in-out infinite}.registration-hotspot:hover,.registration-hotspot:focus-visible,.cta-image-action:hover,.cta-image-action:focus-visible{animation-play-state:paused}}
.faq-section{padding:32px clamp(18px,4cqw,32px) 64px;background:#fff5f7;line-height:1.7}
.faq-section h2{margin:0 0 28px;text-align:center;color:#ef2868;font-size:clamp(30px,7cqw,44px);line-height:1.4}
.faq-list{display:grid;gap:12px}
.faq-item{overflow:hidden;border:1px solid #f8dfe7;border-radius:20px;background:#fff}
.faq-item summary{display:grid;grid-template-columns:25px minmax(0,1fr) 20px;align-items:start;gap:10px;min-height:68px;padding:20px 16px;list-style:none;cursor:pointer;color:#443a40;font-family:"LP Body","Yu Gothic",sans-serif;font-size:clamp(17px,4.1cqw,22px);line-height:1.6}
.faq-item summary::-webkit-details-marker{display:none}
.faq-q{color:#ef2868;font-family:Georgia,serif;font-size:25px;line-height:1.15}
.faq-item summary::after{content:"＋";color:#c76889;font-size:22px;line-height:1.2;text-align:center}
.faq-item[open] summary::after{content:"−"}.faq-item[open] summary{background:#fff8fa}
.faq-item summary:focus-visible{outline:3px solid #bd4871;outline-offset:-4px;border-radius:20px}
.faq-answer{padding:0 20px 22px;background:#fff8fa}.faq-answer p{margin:0;padding-top:14px;border-top:1px solid #f8dfe7;font-family:"LP Body","Yu Gothic",sans-serif;font-size:clamp(17px,4.1cqw,21px);line-height:1.85;color:#5b4a53}
.registration-hotspot.unified-cta,.cta-image-action.unified-cta{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 3%;background:linear-gradient(120deg,#ff4f83,#f12c69);border:1px solid #ffc7d8;color:#fff;text-decoration:none;font-family:"LP Body","Yu Gothic",sans-serif;font-size:clamp(14px,3.9cqw,26px);font-weight:700;line-height:1.2;box-shadow:0 4px 14px #e62b632a}
.unified-cta__free{display:grid;place-items:center;flex:none;width:11%;aspect-ratio:1;border-radius:50%;background:#fff;color:#f12c69;font-size:clamp(13px,3.3cqw,23px);font-weight:700}
.unified-cta__text{flex:1;text-align:center;white-space:nowrap;letter-spacing:-.025em}
.unified-cta__arrow{flex:none;font-size:1.5em;font-weight:500}
.registration-hotspot.unified-cta:hover,.cta-image-action.unified-cta:hover{background:linear-gradient(120deg,#ff5c8b,#ed2160)}
.pricing-artwork{position:relative;container-type:inline-size;line-height:0}
.pricing-artwork>img{display:block;width:100%;height:auto}
.pricing-recurring-label{position:absolute;top:58.4%;left:13%;display:flex;align-items:center;justify-content:center;width:74%;height:5.5%;margin:0;background:#fff;color:#252b33;font-family:"LP Mincho","Yu Mincho",serif;font-size:5.3cqw;font-weight:500;line-height:1.35;white-space:nowrap}
.additional-video-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(18px,5cqw,36px);padding:18px clamp(28px,7cqw,64px) 26px;background:#fffafb;line-height:1.5}
.additional-video-card{min-width:0;text-align:center}
.additional-video-card .video-preview{position:relative;top:auto;left:auto;display:block;width:100%;height:auto;aspect-ratio:9/16;border:5px solid #171717;border-radius:clamp(18px,4cqw,28px);box-shadow:0 8px 24px #54344220}
.additional-video-card video{display:block;width:100%;height:100%;object-fit:cover}
.additional-video-card h3{margin:16px 0 0;color:#51414a;font-family:"LP Body","Yu Gothic",sans-serif;font-size:clamp(17px,4cqw,23px);font-weight:500;line-height:1.5}
.cta-artwork{container-type:inline-size}
.cta-new-work{position:absolute;top:85.3%;left:10%;display:flex;align-items:center;justify-content:center;width:80%;height:3.1%;margin:0;background:#fff;color:#292b33;font-family:"LP Body","Yu Gothic",sans-serif;font-size:3.6cqw;font-weight:500;line-height:1.4;white-space:nowrap;letter-spacing:-.02em}
.feature-three-main{aspect-ratio:918/1450;overflow:hidden}
.zero-followers-callout{position:relative;padding:24px clamp(22px,5cqw,42px) 42px;overflow:hidden;background:radial-gradient(ellipse at 15% 95%,#ffe5ee,transparent 60%),#fff8fa;line-height:1.5}
.zero-followers-card{position:relative;padding:clamp(24px,5cqw,38px) 16px 30px;border:1px solid #f9d7e2;border-radius:32px 32px 40px 14px;background:#fff;box-shadow:8px 10px 0 #fce8ef,0 18px 32px #cd718d14;text-align:center}
.zero-followers-card::before{content:"";position:absolute;top:18px;left:18px;width:14px;height:14px;border-top:1px solid #eeb2c5;border-left:1px solid #eeb2c5}
.zero-followers-card::after{content:"";position:absolute;bottom:18px;right:18px;width:14px;height:14px;border-bottom:1px solid #eeb2c5;border-right:1px solid #eeb2c5}
.zero-followers-label{margin:0;color:#a3697e;font-family:"LP Body","Yu Gothic",sans-serif;font-size:clamp(18px,4.4cqw,25px);letter-spacing:.08em}
.zero-followers-number{display:flex;justify-content:center;align-items:baseline;gap:12px;margin:4px 0 12px;color:#46363e;font-size:clamp(23px,5cqw,32px);line-height:1.15}
.zero-followers-number strong{color:#ef2868;font-size:clamp(86px,20cqw,138px);font-weight:500;line-height:1}
.zero-followers-message{margin:0;color:#ef2868;font-size:clamp(25px,5.8cqw,40px);font-weight:500;line-height:1.6;letter-spacing:-.02em}
.zero-followers-message strong{display:inline-block;padding:0 .2em;color:#ef2868;font-weight:700;background:linear-gradient(transparent 72%,#fff1b0 72%,#fff1b0 91%,transparent 91%)}
.additional-video-grid{grid-template-columns:repeat(2,20.4%);justify-content:center;gap:9.6%;padding:18px 0 26px}
.additional-video-card .video-preview{aspect-ratio:1024/1694;border-width:3px;border-radius:clamp(8px,2.2cqw,22px) clamp(8px,2.2cqw,22px) 0 0}
.additional-video-card h3{position:relative;left:-15%;width:130%;margin:10px 0 0;font-size:clamp(13px,2.7cqw,18px);line-height:1.5}
.scroll-offer{width:min(92cqw,460px);max-height:90dvh;padding:46px 20px 20px;border:1px solid #f7d4e0;border-radius:28px;background:#fff8fb;overflow:auto}
.scroll-offer-dismiss{position:absolute;top:8px;right:8px}.scroll-offer-dismiss button{width:40px;min-height:40px;padding:0;background:transparent;color:#8e5f72;font-size:28px}
.scroll-offer .scroll-offer-badge{display:inline-block;margin:0 0 18px;padding:6px 16px;border-radius:999px;background:#ffe5ee;color:#d63265;font-size:16px}
.scroll-offer h2{font-size:clamp(23px,5.7cqw,30px);line-height:1.5;color:#dd2c64}
.scroll-offer p{font-size:17px;line-height:1.8}
.scroll-offer .unified-cta{display:flex;align-items:center;gap:8px;min-height:68px;padding:10px 12px;border-radius:999px;background:linear-gradient(120deg,#ff4f83,#f12c69);color:#fff;text-decoration:none;font-family:"LP Body","Yu Gothic",sans-serif;font-size:clamp(13px,3.6cqw,17px);font-weight:700;line-height:1.2}
.scroll-offer .unified-cta__arrow{font-size:24px}.scroll-offer .unified-cta__free{min-width:34px}
.scroll-offer .scroll-offer-later{margin-top:14px;padding:8px 16px;background:transparent;color:#8a6675;font-size:15px;text-decoration:underline}
.scroll-offer .unified-cta:focus-visible{outline:3px solid #5c1847;outline-offset:4px}
#bridge-concerns{--pause:12px;--enter:12px}
.ugc-videos-heading{margin:0;padding:28px 18px 26px;background:#fffafb;text-align:center;font-family:"LP Body","Yu Gothic",sans-serif;font-size:clamp(23px,5.2cqw,34px);font-weight:500;line-height:1.5}
.ugc-videos-heading span,.ugc-videos-heading strong{display:block}.ugc-videos-heading strong{color:#ef2868;font-size:1.2em;font-weight:700}
.ugc-videos-grid{display:grid;grid-template-columns:repeat(3,20.4%);justify-content:center;gap:9.6%;padding:0 0 16px;background:#fffafb;line-height:1.5}
.ugc-videos-grid video{display:block;width:100%;height:100%;object-fit:cover}
.ugc-videos-grid .video-preview{position:relative;top:auto;left:auto;width:100%;height:auto;aspect-ratio:1024/1694;border:3px solid #171717;border-radius:clamp(8px,2.2cqw,22px) clamp(8px,2.2cqw,22px) 0 0;box-shadow:0 8px 24px #54344220}
.ugc-videos-grid .additional-video-card h3,.additional-video-grid .additional-video-card h3{left:-25%;width:150%;margin:12px 0 0;padding:8px 3px;border-radius:14px;background:#ffedf3;color:#51414a;font-size:clamp(17px,4.1cqw,23px);font-weight:500;line-height:1.5;overflow-wrap:anywhere}
.additional-video-grid{padding-top:14px}
.feature-one-artwork{container-type:inline-size}
.feature-one-badge{position:absolute;top:5.6%;left:30%;display:flex;align-items:center;justify-content:center;gap:.3em;width:40%;height:4.8%;margin:0;border:1px solid #ffabc3;border-radius:999px;background:#fff5f8;color:#ed3d72;font-family:"LP Mincho","Yu Mincho",serif;font-size:clamp(20px,4.8cqw,38px);font-weight:500;line-height:1.2}
.feature-one-badge span{display:grid;place-items:center;width:1.55em;height:1.55em;border:1px solid currentColor;border-radius:50%;font-size:.8em}
.feature-one-title{position:absolute;top:11.3%;left:5%;display:flex;align-items:baseline;justify-content:center;gap:.05em;width:90%;height:7.1%;margin:0;background:#fff;color:#26252a;font-family:"LP Mincho","Yu Mincho",serif;font-size:7.2cqw;font-weight:500;line-height:1.2;white-space:nowrap;letter-spacing:-.025em}
.feature-one-title strong{color:#f52666;font-size:1.45em;font-weight:500;line-height:1.1}
.zero-followers-callout{padding:24px clamp(20px,4.5cqw,36px) 36px;background:radial-gradient(ellipse at 90% 75%,#ffe8f0,transparent 65%),#fff9fb}
.zero-followers-card{display:grid;grid-template-columns:36% minmax(0,1fr);align-items:center;gap:clamp(14px,3cqw,26px);max-width:650px;margin-inline:auto;padding:clamp(30px,5.5cqw,44px) clamp(16px,3.5cqw,28px);border:1px solid #f6d7e2;border-radius:28px 48px 28px 48px;background:#fff;box-shadow:0 14px 36px #d7829d16;text-align:center}
.zero-followers-card::before{top:18px;left:24px;width:28px;height:0;border:0;border-top:2px solid #f1bbce}
.zero-followers-card::after{bottom:18px;right:26px;width:4px;height:4px;border:0;border-radius:50%;background:#efbfd0;box-shadow:-10px 0 0 #efbfd0,-20px 0 0 #efbfd0}
.zero-followers-label{font-size:clamp(15px,3.7cqw,21px);letter-spacing:.04em;color:#ad617d}
.zero-followers-number{display:flex;flex-direction:column;align-items:center;gap:10px;margin:10px 0 0;font-size:clamp(16px,3.8cqw,23px);line-height:1.5}
.zero-followers-number strong{display:grid;place-items:center;width:clamp(82px,21cqw,150px);aspect-ratio:1;border:1px solid #fbe0e9;border-radius:50%;background:radial-gradient(circle at 30% 25%,#fff9fc,#ffe9f1);color:#f02767;font-size:clamp(76px,19cqw,126px);font-weight:500;line-height:1}
.zero-followers-message{display:flex;flex-direction:column;align-items:center;gap:3px;font-size:clamp(20px,4.4cqw,32px);line-height:1.5;letter-spacing:-.03em;color:#4a3740}
.zero-followers-message>span:first-child{color:#ee2867;font-size:1.45em;letter-spacing:.03em}
.zero-followers-message>span{white-space:nowrap}
.zero-followers-message strong{position:relative;isolation:isolate;margin-top:6px;padding:0 0 5px;background:none;font-size:clamp(26px,6cqw,43px);line-height:1.5;white-space:nowrap}
.zero-followers-message strong::after{content:"";position:absolute;z-index:-1;bottom:5px;left:-4%;width:108%;height:7px;border-radius:50%;background:#ffd7e4;transform:rotate(-3deg)}
:is(.academy-description>p,.academy-duration span,.academy-path strong,.instructor-facts li,.instructor-specialties li,.instructor-name span,.results-eyebrow,.results-period,.results-image-note,.results-note,.results-months,.voices-notice,.voice-card>p,.voice-profile p,.pricing-recurring-label,.cta-new-work,.faq-item summary,.faq-answer p,.scroll-offer p,dialog p){font-family:"LP Body","Yu Gothic","Meiryo",sans-serif;font-weight:700}
.scroll-offer-photo{display:block;width:100%;height:auto;aspect-ratio:1.65;object-fit:cover;object-position:55% 35%;margin:0 0 18px;border-radius:18px}
.scroll-offer{padding-top:44px}.scroll-offer-dismiss{z-index:2}
@media(max-height:700px){.scroll-offer-photo{aspect-ratio:2}.scroll-offer h2{font-size:23px;margin-bottom:12px}.scroll-offer p{margin-bottom:16px;font-size:16px}}
.voices-section{background:linear-gradient(180deg,#fff5f7,#fff9f6);padding-inline:clamp(18px,4cqw,32px)}
.voices-section h2{margin-bottom:18px;letter-spacing:.06em}
.voices-notice{max-width:580px;margin:0 auto 30px;color:#8c6473;font-size:15px;line-height:1.8}
.voices-list{counter-reset:voice;gap:30px}
.voice-card{counter-increment:voice;position:relative;display:flex;flex-direction:column;padding:0 0 26px;border:1px solid #f7dce6;border-radius:30px;overflow:hidden;background:#fff;box-shadow:0 12px 32px #cd7b9716}
.voice-card::before{content:counter(voice,decimal-leading-zero);position:absolute;z-index:2;top:16px;left:16px;display:grid;place-items:center;width:40px;height:40px;border:1px solid #ffffffa8;border-radius:50%;background:#ee7299;color:#fff;font-family:"LP Body","Yu Gothic",sans-serif;font-size:17px;line-height:1}
.voice-profile{order:0;position:relative;display:block;height:clamp(200px,54cqw,320px);margin:0;background:#f7f1ec}
.voice-profile img{width:100%;height:100%;aspect-ratio:auto;object-fit:cover;object-position:50% 40%;border-radius:0}
.voice-profile>div{position:absolute;top:16px;right:16px;max-width:70%;padding:10px 14px;border:1px solid #ffffffb8;border-radius:16px;background:#fffffff0;box-shadow:0 4px 14px #65384510}
.voice-profile .voice-sample{margin:0 0 3px;font-size:clamp(16px,3.8cqw,20px);line-height:1.4}
.voice-profile .voice-lifestyle{font-size:15px;line-height:1.5;color:#755864}
.voice-card .voice-metric{order:1;position:relative;z-index:1;justify-content:center;gap:12px;margin:-26px 18px 22px;padding:14px 12px;border:1px solid #f8d5e1;border-radius:20px;background:linear-gradient(120deg,#fff,#fff2f7);box-shadow:0 8px 20px #c57b9512;font-size:clamp(17px,4cqw,22px)}
.voice-card .voice-metric strong{font-size:clamp(60px,15cqw,82px);line-height:1.05;letter-spacing:-.04em}
.voice-card .voice-metric strong span{font-size:.35em;letter-spacing:0}
.voice-card h3{order:2;position:relative;margin:0 24px 18px;padding-left:16px;border-left:3px solid #f6aac3;font-size:clamp(23px,5.3cqw,32px);line-height:1.5;letter-spacing:-.02em;color:#dd3267}
.voice-card>p:last-child{order:3;margin:0;padding:0 24px;color:#59434d;font-size:clamp(18px,4.4cqw,23px);line-height:1.85}
.voice-card:nth-child(2) .voice-profile img{object-position:50% 30%}
.voice-card:nth-child(3) .voice-profile img{object-position:50% 35%}
@media(max-width:360px){.voice-profile>div{padding:8px 10px;right:12px}.voice-card h3{margin-inline:18px}.voice-card>p:last-child{padding-inline:18px}.voice-card .voice-metric{margin-inline:12px}}
.local-preview{scroll-behavior:auto!important;scroll-padding-top:68px}
.local-preview body{overflow-x:hidden}
.local-preview--mobile .landing-page{max-width:390px}
.preview-toolbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:center;gap:10px;padding:10px 12px;background:#fff;border-bottom:1px solid #f3d8e2;box-shadow:0 4px 14px #5434420d;font-family:"LP Body","Yu Gothic",sans-serif;font-size:14px;line-height:1.4}
.preview-toolbar>span{color:#a45774;white-space:nowrap}
.preview-toolbar select,.preview-toolbar button{min-height:40px;border:1px solid #edc5d5;border-radius:10px;background:#fff8fb;color:#6d4053;font:inherit;padding:6px 10px}
.preview-toolbar select{max-width:52%;min-width:0}.preview-toolbar button{white-space:nowrap;cursor:pointer}
.preview-toolbar select:focus-visible,.preview-toolbar button:focus-visible{outline:2px solid #bc4770;outline-offset:2px}

/* Portfolio cards retain the same video size across both rows. */
.ugc-videos-heading{padding-bottom:12px;background:#fffafb}
.gallery-instruction{margin:0;padding:0 16px 24px;background:#fffafb;text-align:center;color:#977383;font-family:"LP Body","Yu Gothic",sans-serif;font-size:14px;line-height:1.6}
.ugc-videos-grid,.additional-video-grid{grid-template-columns:repeat(3,27.2%);gap:5.6%;justify-content:center;padding:0 0 20px;background:#fffafb;align-items:start}
.additional-video-grid{grid-template-columns:repeat(2,27.2%);padding:0 0 28px}
.ugc-videos-grid .additional-video-card,.additional-video-grid .additional-video-card{position:relative;padding:12px 0 14px;border:1px solid #f5dee6;border-radius:18px;background:linear-gradient(180deg,#fff,#fff9fb);box-shadow:0 8px 20px #9f587512;overflow:hidden}
.gallery-category{display:flex;flex-direction:column;align-items:center;gap:4px;margin:0 0 10px;color:#a7657d;font-family:"LP Body","Yu Gothic",sans-serif;font-size:clamp(9px,2.3cqw,14px);font-weight:500;letter-spacing:.08em;line-height:1.2}
.gallery-category span{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#fff0f5;color:#e63d73;font-size:12px;letter-spacing:0}
.ugc-videos-grid .video-preview,.additional-video-grid .video-preview{display:block;width:75%;margin:0 auto;aspect-ratio:1024/1694;border:2px solid #2f2b2d;border-radius:12px;box-shadow:0 5px 12px #3d243922;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}
.ugc-videos-grid .video-preview::before,.additional-video-grid .video-preview::before{width:54%;height:6px;top:0;left:23%;border-radius:0 0 5px 5px;background:#2f2b2d}
.ugc-videos-grid .additional-video-card h3,.additional-video-grid .additional-video-card h3{position:static;width:auto;min-height:3em;display:flex;align-items:center;justify-content:center;margin:12px 4px 0;padding:0;border-radius:0;background:none;color:#604351;font-size:clamp(13px,3.4cqw,20px);font-weight:700;line-height:1.5;overflow-wrap:normal;letter-spacing:-.04em}
.ugc-videos-grid .video-play,.additional-video-grid .video-play{right:5px;bottom:7px;width:25px;height:25px;background:#fff;box-shadow:0 2px 10px #7b274344}
.ugc-videos-grid .video-preview:hover,.additional-video-grid .video-preview:hover{transform:translateY(-3px);box-shadow:0 8px 18px #6f355133}
@media(prefers-reduced-motion:reduce){.ugc-videos-grid .video-preview,.additional-video-grid .video-preview{transition:none}}

/* One shared font for all editable explanatory copy. */
:root{--font-copy:"LP Body","Yu Gothic","Meiryo",sans-serif}
body{font-family:var(--font-copy)}
.landing-page :is(p,li,td,th,summary,figcaption),dialog :is(p,li,summary){font-family:var(--font-copy)}
.landing-page :is(p,li,td,th,summary,figcaption) :is(span,strong,small,em),dialog p :is(span,strong,small){font-family:inherit}
.landing-page :is(.feature-one-title,.feature-one-badge,.ugc-hand-title,.ugc-hand-title__intro,.ugc-hand-title__line){font-family:"LP Mincho","Yu Mincho",serif}

/* Larger portfolio screens, with equal sizing in both rows. */
.ugc-videos-grid .video-preview,.additional-video-grid .video-preview{width:90%}

/* Explanatory copy uses the bundled medium weight without synthetic bold. */
.landing-page :is(.academy-description p,.academy-path,.academy-duration span,.instructor-facts li,.instructor-specialties li,.instructor-name span,.results-eyebrow,.results-period,.results-image-note,.results-note,.results-months,.voices-notice,.voice-card>p:last-child,.voice-profile p,.pricing-recurring-label,.cta-new-work,.faq-item summary,.faq-answer p,.gallery-instruction),dialog p{font-weight:500;font-synthesis:none}
.landing-page :is(.academy-description p,.academy-path,.instructor-facts li,.instructor-specialties li,.results-note,.results-months,.voices-notice,.voice-card>p:last-child,.voice-profile p,.faq-item summary,.faq-answer p) :is(strong,b,span,em),dialog p :is(strong,b,span){font-weight:500;font-synthesis:none}

.ugc-videos-grid .additional-video-card h3,.additional-video-grid .additional-video-card h3{font-weight:500;font-synthesis:none}

/* A clear, centered statement with an oversized zero and a quiet double frame. */
.zero-followers-callout{padding:28px 5% 38px;background:linear-gradient(180deg,#fffafb,#fff1f6)}
.zero-followers-card{display:block;max-width:650px;padding:28px 20px 30px;border:1px solid #f5c8d8;border-radius:32px;background:linear-gradient(145deg,#fff 65%,#fff8fb);box-shadow:0 10px 30px #b9577810;text-align:center}
.zero-followers-card::before{inset:7px;width:auto;height:auto;border:1px solid #fce6ee;border-radius:25px;pointer-events:none}
.zero-followers-card::after{display:none}
.zero-followers-stat{position:relative;margin-bottom:20px;padding-bottom:22px;border-bottom:1px solid #f5dce5}
.zero-followers-label{display:inline-block;margin:0 0 8px;padding:5px 18px;border-radius:999px;background:#fff0f5;color:#aa617c;font-size:15px;letter-spacing:.12em;font-weight:500}
.zero-followers-number{flex-direction:row;justify-content:center;align-items:center;gap:18px;margin:6px 0 0;font-size:clamp(18px,4.8cqw,27px);color:#5b414e;line-height:1.6}
.zero-followers-number strong{width:clamp(100px,26cqw,160px);font-family:"LP Mincho","Yu Mincho",serif!important;font-size:clamp(96px,25cqw,150px);border:1px solid #f7cfdd;background:linear-gradient(145deg,#fff8fb,#ffe8f1);box-shadow:0 0 0 6px #fff7fa;font-weight:500}
.zero-followers-message{position:relative;flex-direction:row;flex-wrap:wrap;justify-content:center;align-items:baseline;column-gap:6px;row-gap:0;font-size:clamp(20px,5.2cqw,32px);line-height:1.6;letter-spacing:0;font-weight:500}
.zero-followers-message>span:first-child{font-size:1.35em;letter-spacing:.02em}
.zero-followers-message strong{flex-basis:100%;width:100%;margin-top:10px;padding:5px 0 8px;font-size:clamp(30px,7.5cqw,46px);font-weight:500;letter-spacing:.08em;color:#ee2867}
.zero-followers-message strong::after{bottom:6px;left:20%;width:60%;height:8px;background:#ffe3ed;border-radius:8px;transform:none}

.academy-description>p:not(.academy-lead){font-size:clamp(16px,4cqw,21px);line-height:1.8}

.instructor-facts li{font-size:clamp(16px,4cqw,21px);line-height:1.8;word-break:normal;overflow-wrap:normal;text-wrap:pretty}
.copy-word{white-space:nowrap}

.voice-card>p:last-child{font-size:clamp(16px,4cqw,21px);line-height:1.8}

/* Two larger columns on phones; the fifth card stays centered at the same size. */
.ugc-portfolio{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 16px;padding:0 6% 30px;background:#fffafb;line-height:1.5;align-items:start}
.ugc-portfolio>.ugc-videos-grid,.ugc-portfolio>.additional-video-grid{display:contents}
.ugc-portfolio .gallery-card-5{grid-column:1/-1;justify-self:center;width:calc((100% - 16px)/2)}
.ugc-portfolio .additional-video-card h3{font-size:clamp(15px,3.8cqw,21px);min-height:3em}
.ugc-portfolio .video-preview{width:86%}
@container(min-width:600px){.ugc-portfolio{grid-template-columns:repeat(6,minmax(0,1fr));gap:24px 20px}.ugc-portfolio .additional-video-card{grid-column:span 2}.ugc-portfolio .gallery-card-4{grid-column:2/span 2}.ugc-portfolio .gallery-card-5{grid-column:4/span 2;width:100%}}

/* One phone-sized video per slide; reveal the next card to invite a swipe. */
.ugc-portfolio{display:flex;justify-content:flex-start;align-items:stretch;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:12%;padding:0 12% 24px;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:#f1a8bf #fff0f5}
.ugc-portfolio .additional-video-card{flex:0 0 100%;width:100%;max-width:340px;scroll-snap-align:center;scroll-snap-stop:always;padding-top:16px;padding-bottom:16px}
.ugc-portfolio .video-preview{width:82%;max-width:258px}
.ugc-portfolio .additional-video-card h3{min-height:0;margin-top:16px;font-size:18px}
.ugc-portfolio .gallery-category{flex-direction:row;justify-content:center;gap:8px;font-size:12px;margin-bottom:14px}
.ugc-portfolio .gallery-category span{width:26px;height:26px}
.gallery-instruction{font-size:15px;padding-bottom:22px}
@container(min-width:600px){.ugc-portfolio{padding-inline:calc((100% - 340px)/2);scroll-padding-inline:calc((100% - 340px)/2);gap:24px}.ugc-portfolio .additional-video-card{flex-basis:340px;width:340px}.ugc-portfolio .gallery-card-5{width:340px}}

.feature-two-artwork,.feature-three-main{container-type:inline-size}
.feature-badge-cover{position:absolute;display:block;background:#fff;pointer-events:none}
.feature-two-artwork .feature-badge-cover{top:6.1%;left:36%;width:28%;height:6.6%}
.feature-two-badge{top:6.6%;height:5.4%}
.feature-three-main .feature-badge-cover{top:1.7%;left:32%;width:36%;height:5.8%}
.feature-three-badge{top:2.4%;height:5.1%}

.pricing-artwork-heading{position:absolute;top:7.2%;left:22%;display:flex;align-items:center;justify-content:center;width:56%;height:7.5%;margin:0;background:#fffdfb;box-shadow:0 0 12px 5px #fffdfb;color:#f32262;font-family:var(--font-copy);font-size:clamp(32px,6cqw,46px);font-weight:700;line-height:1.4;letter-spacing:.06em;white-space:nowrap}

/* Compact popup occupies roughly half the previous height. */
.scroll-offer{width:min(86vw,360px);max-height:45dvh;padding:40px 14px 14px;border-radius:22px}
.scroll-offer-photo{max-height:120px;margin-bottom:12px;border-radius:14px;object-fit:cover}
.scroll-offer .scroll-offer-badge{margin-bottom:12px;padding:4px 12px;font-size:13px}
.scroll-offer h2{margin-bottom:12px;font-size:20px;line-height:1.45}
.scroll-offer p{margin-bottom:12px;font-size:14px;line-height:1.65}
.scroll-offer .unified-cta{min-height:52px;padding:7px 10px;gap:6px;font-size:12px}
.scroll-offer .unified-cta__free{min-width:28px;font-size:11px}
.scroll-offer .unified-cta__arrow{font-size:20px}
.scroll-offer .scroll-offer-later{margin-top:10px;font-size:13px}

.zero-followers-image{margin:0;padding:0;line-height:0;background:#fffafb}.zero-followers-image img{display:block;width:100%;height:auto}

/* Preserve the supplied artwork while inserting space below its title. */
.feature-one-spaced{--feature-heading-height:28cqw;--feature-title-gap:24px}
.feature-one-full-image{padding-top:var(--feature-title-gap)}
.feature-one-full-image img{display:block;width:100%;height:auto}
.feature-one-heading-image{position:absolute;top:0;left:0;width:100%;height:var(--feature-heading-height);overflow:hidden;background:#fff}
.feature-one-heading-image img{display:block;width:100%;height:auto}
.feature-one-heading-image::after{content:"";position:absolute;left:0;right:0;bottom:0;height:8px;background:linear-gradient(transparent,#fff)}
.feature-one-spaced .feature-one-badge{top:8.4cqw;height:7.2cqw}
.feature-one-spaced .feature-one-title{top:16.95cqw;height:10.65cqw}

.feature-one-heading-image{height:calc(var(--feature-heading-height) + var(--feature-title-gap))}.feature-one-heading-image img{clip-path:inset(0 0 calc(100% - var(--feature-heading-height)) 0)}

/* 下部固定CTA（モバイルのみ） */
.sticky-cta { display: none; }
@media screen and (max-width: 750px) {
  .sticky-cta {
    display: block;
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 900;
    padding: 8px 12px calc(8px + env(safe-area-inset-bottom, 0px));
    background: #ffffff;
    border-top: 1px solid rgba(0, 0, 0, 0.08);
    box-shadow: 0 -2px 12px rgba(0, 0, 0, 0.10);
  }
  .sticky-cta__button {
    width: 100%;
    max-width: 560px;
    margin: 0 auto;
  }
  body { padding-bottom: 92px; }
}
.sticky-cta__button { animation: none !important; }
.sticky-cta__button::before,
.sticky-cta__button::after { animation: none !important; }
/* Existing CTA appearance, scoped to the new fixed button. */
.sticky-cta__button {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  min-height: 60px;
  padding: 8px 12px;
  border-radius: 999px;
  border: 1px solid #ffc7d8;
  background: linear-gradient(120deg, #ff4f83, #f12c69);
  color: #fff;
  text-decoration: none;
  font-family: "LP Body", "Yu Gothic", sans-serif;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.2;
}
.sticky-cta__button .unified-cta__free { width: 34px; font-size: 12px; }
.sticky-cta__button .unified-cta__arrow { font-size: 24px; }
.sticky-cta__button:focus-visible { outline: 3px solid #5c1847; outline-offset: 3px; }

/* Keep the complete offer visible without internal scrolling. */
.scroll-offer {
  width: min(88vw, 340px);
  max-height: calc(100svh - 32px);
  padding: 38px 14px 12px;
  overflow: visible;
}
.scroll-offer-photo { height: 90px; max-height: 90px; margin: 0 0 10px; }
.scroll-offer .scroll-offer-badge { margin: 0 0 10px; padding: 4px 10px; font-size: 12px; }
.scroll-offer h2 { margin: 0 0 10px; font-size: 19px; line-height: 1.4; }
.scroll-offer p { margin: 0 0 10px; font-size: 13px; line-height: 1.55; }
.scroll-offer .unified-cta { min-height: 48px; margin: 0; padding: 7px 9px; font-size: 11px; }
.scroll-offer .scroll-offer-later { min-height: 32px; margin-top: 4px; padding: 5px 8px; font-size: 12px; }
.scroll-offer-dismiss { top: 4px; right: 5px; }
.scroll-offer-dismiss button { width: 32px; min-height: 32px; font-size: 24px; }
@media (max-height: 540px) {
  .scroll-offer { padding-top: 32px; }
  .scroll-offer-photo { height: 56px; max-height: 56px; margin-bottom: 6px; }
  .scroll-offer h2 { font-size: 17px; margin-bottom: 6px; }
  .scroll-offer .scroll-offer-badge, .scroll-offer p { margin-bottom: 6px; }
}

/* Reveal once the visitor reaches 30% scroll depth. */
.sticky-cta { display: none; }
@media screen and (max-width: 750px) {
  .sticky-cta.sticky-cta--visible { display: block; }
}

.results-mama-caption {
  margin: 20px 0 14px;
  color: #f32262;
  font-family: var(--font-copy);
  font-size: clamp(13px, 3.5cqw, 22px);
  font-weight: 400;
  line-height: 1.6;
  text-align: center;
}

/* Larger portfolio video with a small next-slide preview. */
.ugc-portfolio {
  padding-inline: 8%;
  scroll-padding-inline: 8%;
}
.ugc-portfolio .additional-video-card { max-width: 370px; }
.ugc-portfolio .video-preview { width: 90%; max-width: 300px; }
@container (min-width: 600px) {
  .ugc-portfolio {
    padding-inline: calc((100% - 370px) / 2);
    scroll-padding-inline: calc((100% - 370px) / 2);
  }
  .ugc-portfolio .additional-video-card { flex-basis: 370px; width: 370px; }
  .ugc-portfolio .gallery-card-5 { width: 370px; }
}

.pricing-course-duration {
  position: absolute;
  top: 21.2%;
  left: 15%;
  width: 70%;
  height: 4.3%;
  margin: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #ffffff;
  color: #242730;
  font-family: var(--font-copy);
  font-size: clamp(13px, 3.5cqw, 27px);
  font-weight: 400;
  line-height: 1.4;
  white-space: nowrap;
}
