/* Reference-grade first view: luminous editorial stage, product-led composition. */
html,body{overflow-x:clip}
.mobile-quick-actions{display:none}
.hero.hero-luxe{position:relative;display:block;height:clamp(720px,calc(100svh - 20px),920px);min-height:720px;padding:0;overflow:hidden;background:#d7f1ec;color:#0c403d;isolation:isolate}
.hero-luxe .luxe-background{position:absolute;inset:0;z-index:-4;width:100%;height:100%;object-fit:cover;object-position:center}
.hero-luxe .hero-grain{z-index:-2;opacity:.11;mix-blend-mode:soft-light;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.72' numOctaves='3' stitchTiles='stitchTiles'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.18'/%3E%3C/svg%3E")}
.hero-luxe .hm-daylight{z-index:-1;inset:-10%;background:radial-gradient(ellipse at 24% 38%,rgba(255,255,255,.82),transparent 45%),radial-gradient(ellipse at 78% 60%,rgba(255,255,255,.22),transparent 44%)}
.hero-luxe .luxe-word{position:absolute;z-index:-1;top:clamp(112px,16vh,152px);right:-1.8vw;color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.55);font:300 clamp(76px,11.7vw,192px)/1 'Outfit',sans-serif;letter-spacing:.045em;white-space:nowrap;pointer-events:none;opacity:.9}
.hero-luxe .luxe-copy{position:absolute;z-index:5;top:clamp(180px,23vh,215px);left:clamp(58px,7.3vw,142px);width:min(46vw,720px);transform:none}
.hero-luxe .luxe-catch{margin:0 0 clamp(28px,4vh,42px);font-size:clamp(20px,1.78vw,30px);font-weight:500;line-height:1.5;letter-spacing:.11em}
.hero-luxe .luxe-catch span{font-weight:650}
.hero-luxe .luxe-kind{margin:0 0 6px;font-size:clamp(19px,1.72vw,29px);font-weight:700;line-height:1.5;letter-spacing:.16em}
.hero.hero-luxe h1{position:relative;width:auto;max-width:none;margin:0;color:#063e3b;font:900 clamp(84px,8.25vw,142px)/.99 'M PLUS Rounded 1c','Noto Sans JP',sans-serif;letter-spacing:-.075em;white-space:nowrap;text-wrap:nowrap;filter:drop-shadow(0 4px 12px rgba(255,255,255,.2))}
@supports ((background-clip:text) or (-webkit-background-clip:text)){
 .hero.hero-luxe h1{background:linear-gradient(105deg,#043d39 0%,#075d55 42%,#0a8274 72%,#25a895 100%);background-size:100% 100%;background-position:center;background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
}
.hero-luxe .luxe-lead{margin:clamp(24px,3vh,34px) 0 0;font-size:clamp(20px,1.7vw,29px);font-weight:500;line-height:1.65;letter-spacing:.12em}
.hero-luxe .luxe-mobile-break{display:none}
.hero-luxe .luxe-rule{display:block;width:clamp(78px,6vw,104px);height:5px;margin:clamp(20px,2.6vh,28px) 0 clamp(20px,2.5vh,26px);background:#64d3c4}
.hero-luxe .luxe-partners{margin:0;font-size:clamp(12px,1.18vw,19px);font-weight:500;line-height:1.8;letter-spacing:.1em}
.hero-luxe .luxe-partners b{padding-inline:.35em;font-weight:400}.hero-luxe .luxe-partners span{white-space:nowrap}
.hero-luxe .luxe-actions{display:flex;align-items:center;gap:12px;margin-top:clamp(20px,2.7vh,27px)}
.hero-luxe .luxe-action{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 20px;border:1px solid rgba(6,62,59,.42);border-radius:999px;color:#063e3b;font-size:13px;font-weight:700;line-height:1;letter-spacing:.055em;white-space:nowrap;transition:transform .25s ease,box-shadow .25s ease,background-color .25s ease}
.hero-luxe .luxe-action-primary{min-width:190px;background:#063e3b;border-color:#063e3b;color:#fff;box-shadow:0 10px 24px rgba(6,62,59,.15)}
.hero-luxe .luxe-action-colors{gap:10px;min-width:236px;background:rgba(255,255,255,.46);backdrop-filter:blur(7px)}
.hero-luxe .luxe-color-dots{display:flex;align-items:center;gap:3px}.hero-luxe .luxe-color-dots i{display:block;width:8px;height:8px;border-radius:50%;background:#f3b8c8}.hero-luxe .luxe-color-dots i:nth-child(2){background:#f1d35c}.hero-luxe .luxe-color-dots i:nth-child(3){background:#79d5ca}.hero-luxe .luxe-color-dots i:nth-child(4){background:#70a8df}
@media(hover:hover){.hero-luxe .luxe-action:hover{transform:translateY(-2px)}.hero-luxe .luxe-action-primary:hover{box-shadow:0 14px 28px rgba(6,62,59,.2)}.hero-luxe .luxe-action-colors:hover{background:rgba(255,255,255,.7)}}
.hero-luxe .luxe-action:focus-visible{outline:3px solid #ed8122;outline-offset:3px}
.hero-luxe .luxe-stage{position:absolute;z-index:2;inset:0 0 0 auto;width:64%;min-height:0;margin:0;padding:0;pointer-events:none}
.hero-luxe .luxe-product{position:absolute;inset:auto -2.2vw clamp(47px,6vh,72px) auto;z-index:3;display:block;width:min(63vw,1080px);height:min(70vh,680px);margin:0}
.hero-luxe .luxe-product::after{content:"";position:absolute;z-index:-1;left:24%;right:6%;bottom:1%;height:8%;border-radius:50%;background:rgba(24,104,88,.2);filter:blur(24px);transform:rotate(-4deg)}
.hero-luxe .luxe-product img{display:block;width:100%;height:100%;max-width:none;max-height:none;object-fit:contain;object-position:center bottom;transform:rotate(-3.5deg);filter:brightness(1.07) saturate(1.05) contrast(1.01) drop-shadow(13px 30px 21px rgba(12,75,62,.15))}
.hero-luxe .luxe-proof{position:absolute;z-index:8;right:clamp(28px,3vw,58px);bottom:clamp(22px,3vh,34px);display:flex;align-items:center;gap:18px;color:#0b4c45}
.hero-luxe .luxe-proof .rf-awards,.hero-luxe .luxe-proof .rf-standard{position:relative;inset:auto;display:flex;align-items:center;gap:11px;width:auto;min-width:0;color:inherit;text-align:left;transform:none}
.hero-luxe .luxe-proof .rf-award-symbol{position:relative;display:flex;align-items:center;gap:4px;width:125px;height:58px;background:transparent;overflow:visible}
.hero-luxe .luxe-proof .rf-kids{flex:0 0 auto;width:70px;height:50px;object-fit:contain}.hero-luxe .luxe-proof .rf-original-distinction{position:relative;inset:auto;flex:0 0 auto;width:51px;height:48px;object-fit:contain;filter:drop-shadow(0 5px 7px rgba(119,83,5,.13))}
.hero-luxe .luxe-proof .rf-award-caption{margin:0;padding:0;font-size:9px;line-height:1.55;white-space:nowrap}.hero-luxe .luxe-proof .rf-award-caption::before{display:none}.hero-luxe .luxe-proof .rf-award-caption p{margin:0}.hero-luxe .luxe-proof .rf-award-caption p+p{font-size:10px;font-weight:750}
.hero-luxe .luxe-proof-divider{width:1px;height:42px;background:rgba(11,76,69,.25)}
.hero-luxe .luxe-proof .rf-standard-symbol{width:116px;margin:0}.hero-luxe .luxe-proof .rf-standard-symbol::before{display:none}.hero-luxe .luxe-proof .rf-standard-caption{display:none}
.hero-luxe .luxe-scroll{position:absolute;z-index:8;left:50%;bottom:18px;display:flex;flex-direction:column;align-items:center;gap:9px;color:#0b4c45;font:600 9px/1 'Outfit',sans-serif;letter-spacing:.2em;transform:translateX(-50%)}
.hero-luxe .luxe-scroll i{position:relative;display:block;width:1px;height:36px;background:rgba(11,76,69,.38)}.hero-luxe .luxe-scroll i::after{content:"";position:absolute;left:-2px;bottom:0;width:5px;height:5px;border-right:1px solid currentColor;border-bottom:1px solid currentColor;transform:rotate(45deg)}
.hero-luxe .mh-note{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

@media(max-width:1100px) and (min-width:761px){
 .hero.hero-luxe{height:760px;min-height:760px}.hero-luxe .luxe-copy{left:48px;width:48vw}.hero-luxe .luxe-product{right:-9vw;width:69vw;height:570px;bottom:55px}.hero-luxe .luxe-proof{right:24px;gap:11px}.hero-luxe .luxe-proof .rf-award-caption{display:none}.hero-luxe .luxe-scroll{left:50%}
}
@media(max-width:760px){
 body{padding-bottom:calc(82px + env(safe-area-inset-bottom,0px))}
 .hero-luxe .luxe-actions{display:none}
 .mobile-quick-actions{position:fixed;z-index:90;right:12px;bottom:max(10px,env(safe-area-inset-bottom,0px));left:12px;display:flex;gap:8px}
 .mobile-quick-actions .mqa-link{display:flex;min-width:0;height:52px;align-items:center;justify-content:center;border-radius:999px;font-size:12.5px;font-weight:700;line-height:1.2;letter-spacing:.04em;white-space:nowrap}
 .mobile-quick-actions .mqa-primary{flex:1;background:#063e3b;color:#fff;box-shadow:0 9px 24px rgba(6,62,59,.24)}
 .mobile-quick-actions .mqa-colors{flex:1.08;gap:7px;border:1px solid rgba(6,62,59,.28);background:rgba(249,248,240,.96);color:#063e3b;box-shadow:0 9px 24px rgba(6,62,59,.14);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
 .mobile-quick-actions .mqa-dots{display:flex;gap:2px}.mobile-quick-actions .mqa-dots i{display:block;width:6px;height:6px;border-radius:50%;background:#f3b8c8}.mobile-quick-actions .mqa-dots i:nth-child(2){background:#f1d35c}.mobile-quick-actions .mqa-dots i:nth-child(3){background:#79d5ca}.mobile-quick-actions .mqa-dots i:nth-child(4){background:#70a8df}
 .mobile-quick-actions .mqa-link:focus-visible{outline:3px solid #ed8122;outline-offset:2px}
 .hero.hero-luxe{height:auto;min-height:calc(100svh + 120px);padding:0 0 86px;background:#d8f0eb}
 .hero-luxe .luxe-background{object-position:59% center;transform:scale(1.3)}
 .hero-luxe .luxe-word{top:41%;right:-42%;font-size:31vw;letter-spacing:.02em;-webkit-text-stroke:1px rgba(255,255,255,.48)}
 .hero-luxe .luxe-copy{position:relative;top:auto;left:auto;width:auto;padding:118px 24px 0;transform:none;text-align:center}
 .hero-luxe .luxe-catch{margin-bottom:24px;font-size:15px;letter-spacing:.08em}.hero-luxe .luxe-kind{font-size:14px;letter-spacing:.13em}
 .hero.hero-luxe h1{font-size:clamp(66px,20vw,86px);line-height:1.08;letter-spacing:-.085em}.hero-luxe .luxe-lead{margin-top:18px;font-size:17px;line-height:1.7;letter-spacing:.08em}.hero-luxe .luxe-mobile-break{display:block}
 .hero-luxe .luxe-rule{width:54px;height:4px;margin:18px auto}.hero-luxe .luxe-partners{font-size:9px;letter-spacing:.045em;white-space:normal}.hero-luxe .luxe-partners span{display:block;margin-top:1px}
 .hero-luxe .luxe-stage{position:relative;inset:auto;width:100%;height:clamp(330px,96vw,430px);margin-top:-2px}.hero-luxe .luxe-product{right:-17%;bottom:0;width:125%;height:100%}.hero-luxe .luxe-product img{transform:rotate(-4deg);object-position:center bottom}.hero-luxe .luxe-product::after{left:30%;right:8%;bottom:4%;height:6%}
 .hero-luxe .luxe-proof{position:relative;right:auto;bottom:auto;justify-content:center;gap:13px;margin:10px 18px 0;padding-top:17px;border-top:1px solid rgba(11,76,69,.2)}
 .hero-luxe .luxe-proof .rf-award-symbol{width:111px;height:52px}.hero-luxe .luxe-proof .rf-kids{width:63px;height:45px}.hero-luxe .luxe-proof .rf-original-distinction{width:44px;height:42px}.hero-luxe .luxe-proof .rf-award-caption{display:none}.hero-luxe .luxe-proof .rf-standard-symbol{width:107px}.hero-luxe .luxe-proof-divider{height:38px}
 .hero-luxe .luxe-scroll{left:50%;bottom:25px;transform:translateX(-50%)}
}
@media(max-width:360px){
 .mobile-quick-actions{right:8px;left:8px;gap:6px}
 .mobile-quick-actions .mqa-link{height:48px;font-size:11.5px}
 .mobile-quick-actions .mqa-dots{display:none}
}
@media(max-width:360px){.hero.hero-luxe{padding-bottom:80px}.hero-luxe .luxe-copy{padding-top:105px;padding-inline:18px}.hero-luxe .luxe-catch{font-size:13px;margin-bottom:20px}.hero-luxe .luxe-kind{font-size:12px}.hero.hero-luxe h1{font-size:65px}.hero-luxe .luxe-lead{font-size:15px}.hero-luxe .luxe-stage{height:320px}.hero-luxe .luxe-proof{margin-inline:12px;gap:9px}}
@media(prefers-reduced-motion:reduce){.hero-luxe .luxe-background,.hero-luxe .luxe-product img{transform:none!important}}
.contact .contact-button{justify-content:center}
