:root{--ink:#292429;--pink:#ef8da8;--hot:#e8557d;--blush:#f9e4e8;--cream:#fffaf8;--wine:#5b2439;--line:rgba(41,36,41,.14);--sans:"DM Sans","Noto Sans JP",sans-serif;--jp:"Noto Sans JP",sans-serif;--serif:"Playfair Display",serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:var(--sans);background:#fff;overflow-x:hidden}a{color:inherit;text-decoration:none}img{display:block;width:100%}.site-header{height:82px;display:flex;align-items:center;gap:38px;padding:0 3.4vw;position:absolute;z-index:20;top:0;left:0;right:0;color:#2f2730}.brand{display:flex;flex-direction:column;line-height:1}.brand span{font:600 25px var(--sans);letter-spacing:.16em}.brand small{font-size:8px;letter-spacing:.27em;margin-top:7px}.site-header nav{display:flex;gap:28px;margin-left:auto;font-size:12px;font-weight:600;letter-spacing:.11em}.site-header nav a{position:relative}.site-header nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-7px;height:1px;background:var(--hot);transition:.3s}.site-header nav a:hover:after{right:0}.header-cta{margin-left:8px;background:#fff;border-radius:999px;padding:13px 19px;font:600 13px var(--jp);box-shadow:0 5px 20px rgba(75,45,55,.08)}.header-cta span{color:var(--hot);margin-left:8px}.menu-button{display:none}.hero{min-height:760px;height:100vh;position:relative;display:flex;align-items:center;overflow:hidden;background:#f8e9ea}.hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.hero-wash{position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.98) 0%,rgba(255,250,250,.91) 28%,rgba(255,255,255,.15) 62%,rgba(255,255,255,0) 100%)}.hero-copy{position:relative;z-index:2;width:min(630px,48vw);margin-left:8vw;padding-top:70px}.eyebrow,.section-tag{font-size:11px;letter-spacing:.22em;font-weight:600}.eyebrow{color:var(--hot);margin-bottom:28px}.hero h1{font-family:var(--jp);font-size:clamp(38px,4.1vw,64px);line-height:1.42;letter-spacing:.035em;margin:0 0 26px;font-weight:600}.hero h1 em,.academy h2 em,.story-script,.contact h2 em,.support h2 em,.channel h2 em{color:var(--hot);font-family:var(--serif);font-weight:500}.hero .lead{font:400 16px/2 var(--jp);letter-spacing:.06em}.hero-actions{display:flex;align-items:center;gap:26px;margin-top:38px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;padding:17px 23px;border-radius:999px;font:600 14px var(--jp);transition:.25s}.button:hover{transform:translateY(-2px)}.primary{background:var(--hot);color:#fff;box-shadow:0 12px 30px rgba(232,85,125,.26)}.text-link{font:500 14px var(--jp);border-bottom:1px solid;padding-bottom:7px}.text-link span{color:var(--hot);margin-left:12px}.scroll{position:absolute;bottom:30px;right:45px;z-index:2;font-size:9px;letter-spacing:.2em;writing-mode:vertical-rl}.scroll i{display:block;width:1px;height:44px;background:var(--ink);margin:12px auto 0}.section{padding:120px 8vw}.intro{min-height:720px;display:grid;grid-template-columns:.8fr 1.25fr 1fr;position:relative;align-items:center;overflow:hidden;background:var(--cream)}.section-tag{align-self:start;color:#9b8790}.intro-title p{font-size:12px;letter-spacing:.17em;color:var(--hot)}.intro h2,.section-heading h2,.salon-copy h2,.support h2,.contact h2{font:600 clamp(37px,4vw,61px)/1.45 var(--jp);letter-spacing:.035em;margin:16px 0}.intro h2 span,.section-heading h2 span{color:var(--hot)}.intro-body{font:400 15px/2.15 var(--jp);max-width:390px;z-index:2}.arrow-link{display:inline-flex;gap:30px;align-items:center;margin-top:20px;padding-bottom:8px;border-bottom:1px solid;font:600 13px var(--jp)}.arrow-link span{color:var(--hot)}.orb{position:absolute;border-radius:50%;filter:blur(1px);opacity:.8}.orb-one{width:230px;height:230px;background:radial-gradient(circle at 35% 30%,#fff,#f2bac8);right:-55px;top:55px}.orb-two{width:90px;height:90px;background:radial-gradient(circle at 35% 30%,#fff,#eddbe0);left:42%;bottom:40px}.salon-life{padding-top:65px;background:#fff}.marquee{display:flex;overflow:hidden;margin:0 -8vw 95px;white-space:nowrap;font:500 clamp(48px,7.2vw,108px)/1 var(--sans);letter-spacing:-.05em;color:#f4cbd6}.marquee span{animation:marquee 22s linear infinite}@keyframes marquee{to{transform:translateX(-100%)}}.life-grid{display:grid;grid-template-columns:.8fr 1.3fr;gap:7vw;align-items:center}.life-copy h2{font:600 clamp(36px,3.8vw,58px)/1.45 var(--jp);margin:28px 0}.life-copy h2 em{font-family:var(--serif);color:var(--hot);font-weight:500}.life-copy>p{font:400 15px/2.15 var(--jp);max-width:500px}.community-count{display:flex;align-items:center;gap:18px;margin-top:38px}.community-count strong{font:500 42px var(--serif);color:var(--hot)}.community-count span{font:500 12px/1.6 var(--jp)}.photo-collage{display:grid;grid-template-columns:1.6fr .8fr;grid-template-rows:180px 260px;gap:16px}.crop{overflow:hidden;border-radius:6px}.crop img{width:100%;height:100%;object-fit:cover}.crop-main{grid-row:1/3}.crop-main img{object-position:63% center}.crop-detail img{object-position:31% center;transform:scale(1.65)}.quote-card{background:var(--blush);border-radius:6px;padding:22px}.quote-card span{font:500 44px var(--serif);color:var(--hot)}.quote-card p{font:500 14px/1.75 var(--jp);margin:-8px 0 0}.academy{background:var(--wine);color:#fff}.academy-head{display:grid;grid-template-columns:1fr .7fr;align-items:end}.section-tag.light{color:#d8adb9}.academy-head h2{font:500 clamp(58px,7.5vw,110px)/.92 var(--sans);letter-spacing:-.065em;margin:28px 0 0}.academy-head>p{font:400 15px/2 var(--jp);max-width:420px}.steps{list-style:none;margin:80px 0 42px;padding:0;border-top:1px solid rgba(255,255,255,.24)}.steps li{display:grid;grid-template-columns:70px 1fr auto;align-items:center;min-height:82px;border-bottom:1px solid rgba(255,255,255,.24);padding:0 18px}.steps li b{font-size:15px;color:#d9a8b7}.steps li div{display:flex;align-items:center;gap:48px}.steps small{font-size:10px;letter-spacing:.16em;width:130px}.steps strong{font:500 16px var(--jp)}.steps .active{background:var(--hot);border:none;margin-top:1px}.steps .active b{color:#fff}.steps .active span{font-size:22px}.button.pale{background:#fff;color:var(--wine);min-width:210px}.section-heading{display:flex;justify-content:space-between;align-items:end}.section-heading p{font:400 14px/1.9 var(--jp)}.program-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:60px}.program-card{position:relative;height:520px;border-radius:8px;overflow:hidden;padding:28px}.program-card.rose{background:#f7dce2}.program-card.pearl{background:#ece9e8}.program-card.coral{background:#e7a69f}.card-no{font-size:11px;letter-spacing:.15em}.abstract{position:absolute;border-radius:50%;filter:blur(1px)}.a1{width:330px;height:330px;background:radial-gradient(circle at 30% 25%,#fff,#f4aebe 60%,#e37b95);right:-60px;top:40px;box-shadow:-25px 35px 60px rgba(210,105,130,.22)}.a2{width:280px;height:380px;background:linear-gradient(135deg,#fff,#bfb9bb);right:10px;top:30px;border-radius:48% 52% 48% 52%}.a3{width:360px;height:280px;background:linear-gradient(145deg,#f9d6c7,#b86562);right:-100px;top:60px;border-radius:70% 30% 65% 35%}.card-content{position:absolute;bottom:30px;left:28px;right:28px}.card-content small{font-size:9px;letter-spacing:.18em}.card-content h3{font:500 26px var(--sans);letter-spacing:.04em;margin:8px 0}.card-content p{font:400 13px var(--jp)}.card-content a{display:inline-block;margin-top:16px;font-size:10px;letter-spacing:.13em;border-bottom:1px solid}.salons{background:#fbeef1;display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:8vw;min-height:720px}.salon-map{height:490px;position:relative;background:radial-gradient(ellipse at center,#fff 0%,rgba(255,255,255,0) 68%)}.salon-map:before{content:"";position:absolute;inset:60px 15%;background:#fff;clip-path:polygon(48% 0,63% 8%,61% 20%,75% 29%,67% 40%,87% 53%,75% 66%,79% 79%,57% 83%,41% 100%,35% 82%,16% 77%,24% 63%,4% 51%,30% 42%,23% 30%,44% 22%);filter:drop-shadow(0 14px 35px rgba(160,100,120,.12));transform:rotate(12deg)}.salon-map b{position:absolute;left:17%;bottom:30px;color:#d9aaba;letter-spacing:.4em;font-size:11px}.dot{position:absolute;width:15px;height:15px;border:4px solid #fff;border-radius:50%;background:var(--hot);box-shadow:0 4px 15px rgba(232,85,125,.5);z-index:2}.d1{top:100px;left:51%}.d2{top:205px;left:37%}.d3{top:235px;left:60%}.d4{top:300px;left:45%}.d5{top:350px;left:33%}.d6{top:380px;left:23%}.salon-copy .kicker{font:500 18px var(--jp);margin:36px 0 0}.salon-copy h2{margin-top:6px}.salon-copy h2 em{font-family:var(--serif);font-weight:500;color:var(--hot)}.salon-copy>p:last-of-type{font:400 15px/2 var(--jp);max-width:480px}.search-actions{display:flex;gap:12px;margin-top:34px}.button.white{background:#fff}.story{display:grid;grid-template-columns:1.12fr 1fr;gap:7vw;align-items:center}.story-image{height:620px;overflow:hidden;border-radius:5px}.story-image img{height:100%;object-fit:cover;object-position:35% center;transform:scale(1.25)}.story-script{font-size:70px;line-height:.9;margin:45px 0 35px}.story blockquote{font:500 20px/1.9 var(--jp);margin:0 0 24px}.story-copy>p:last-of-type{font:400 14px/2 var(--jp);max-width:440px}.support{background:#fff8f6;text-align:center}.support-head h2{margin-top:27px}.support-head>p{font:400 15px/2 var(--jp)}.phone-stage{height:520px;position:relative;margin:60px auto 30px;max-width:760px}.phone{position:absolute;width:225px;height:450px;background:#222;border:7px solid #282326;border-radius:38px;box-shadow:0 30px 55px rgba(67,42,51,.22);padding:9px;text-align:left}.phone:before{content:"";position:absolute;top:9px;left:50%;transform:translateX(-50%);width:70px;height:19px;border-radius:99px;background:#282326;z-index:2}.phone.front{left:50%;transform:translateX(-50%);z-index:3;top:0}.phone.back{top:45px;transform:scale(.9)}.phone.left{left:15%}.phone.right{right:15%}.screen{height:100%;border-radius:27px;background:#fff;padding:45px 16px 18px;overflow:hidden}.screen small{font-size:8px;letter-spacing:.12em;color:var(--hot)}.screen h3{font:600 20px var(--jp);margin:10px 0}.screen p{font:500 10px var(--jp)}.fake-photo{height:190px;background:url('/vavitte-life/assets/academy-hero.webp?v=18a27d2dd4') center/cover;border-radius:8px}.fake-profile{width:95px;height:95px;border-radius:50%;background:url('/vavitte-life/assets/academy-hero.webp?v=18a27d2dd4') 38% center/cover;margin:25px auto}.screen.portal{background:linear-gradient(#fff2f4,#fff);text-align:center}.mini-logo{display:flex;width:45px;height:45px;border-radius:50%;background:var(--hot);color:#fff;align-items:center;justify-content:center;font:500 25px var(--serif);margin:5px auto 18px}.portal-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:30px}.portal-grid i{font:500 9px var(--jp);font-style:normal;background:#fff;padding:18px 3px;border-radius:10px;box-shadow:0 5px 15px rgba(200,100,130,.1)}.support-list{display:flex;justify-content:center;flex-wrap:wrap;gap:10px 35px;color:#8f717b;font-size:9px;letter-spacing:.12em}.channel{background:#281f27;color:#fff;display:grid;grid-template-columns:.75fr 1.25fr;gap:7vw;align-items:center}.channel h2{font:500 clamp(45px,5vw,76px)/1.12 var(--sans);letter-spacing:-.045em;margin:35px 0}.channel-copy>p{font:400 14px/2 var(--jp);max-width:400px}.youtube{background:#fff;color:#2c222a;margin-top:25px}.youtube span{color:#f33131}.video-feature{height:530px;position:relative;overflow:hidden;border-radius:5px}.video-feature img{height:100%;object-fit:cover;object-position:55% center}.video-feature:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(20,10,17,.82),transparent 65%)}.video-overlay{position:absolute;z-index:2;left:34px;right:34px;bottom:34px;display:flex;align-items:end;gap:25px}.play{width:64px;height:64px;background:var(--hot);border-radius:50%;display:flex;align-items:center;justify-content:center;padding-left:4px}.video-overlay small{font-size:9px;letter-spacing:.16em;color:#efabc0}.video-overlay h3{font:600 25px/1.45 var(--jp);margin:6px 0}.video-overlay p{font-size:11px;margin:0;color:#d7cad1}.contact{position:relative;min-height:730px;display:flex;align-items:center;justify-content:center}.contact-bg{position:absolute;inset:0;overflow:hidden}.contact-bg img{height:100%;object-fit:cover;filter:saturate(.75)}.contact-bg:after{content:"";position:absolute;inset:0;background:rgba(91,36,57,.38)}.contact-card{position:relative;z-index:2;background:rgba(255,255,255,.94);width:min(690px,90vw);padding:70px;text-align:center;border-radius:5px;backdrop-filter:blur(7px)}.contact-card>p:first-child{font-size:10px;letter-spacing:.2em;color:var(--hot)}.contact h2{font-size:clamp(32px,3.5vw,48px)}.contact-card>p:nth-of-type(2){font:400 14px/2 var(--jp)}.button.dark{background:var(--wine);color:#fff;margin-top:20px}.sub-links{display:flex;justify-content:center;gap:26px;margin-top:28px;font:500 11px var(--jp);text-decoration:underline}footer{background:#211a20;color:#fff;display:grid;grid-template-columns:1fr 1fr auto;align-items:end;padding:70px 5vw}.footer-brand{display:flex;flex-direction:column}.footer-brand strong{font-size:28px;letter-spacing:.14em}.footer-brand span{font-size:8px;letter-spacing:.2em;margin-top:8px}.footer-links{display:flex;flex-wrap:wrap;gap:22px;font-size:10px;letter-spacing:.12em}.footer-privacy{font-size:10px;letter-spacing:.08em;color:#d8cbd2;text-decoration:underline;text-underline-offset:4px}footer>p{font-size:8px;color:#9f939a}.reveal{opacity:0;transform:translateY(24px);transition:opacity .8s ease,transform .8s ease}.reveal.visible{opacity:1;transform:none}@media(max-width:900px){.site-header{height:68px;padding:0 20px}.site-header nav{position:fixed;inset:68px 0 auto 0;background:rgba(255,255,255,.98);display:none;flex-direction:column;padding:28px;font-size:14px}.site-header nav.open{display:flex}.header-cta{display:none}.menu-button{display:flex;margin-left:auto;border:0;background:none;padding:4px;flex-direction:column;gap:4px}.menu-button span{width:24px;height:1px;background:#333}.menu-button b{font-size:7px;letter-spacing:.15em}.hero{min-height:720px;height:92vh;align-items:flex-end}.hero>img{object-position:61% center}.hero-wash{background:linear-gradient(0deg,rgba(255,255,255,.98) 0%,rgba(255,255,255,.91) 38%,rgba(255,255,255,0) 75%)}.hero-copy{width:auto;margin:0;padding:0 24px 70px}.hero h1{font-size:34px;line-height:1.45}.hero .lead{font-size:14px}.hero-actions{align-items:flex-start;flex-direction:column;gap:18px;margin-top:25px}.scroll{display:none}.section{padding:85px 24px}.intro{display:block;min-height:0}.section-tag{margin-bottom:35px}.intro-body{margin-top:32px}.orb{display:none}.marquee{margin:0 -24px 65px}.life-grid,.academy-head,.section-heading,.salons,.story,.channel{grid-template-columns:1fr}.life-grid{gap:50px}.photo-collage{grid-template-rows:135px 180px}.academy-head{gap:30px}.academy-head h2{font-size:62px}.steps{margin-top:50px}.steps li{grid-template-columns:45px 1fr;padding:0 5px}.steps li div{display:block}.steps li small{display:block;margin-bottom:5px}.steps li>span{display:none}.program-grid{grid-template-columns:1fr}.program-card{height:430px}.section-heading{gap:20px;align-items:start}.salons{gap:30px}.salon-map{height:380px;order:2}.search-actions{flex-direction:column;align-items:stretch}.search-actions .button{justify-content:center}.story-image{height:430px}.story-script{font-size:56px}.phone-stage{transform:scale(.76);margin:-10px -80px -60px;height:520px}.support-list{line-height:2}.channel{gap:55px}.video-feature{height:430px}.contact{padding:50px 18px}.contact-card{padding:50px 22px}.sub-links{flex-wrap:wrap;gap:13px 22px}footer{grid-template-columns:1fr;gap:35px}.footer-links{line-height:2}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.marquee span{animation:none}.reveal{opacity:1;transform:none;transition:none}}

/* 2026 Beautyworld event photography */
.hero-caption{margin-top:30px!important;font:600 9px/1 var(--sans)!important;letter-spacing:.2em!important;color:#8d7580}
.crop-main img{object-position:center;transform:none}
.crop-detail img{object-position:45% 38%;transform:scale(1.08)}
.story-image img{object-position:center 47%;transform:none}
.fake-photo{background-image:url('/vavitte-life/assets/academy-technique.webp?v=b10257eb96')}
.fake-profile{background-image:url('/vavitte-life/assets/instructor-smile.webp?v=840699849a');background-position:center 35%}

/* Shared inner pages */
.sub-header{position:relative;background:#fff;border-bottom:1px solid var(--line)}
.sub-header nav .current{color:var(--hot)}
.dark-header{position:absolute;background:transparent;border:0;color:#fff}
.dark-header .brand,.dark-header nav{color:#fff}
.page-hero{min-height:680px;padding:120px 8vw 70px;display:grid;grid-template-columns:1.1fr .9fr;align-items:center;overflow:hidden}
.page-hero-copy{max-width:700px;position:relative;z-index:2}
.page-hero-copy h1,.salon-page-copy h1,.for-salon-copy h1,.journal-hero h1{font:600 clamp(45px,5.5vw,82px)/1.35 var(--jp);letter-spacing:.02em;margin:20px 0 26px}
.page-hero-copy h1 em,.salon-page-copy h1 em,.for-salon-copy h1 em,.journal-hero h1 em,.academy-intro h2 em,.program-detail-head h2 em,.story-lead h2 em,.portal-copy h2 em,.schedule-cta h2 em,.inquiry h2 em{font-family:var(--serif);font-weight:500;color:var(--hot)}
.page-hero-copy>p:last-child,.salon-page-copy>p:last-child,.for-salon-copy>p,.journal-hero>div>p:last-child{font:400 16px/2 var(--jp);max-width:600px}
.brand-hero{background:linear-gradient(135deg,#fff 0%,#fff7f7 52%,#f8dde4 100%)}
.page-hero-art{height:500px;position:relative}
.glass-orb{position:absolute;border-radius:50%;background:radial-gradient(circle at 30% 22%,#fff,#f5b1c3 58%,#d96d8a);box-shadow:-35px 42px 80px rgba(164,70,98,.18)}
.glass-orb.big{width:380px;height:380px;right:5%;top:35px}.glass-orb.small{width:130px;height:130px;left:8%;bottom:15px;opacity:.7}
.page-hero-art>span{position:absolute;right:118px;top:132px;color:#fff;font:500 92px var(--serif);z-index:2}
.editorial{background:#fff}.editorial-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:9vw;margin-top:60px}.editorial-grid h2{font:600 clamp(34px,4vw,58px)/1.55 var(--jp);margin:0}.editorial-grid p{font:400 15px/2.2 var(--jp);margin:0 0 20px}
.principles{background:#fff8f6}.number-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:60px}.number-cards article{background:#fff;min-height:290px;padding:34px;border-top:3px solid var(--hot)}.number-cards b{color:var(--hot);font-size:12px}.number-cards h3{font-size:30px;margin:55px 0 15px}.number-cards p{font:400 14px/1.9 var(--jp)}
.program-detail{background:var(--wine);color:#fff}.program-detail-head{display:flex;justify-content:space-between;align-items:end;margin:55px 0}.program-detail-head h2,.academy-intro h2,.story-lead h2,.portal-copy h2,.schedule-cta h2,.inquiry h2{font:600 clamp(38px,4.7vw,68px)/1.35 var(--jp);margin:0}.program-detail-head>p{font:400 14px/2 var(--jp);max-width:400px}.program-rows{border-top:1px solid rgba(255,255,255,.25)}.program-rows a{display:grid;grid-template-columns:60px 190px 1fr auto;align-items:center;min-height:105px;border-bottom:1px solid rgba(255,255,255,.25);transition:.2s}.program-rows a:hover{background:rgba(255,255,255,.06);padding:0 18px}.program-rows span{color:#df9aad}.program-rows small{font-size:9px;letter-spacing:.15em}.program-rows strong{font:500 24px var(--jp)}.program-rows i{font-style:normal;color:var(--pink);font-size:22px}
.next-band{min-height:240px;background:var(--blush);padding:50px 8vw;display:grid;grid-template-columns:.55fr 1fr auto;align-items:center}.next-band>p{font-size:10px;letter-spacing:.2em}.next-band small{font:500 11px var(--jp);color:#8d7580}.next-band h2{font-size:34px;margin:10px 0}.round-arrow{width:72px;height:72px;border-radius:50%;background:var(--hot);color:#fff;display:flex;align-items:center;justify-content:center;font-size:25px}

/* Academy */
.academy-page-hero{height:760px;position:relative;display:flex;align-items:center;padding:120px 8vw 60px;color:#fff;overflow:hidden;background:#2c2029}.academy-page-hero>img{position:absolute;inset:0;height:100%;object-fit:cover}.academy-page-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(40,27,37,.95),rgba(40,27,37,.63) 48%,rgba(40,27,37,.1))}.academy-page-hero .page-hero-copy{width:min(700px,60vw)}.academy-page-hero h1{font-size:clamp(48px,6vw,88px)}.academy-page-hero h1 em{display:block}.learning-path{background:var(--wine);color:#fff}.academy-intro{display:flex;justify-content:space-between;align-items:end;margin:55px 0}.academy-intro>p{font:400 14px/2 var(--jp);max-width:380px}.path-list{list-style:none;padding:0;margin:0;border-top:1px solid rgba(255,255,255,.25)}.path-list li{display:grid;grid-template-columns:90px 1fr;min-height:155px;padding:30px 20px;border-bottom:1px solid rgba(255,255,255,.25)}.path-list b{font-size:14px;color:#e6a4b8}.path-list small{font-size:9px;letter-spacing:.16em;color:#e6a4b8}.path-list h3{font:500 23px var(--jp);margin:8px 0}.path-list p{font:400 13px/1.7 var(--jp);margin:0;color:#d7c8cf}.course-section{background:#fff}.course-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:60px}.course-grid article{background:#fff8f6;padding:40px 32px;min-height:340px}.course-grid span{font-size:9px;letter-spacing:.16em;color:var(--hot)}.course-grid h3{font:600 24px var(--jp);margin:45px 0 18px}.course-grid p{font:400 14px/1.9 var(--jp)}.course-grid a{display:inline-block;margin-top:30px;font-size:11px;border-bottom:1px solid}.academy-gallery{display:grid;grid-template-columns:1fr 1.4fr .7fr;height:430px;gap:4px;background:#fff}.academy-gallery img{height:100%;object-fit:cover}.academy-gallery img:last-child{object-position:center 40%}.schedule-cta{background:#fff0f3;text-align:center}.schedule-cta>div{max-width:700px;margin:auto}.schedule-cta>div>p:first-child{font-size:10px;letter-spacing:.18em;color:var(--hot)}.schedule-cta>div>p:nth-of-type(2){font:400 14px/2 var(--jp)}

/* Salon */
.salon-page-hero{min-height:660px;background:#fbeef1;padding:130px 8vw 70px;display:grid;grid-template-columns:1fr 1fr;align-items:center}.salon-page-copy{position:relative;z-index:2}.mini-map{height:460px;position:relative;background:radial-gradient(circle,#fff,transparent 65%)}.mini-map:before{content:"";position:absolute;inset:40px 18%;background:#fff;clip-path:polygon(48% 0,63% 8%,61% 20%,75% 29%,67% 40%,87% 53%,75% 66%,79% 79%,57% 83%,41% 100%,35% 82%,16% 77%,24% 63%,4% 51%,30% 42%,23% 30%,44% 22%);transform:rotate(12deg);filter:drop-shadow(0 20px 35px rgba(150,80,105,.12))}.mini-map i{position:absolute;z-index:2;width:13px;height:13px;border-radius:50%;background:var(--hot);border:3px solid #fff;box-shadow:0 4px 12px rgba(232,85,125,.5)}.mini-map i:nth-child(1){top:80px;left:52%}.mini-map i:nth-child(2){top:160px;left:40%}.mini-map i:nth-child(3){top:220px;left:58%}.mini-map i:nth-child(4){top:275px;left:43%}.mini-map i:nth-child(5){top:330px;left:32%}.mini-map i:nth-child(6){top:375px;left:25%}.salon-finder{background:#fff}.finder-panel{background:var(--wine);color:#fff;padding:55px;display:flex;align-items:center;justify-content:space-between;border-radius:8px}.finder-panel small{font-size:9px;letter-spacing:.18em;color:#e9a9bc}.finder-panel h2{font:600 34px var(--jp);margin:12px 0}.finder-panel p{font:400 13px var(--jp)}.finder-actions{display:flex;gap:10px}.region-list{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);margin-top:35px;border:1px solid var(--line)}.region-list span{background:#fff;padding:23px 16px;font:500 13px var(--jp);text-align:center}.certifications{background:#fff8f6}.cert-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:55px}.cert-grid article{background:#fff;display:grid;grid-template-columns:120px 1fr;align-items:center;padding:45px}.cert-grid b{width:82px;height:82px;border-radius:50%;background:var(--blush);color:var(--hot);display:flex;align-items:center;justify-content:center;font:500 25px var(--serif)}.cert-grid small{font-size:9px;letter-spacing:.15em;color:var(--hot)}.cert-grid h3{font:600 23px var(--jp);margin:8px 0}.cert-grid p{font:400 13px/1.8 var(--jp)}.salon-stories{background:#2b2229;color:#fff;display:grid;grid-template-columns:1fr .8fr;gap:8vw;align-items:center}.story-lead>p{font:400 14px/2 var(--jp);max-width:480px}.story-placeholder{height:380px;border:1px solid rgba(255,255,255,.3);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:linear-gradient(145deg,#59364a,#2b2229)}.story-placeholder span{font-size:11px;letter-spacing:.25em;color:#e6a4b8}.story-placeholder p{font:500 13px var(--jp);margin-top:18px}

/* For salon */
.for-salon-hero{min-height:680px;display:grid;grid-template-columns:1fr 1fr;background:#fff8f6}.for-salon-copy{padding:140px 5vw 70px 8vw;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.for-salon-copy h1{font-size:clamp(43px,5vw,73px)}.for-salon-copy .button{margin-top:25px}.for-salon-visual{min-height:680px;overflow:hidden}.for-salon-visual img{height:100%;object-fit:cover}.support-system{background:#fff}.support-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin-top:60px}.support-card-grid article{background:#fff;padding:34px;min-height:245px}.support-card-grid b{font-size:11px;color:var(--hot)}.support-card-grid h3{font-size:20px;margin:50px 0 12px}.support-card-grid p{font:400 13px/1.85 var(--jp)}.portal-feature{background:var(--wine);color:#fff;display:grid;grid-template-columns:1fr 1fr;align-items:center;min-height:700px}.portal-copy>p{font:400 14px/2 var(--jp);max-width:480px}.portal-demo{height:500px;position:relative}.portal-demo .phone{top:10px;left:50%;transform:translateX(-50%) scale(1.05)}.start-steps{background:#fff8f6}.start-list{list-style:none;padding:0;margin:60px 0 0;display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.start-list li{background:#fff;padding:30px;min-height:270px}.start-list b{color:var(--hot);font-size:12px}.start-list h3{font:600 20px var(--jp);margin:55px 0 14px}.start-list p{font:400 13px/1.8 var(--jp)}.faq{background:#fff}.faq h2{font:600 44px var(--jp);margin:40px 0}.faq-list{max-width:920px}.faq details{border-top:1px solid var(--line)}.faq details:last-child{border-bottom:1px solid var(--line)}.faq summary{list-style:none;cursor:pointer;padding:25px 5px;font:500 15px var(--jp);display:flex;justify-content:space-between}.faq summary::-webkit-details-marker{display:none}.faq details p{font:400 14px/2 var(--jp);padding:0 5px 25px;color:#655a61}.inquiry{background:var(--blush);text-align:center}.inquiry>div{max-width:760px;margin:auto}.inquiry>div>p:first-child{font-size:10px;letter-spacing:.2em;color:var(--hot)}.inquiry>div>p:nth-of-type(2){font:400 14px/2 var(--jp)}.inquiry-actions{display:flex;gap:25px;justify-content:center;align-items:center;margin-top:30px}.inquiry>div>small{display:block;margin-top:28px;font:400 11px var(--jp);color:#8d7580}

/* Journal */
.journal-hero{min-height:560px;padding:140px 8vw 80px;background:linear-gradient(120deg,#fff 0%,#fff2f4 58%,#efb3c3 100%);display:flex;align-items:center}.journal-hero>div{max-width:900px}.channel-feature{display:grid;grid-template-columns:.7fr 1.3fr;gap:7vw;align-items:center;background:#fff}.channel-title h2{font:600 clamp(38px,4.4vw,64px)/1.4 var(--jp)}.channel-title h2 span{color:var(--hot)}.channel-title>p{font:400 14px/2 var(--jp)}.featured-movie{background:#2b2229;color:#fff;border-radius:7px;overflow:hidden}.featured-movie>img{height:400px;object-fit:cover}.featured-movie>div{padding:30px}.featured-movie span{font-size:9px;letter-spacing:.16em;color:#ee9db5}.featured-movie h3{font:600 23px/1.6 var(--jp);margin:10px 0}.featured-movie p{font:400 13px/1.8 var(--jp);color:#d3c5cc}.journal-list{background:#fff8f6}.journal-nav{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:50px}.journal-nav button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:10px 18px;font:600 10px var(--sans);letter-spacing:.1em}.journal-nav button.active{background:var(--wine);color:#fff}.article-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.article-grid article{background:#fff;padding-bottom:28px}.article-visual{height:260px;display:flex;align-items:center;justify-content:center;font:500 32px var(--serif);letter-spacing:.08em}.article-visual.pink{background:#f6c8d4;color:#fff}.article-visual.wine{background:var(--wine);color:#fff}.article-visual.photo img{height:100%;object-fit:cover}.article-grid article>small,.article-grid article>h3,.article-grid article>p,.article-grid article>a{margin-left:25px;margin-right:25px}.article-grid article>small{display:block;margin-top:24px;font-size:9px;letter-spacing:.15em;color:var(--hot)}.article-grid article>h3{font:600 18px/1.65 var(--jp)}.article-grid article>p{font:400 13px/1.8 var(--jp);color:#6e6369}.article-grid article>a{display:inline-block;font-size:9px;letter-spacing:.14em;border-bottom:1px solid;margin-top:15px}

@media(max-width:900px){.sub-header{position:relative}.dark-header{position:absolute}.dark-header .menu-button span{background:#fff}.page-hero,.salon-page-hero,.for-salon-hero,.portal-feature,.salon-stories,.channel-feature{grid-template-columns:1fr}.page-hero{padding-top:100px}.page-hero-art{height:330px}.glass-orb.big{width:270px;height:270px;right:5%}.glass-orb.small{width:85px;height:85px}.page-hero-art>span{right:88px;top:107px;font-size:66px}.editorial-grid,.program-detail-head,.academy-intro{display:block}.editorial-grid{margin-top:40px}.editorial-grid>div{margin-top:30px}.number-cards,.course-grid,.support-card-grid,.article-grid{grid-template-columns:1fr}.program-detail-head>p,.academy-intro>p{margin-top:30px}.program-rows a{grid-template-columns:42px 1fr auto;gap:8px;padding:20px 0}.program-rows small{display:none}.program-rows strong{font-size:17px}.next-band{grid-template-columns:1fr auto;gap:18px}.next-band>p{grid-column:1/3}.next-band h2{font-size:25px}.academy-page-hero{height:700px;padding:110px 24px 60px}.academy-page-hero .page-hero-copy{width:auto}.academy-page-hero h1{font-size:44px}.path-list li{grid-template-columns:55px 1fr}.academy-gallery{height:auto;grid-template-columns:1fr 1fr}.academy-gallery img{height:260px}.academy-gallery img:last-child{grid-column:1/3}.salon-page-hero{padding:110px 24px 60px}.mini-map{height:360px}.finder-panel{padding:35px 24px;display:block}.finder-actions{flex-direction:column;margin-top:28px}.region-list{grid-template-columns:1fr 1fr}.cert-grid{grid-template-columns:1fr}.cert-grid article{grid-template-columns:90px 1fr;padding:28px 22px}.for-salon-copy{padding:110px 24px 60px}.for-salon-visual{min-height:420px}.support-card-grid{grid-template-columns:1fr 1fr}.portal-feature{padding-bottom:20px}.portal-demo{height:470px}.start-list{grid-template-columns:1fr 1fr}.inquiry-actions{flex-direction:column}.featured-movie>img{height:280px}.article-visual{height:220px}}
@media(max-width:560px){.number-cards,.support-card-grid,.start-list{grid-template-columns:1fr}.academy-gallery{grid-template-columns:1fr}.academy-gallery img,.academy-gallery img:last-child{grid-column:auto;height:240px}.region-list{grid-template-columns:1fr}.finder-actions .button{justify-content:center}.cert-grid article{grid-template-columns:1fr}.cert-grid b{margin-bottom:20px}.page-hero-copy h1,.salon-page-copy h1,.for-salon-copy h1,.journal-hero h1{font-size:39px}.next-band{padding:40px 24px}.round-arrow{width:58px;height:58px}}

/* Expanded real-photo storytelling */
.photo-mosaic{display:grid;grid-template-columns:1.35fr .7fr .7fr 1.15fr;gap:5px;padding:0 5px 5px;background:#fff}.photo-mosaic figure{height:390px;margin:0;position:relative;overflow:hidden}.photo-mosaic img{height:100%;object-fit:cover;transition:transform .6s ease}.photo-mosaic figure:hover img{transform:scale(1.025)}.photo-mosaic .portrait img{object-position:center 22%}.photo-mosaic figcaption{position:absolute;left:18px;bottom:16px;color:#fff;font-size:9px;font-weight:600;letter-spacing:.15em;text-shadow:0 1px 8px rgba(0,0,0,.65)}
.brand-photo-story,.support-photo-band{display:grid;grid-template-columns:.9fr 1.15fr .75fr;align-items:stretch;background:#281f27;color:#fff}.brand-photo-story figure,.support-photo-band figure{margin:0;min-height:570px;overflow:hidden}.brand-photo-story figure img,.support-photo-band figure img{height:100%;object-fit:cover}.brand-photo-story>div,.support-photo-band>div{padding:90px 7vw;display:flex;flex-direction:column;justify-content:center}.brand-photo-story small,.support-photo-band small{color:#ef8da8;font-size:10px;letter-spacing:.2em}.brand-photo-story h2,.support-photo-band h2{font:600 clamp(32px,3.4vw,53px)/1.5 var(--jp);margin:24px 0}.brand-photo-story h2 em,.support-photo-band h2 em{font-family:var(--serif);font-weight:500;color:var(--pink)}.brand-photo-story p,.support-photo-band p{font:400 14px/2 var(--jp);color:#e4dce1}.academy-gallery.expanded{grid-template-columns:1.05fr 1.5fr .72fr .85fr 1fr .8fr;height:470px}.academy-gallery.expanded img{min-width:0;object-position:center;filter:saturate(.92)}
@media(max-width:900px){.photo-mosaic{grid-template-columns:1fr 1fr}.photo-mosaic figure{height:300px}.brand-photo-story,.support-photo-band{grid-template-columns:1fr 1fr}.brand-photo-story>div,.support-photo-band>div{grid-column:1/3;grid-row:1;padding:75px 24px;background:rgba(40,31,39,.94);z-index:2}.brand-photo-story figure,.support-photo-band figure{min-height:430px}.academy-gallery.expanded{grid-template-columns:1fr 1fr;height:auto}.academy-gallery.expanded img,.academy-gallery.expanded img:last-child{grid-column:auto;height:280px}}
@media(max-width:560px){.photo-mosaic{grid-template-columns:1fr 1fr}.photo-mosaic figure{height:230px}.photo-mosaic .wide{grid-column:1/3;height:260px}.brand-photo-story,.support-photo-band{display:block}.brand-photo-story>div,.support-photo-band>div{padding:65px 24px}.brand-photo-story figure,.support-photo-band figure{min-height:0;height:360px}.brand-photo-story figure:last-child,.support-photo-band figure:last-child{display:none}.academy-gallery.expanded img{height:230px}}

/* About, video and interactive journal */
@media(max-width:1180px) and (min-width:901px){.site-header{gap:20px;padding-left:2vw;padding-right:2vw}.site-header nav{gap:17px;font-size:10px}.header-cta{padding:12px 15px}}
.about-hero{min-height:680px;padding:120px 8vw 70px;display:grid;grid-template-columns:1.15fr .85fr;align-items:center;background:linear-gradient(135deg,#fff 0%,#fff5f6 48%,#f2bdca 100%);overflow:hidden}.about-hero-copy{max-width:760px}.about-hero h1{font:600 clamp(42px,5vw,72px)/1.42 var(--jp);letter-spacing:.03em;margin:0 0 28px}.about-hero h1 em,.about-network h2 em{font-family:var(--serif);font-weight:500;color:var(--hot)}.about-hero-copy>p:last-child{font:400 16px/2.05 var(--jp);max-width:630px}.about-mark{justify-self:center;position:relative;width:min(380px,34vw);aspect-ratio:1;border-radius:50%;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.42);box-shadow:inset 0 0 0 1px rgba(255,255,255,.65),0 25px 70px rgba(161,75,100,.15);backdrop-filter:blur(10px)}.about-mark span{font:500 clamp(100px,13vw,190px)/1 var(--serif);color:#fff;text-shadow:0 10px 30px rgba(142,61,85,.12)}.about-mark i{position:absolute;right:-18px;bottom:36px;font:600 10px/1.7 var(--sans);font-style:normal;letter-spacing:.28em;color:var(--wine)}.about-message{background:#fff}.about-message-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:8vw;margin-top:55px}.about-message h2{font:600 clamp(34px,4vw,57px)/1.55 var(--jp);margin:0}.about-message-grid>div p{font:400 15px/2.2 var(--jp);margin:0 0 22px}.about-values{background:var(--wine);color:#fff}.about-values .section-heading h2 span{color:#f1a5ba}.value-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:65px;border-top:1px solid rgba(255,255,255,.23)}.value-grid article{padding:35px 32px 15px 0;border-right:1px solid rgba(255,255,255,.23)}.value-grid article+article{padding-left:32px}.value-grid article:last-child{border-right:0}.value-grid b{font:500 34px var(--serif);color:#e89ab0}.value-grid small{display:block;margin:30px 0 13px;font-size:9px;letter-spacing:.18em;color:#dfb9c5}.value-grid h3{font:600 20px/1.7 var(--jp)}.value-grid p{font:400 13px/2 var(--jp);color:#d7c8ce}.about-network{display:grid;grid-template-columns:1fr 1fr;gap:9vw;align-items:center;background:#fff7f7}.about-network h2{font:600 clamp(38px,4.4vw,62px)/1.48 var(--jp);margin:25px 0}.about-network-copy>p{font:400 15px/2.15 var(--jp)}.about-links{border-top:1px solid var(--line)}.about-links a{display:grid;grid-template-columns:95px 1fr auto;align-items:center;gap:18px;padding:25px 5px;border-bottom:1px solid var(--line);transition:.25s}.about-links a:hover{padding-left:14px;color:var(--hot)}.about-links small{font-size:9px;letter-spacing:.17em}.about-links strong{font:600 15px var(--jp)}.about-links span{font-size:20px}.shorts-section{background:#fff}.shorts-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:55px}.shorts-grid a{min-height:240px;padding:28px;display:grid;grid-template-columns:1fr auto;grid-template-rows:auto 1fr auto;background:linear-gradient(145deg,#5b2439,#2c2028);color:#fff;border-radius:7px;transition:.25s}.shorts-grid a:nth-child(2){background:linear-gradient(145deg,#ef8da8,#a53f61)}.shorts-grid a:nth-child(3){background:linear-gradient(145deg,#f6d6dd,#de7f9a);color:var(--wine)}.shorts-grid a:hover{transform:translateY(-5px)}.shorts-grid b{font:500 25px var(--serif);opacity:.65}.shorts-grid span{grid-column:1/3;align-self:center;font:600 19px/1.65 var(--jp)}.shorts-grid i{grid-column:2;font-style:normal;width:45px;height:45px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.18)}.article-visual.ink{background:#2b2229;color:#fff}.article-grid article[hidden]{display:none}.journal-nav button{cursor:pointer;transition:.2s}.journal-nav button:hover{border-color:var(--hot);color:var(--hot)}.journal-nav button.active:hover{color:#fff}
@media(max-width:900px){.about-hero,.about-network{grid-template-columns:1fr}.about-hero{padding:105px 24px 70px}.about-mark{width:300px;margin:55px auto 0}.about-message-grid{grid-template-columns:1fr;gap:35px}.value-grid,.shorts-grid{grid-template-columns:1fr}.value-grid article,.value-grid article+article{padding:30px 0;border-right:0;border-bottom:1px solid rgba(255,255,255,.23)}.shorts-grid a{min-height:205px}.about-network{gap:55px}}
@media(max-width:560px){.about-hero h1{font-size:39px}.about-mark{width:240px}.about-mark i{right:-8px}.about-links a{grid-template-columns:70px 1fr auto}.journal-nav{gap:8px}.journal-nav button{padding:9px 13px}}

/* Beauty program detail pages */
.program-hero{min-height:700px;padding:125px 8vw 75px;display:grid;grid-template-columns:1.1fr .9fr;align-items:center;overflow:hidden;position:relative}.program-hero.tone-pink{background:linear-gradient(135deg,#fff 0%,#f9dbe3 100%)}.program-hero.tone-wine{background:linear-gradient(135deg,#3c1e2c 0%,#6f2944 100%);color:#fff}.program-hero.tone-coral{background:linear-gradient(135deg,#fff3ef 0%,#dea098 100%)}.program-hero.tone-pearl{background:linear-gradient(135deg,#fff 0%,#e8e4e6 100%)}.program-hero-copy{position:relative;z-index:2;max-width:760px}.program-number{display:block;font-size:10px;letter-spacing:.2em;margin-bottom:18px;opacity:.65}.program-hero h1{font:500 clamp(58px,8vw,118px)/.88 var(--sans);letter-spacing:-.06em;margin:0 0 30px}.program-hero h1.jp-title{font:600 clamp(48px,6.5vw,90px)/1.3 var(--jp);letter-spacing:.03em}.program-hero h2{font:600 clamp(28px,3vw,44px)/1.55 var(--jp);margin:0 0 18px}.program-hero h2 em{font-family:var(--serif);font-weight:500;color:var(--hot)}.tone-wine .eyebrow,.tone-wine h2 em{color:#f2a3ba}.program-hero-copy>p:last-child{font:400 16px/2.05 var(--jp);max-width:620px}.program-symbol{justify-self:center;width:min(390px,34vw);aspect-ratio:1;border-radius:50%;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.32);border:1px solid rgba(255,255,255,.6);box-shadow:0 28px 70px rgba(92,42,59,.15),inset 0 0 60px rgba(255,255,255,.4);backdrop-filter:blur(8px)}.program-symbol span{font:500 clamp(65px,10vw,150px)/1 var(--serif);color:rgba(255,255,255,.88);text-shadow:0 15px 30px rgba(91,36,57,.12)}.program-concept{background:#fff}.program-concept-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:9vw;margin-top:52px}.program-concept h2{font:600 clamp(35px,4vw,58px)/1.55 var(--jp);margin:0}.program-concept-grid p{font:400 16px/2.15 var(--jp);margin:0 0 22px}.program-flow{background:var(--wine);color:#fff}.program-flow .section-heading h2 span{color:#f0a1b7}.program-flow-list{list-style:none;margin:65px 0 0;padding:0;border-top:1px solid rgba(255,255,255,.23)}.program-flow-list li{display:grid;grid-template-columns:70px 190px 1fr;align-items:center;min-height:88px;border-bottom:1px solid rgba(255,255,255,.23)}.program-flow-list b{font:500 22px var(--serif);color:#e89ab0}.program-flow-list small{font-size:10px;letter-spacing:.17em;color:#dabcc5}.program-flow-list strong{font:600 17px var(--jp)}.program-audience{background:#fff8f6}.program-audience-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:7vw;align-items:start;margin-top:45px}.program-audience h2{font:600 clamp(34px,4vw,54px)/1.5 var(--jp);margin:0}.program-audience ul{list-style:none;padding:0;margin:0;border-top:1px solid var(--line)}.program-audience li{font:500 16px/1.7 var(--jp);padding:22px 5px 22px 36px;border-bottom:1px solid var(--line);position:relative}.program-audience li:before{content:"✓";position:absolute;left:5px;color:var(--hot)}.program-actions{display:grid;grid-template-columns:1fr 1fr}.program-actions a{min-height:220px;padding:45px 8vw;display:grid;grid-template-columns:1fr auto;align-content:center;background:#f5ced8;transition:.25s}.program-actions a+ a{background:var(--hot);color:#fff}.program-actions a:hover{filter:brightness(.97)}.program-actions small{grid-column:1/3;font-size:10px;letter-spacing:.17em;margin-bottom:16px}.program-actions strong{font:600 clamp(19px,2vw,28px) var(--jp)}.program-actions span{font-size:28px}.product-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:55px}.product-steps article{padding:30px;background:#fff7f8;border:1px solid #f2d8df;border-radius:7px}.product-steps b{font-size:10px;letter-spacing:.15em;color:var(--hot)}.product-steps h3{font:600 20px var(--jp);margin:22px 0 7px}.product-steps p{font:400 14px var(--jp);color:#836c75;margin:0}.program-movie{display:grid;grid-template-columns:74px 1fr;gap:26px;align-items:center;margin-top:55px;padding:38px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);border-radius:7px}.program-movie>span{width:70px;height:70px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--hot)}.program-movie small{font-size:10px;letter-spacing:.16em;color:#e8aec0}.program-movie h3{font:600 22px/1.6 var(--jp);margin:9px 0}.program-movie p{font:400 14px/1.8 var(--jp);color:#d8cbd0;margin:0}.pickup-salons{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-top:45px}.pickup-salons a{min-height:250px;padding:27px;display:grid;grid-template-columns:1fr auto;grid-template-rows:auto 1fr auto;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.18);border-radius:6px;transition:.25s}.pickup-salons a:hover{background:rgba(255,255,255,.15);transform:translateY(-4px)}.pickup-salons>a>span{font:500 26px var(--serif);color:#e89ab0}.pickup-salons div{grid-column:1/3;align-self:center}.pickup-salons small{font-size:9px;letter-spacing:.16em;color:#ddaabd}.pickup-salons h3{font:600 20px var(--jp);margin:12px 0}.pickup-salons p{font:400 14px var(--jp);color:#d9cbd0}.pickup-salons i{grid-column:2;font-style:normal;font-size:22px}.story-all-link{margin-top:32px;background:#fff;color:var(--wine)}
@media(max-width:900px){.program-hero{grid-template-columns:1fr;padding:110px 24px 70px}.program-symbol{width:280px;margin:48px auto 0}.program-concept-grid,.program-audience-grid{grid-template-columns:1fr;gap:35px}.program-flow-list li{grid-template-columns:52px 1fr;gap:8px;padding:18px 0}.program-flow-list small{grid-column:2}.program-flow-list strong{grid-column:2}.program-actions{grid-template-columns:1fr}.program-actions a{min-height:180px;padding:38px 24px}.product-steps,.pickup-salons{grid-template-columns:1fr}.program-movie{grid-template-columns:1fr}.program-movie>span{width:58px;height:58px}}
@media(max-width:560px){.program-hero h1{font-size:55px}.program-hero h1.jp-title{font-size:42px}.program-hero h2{font-size:28px}.program-symbol{width:220px}.program-concept-grid p{font-size:15px}.program-actions strong{font-size:18px}}

/* Academy course detail and mobile conversion path */
.course-details{background:#2b2028;color:#fff}.course-detail-list{margin-top:55px;border-top:1px solid rgba(255,255,255,.2)}.course-detail{display:grid;grid-template-columns:90px 1fr 70px;gap:35px;align-items:center;padding:48px 10px;border-bottom:1px solid rgba(255,255,255,.2);scroll-margin-top:30px}.course-detail-no{font:500 36px var(--serif);color:#e99bb1}.course-detail-copy>small{font-size:10px;letter-spacing:.18em;color:#dcaabc}.course-detail h2{font:600 clamp(25px,3vw,40px)/1.5 var(--jp);margin:10px 0 16px}.course-detail p{font:400 16px/2 var(--jp);max-width:800px;color:#ddd0d5}.course-detail>a{width:58px;height:58px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--hot);font-size:22px}.learn-points{display:flex;flex-wrap:wrap;gap:9px;margin-top:23px}.learn-points span{font:500 13px var(--jp);padding:9px 14px;border:1px solid rgba(255,255,255,.25);border-radius:999px}.academy-outcomes{background:#fff8f6;color:var(--ink)}.outcome-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-top:55px}.outcome-grid article{padding:34px;background:#fff;border:1px solid #f0dfe4;border-radius:6px}.outcome-grid b{font:500 27px var(--serif);color:var(--hot)}.outcome-grid h3{font:600 21px var(--jp);margin:28px 0 12px}.outcome-grid p{font:400 15px/2 var(--jp);color:#74646b}.mobile-quick-nav{display:none}
@media(max-width:900px){.course-detail{grid-template-columns:55px 1fr;gap:15px;padding:38px 0}.course-detail>a{grid-column:2;width:50px;height:50px}.outcome-grid{grid-template-columns:1fr}.course-detail p{font-size:15px}.mobile-quick-nav{position:fixed;display:grid;grid-template-columns:1fr 1fr;left:10px;right:10px;bottom:10px;z-index:50;border-radius:999px;overflow:hidden;box-shadow:0 10px 35px rgba(47,25,35,.3)}.mobile-quick-nav a{min-height:60px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#fff;color:var(--wine)}.mobile-quick-nav a+ a{background:var(--hot);color:#fff}.mobile-quick-nav small{font:500 9px var(--jp);opacity:.7}.mobile-quick-nav strong{font:600 14px var(--jp);margin-top:2px}body{padding-bottom:80px}footer{margin-bottom:-80px;padding-bottom:150px}}
@media(max-width:560px){.course-detail{grid-template-columns:42px 1fr}.course-detail-no{font-size:28px}.learn-points span{font-size:12px;padding:8px 11px}}

/* Final site completeness */
a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #ffbfce;outline-offset:4px}.company-profile{background:#fff}.company-profile-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:8vw;margin-top:52px}.company-en{font:500 clamp(42px,5vw,72px)/.95 var(--sans);letter-spacing:-.055em;color:#efbdca;margin:0 0 38px}.company-profile h2{font:600 clamp(34px,4vw,54px) var(--jp);margin:0 0 18px}.company-profile-grid>div>p:last-child{font:400 15px/2 var(--jp);max-width:390px}.company-profile dl{margin:0;border-top:1px solid var(--line)}.company-profile dl>div{display:grid;grid-template-columns:130px 1fr;gap:25px;padding:20px 5px;border-bottom:1px solid var(--line)}.company-profile dt{font:600 14px var(--jp);color:#8d747e}.company-profile dd{font:400 15px/1.9 var(--jp);margin:0}.company-profile dd a{text-decoration:underline;text-underline-offset:4px}.company-buttons{display:flex;gap:12px;justify-content:flex-end;margin-top:42px}.company-buttons .white{border:1px solid var(--line)}.error-page{background:#fff8f8}.error-main{min-height:670px;padding:120px 8vw 80px;display:flex;align-items:center;justify-content:space-between;overflow:hidden}.error-main>div{position:relative;z-index:2}.error-main>div>p:first-child{font:500 18px var(--serif);color:var(--hot);letter-spacing:.2em}.error-main h1{font:600 clamp(36px,5vw,66px)/1.45 var(--jp);margin:18px 0}.error-main>div>p:nth-of-type(2){font:400 16px/2 var(--jp)}.error-main>div>div{display:flex;align-items:center;gap:28px;margin-top:35px}.error-main>span{font:500 min(36vw,470px)/1 var(--serif);color:#f5dce3;margin-right:-7vw}.error-home{margin-left:auto}
@media(max-width:900px){.company-profile-grid{grid-template-columns:1fr;gap:45px}.company-buttons{justify-content:flex-start;flex-direction:column}.company-profile dl>div{grid-template-columns:100px 1fr}.error-main{min-height:620px;padding:100px 24px 70px}.error-main>span{position:absolute;right:-25px;color:#f8e6eb}.error-main>div>div{align-items:flex-start;flex-direction:column}.error-page .site-header{position:relative}}
@media(max-width:560px){.company-profile dl>div{grid-template-columns:1fr;gap:7px}.company-profile dd{font-size:14px}.error-main h1{font-size:36px}}
.video-feature.thumbnail-card:after{background:rgba(20,10,17,.08)}.video-overlay.play-only{inset:0;align-items:center;justify-content:center}

/* Salon Life photo collection */
.moments{background:#fff8f8}.moments-head{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:55px}.moments-head h2{font:600 clamp(32px,4vw,56px)/1.5 var(--jp);margin:18px 0 0}.moments-head h2 span{color:var(--hot)}.moments-head>p{max-width:450px;font:400 14px/2 var(--jp);color:#74646b}.moments-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:250px;gap:8px}.moments-grid figure,.documentary-grid figure,.community-photo-grid figure,.journal-photo-grid figure{margin:0;overflow:hidden;position:relative;background:#eadde2}.moments-grid img,.documentary-grid img,.community-photo-grid img,.journal-photo-grid img{width:100%;height:100%;object-fit:cover;transition:transform .55s ease}.moments-grid figure:hover img,.documentary-grid figure:hover img,.community-photo-grid figure:hover img,.journal-photo-grid figure:hover img{transform:scale(1.025)}.moments-grid .span-2{grid-column:span 2}.moments-grid .tall{grid-row:span 2}.academy-documentary{background:#20191f;color:#fff}.academy-documentary .moments-head>p{color:#d7c9cf}.academy-documentary .moments-head h2 span,.community-gallery .moments-head h2 span{color:#ef9db4}.documentary-grid{display:grid;grid-template-columns:repeat(5,1fr);grid-auto-rows:245px;gap:7px}.documentary-grid .wide{grid-column:span 2}.community-gallery{background:#3a202d;color:#fff}.community-gallery .moments-head>p{color:#e3d5da}.community-photo-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:280px;gap:8px}.community-photo-grid figure:nth-child(1),.community-photo-grid figure:nth-child(8),.community-photo-grid figure:nth-child(13){grid-column:span 2}.journal-photo-story{background:#fff5f7}.journal-photo-grid{display:grid;grid-template-columns:1.2fr .9fr .9fr 1.2fr;gap:10px}.journal-photo-grid figure{height:390px}.journal-photo-grid figure:nth-child(2) img{object-position:center 30%}
@media(max-width:900px){.moments-head{display:block}.moments-head>p{margin-top:25px}.moments-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:230px}.documentary-grid{grid-template-columns:repeat(3,1fr);grid-auto-rows:230px}.community-photo-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:250px}.journal-photo-grid{grid-template-columns:1fr 1fr}.journal-photo-grid figure{height:300px}}
@media(max-width:560px){.moments-grid{grid-auto-rows:190px}.moments-grid .span-2{grid-column:span 2}.moments-grid .tall{grid-row:span 2}.documentary-grid{grid-template-columns:1fr 1fr;grid-auto-rows:190px}.documentary-grid .wide{grid-column:span 2}.community-photo-grid{grid-auto-rows:200px}.community-photo-grid figure:nth-child(1),.community-photo-grid figure:nth-child(8),.community-photo-grid figure:nth-child(13){grid-column:span 2}.journal-photo-grid{grid-template-columns:1fr 1fr}.journal-photo-grid figure{height:230px}}

/* YouTube-rich Journal */
.journal-hero{position:relative;isolation:isolate;overflow:hidden;background:#f5c4d0}.journal-hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 42%;z-index:-2}.journal-hero-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(255,250,250,.96) 0%,rgba(255,245,247,.86) 43%,rgba(236,151,177,.62) 100%)}.journal-hero .reveal{position:relative}.youtube-picks{background:#271d25;color:#fff}.youtube-picks .section-heading h2 span{color:#f09ab3}.youtube-picks .section-heading>p{color:#d8cbd0}.youtube-random-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-top:52px}.youtube-pick{display:block;min-width:0}.youtube-pick[hidden]{display:none}.youtube-pick>div{aspect-ratio:16/10;position:relative;overflow:hidden;border-radius:7px;background:#4a3540}.youtube-pick img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}.youtube-pick:hover img{transform:scale(1.04)}.youtube-pick i{position:absolute;left:15px;bottom:15px;width:42px;height:42px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--hot);font-style:normal;font-size:13px;box-shadow:0 7px 22px rgba(0,0,0,.25)}.youtube-pick small{display:block;margin:17px 0 8px;color:#e99db3;font-size:9px;letter-spacing:.16em}.youtube-pick h3{font:600 15px/1.75 var(--jp);margin:0}.youtube-all-link{display:flex;justify-content:space-between;align-items:center;margin-top:42px;padding:22px 4px;border-top:1px solid rgba(255,255,255,.2);border-bottom:1px solid rgba(255,255,255,.2);font:600 14px var(--jp)}.shorts-grid a{position:relative;overflow:hidden;isolation:isolate;background:#4f2033!important}.shorts-grid a>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;opacity:.54;filter:saturate(.85)}.shorts-grid a:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(49,20,33,.9),rgba(102,37,61,.36))}.shorts-grid a:nth-child(2):after{background:linear-gradient(90deg,rgba(126,48,78,.88),rgba(222,112,146,.3))}.shorts-grid a:nth-child(3):after{background:linear-gradient(90deg,rgba(92,34,56,.83),rgba(233,151,176,.28))}.shorts-grid a:nth-child(3){color:#fff}
@media(max-width:1050px){.youtube-random-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:700px){.journal-hero-shade{background:linear-gradient(90deg,rgba(255,250,250,.94),rgba(248,211,221,.73))}.youtube-random-grid{grid-template-columns:1fr 1fr}.youtube-pick:last-child{grid-column:1/3}.shorts-grid a{min-height:260px}}

/* Product photography */
.program-card{overflow:hidden}.program-product{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}.program-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,.02) 18%,rgba(48,24,36,.77) 100%);z-index:1}.program-card .card-no,.program-card .card-content{z-index:2;color:#fff}.program-card .card-content p{color:rgba(255,255,255,.84)}.program-card .card-content a{color:#fff}.product-symbol{overflow:hidden;background:#f2dfd5}.product-symbol img{width:100%;height:100%;object-fit:cover}.product-hero-art{overflow:hidden;border-radius:50%;width:min(500px,40vw);aspect-ratio:1;box-shadow:0 35px 90px rgba(107,55,72,.18)}.product-hero-art img{width:100%;height:100%;object-fit:cover}.product-collection{background:#fff6f2}.product-collection-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:55px}.product-collection-grid figure{margin:0;background:#fff;overflow:hidden}.product-collection-grid img{width:100%;aspect-ratio:1/1.08;object-fit:cover;transition:transform .45s ease}.product-collection-grid figure:hover img{transform:scale(1.025)}.product-collection-grid figcaption{padding:17px 18px 20px;font:600 9px var(--sans);letter-spacing:.14em;color:#704957}.phone .fake-photo{background-image:url('/vavitte-life/assets/products/trial-kit.webp?v=dea70cc12a');background-size:cover;background-position:center}.phone .fake-profile{background-image:url('/vavitte-life/assets/gallery/photo-46.webp?v=dafa0d813d');background-size:cover;background-position:center}
@media(max-width:900px){.product-hero-art{width:min(420px,75vw);margin:45px auto 0}.product-collection-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:560px){.product-collection-grid{grid-template-columns:repeat(2,1fr);gap:7px}.product-collection-grid figcaption{padding:13px 11px 16px;font-size:8px}}
.product-steps article>img{width:100%;aspect-ratio:1.25;object-fit:cover;margin:20px 0 8px;border-radius:4px}

/* Academy — soft pink theme aligned with the main site */
.academy-light-page .academy-page-hero{background:#f9e4e8;color:var(--ink)}
.academy-light-page .academy-page-overlay{background:linear-gradient(90deg,rgba(255,250,248,.98) 0%,rgba(255,244,247,.9) 48%,rgba(249,228,232,.28) 100%)}
.academy-light-page .academy-page-hero .eyebrow{color:var(--hot)}
.academy-light-page .learning-path{background:#fff0f3;color:var(--ink)}
.academy-light-page .learning-path .section-tag.light,
.academy-light-page .course-details .section-tag.light,
.academy-light-page .academy-documentary .section-tag.light{color:var(--hot)}
.academy-light-page .academy-intro>p{color:#74646b}
.academy-light-page .path-list{border-color:rgba(91,36,57,.16)}
.academy-light-page .path-list li{border-color:rgba(91,36,57,.16)}
.academy-light-page .path-list b,
.academy-light-page .path-list small{color:var(--hot)}
.academy-light-page .path-list p{color:#74646b}
.academy-light-page .course-details{background:#f9e4e8;color:var(--ink)}
.academy-light-page .course-detail-list,
.academy-light-page .course-detail{border-color:rgba(91,36,57,.16)}
.academy-light-page .course-detail-no,
.academy-light-page .course-detail-copy>small{color:var(--hot)}
.academy-light-page .course-detail p{color:#665860}
.academy-light-page .learn-points span{background:rgba(255,255,255,.68);border-color:rgba(91,36,57,.18)}
.academy-light-page .academy-documentary{background:#fff0f3;color:var(--ink)}
.academy-light-page .academy-documentary .moments-head>p{color:#74646b}
.academy-light-page .academy-documentary .moments-head h2 span{color:var(--hot)}
.academy-light-page .documentary-grid figure{background:#eadde2}
.academy-light-page .course-grid article{overflow:hidden}
.academy-light-page .course-grid.two-course-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-width:1000px}
.academy-light-page .course-thumb{width:calc(100% + 64px);height:205px;margin:-40px -32px 28px;object-fit:cover}
.academy-light-page .course-detail{grid-template-columns:90px 1fr auto}
.academy-light-page .course-detail>a{width:auto;height:auto;min-height:48px;padding:13px 19px;border-radius:999px;white-space:nowrap;font:600 13px var(--jp);gap:8px}
.academy-light-page .learning-path{padding-top:95px;padding-bottom:95px}
.academy-light-page .academy-intro{margin:38px 0 42px}
.academy-light-page .path-list{display:grid;grid-template-columns:repeat(5,1fr);border-bottom:1px solid rgba(91,36,57,.16)}
.academy-light-page .path-list li{display:block;min-height:235px;padding:25px 22px;border-bottom:0;border-right:1px solid rgba(91,36,57,.16)}
.academy-light-page .path-list li:last-child{border-right:0}
.academy-light-page .path-list b{display:block;margin-bottom:28px}
.academy-certificate{display:grid;grid-template-columns:1fr minmax(280px,440px);gap:8vw;align-items:center;background:#fff;color:var(--ink)}
.certificate-copy{max-width:620px}
.certificate-copy h2{font:600 clamp(36px,4.4vw,62px)/1.45 var(--jp);margin:28px 0 24px}
.certificate-copy h2 span{color:var(--hot)}
.certificate-copy p{font:400 16px/2 var(--jp);margin:0 0 18px}
.certificate-copy small{font:400 12px/1.8 var(--jp);color:#8d7580}
.certificate-visual{margin:0;padding:22px;background:#fff8f6;border:1px solid #f0dfe4}
.certificate-visual img{display:block;width:100%;height:auto}
@media(max-width:900px){.academy-light-page .course-grid.two-course-grid{grid-template-columns:1fr}.academy-light-page .course-detail{grid-template-columns:55px 1fr}.academy-light-page .course-detail>a{grid-column:2;width:auto;height:auto;justify-self:start}.academy-light-page .learning-path{padding-top:80px;padding-bottom:80px}.academy-light-page .path-list{display:block;border-bottom:0}.academy-light-page .path-list li{display:grid;grid-template-columns:55px 1fr;min-height:0;padding:23px 0;border-right:0;border-bottom:1px solid rgba(91,36,57,.16)}.academy-light-page .path-list b{margin-bottom:0}.academy-certificate{grid-template-columns:1fr;gap:45px}.certificate-visual{width:min(440px,100%);margin:auto}}
@media(max-width:700px){.academy-light-page .academy-page-overlay{background:linear-gradient(90deg,rgba(255,250,248,.96),rgba(249,228,232,.72))}}

/* Academy training detail */
.training-hero-art{justify-self:center;width:min(580px,43vw);aspect-ratio:3/2;overflow:hidden;border-radius:10px;box-shadow:0 28px 70px rgba(92,42,59,.16)}
.training-hero-art img{width:100%;height:100%;object-fit:cover}
.academy-training-page .program-flow{background:#f9e4e8;color:var(--ink)}
.academy-training-page .program-flow .section-tag.light,
.academy-training-page .program-flow .section-heading h2 span,
.academy-training-page .program-flow-list b{color:var(--hot)}
.academy-training-page .program-flow-list,
.academy-training-page .program-flow-list li{border-color:rgba(91,36,57,.16)}
.academy-training-page .program-flow-list small{color:#9a697a}
@media(max-width:900px){.training-hero-art{width:min(620px,100%);margin:48px auto 0}}

/* Salon portal entry */
.pickup-salons{grid-template-columns:repeat(4,1fr)}
.salon-portal-entry{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:center;background:#fff0f3}
.salon-portal-copy h2{font:600 clamp(36px,4.4vw,62px)/1.45 var(--jp);margin:26px 0 22px}
.salon-portal-copy h2 span{color:var(--hot)}
.salon-portal-copy p{font:400 16px/2 var(--jp);max-width:620px}
.salon-portal-actions{display:flex;flex-direction:column;gap:12px}
.salon-portal-actions .button{width:100%;margin:0}
.portal-quick-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:30px}
.portal-quick-actions .button{min-width:0;margin:0}
.portal-quick-actions .text-link{margin-left:6px}
@media(max-width:900px){.pickup-salons{grid-template-columns:1fr}.salon-portal-entry{grid-template-columns:1fr;gap:38px}.salon-portal-copy p{font-size:15px}}

/* VAVITTE award hero */
.brand-hero{grid-template-columns:.72fr 1.28fr;gap:5vw}
.brand-hero .product-hero-art{width:100%;height:auto;aspect-ratio:3/2;border-radius:18px}
.brand-hero .product-hero-art img{object-fit:contain;background:#fffaf3}
@media(max-width:900px){.brand-hero{grid-template-columns:1fr}.brand-hero .product-hero-art{width:min(720px,92vw);margin:45px auto 0}}

/* 確認用Preview修正(2026-09-19) */
/* 1) 見出しの単語途中改行を防ぐ: 句単位で改行させる(文言は不変)。.intro h2 span{color} の上書きを避けるため色は継承 */
.nb,h1 .nb,h2 .nb,.intro h2 .nb{display:inline-block;white-space:nowrap;color:inherit}
/* 2) 404の装飾文字がスマホで右にはみ出し横スクロールになる不具合: .error-main を基準にして overflow:hidden で切り取る */
.error-main{position:relative}
/* 装飾文字の余分なマイナス余白(PC用)をスマホでは0にし、本来の設計(右へ25pxだけ出す)に戻す */
@media(max-width:900px){.error-main>span{margin-right:0}}

/* 全見出しの日本語を句(文節)単位で改行する(2026-09-19)。
   改行候補はHTMLの<wbr>(BudouXで生成・scripts/vavitte-life/insert-phrase-breaks.mjs)。keep-allで文字間の改行を禁止するため、Safari/iPhoneを含む全ブラウザで同じ結果になる。
   overflow-wrap:anywhere は、1つの句が行幅を超える場合の緊急退避(横はみ出し防止)。text-wrap:balance は対応ブラウザだけ行長を均す(非対応でも句単位改行は保たれる)。 */
h1,h2,h3,h4{word-break:keep-all;overflow-wrap:break-word;overflow-wrap:anywhere;text-wrap:balance}

/* 構造的な不具合の是正(2026-09-19): 見出しが極端に細い箱に押し込まれ、句の途中で折れる原因になっていたレイアウト */
/* (1) v31は900px以下で .section-heading を grid-template-columns:1fr で1列にする意図だったが、要素は display:flex のため無効だった。縦積みにして見出しに全幅を渡す */
@media(max-width:900px){.section-heading{flex-direction:column;align-items:flex-start}}
/* (2) PICK UP SALON: 4店舗目追加時に repeat(4,1fr) となり、約466pxの列に4枚が詰まって「CUA/RA」のようにサロン名が崩れていた。PCでは2x2にする(スマホは既存の1列のまま) */
@media(min-width:901px){.pickup-salons{grid-template-columns:repeat(2,1fr)}}

/* ROOT-PROMOTION (2026-09): 新ホームを / に置くための追加スタイル */
/* フッターの関連リンク(SPA側の 商品紹介・お知らせ 等へ辿れるように) */
.footer-sub{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:6px 22px;padding-top:26px;border-top:1px solid rgba(255,255,255,.14);font-size:11px;letter-spacing:.06em}
.footer-sub a{color:#d8cbd2;text-decoration:underline;text-underline-offset:4px}
.footer-sub a:hover{color:#fff}
/* Cookie同意バナー(SPAの ConsentBanner と同じ役割・文言。analytics.js が生成) */
.cookie-banner{position:fixed;left:0;right:0;bottom:0;z-index:3000;background:#fff;border-top:1px solid rgba(41,36,41,.12);box-shadow:0 -4px 20px rgba(0,0,0,.08)}
.cookie-banner-inner{max-width:1040px;margin:0 auto;padding:16px 20px;display:flex;gap:24px;align-items:flex-start}
.cookie-banner-text{flex:1;min-width:0}
.cookie-banner-title{font:600 14px/1.5 var(--jp);margin:0 0 4px;color:var(--ink)}
.cookie-banner-body{font:400 12px/1.7 var(--jp);margin:0;color:rgba(41,36,41,.75)}
.cookie-banner-body a{color:var(--hot);text-decoration:underline;text-underline-offset:2px}
.cookie-banner-actions{display:flex;flex-direction:column;gap:8px;flex-shrink:0}
.cookie-banner-actions button{font:600 13px var(--jp);padding:10px 16px;border-radius:8px;cursor:pointer;border:1px solid rgba(41,36,41,.2);background:#fff;color:var(--ink)}
.cookie-banner-actions .cookie-accept{background:var(--ink);color:#fff;border-color:var(--ink)}
@media(max-width:640px){.cookie-banner-inner{flex-direction:column;gap:12px;padding:14px 16px}.cookie-banner-actions{flex-direction:row}.cookie-banner-actions button{flex:1}}

/* 全文(本文・カード・ボタン・ナビ・フッター)の日本語を句(文節)単位で改行する(ROOT-PROMOTION)。
   改行候補は HTML の <wbr>(scripts/vavitte-life/insert-phrase-breaks.mjs・BudouX)。keep-all で文字間改行を禁止する。
   本文は overflow-wrap:break-word（1つの句が行幅を超えるときだけ緊急で折る。min-content を縮めないのでレイアウトを押し潰さない）。
   見出しは上の h1〜h4 の規則(anywhere+balance)のまま。 */
body{word-break:keep-all;overflow-wrap:break-word}
.support-photo-band figure:first-child img{object-position:center 20%}
