/* Approved everyday-life illustration and live, accessible Japanese hero copy. */
body{background:#e7f7ee}
body::after{display:none}
body>main,body>.header,body>.footer{max-width:1380px;background-color:#fff}
body>main{width:90%;margin-inline:auto}
body>.header,body>.footer{width:90%;padding-inline:max(28px,calc((min(90vw,1380px) - 1100px)/2))}
.header::before{display:none}
.header .brand{font-family:"Yu Gothic",Meiryo,sans-serif;font-weight:700;letter-spacing:-.03em}
.header .brand span{font-style:normal;font-weight:700}
.header .brand svg{display:none}
.hero{position:relative;isolation:isolate;min-height:570px;overflow:hidden;padding:78px max(28px,calc((min(90vw,1380px) - 1100px)/2)) 85px;background:#fff}
.hero-copy{position:relative;z-index:1;width:max-content;max-width:100%}
.hero h1{font-family:"Yu Gothic",Meiryo,sans-serif;font-size:clamp(40px,4.5vw,66px);font-weight:800;letter-spacing:-.035em;line-height:1.35;margin:0 0 18px;color:#000!important}
.hero-tagline{font-size:clamp(21px,2.2vw,31px);font-weight:700;line-height:1.6;letter-spacing:-.035em;margin:0 0 32px}
.hero-description{font-size:18px;line-height:1.9;letter-spacing:0;margin:0;max-width:390px}
.hero-art{position:absolute;z-index:0;right:0;bottom:0;width:68%;height:auto;display:block;pointer-events:none}
.compact-news{background:#fff;border:0;padding-block:12px 24px}
.compact-news>.wrap{border-top:1px solid #c8d3da;padding-top:18px}
.intro{padding-block:28px 12px}
.creator-profile .introduction-copy{display:block;max-width:760px}
@media(min-width:761px) and (max-width:1100px){.hero{min-height:510px;padding-top:58px;padding-bottom:170px}.hero-art{width:68%}.hero-description{font-size:16px}.hero-tagline{margin-bottom:23px}.hero h1{font-size:clamp(36px,4.5vw,49px)}}
@media(max-width:760px){body>main,body>.header,body>.footer{width:calc(100% - 20px)}body>.header,body>.footer{padding-inline:20px}.hero{min-height:0;padding:28px 20px 0}.hero-copy{width:100%}.hero h1{font-size:clamp(29px,7.8vw,48px);line-height:1.4;margin-bottom:12px}.hero-tagline{font-size:clamp(17px,4.4vw,25px);line-height:1.65;margin-bottom:15px}.hero-description{font-size:15px;line-height:1.9;max-width:470px}.hero-art{position:relative;width:calc(100% + 40px);max-width:none;right:auto;margin:0 -20px;height:auto}.compact-news{padding-block:0 13px}.compact-news>.wrap{padding-top:13px}.intro{padding-top:21px}.intro h2{font-size:27px}}
@media(max-width:360px){body>.header{padding-inline:15px}.hero{padding:24px 15px 0}.hero-art{width:calc(100% + 30px);margin-inline:-15px}.hero-description{font-size:14px}.hero-tagline{font-size:17px;letter-spacing:-.045em}}
/* Preserve existing catalog reading width inside the new mint page gutters. */
@media(max-width:760px){main>.wrap,main .news-section>.wrap,main .landscape>.wrap{width:calc(100% - 20px)}}

/* Owner-approved typography and rhythm, 2026-10-31. */
:root{--font-ui:"Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;--type-body:1.125rem;--space-unit:8px;--surface-mint:#e7f7ee;--surface-blue:#edf5fa;--rule:#c8d3da}
body{font-family:var(--font-ui);letter-spacing:.02em}
.header .brand,.hero h1,h2,h3,.catalog-chip{font-family:var(--font-ui)}
.header nav{font-size:14px;font-weight:500;gap:24px}
.header nav a{min-height:44px}
.hero{padding-top:72px;padding-bottom:80px}
.hero h1{font-size:clamp(40px,4.4vw,64px);font-weight:700;letter-spacing:0;line-height:1.4;margin-bottom:16px}
.hero-tagline{font-size:clamp(20px,1.9vw,28px);font-weight:500;line-height:1.65;letter-spacing:.01em;margin-bottom:24px}
.hero-description{font-size:18px;line-height:1.85;letter-spacing:.025em}
h2,.intro h2{font-size:28px;font-weight:700;line-height:1.5;letter-spacing:.02em}
.compact-news>.wrap{grid-template-columns:130px 1fr;gap:24px;padding-top:24px}
.compact-news h2{font-size:20px;font-weight:700;line-height:1.5}
.compact-news{padding-bottom:24px}
.compact-news p{font-size:16px;line-height:1.8}
.intro{padding-block:32px 16px}
.catalog-stage-heading h3{font-family:var(--font-ui);font-size:24px;font-weight:700;line-height:1.5;letter-spacing:.02em}
.catalog-stage-heading{gap:16px}
.catalog-name{font-size:22px;font-weight:700;line-height:1.5;letter-spacing:0}
.catalog-summary{font-size:16px;line-height:1.75}
.catalog-chip{font-size:13px;line-height:1.5}
.catalog-key summary,.catalog-stage-note,.sample-note{font-size:14px;line-height:1.8}
.catalog-card-actions a{min-height:44px}
.catalog-direct-detail{background:#fff;border-color:#7b8c82}
.catalog-use,.panel-detail{background:var(--surface-blue)}
.section{padding-block:64px}
.creator-profile .about-copy{font-size:18px;line-height:1.9}
@media(min-width:761px) and (max-width:1100px){.hero{padding-top:56px;padding-bottom:170px}.hero h1{font-size:clamp(36px,4.4vw,48px)}.hero-description{font-size:17px}}
@media(max-width:760px){.header nav{font-size:13px;gap:0 16px}.hero{padding:32px 20px 0}.hero h1{font-size:clamp(28px,7.8vw,48px);line-height:1.4;margin-bottom:16px}.hero-tagline{font-size:clamp(17px,4.4vw,25px);line-height:1.65;margin-bottom:16px}.hero-description{font-size:16px;line-height:1.85}.compact-news>.wrap{grid-template-columns:1fr;gap:8px;padding-top:16px}.compact-news{padding-bottom:16px}.compact-news h2{font-size:20px}.intro{padding-block:24px 16px}.intro h2,h2{font-size:26px}.catalog-stage-heading h3{font-size:22px}.section{padding-block:40px}.catalog-key summary,.catalog-stage-note,.sample-note{font-size:13px}.catalog-name{font-size:21px}.catalog-chip{font-size:12px}}
@media(max-width:360px){.hero{padding-inline:15px}.header nav{font-size:12px;gap:0 12px}.hero-tagline{font-size:17px;letter-spacing:0}}

/* Owner-approved released-app feature layout, 2026-10-31. */
@media(min-width:851px){
.stage-released .catalog-grid{grid-template-columns:minmax(0,1fr);max-width:790px}
.stage-released .catalog-card{aspect-ratio:auto;min-height:290px}
.stage-released .product-trigger{min-height:290px;padding:30px 34px 88px;text-align:left}
.stage-released .catalog-card-top{margin-bottom:12px}
.stage-released .catalog-name{font-size:28px}
.stage-released .catalog-summary{font-size:20px;margin-bottom:18px}
.stage-released .catalog-state{padding-top:16px}
.stage-released .catalog-card-actions{left:34px;right:34px;bottom:25px;justify-content:flex-end}
.stage-released .catalog-overview-hint{margin-right:auto}
.stage-released .catalog-use{margin-left:0}
.stage-released .catalog-shape-frame{display:none}
.stage-released .catalog-decoration{right:22px;top:-48px;width:150px;height:82px}
}
@media(min-width:851px){
.stage-released .product-trigger{padding-right:44%;background:#fff}
.stage-released .catalog-card::after{content:'';position:absolute;right:30px;top:35px;width:38%;height:190px;background:url('/assets/vending-navi-explanatory-01-concept.png') center/contain no-repeat;pointer-events:none}
}

/* Owner-approved: continuous light-to-space header, black text retained. */
#product-catalog::before{background:linear-gradient(to bottom,#f5f9fc 0px,#e7f0f7 var(--released-header-light-end,116px),#a9c3d8 calc(var(--released-header-light-end,116px) + 48px),#193d63 calc(var(--released-header-light-end,116px) + 110px),#183e68 var(--space-hold,320px),#8ebad7 var(--space-fade,470px),#e3f2fb var(--sky-start,620px),#e3f2fb var(--sky-hold,1300px),#e5f0e6 var(--ground-start,1500px),#e1ecd7 var(--ground-hold,1800px),#e8f0e180 100%)}
.stage-released .catalog-stage-heading{width:auto;background:none;border:0;border-radius:0;padding:0}
.stage-released .catalog-stage-note{width:auto;max-width:790px;background:none;border-radius:0;padding:0}

/* Owner-approved: softly tinted, opaque reading surfaces; no glass blur. */
.stage-released .product-trigger{background:linear-gradient(135deg,#eff7fc,#e3f0f8);border-color:#9db7ca;box-shadow:0 10px 26px #102b4f14,0 2px 5px #102b4f0a}
.stage-developing .product-trigger{background:linear-gradient(135deg,#f2faff,#e7f3fa);border-color:#a1bdcd;box-shadow:0 8px 22px #416c8414,0 2px 4px #416c8408}
.stage-planning .product-trigger{background:linear-gradient(135deg,#f4f8ed,#eaf2df);border-color:#acbea0;box-shadow:0 8px 22px #526b3912,0 2px 4px #526b3908}
.catalog-card[data-frame=cloud] .catalog-shape-frame{fill:#eaf5fb;stroke:#8eafc2}
.catalog-card[data-frame=sprout] .catalog-shape-frame,.catalog-card[data-frame=tree] .catalog-shape-frame{fill:#edf4e4;stroke:#98b187}
.catalog-direct-detail{background:#f6fafd}
.stage-planning .catalog-direct-detail{background:#f7faf1}
