@import url('https://fonts.googleapis.com/css2?family=M+PLUS+Rounded+1c:wght@400;700;800&family=Montserrat:wght@700;800;900&display=swap');
:root{--pink:#ff648d;--deep:#311c3b;--cream:#fff8f5;--line:#f2dfe3}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--deep);font-family:'M PLUS Rounded 1c',sans-serif}button,a{font:inherit}.bar{height:72px;padding:0 5vw;display:flex;align-items:center;justify-content:space-between;background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}.brand{font:900 18px Montserrat,sans-serif;letter-spacing:.12em;color:var(--deep);text-decoration:none}.mini-cta{background:var(--deep);color:#fff;text-decoration:none;padding:10px 18px;border-radius:999px;font-weight:800}.hero{min-height:calc(100vh - 72px);display:grid;grid-template-columns:52% 48%;overflow:hidden;background:linear-gradient(145deg,#fff 0 55%,#ffe2eb 55%)}.hero-photo{position:relative;overflow:hidden;min-height:620px}.hero-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent 70%,rgba(255,248,245,.8))}.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:center 33%}.hero-copy{padding:8vw 7vw 6vw 6vw;display:flex;flex-direction:column;justify-content:center;position:relative}.eyebrow,.section-title p{font:800 13px Montserrat,sans-serif;letter-spacing:.16em;color:var(--pink)}h1{font-size:clamp(40px,5.1vw,78px);line-height:1.13;margin:18px 0 20px;letter-spacing:-.04em}h1 span{color:var(--pink)}.lead{font-size:18px;line-height:1.8}.price{display:flex;gap:15px;align-items:end;margin:25px 0 18px}.price strong{font:900 clamp(42px,5vw,68px) Montserrat}.price span{font-weight:700;padding-bottom:10px}.cta,.buy{display:flex;align-items:center;justify-content:space-between;border:0;background:var(--pink);color:#fff;font-weight:800;text-decoration:none;padding:20px 24px;border-radius:14px;box-shadow:0 10px 24px #ff648d40;cursor:pointer}.cta span,.buy span{font-size:25px}.sizes{font:700 13px Montserrat;letter-spacing:.15em;margin-top:18px}.product{padding:100px 6vw;background:#fff}.section-title{text-align:center;margin-bottom:40px}.section-title h2,.story h2{font-size:clamp(31px,4vw,52px);margin:8px 0}.product-grid{max-width:1160px;margin:auto;display:grid;grid-template-columns:1.2fr .8fr;gap:28px}.visual-card{border-radius:28px;overflow:hidden;background:#171717;position:relative;min-height:450px}.visual-card img{width:100%;height:100%;object-fit:cover}.limited{position:absolute;z-index:2;left:24px;top:24px;background:#fff;color:var(--pink);font:800 12px Montserrat;letter-spacing:.12em;padding:10px 14px;border-radius:999px}.order-card{border:1px solid var(--line);border-radius:28px;padding:34px;background:#fffaf9}.step{font:800 12px Montserrat;letter-spacing:.15em;color:#8d788f;margin:0 0 13px}.choices,.sizes-grid{display:grid;gap:10px;margin-bottom:28px}.choices{grid-template-columns:1fr 1fr}.sizes-grid{grid-template-columns:repeat(4,1fr)}.choice,.size{background:#fff;border:2px solid var(--line);border-radius:12px;padding:15px;cursor:pointer;color:var(--deep);font-weight:800}.choice.active,.size.active{border-color:var(--pink);box-shadow:0 0 0 3px #ff648d18}.choice i{display:inline-block;width:15px;height:15px;border-radius:50%;margin-right:7px;vertical-align:-2px;border:1px solid #ddd}.white{background:#fff}.pink{background:#ffcbd8}.summary{display:flex;justify-content:space-between;padding:18px 0;border-top:1px solid var(--line);font-size:14px}.summary strong{font-size:16px}.buy{width:100%}.note{text-align:center;font-size:12px;color:#89778b}.story{padding:100px 8vw;display:grid;grid-template-columns:1fr 1fr;gap:10vw;background:linear-gradient(135deg,#ffe5ed,#fff8f5)}.story>div>p:not(.eyebrow){font-size:17px;line-height:2}.detail{background:#fff;padding:30px;border-radius:24px}.detail h3{font:800 14px Montserrat;letter-spacing:.15em}.detail dl{margin:0}.detail dl div{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding:18px 0}.detail dt{color:#8d788f}.detail dd{margin:0;font-weight:800}footer{text-align:center;background:var(--deep);color:#fff;padding:55px}footer p{font-size:22px;font-weight:800}dialog{border:0;border-radius:24px;padding:34px;max-width:430px;width:calc(100% - 32px);box-shadow:0 24px 80px #26152a55}dialog::backdrop{background:#241529b8;backdrop-filter:blur(5px)}.close{position:absolute;right:16px;top:12px;border:0;background:none;font-size:28px;cursor:pointer}.modalPrice{font:900 38px Montserrat;color:var(--pink)}.modalPrice small{font:700 13px 'M PLUS Rounded 1c'}.modalText{line-height:1.8}.disabled{width:100%;padding:16px;border:0;border-radius:12px;background:#ddd;color:#777;font-weight:800}
@media(max-width:820px){.bar{height:62px}.hero{grid-template-columns:1fr;background:#fff}.hero-photo{min-height:52vh}.hero-photo:after{background:linear-gradient(0deg,#fff 0,transparent 30%)}.hero-copy{padding:20px 7vw 65px;text-align:center}.hero-copy .price{justify-content:center}.hero-copy .cta{text-align:left}.product{padding:70px 5vw}.product-grid,.story{grid-template-columns:1fr}.visual-card{min-height:auto}.story{padding:70px 7vw;gap:32px}.lead{font-size:16px}.brand{font-size:14px}h1{font-size:42px}}
@media(max-width:420px){h1{font-size:35px}.choices{grid-template-columns:1fr}.order-card{padding:24px 18px}.price strong{font-size:42px}.detail dl div{display:block}.detail dd{margin-top:6px}}
