/* Scoped to the three public pages in the local visual refresh. */
.brand-refresh { --refresh-green:#214d43; --refresh-ink:#20362f; --refresh-line:#d5dfd9; }
.brand-refresh :is(h1,h2,h3,.eyebrow) { letter-spacing:0; }
.brand-refresh > header.zuden-global-header > nav { display:none; }
.brand-refresh > header.zuden-global-header { min-height:72px; flex-direction:row; padding:12px 180px 12px 4%; background:#fafcf9; }
.brand-refresh .brand { background:#fff; }
.brand-refresh > header.site-header { position:sticky; min-height:72px; }
.refresh-home:not(.en-home) > header.site-header { padding-block:12px; }
.refresh-home:not(.en-home) .language-switch { margin-left:auto; order:2; }
.refresh-home:not(.en-home) .menu-toggle { display:inline-flex; justify-content:center; align-items:center; order:3; width:68px; min-width:68px; height:36px; border:1px solid #cbd5cd; border-radius:999px; background:#fff; color:#20362f; cursor:pointer; }
.refresh-home:not(.en-home) .menu-toggle::before { content:"目录"; font:600 13px system-ui; }
.refresh-home.is-en:not(.en-home) .menu-toggle::before { content:"Menu"; }
.refresh-home:not(.en-home) .menu-toggle span { display:none; }
.refresh-home:not(.en-home) .site-nav { display:none; position:absolute; top:calc(100% + 8px); left:auto; right:20px; width:240px; max-height:75svh; overflow:auto; padding:10px; background:#fff; border:1px solid #d5dfd9; border-radius:6px; box-shadow:0 14px 35px #20362f22; color:#20362f; }
.refresh-home:not(.en-home) .site-nav.is-open { display:grid; gap:0; }
.refresh-home:not(.en-home) .site-nav a { padding:10px 12px; }
.refresh-home .hero, .refresh-home.en-home .en-hero { min-height:560px; height:calc(88svh - 72px); max-height:850px; align-items:center; background:#213c33; }
.refresh-home.en-home .en-hero { background:linear-gradient(90deg,rgba(12,32,26,.78),rgba(12,32,26,.2) 72%,rgba(12,32,26,.08)),url('/assets/hero-room-polished-v1-opt.jpg') center/cover; }
.refresh-home .hero-image { transform:translate(var(--depth-x,0px),var(--depth-y,0px)) scale(1.035); transition:transform 700ms ease-out; }
.refresh-home .hero-shade { background:linear-gradient(90deg,rgba(12,32,26,.78),rgba(12,32,26,.2) 72%,rgba(12,32,26,.08)); }
.refresh-home .hero-copy { width:100%; max-width:860px; padding:75px 7% 65px; }
.refresh-home .hero-copy h1,.refresh-home.is-en .hero-copy h1,.refresh-home.en-home h1 { font-size:76px; line-height:1.1; max-width:760px; }
.refresh-home .hero-copy > p:last-of-type { font-size:19px; max-width:570px; }
.refresh-home .hero-actions .button { border-radius:4px; }
.refresh-home .hero-actions .accent { background:#f8fbf7; color:#20362f; border-color:#f8fbf7; }
.refresh-home .hero-actions .light { color:white; border-color:#b8d0c4; background:#214d43; }
.refresh-home .video-intro { background:#edf3ef; }
.refresh-home .video-copy h2 { font-size:42px; }
.refresh-paths { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); margin:0; padding:0 5%; background:#fafcf9; border-bottom:1px solid var(--refresh-line); }
.refresh-paths a { display:grid; grid-template-columns:1fr auto; gap:6px 12px; padding:25px 22px; border-left:1px solid var(--refresh-line); color:var(--refresh-ink); }
.refresh-paths a:last-child { border-right:1px solid var(--refresh-line); }
.refresh-paths a:hover { background:#e8f0eb; }
.refresh-paths strong { font-size:20px; font-weight:600; }
.refresh-paths small { grid-column:1; font:13px/1.55 system-ui,sans-serif; color:#5d7065; }
.refresh-paths .path-arrow { grid-column:2; grid-row:1 / 3; align-self:center; font:23px/1 system-ui; }
.refresh-app { background:#f7faf7; }
.refresh-app .app-page-main { max-width:none; margin:0; padding:0; }
.refresh-app .app-page-card { position:relative; display:grid; grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr); min-height:620px; padding:56px max(5%,calc((100% - 1140px)/2)); gap:45px; color:white; overflow:hidden; background:#183e34; isolation:isolate; }
.refresh-app .app-page-card::before { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(90deg,rgba(12,37,29,.96),rgba(12,37,29,.75)),url('/assets/hero-room-polished-v1-opt.jpg') center/cover; }
.refresh-app .app-page-copy h1 { font-size:62px; line-height:1.05; margin:18px 0; max-width:none; color:white; }
.refresh-app .app-page-copy .app-page-tagline { font-size:26px; line-height:1.5; margin-bottom:15px; color:#e1ece3; }
.refresh-app .app-page-copy > p { max-width:510px; font-size:16px; line-height:1.8; color:#d9e4da; }
.refresh-app .app-page-copy .eyebrow { color:#c4d9c9; }
.refresh-app .app-page-icon { width:58px; height:58px; border-radius:12px; }
.refresh-app .app-promo-actions { display:grid; justify-items:start; gap:8px; margin-top:22px; }
.refresh-app .app-promo-actions span { color:#c1d7c9; font-size:12px; }
.refresh-app .app-promo-actions a { background:#f5faf5; color:#183e34; border:1px solid #e4eee3; border-radius:4px; }
.refresh-app .app-page-media { display:flex; justify-content:center; min-width:0; }
.refresh-app .app-page-phone { display:block; width:252px; max-height:520px; object-fit:contain; background:#f3efe3; border:7px solid #29362f; border-radius:28px; box-shadow:14px 20px 0 #102f28,26px 36px 48px #0c261b90; transform:translateY(var(--depth-y,0px)) rotate(-3deg); transition:transform 650ms ease-out; }
.app-benefits { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); max-width:1120px; margin:auto; padding:35px 20px; }
.app-benefits > div { padding:8px 24px; border-right:1px solid var(--refresh-line); }
.app-benefits > div:last-child { border:0; }
.app-benefits strong { display:block; font-size:21px; margin-bottom:6px; color:var(--refresh-ink); }
.app-benefits p { color:#607066; font-size:14px; margin:0; }
.app-download { display:flex; align-items:center; justify-content:space-between; gap:35px; padding:42px max(5%,calc((100% - 1060px)/2)) 80px; background:#e6efe9; }
.app-download h2 { font-size:32px; }
.app-download p { max-width:560px; color:#51665c; }
.app-download a { color:#214d43; text-decoration:underline; text-underline-offset:5px; }
.refresh-app .app-page-qr { width:160px; flex:0 0 160px; padding:12px; background:#fff; border-radius:6px; }
.refresh-app .app-page-qr img { aspect-ratio:1; }
.refresh-app .app-page-qr p { font-size:12px; line-height:1.5; }
.refresh-bowls { background:#f8faf7; }
.bowl-explore { max-width:1180px; margin:auto; padding:40px 24px 45px; }
.bowl-explore-heading { margin-bottom:24px; }
.bowl-explore-heading .eyebrow { color:#467365; margin:0 0 6px; }
.bowl-explore-heading h1 { font-size:48px; color:var(--refresh-ink); margin:0 0 12px; max-width:none; line-height:1.15; }
.bowl-explore-heading p { max-width:700px; margin:0; color:#617368; }
.bowl-explorer { display:grid; grid-template-columns:1fr 1fr; gap:50px; align-items:center; }
.bowl-product-figure { margin:0; min-width:0; text-align:center; }
.bowl-product-figure img { width:100%; height:460px; object-fit:contain; mix-blend-mode:multiply; }
.bowl-product-figure figcaption { margin-top:10px; font:12px/1.6 system-ui; color:#62756b; }
.bowl-picker { min-width:0; border-block:1px solid var(--refresh-line); padding:24px 0; }
.bowl-picker h2 { font-size:22px; margin-bottom:18px; }
.bowl-notes { display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); gap:7px; }
.bowl-note { min-width:0; height:48px; border:1px solid #bccdc3; border-radius:4px; font:600 19px/1 system-ui; color:#214d43; background:#fff; cursor:pointer; }
.bowl-note[aria-pressed="true"] { color:#fff; background:#214d43; border-color:#214d43; box-shadow:0 4px 0 #b4caba; }
.bowl-note:focus-visible { outline:3px solid #a57d36; outline-offset:3px; }
.bowl-selected-name { margin:23px 0 6px; font-size:21px; font-weight:600; color:#254f42; }
.bowl-selection-specs { display:grid; grid-template-columns:1fr 1fr; gap:20px; margin:18px 0; }
.bowl-selection-specs dt { font-size:12px; color:#60756a; }
.bowl-selection-specs dd { margin:5px 0 0; font:500 30px/1.2 system-ui; color:#213a30; }
.bowl-selection-offer { margin:0 0 20px; font-size:14px; color:#506957; }
.bowl-selection-offer a { font-weight:700; text-decoration:underline; text-underline-offset:4px; }
.bowl-picker-actions { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.bowl-picker-actions :is(button,a) { display:flex; align-items:center; justify-content:center; gap:8px; min-height:48px; padding:10px 12px; border:1px solid #214d43; border-radius:4px; background:#214d43; color:white; font:600 14px/1.5 system-ui; cursor:pointer; text-align:center; }
.bowl-picker-actions a { background:#fff; color:#214d43; }
.bowl-picker-error { min-height:24px; margin:10px 0 0; color:#8c4134; font-size:13px; }
.bowl-price-fallback { color:#214d43; text-decoration:underline; }
.bowl-picker [hidden] { display:none; }
.refresh-bowls .sales-section-head h2 { font-size:36px; max-width:780px; }
.refresh-bowls .sales-section { padding-block:55px; }
.refresh-bowls .soft-band { background:#eaf0ec; }
.refresh-bowls .bowl-course-offer { box-shadow:none; border-radius:4px; }
.refresh-bowls .sales-bowl-audio-grid > article { border-radius:6px; box-shadow:none; scroll-margin-top:90px; }
.refresh-bowls .sales-bowl-audio-grid > article.is-selected { outline:2px solid #467365; outline-offset:3px; }
@media (max-width:900px) {
  .refresh-home .hero-copy h1,.refresh-home.is-en .hero-copy h1,.refresh-home.en-home h1 { font-size:60px; }
  .refresh-paths { padding:0 18px; }
  .refresh-paths a { padding:20px 13px; }
  .refresh-paths strong { font-size:18px; }
  .refresh-app .app-page-card { gap:25px; padding:40px 28px; }
  .refresh-app .app-page-copy h1 { font-size:46px; }
  .bowl-explorer { gap:25px; }
}
@media (max-width:640px) {
  .brand-refresh > header.site-header { min-height:62px; }
  .brand-refresh > header.zuden-global-header { min-height:62px; padding-left:12px; padding-block:10px; }
  .refresh-home .hero,.refresh-home.en-home .en-hero { height:calc(82svh - 62px); min-height:480px; max-height:650px; }
  .refresh-home .hero-copy { padding:40px 22px; }
  .refresh-home .hero-copy h1,.refresh-home.is-en .hero-copy h1,.refresh-home.en-home h1 { font-size:46px; line-height:1.13; }
  .refresh-home .hero-image { object-position:58% center; }
  .refresh-home .hero-copy > p:last-of-type { font-size:16px; }
  .refresh-home .hero-actions { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-top:24px; }
  .refresh-home .hero-actions .button { padding:11px 8px; font-size:13px; }
  .refresh-home .hero-actions .ghost { grid-column:1 / -1; justify-self:start; min-height:38px; padding:6px 0; border:0; border-bottom:1px solid #b5c8bc; }
  .refresh-paths { grid-template-columns:1fr 1fr; padding:0; }
  .refresh-paths a { padding:18px 17px; border-bottom:1px solid var(--refresh-line); border-left:0; }
  .refresh-paths a:nth-child(odd) { border-right:1px solid var(--refresh-line); }
  .refresh-paths a:last-child { border-right:0; }
  .refresh-paths strong { font-size:18px; }
  .refresh-paths small { font-size:12px; }
  .refresh-home .video-copy h2 { font-size:29px; }
  .refresh-app .app-page-card { grid-template-columns:1fr; padding:28px 22px 30px; gap:22px; min-height:0; }
  .refresh-app .app-page-copy h1 { font-size:44px; margin:10px 0; }
  .refresh-app .app-page-icon { float:right; width:48px; height:48px; margin-left:12px; }
  .refresh-app .app-page-copy .app-page-tagline { font-size:23px; margin-bottom:10px; }
  .refresh-app .app-page-copy > p { font-size:14px; line-height:1.7; }
  .refresh-app .app-promo-actions { margin-top:15px; }
  .refresh-app .app-promo-actions a { width:100%; }
  .refresh-app .app-page-phone { width:160px; height:320px; max-height:320px; border-width:5px; border-radius:23px; }
  .app-benefits { grid-template-columns:1fr; padding:17px 22px; }
  .app-benefits > div { padding:18px 0; border-right:0; border-bottom:1px solid var(--refresh-line); }
  .app-benefits strong { font-size:19px; }
  .app-download { flex-direction:column; align-items:stretch; gap:20px; padding:28px 22px 90px; }
  .app-download h2 { font-size:28px; }
  .refresh-app .app-page-qr { width:155px; flex-basis:auto; align-self:center; margin:0; }
  .bowl-explore { padding:24px 20px 25px; }
  .bowl-explore-heading { margin-bottom:10px; }
  .bowl-explore-heading h1 { font-size:33px; line-height:1.2; }
  .bowl-explore-heading p { font-size:14px; }
  .bowl-explorer { grid-template-columns:1fr; gap:16px; }
  .bowl-product-figure img { height:248px; }
  .bowl-product-figure figcaption { font-size:11px; margin-top:2px; }
  .bowl-picker { padding:17px 0 0; }
  .bowl-picker h2 { font-size:19px; margin-bottom:12px; }
  .bowl-notes { gap:5px; }
  .bowl-note { height:44px; font-size:18px; }
  .bowl-selected-name { margin-top:18px; font-size:18px; }
  .bowl-selection-specs { gap:12px; margin:12px 0; }
  .bowl-selection-specs dd { font-size:27px; }
  .bowl-selection-offer { font-size:12px; }
  .refresh-bowls .sales-section { padding:35px 20px; }
  .refresh-bowls .sales-section-head h2 { font-size:28px; line-height:1.25; }
}
@media (prefers-reduced-motion:reduce) {
  .brand-refresh .hero-image,.brand-refresh .app-page-phone { transform:none; transition:none; }
}
