@font-face{font-family:'Noto Serif JP';src:url('./fonts/NotoSerifJP-variable.woff2') format('woff2');font-weight:200 900;font-display:swap}
@font-face{font-family:'Noto Sans JP';src:url('./fonts/NotoSansJP-variable.woff2') format('woff2');font-weight:200 900;font-display:swap}
@font-face{font-family:'Manrope';src:url('./fonts/Manrope-variable.woff2') format('woff2');font-weight:200 800;font-display:swap}

:root{
  --ink:#123f49;--ink-soft:#315a61;--olive:#526746;--olive-light:#dfe6d7;
  --terra:#b94f32;--terra-dark:#963a25;--cream:#f7f1e6;--paper:#fbf8f1;
  --sand:#e9dfcc;--line:#c9c1af;--white:#fffef9;--shadow:0 24px 70px rgba(29,54,48,.12);
  --serif:'Noto Serif JP','Yu Mincho',serif;--sans:'Noto Sans JP',system-ui,sans-serif;
  --space-section:clamp(6rem,10vw,10rem);--wrap:min(1120px,calc(100% - 48px));
}

*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--cream);overflow-x:hidden}
body{margin:0;color:var(--ink);font-family:var(--sans);font-weight:450;line-height:1.85;font-synthesis:none;background:
  radial-gradient(circle at 12% 4%,rgba(255,255,255,.92),transparent 28rem),
  radial-gradient(circle at 88% 15%,rgba(224,232,214,.45),transparent 25rem),
  radial-gradient(circle at 18% 63%,rgba(255,255,255,.75),transparent 32rem),
  linear-gradient(112deg,#f9f4ea 0%,#fffdf8 46%,#f3ecdf 100%);overflow-x:hidden;line-break:strict;word-break:normal;overflow-wrap:break-word}
body::before{content:'';position:fixed;inset:0;pointer-events:none;opacity:.22;z-index:0;background-image:radial-gradient(rgba(35,61,52,.12) .55px,transparent .7px),radial-gradient(rgba(255,255,255,.55) .5px,transparent .7px);background-position:0 0,8px 7px;background-size:17px 17px,19px 19px}
a{color:inherit} img{max-width:100%} button,a{-webkit-tap-highlight-color:transparent}
.skip-link{position:fixed;left:1rem;top:-5rem;z-index:100;padding:.75rem 1rem;background:var(--ink);color:#fff;border-radius:.4rem}.skip-link:focus{top:1rem}
.site-header{height:72px;display:flex;align-items:center;justify-content:space-between;width:var(--wrap);margin:auto;position:relative;z-index:20;border-bottom:1px solid rgba(18,63,73,.15)}
.brand-mini{text-decoration:none;display:flex;align-items:baseline;gap:.5rem}.brand-mini span{font:500 1.7rem/1 var(--serif)}.brand-mini small{font-size:.65rem;letter-spacing:.2em}
.header-demo{text-decoration:none;font-size:.78rem;letter-spacing:.08em;padding:.5rem 0;border-bottom:1px solid var(--olive)}
.page-ribbon{position:absolute;inset:0 0 auto;z-index:0;height:100%;min-height:7600px;pointer-events:none;overflow:hidden;opacity:.42}
.page-ribbon svg{width:100%;height:100%}.page-ribbon path{fill:none;stroke:var(--olive);stroke-width:3;stroke-linecap:round;vector-effect:non-scaling-stroke}
main,.site-footer{position:relative;z-index:2}
.section{width:var(--wrap);margin:auto;padding-block:var(--space-section);position:relative}
.eyebrow{margin:0 0 1rem;color:var(--olive);font-family:'Manrope',var(--sans);font-size:.72rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase}
h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--serif);font-weight:500;letter-spacing:.02em;text-wrap:balance}p{text-wrap:pretty}h2{font-size:clamp(2rem,4vw,3.8rem);line-height:1.48;margin-bottom:1.5rem}h3{line-height:1.55}.heading-phrase{display:inline}
.section-heading{max-width:610px;margin-bottom:4.5rem}.section-heading--center{text-align:center;margin-inline:auto;max-width:760px}.section-heading p:last-child{color:var(--ink-soft)}
.button{display:inline-flex;align-items:center;justify-content:center;gap:1.25rem;min-height:58px;padding:.8rem 2rem;border-radius:999px;font-family:var(--serif);font-weight:500;text-decoration:none;letter-spacing:.08em;transition:transform .25s ease,box-shadow .25s ease,background .25s ease}
.button:hover{transform:translateY(-2px)}.button:focus-visible{outline:3px solid rgba(185,79,50,.35);outline-offset:4px}
.button--primary{background:linear-gradient(135deg,var(--terra),var(--terra-dark));color:#fff;box-shadow:0 12px 30px rgba(151,59,37,.22)}
.button--outline{border:1.5px solid var(--olive);background:rgba(255,254,249,.65);color:var(--ink)}
.button--large{min-width:min(320px,100%);min-height:64px;font-size:1.08rem}

/* hero */
.hero{min-height:900px;padding-top:5.5rem;display:grid;grid-template-columns:minmax(0,2.15fr) minmax(330px,1fr);align-items:center;gap:2.5rem}
.hero-copy{position:relative;z-index:3}.brand{display:flex;flex-direction:column;align-items:flex-start;margin-bottom:2rem}.brand span{font-family:var(--serif);font-size:clamp(5.5rem,10vw,9.4rem);font-weight:500;line-height:.75;letter-spacing:-.055em}.brand small{font-family:var(--serif);font-size:.8rem;letter-spacing:.5em;margin:1rem 0 0 5rem}
.hero h1{font-size:clamp(2.6rem,3.25vw,3.35rem);line-height:1.55;margin-bottom:1.5rem;max-width:780px}.hero h1 .hero-line{display:block;white-space:nowrap}.hero h1 .phrase{display:inline;white-space:nowrap}.hero h1 em{font-style:normal}.hero-lead{font-family:var(--serif);font-size:clamp(1rem,1.5vw,1.25rem);line-height:2;margin-bottom:2rem}.hero .microcopy{margin:.9rem 0 0;font-size:.78rem;color:var(--ink-soft)}
.hero-stage{position:relative;min-height:690px;display:grid;place-items:end center}.treatment-scene{position:absolute;top:4%;right:-9%;width:310px;height:230px;filter:drop-shadow(0 20px 22px rgba(37,52,35,.1))}.towel{position:absolute;right:10px;width:230px;height:74px;border-radius:16px;background:linear-gradient(145deg,#f3d9cd,#dcb8ab);box-shadow:inset 0 10px 18px rgba(255,255,255,.45),0 8px 18px rgba(52,42,37,.1)}.towel--1{top:60px;transform:rotate(-3deg)}.towel--2{top:113px;right:28px;transform:rotate(2deg);background:linear-gradient(145deg,#ecd0c3,#cfa595)}
.oil{position:absolute;right:2px;bottom:3px;width:48px;height:105px;border-radius:11px 11px 16px 16px;background:linear-gradient(90deg,#4f270d,#a65f1e 48%,#4a250d);box-shadow:0 12px 20px rgba(50,35,20,.22)}.oil::before{content:'';position:absolute;left:7px;top:-25px;width:34px;height:30px;border-radius:7px 7px 3px 3px;background:#2b231d}.oil i{position:absolute;inset:35px 6px auto;height:28px;background:#e9d6a8;border-radius:3px}
.sprig{position:absolute;right:-18px;bottom:9px;width:175px;height:4px;background:var(--olive);transform:rotate(-13deg);transform-origin:right}.sprig::before,.sprig::after{content:'';position:absolute;width:50px;height:22px;border-radius:100% 0 100% 0;background:#7f985d}.sprig::before{left:30px;top:-20px;transform:rotate(15deg)}.sprig::after{left:84px;top:4px;transform:rotate(195deg)}
.phone{position:relative;width:310px;padding:12px;border-radius:48px;background:linear-gradient(135deg,#151718,#3b3c3d 48%,#090a0a);box-shadow:0 30px 55px rgba(23,42,38,.26),inset 0 0 0 2px rgba(255,255,255,.4)}
.phone__speaker{position:absolute;z-index:3;top:15px;left:50%;transform:translateX(-50%);width:94px;height:21px;border-radius:20px;background:#0c0d0e}
.phone__screen{background:#f8f4f1;border-radius:38px;min-height:620px;padding:36px 15px 16px;overflow:hidden;color:#413735;font-size:.66rem;line-height:1.45}.demo-notice{margin:0 -15px .8rem;padding:.45rem .75rem;background:#403634;color:#fff;text-align:center;font-size:.5rem;letter-spacing:.02em}.availability-head{padding:0 .15rem}.availability-head>span{display:block;font:500 1rem/1.2 var(--serif);letter-spacing:.08em}.availability-head strong{display:block;margin:.75rem 0 .45rem;font:500 1.1rem/1.3 var(--serif);letter-spacing:.08em}.availability-head p{margin:0;color:#786e6a;font-size:.55rem}.month-tabs{display:grid;grid-template-columns:repeat(3,1fr);margin-top:.85rem;border-bottom:1px solid #d9d0cc}.month-tabs span{padding:.35rem .15rem;text-align:left;font:500 .86rem/1.05 var(--serif);color:#958985}.month-tabs small{display:block;margin-top:.18rem;font:500 .4rem/1.1 var(--sans);letter-spacing:.08em}.month-tabs .is-current{color:#413735;border-bottom:1.5px solid #413735}.availability-row{display:flex;align-items:center;gap:1.1rem;padding:.65rem 0;border-bottom:1px solid #ded6d2}.availability-row b{font:500 1rem/1 var(--serif)}.availability-row b small{margin-left:.22rem;font:500 .46rem/1 var(--sans);color:#8a807c}.availability-row>span{padding:.5rem .65rem;border:1px solid #d9cfcb;background:#fff;font-size:.56rem}.availability-row i{margin-left:.35rem;color:#bb858a;font-style:normal}.choice-sheet{margin-top:.8rem;padding:.75rem;background:#fff;border:1px solid #e3dad6;box-shadow:0 8px 20px rgba(63,49,45,.06)}.choice-date small,.choice-label{display:block;color:#867b77;font-size:.46rem;letter-spacing:.08em}.choice-date strong{display:block;margin:.25rem 0 .55rem;font:500 .72rem/1.3 var(--serif)}.customer-tabs{display:grid;grid-template-columns:1fr 1fr;margin-bottom:.65rem;border:1px solid #d8ceca}.customer-tabs span{padding:.45rem .2rem;text-align:center;font-size:.5rem}.customer-tabs .is-selected{background:#403634;color:#fff}.menu-choice{display:flex;justify-content:space-between;align-items:center;gap:.4rem;margin:.25rem 0 .65rem;padding:.45rem;border:1px solid #d8ceca;border-left:2px solid #b57e84}.menu-choice span{font-size:.5rem}.menu-choice small{font-size:.4rem;color:#857a76}.generated-copy{margin:.25rem 0 .55rem;padding:.45rem;border:1px dashed #ddd3cf;color:#746a66;font-size:.44rem;line-height:1.55;text-align:left}.ui-button{display:flex;justify-content:space-between;background:#b98287;color:#fff;text-align:left;padding:.55rem .65rem;font-weight:600;font-size:.5rem}
.hero-leaf{position:absolute;width:180px;height:230px;opacity:.72;z-index:0}.hero-leaf::before,.hero-leaf::after{content:'';position:absolute;background:var(--olive);border-radius:100% 0 100% 0;box-shadow:42px 22px 0 #779069,82px 50px 0 #536c4c,38px 90px 0 #8aa17a,96px 118px 0 #647b57}.hero-leaf::before{width:54px;height:28px;transform:rotate(20deg)}.hero-leaf::after{width:4px;height:210px;border-radius:3px;transform:rotate(-35deg);box-shadow:none}.hero-leaf--left{left:-11%;top:2%;transform:rotate(-22deg)}.hero-leaf--right{right:-12%;bottom:2%;transform:rotate(155deg)}

/* friction */
.friction{display:grid;grid-template-columns:.85fr 1.15fr;gap:5rem;align-items:start}.friction .section-heading{position:sticky;top:110px}.friction-grid{display:grid;gap:3.5rem}.chat-thread{max-width:640px;padding:3rem;border-radius:36px;background:rgba(255,255,255,.55);box-shadow:var(--shadow);backdrop-filter:blur(8px)}.bubble{width:max-content;max-width:82%;margin-bottom:1rem;padding:.7rem 1.1rem;border-radius:22px;background:#eff2ed;box-shadow:0 6px 14px rgba(37,63,57,.06);font-size:.88rem}.bubble--customer{border-bottom-left-radius:5px}.bubble--shop{margin-left:auto;border-bottom-right-radius:5px;background:#dce8d7}.bubble time{font:500 .62rem/1 'Manrope';color:#577078;margin-left:.5rem}.friction-copy{max-width:560px;margin-left:auto}.lead-serif{font:500 clamp(1.45rem,2.7vw,2.2rem)/1.8 var(--serif)}.friction-copy>p:not(.lead-serif,.accent-note){color:var(--ink-soft)}.accent-note{font:500 1.2rem/1.7 var(--serif);color:var(--terra);transform:rotate(-2deg);margin-top:2.5rem}

/* reframe */
.reframe{padding-block:calc(var(--space-section) * 1.1)}.reframe-inner{max-width:900px;margin:auto;text-align:center}.reframe-lead{font:500 clamp(1.25rem,2vw,1.7rem)/2 var(--serif);margin-bottom:4rem}.keep-remove{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:2rem;text-align:left}.keep-remove>div{padding:2.5rem;border-radius:30px;background:rgba(255,255,255,.52);border:1px solid rgba(82,103,70,.18);box-shadow:var(--shadow)}.keep-remove small{display:block;color:var(--olive);letter-spacing:.12em}.keep-remove strong{display:block;font:500 1.55rem/1.5 var(--serif);margin:.6rem 0}.keep-remove p{margin:0;color:var(--ink-soft);font-size:.9rem}.keep-remove>span{font:300 2rem/1 var(--serif);color:var(--terra)}

/* mechanism */
.mechanism-stage{display:flex;align-items:center;justify-content:center;gap:4rem;margin-top:4rem}.selection-card{width:340px;padding:2rem;border-radius:28px;background:rgba(255,255,255,.7);box-shadow:var(--shadow)}.selection-label{display:inline-block;margin-bottom:1rem;padding:.3rem .7rem;border-radius:999px;background:var(--olive-light);color:var(--olive);font-size:.72rem;font-weight:700}.selection-card dl{margin:0}.selection-card dl div{padding:1rem 0;border-bottom:1px solid #dce1d8}.selection-card dt{font-size:.68rem;color:var(--ink-soft)}.selection-card dd{margin:.15rem 0 0;font:500 1rem/1.6 var(--serif)}.flow-arrow{font-size:3rem;color:var(--olive)}.phone--message{width:300px}.phone__screen--line{min-height:520px;padding-top:40px;background:linear-gradient(#e8f0f8,#d7e5f4)}.line-head{margin:-40px -18px 28px;padding:48px 18px 12px;background:#f5f8fb;display:flex;align-items:center;gap:.7rem}.line-head b{font:500 1rem/1 var(--serif)}.line-head i{margin-left:auto;font-style:normal;background:#11c768;color:#fff;padding:.4rem;border-radius:50%;font-size:.55rem}.line-message{margin-left:auto;padding:1rem;border-radius:14px 14px 4px 14px;background:#fff;box-shadow:0 8px 20px rgba(30,58,78,.1);font-size:.84rem}.mechanism-benefit{text-align:center;font:500 1.25rem/1.9 var(--serif);margin-top:3rem}.mechanism-benefit strong{color:var(--terra)}

/* steps */
.step-list{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem;list-style:none;padding:0;margin:0}.step-list li{position:relative;text-align:center;padding:2rem 1rem}.step-list li:not(:last-child)::after{content:'→';position:absolute;right:-1.2rem;top:4.5rem;color:var(--olive);font-size:1.3rem}.step-list span{position:absolute;top:0;left:12%;display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--olive);color:#fff;font:600 1rem/1 'Manrope'}.step-list i{display:grid;place-items:center;width:82px;height:82px;margin:0 auto 1.3rem;border-radius:50%;background:rgba(255,255,255,.58);font-style:normal;font-size:2rem;color:var(--ink);box-shadow:0 10px 24px rgba(36,63,57,.08)}.step-list h3{font-size:1.15rem;margin-bottom:.8rem}.step-list p{font-size:.82rem;color:var(--ink-soft)}.notice{max-width:970px;margin:4rem auto 0;display:flex;align-items:flex-start;gap:1.2rem;padding:1.5rem 2rem;border-radius:28px;background:rgba(255,255,255,.55);box-shadow:0 12px 35px rgba(45,64,56,.08)}.notice>span{flex:0 0 auto;display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--terra);color:#fff;font:700 1.2rem/1 var(--serif)}.notice strong{font:500 1.2rem/1.5 var(--serif)}.notice p{margin:.35rem 0 0;font-size:.78rem;color:var(--ink-soft)}

/* demos */
.demo-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2.5rem}.demo-card{position:relative;padding:3rem;border-radius:38px;background:rgba(255,255,255,.62);border:1px solid rgba(82,103,70,.2);box-shadow:var(--shadow)}.demo-number{position:absolute;top:1.5rem;right:1.8rem;font:600 .72rem/1 'Manrope';color:var(--olive)}.demo-icon{display:grid;place-items:center;width:80px;height:80px;margin-bottom:2rem;border-radius:50%;background:var(--olive-light);font-size:2rem}.demo-card h3{font-size:1.6rem;margin-bottom:1rem}.demo-card p{min-height:6rem;color:var(--ink-soft)}.demo-card .button{width:100%}

/* features */
.features{display:grid;grid-template-columns:240px 1fr;gap:5rem;align-items:start}.feature-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:1rem}.feature-grid article{text-align:center;padding:1rem .7rem}.feature-icon{display:grid;place-items:center;width:78px;height:78px;margin:0 auto 1.4rem;border-radius:50%;background:rgba(255,255,255,.66);color:var(--ink);box-shadow:0 10px 25px rgba(35,55,46,.08)}.feature-icon svg{width:42px;height:42px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.feature-grid h3{font-size:1rem;min-height:3.2em}.feature-grid p{font-size:.75rem;color:var(--ink-soft)}

/* fit */
.fit{display:grid;grid-template-columns:1.1fr .9fr;gap:5rem;align-items:center}.fit-copy>p:not(.eyebrow){max-width:650px}.fit-tags{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:2rem}.fit-tags span{padding:.45rem .85rem;border-radius:999px;background:rgba(223,230,215,.8);font-size:.78rem;color:var(--olive)}.boundary-card{padding:3rem;border-radius:38px;background:rgba(255,255,255,.58);box-shadow:var(--shadow)}.boundary-card h3{font-size:1.45rem}.boundary-card ul{padding-left:1.2rem;margin:1.5rem 0}.boundary-card li{margin:.7rem 0}.boundary-card li::marker{color:var(--terra)}.boundary-card p{font-size:.85rem;color:var(--ink-soft)}

/* purchase */
.purchase{min-height:850px;display:grid;grid-template-columns:1fr minmax(480px,1.3fr) 1fr;align-items:center;gap:2rem}.purchase-card{text-align:center;padding:4rem 2.5rem;border-radius:48px;background:rgba(255,255,255,.58);box-shadow:var(--shadow);backdrop-filter:blur(9px)}.purchase-card h2{font-size:clamp(2rem,3vw,3.2rem);margin-bottom:1rem}.amount{display:inline-flex;align-items:baseline;gap:.08em;white-space:nowrap;margin:0;color:var(--terra-dark)}.amount__number{font:650 clamp(5rem,10vw,8.8rem)/1 'Manrope',sans-serif;letter-spacing:-.06em}.amount__unit{font:500 clamp(2rem,4vw,3.7rem)/1 var(--serif)}.monthly{display:table;margin:.6rem auto 1.5rem;padding:.25rem 1.5rem;border-radius:999px;background:var(--olive-light);font:500 1rem/1.5 var(--serif)}.conditions{font-size:.76rem;color:var(--ink-soft);margin-bottom:2rem}.purchase-status{min-height:1.5rem;margin:.8rem 0 0;font-size:.75rem;color:var(--terra)}
.nail-scene,.session-scene{position:relative;height:300px}.nail-scene .hand{position:absolute;left:-30px;bottom:30px;width:230px;height:82px;border-radius:65% 20% 35% 45%;background:linear-gradient(145deg,#f0c5ad,#d89f83);transform:rotate(12deg);box-shadow:0 20px 30px rgba(104,68,50,.12)}.swatch{position:absolute;width:28px;height:85px;border-radius:18px 18px 8px 8px;bottom:30px;box-shadow:0 9px 14px rgba(83,51,45,.1)}.s1{left:65px;background:#d0a29d;transform:rotate(-22deg)}.s2{left:98px;background:#b3766f;transform:rotate(-12deg)}.s3{left:132px;background:#8c5453;transform:rotate(-3deg)}.s4{left:166px;background:#c88f86;transform:rotate(8deg)}.s5{left:199px;background:#704546;transform:rotate(16deg)}
.cup{position:absolute;right:25px;bottom:65px;width:130px;height:78px;border-radius:8px 8px 60px 60px;background:linear-gradient(145deg,#f8f0df,#d8c7a7);box-shadow:0 18px 24px rgba(84,67,41,.13)}.cup::before{content:'';position:absolute;right:-37px;top:10px;width:50px;height:45px;border:12px solid #dfcfb2;border-left:0;border-radius:0 50% 50% 0}.cup::after{content:'';position:absolute;left:12px;right:12px;top:5px;height:15px;border-radius:50%;background:#9b643a}.notebook{position:absolute;right:55px;bottom:18px;width:195px;height:42px;border-radius:4px;background:linear-gradient(#e9dfcb 5%,#b39b78 6%,#e9dfcb 12%,#b39b78 13%,#e9dfcb 100%);transform:rotate(-7deg);box-shadow:0 10px 20px rgba(74,59,38,.12)}.pen{position:absolute;right:2px;bottom:32px;width:150px;height:8px;border-radius:8px;background:#253a3c;transform:rotate(16deg)}

/* final/footer */
.final{min-height:760px;display:grid;place-items:center;text-align:center}.final-inner{max-width:760px}.final-note{font:italic 1.05rem/1.5 var(--serif);color:var(--olive);transform:rotate(-3deg)}.brand--footer{align-items:center}.brand--footer span{font-size:clamp(4.5rem,9vw,8rem)}.brand--footer small{margin-left:0}.final h2{font-size:clamp(2.2rem,4vw,4rem)}.final p:not(.final-note){font-family:var(--serif);line-height:2}.site-footer{width:var(--wrap);margin:auto;padding:2.5rem 0 3rem;border-top:1px solid rgba(18,63,73,.15);display:flex;justify-content:space-between;gap:2rem;font-size:.68rem;color:var(--ink-soft)}.site-footer p{margin:0}

/* motion */
.reveal{opacity:0;transform:translateY(22px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.65,.3,1)}.reveal.is-visible{opacity:1;transform:none}

@media (max-width:980px){
  :root{--wrap:min(100% - 32px,760px);--space-section:7rem}
  .hero{grid-template-columns:1fr;min-height:auto;text-align:center;padding-top:4.5rem;gap:2.5rem}.hero-copy{display:flex;flex-direction:column;align-items:center}.brand{align-items:center}.brand small{margin-left:0}.hero h1{font-size:clamp(2.45rem,6.5vw,3.2rem)}.hero h1 .hero-line{white-space:nowrap}.hero-stage{min-height:630px;place-items:start center}.treatment-scene{right:-2%;top:-8%}
  .friction{grid-template-columns:1fr;gap:1rem}.friction .section-heading{position:relative;top:auto}.friction-grid{grid-template-columns:1.1fr .9fr;align-items:center;gap:2rem}.chat-thread{padding:2rem}.friction-copy{margin:0}
  .mechanism-stage{gap:1.5rem}.flow-arrow{font-size:2rem}.features{grid-template-columns:1fr;gap:0}.feature-grid{grid-template-columns:repeat(3,1fr)}
  .fit{grid-template-columns:1fr}.purchase{grid-template-columns:1fr;min-height:auto}.nail-scene,.session-scene{position:absolute;width:260px;height:220px;opacity:.75}.nail-scene{left:-140px;bottom:9%}.session-scene{right:-130px;bottom:4%}.purchase-card{position:relative;z-index:2;max-width:640px;margin:auto}
}

@media (max-width:700px){
  :root{--wrap:min(100% - 28px,520px);--space-section:5.5rem}
  body{line-height:1.8}.site-header{height:62px}.header-demo{font-size:.7rem}.brand-mini span{font-size:1.45rem}.pc-only{display:none}
  .page-ribbon{left:auto;right:0;width:38px;min-height:9000px;opacity:.3}.section{padding-block:var(--space-section)}h2{font-size:clamp(1.9rem,9vw,2.75rem)}.section-heading{margin-bottom:3rem}.heading-phrase{display:block;white-space:nowrap}
  .hero{display:block;padding-top:3.8rem;min-height:930px}.hero .eyebrow{font-size:.62rem}.brand{margin:1.2rem 0 2rem}.brand span{font-size:clamp(5rem,25vw,7.2rem)}.brand small{margin-top:.8rem}.hero h1{font-size:clamp(2rem,8.6vw,2.3rem);line-height:1.48}.hero h1 .phrase{display:block;white-space:nowrap}.hero-lead{font-size:.92rem}.hero .button{width:100%;max-width:320px}.hero-stage{min-height:590px;margin-top:2.5rem}.phone{width:min(300px,82vw)}.phone__screen{min-height:570px}.treatment-scene{width:230px;height:175px;top:-4%;right:-17%;opacity:.72;transform:scale(.78)}.hero-leaf--left{left:-22%;top:0}.hero-leaf--right{right:-22%;bottom:3%}
  .friction-grid{grid-template-columns:1fr}.chat-thread{padding:1.4rem}.bubble{font-size:.76rem}.friction-copy{padding:0 .4rem}.lead-serif{font-size:1.35rem}
  .keep-remove{grid-template-columns:1fr;gap:1rem}.keep-remove>span{transform:rotate(90deg);margin:auto}.keep-remove>div{padding:1.7rem}.reframe-lead br{display:none}
  .mechanism-stage{flex-direction:column}.flow-arrow{transform:rotate(90deg)}.selection-card{width:min(100%,340px)}.mechanism-benefit{font-size:1.05rem}
  .step-list{grid-template-columns:1fr 1fr;gap:1.5rem}.step-list li:not(:last-child)::after{display:none}.step-list li{padding:1.5rem .5rem}.step-list span{left:8%}.notice{padding:1.2rem;gap:.8rem}
  .demo-grid{grid-template-columns:1fr}.demo-card{padding:2rem}.demo-card p{min-height:0}
  .feature-grid{grid-template-columns:1fr 1fr}.feature-grid article:last-child{grid-column:1/-1;max-width:240px;justify-self:center}.features .section-heading{margin-bottom:2rem}.feature-grid h3{min-height:auto}
  .fit{gap:2.5rem}.boundary-card{padding:2rem}.fit-tags{gap:.45rem}
  .purchase-card{padding:3rem 1.1rem;border-radius:34px}.amount__number{font-size:clamp(4.5rem,23vw,7rem)}.amount__unit{font-size:2rem}.monthly{font-size:.84rem}.conditions br{display:none}.nail-scene{left:-175px}.session-scene{right:-175px}
  .final{min-height:680px}.brand--footer span{font-size:clamp(4.5rem,24vw,6.5rem)}.site-footer{display:block;text-align:center}.site-footer p+p{margin-top:.5rem}
}

@media (max-width:390px){
  :root{--wrap:calc(100% - 24px)}.site-header{width:calc(100% - 24px)}.header-demo{font-size:.62rem}.hero{min-height:900px}.hero h1{font-size:2.05rem}.hero-lead{font-size:.84rem}.phone{width:280px}.phone__screen{min-height:540px;padding-inline:14px}.treatment-scene{right:-27%}.step-list{gap:.5rem}.step-list h3{font-size:.98rem}.step-list p{font-size:.72rem}.demo-card{padding:1.6rem}.feature-grid{gap:.5rem}.feature-grid article{padding:.8rem .25rem}.purchase-card{padding-inline:.8rem}.button--large{min-width:100%;padding-inline:1rem}
}

@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.button{transition:none}}
