.hm-mobile-title{display:none}
/* Home, contact and shared mobile rhythm. */
.mobile-site-only{display:none}
@media(max-width:767px){
 .mobile-site-only{display:block}
 header #language{font-size:13px}
 #mobile-nav a{min-height:52px;padding:15px 4px;font-size:17px}
 #home .hero{height:auto;min-height:0;max-height:none;padding-top:64px;background:#19231e}
 #home .hero .hero-visual{height:clamp(270px,80vw,420px);width:100%}
 #home .hero .hero-visual #hero-img,#home .hero .hero-visual #hero-video{object-fit:cover;object-position:60% center}
 #home .hero[data-active-slide="1"] .hero-visual #hero-img,#home .hero[data-active-slide="1"] .hero-visual #hero-video{object-position:56% center}
 #home .hero[data-active-slide="2"] .hero-visual #hero-img{object-position:66% center}
 #home .hero[data-active-slide="3"] .hero-visual #hero-img{object-position:65% center}
 #home .hero[data-active-slide="4"] .hero-visual #hero-img{object-position:58% center}
 #home .hero .cinema-shade{background:linear-gradient(0deg,#19231e,transparent 22%)!important}
 #home .hero .hero-copy,.en #home .hero .hero-copy{min-height:0;padding:18px 22px 20px;max-width:none;text-align:left}
 #home .hero .hero-copy .eyebrow{font-size:9px;letter-spacing:.7px;margin-bottom:12px;color:#b4bfb5}
 #home .hero h1,.en #home .hero h1{font-size:clamp(26px,7.2vw,32px)!important;line-height:1.35!important;margin:0;letter-spacing:-.6px!important;text-align:left!important;min-height:2.7em}
 .en #home .hero h1{font-size:clamp(25px,6.7vw,30px)!important;min-height:4.05em}
 #home .hero .hero-controls{padding:0 22px;margin:0;max-width:none;overflow:visible;width:100%;left:auto;right:auto}
 #home .hero .hero-controls .tabs{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));width:100%;gap:8px;height:auto;min-height:0}
 #home .hero .tabs button,.en #home .hero .tabs button{grid-column:span 2;min-width:0;max-width:none;width:100%;white-space:normal;padding:10px 7px 12px;min-height:48px;font-size:11px;line-height:1.4;border-radius:8px;background:#ffffff08;text-align:left;display:block}
 #home .hero .tabs button:nth-child(n+4){grid-column:span 3}
 #home .hero .tabs button[aria-pressed=true]{background:#ffffff16}
 #home .hero .tabs button:after{left:7px;width:calc(100% - 14px);bottom:0;height:2px;background:#ffffff24}
 #home .hero .tabs button[aria-pressed=true]:after{background:linear-gradient(to right,#fe714b 0%,#fe714b var(--kv-progress,0%),#ffffff24 var(--kv-progress,0%),#ffffff24 100%)}
 #home .hero .visual-caption{font-size:9px;margin:14px 22px 20px;max-width:calc(100% - 44px)}
 #home .hm-width{width:calc(100% - 44px)}
 #home .hm-belief,#home .hm-product,#home .hm-tech,#home .hm-news{padding-block:54px}
 #home .hm-belief .eyebrow,#home .hm-section-head>.eyebrow{font-size:10px;letter-spacing:1px;margin-bottom:18px}
 #home .hm-brand-vision h2{font-size:28px;line-height:1.4;text-wrap:balance}
 #home .hm-brand-vision .hm-vision-body{display:none}
 #home .hm-brand-vision .hm-width>p.hm-vision-belief{font-size:16px;line-height:1.7;margin-top:22px}
 #home .hm-link{font-size:14px;min-height:44px;gap:16px}
 #home .hm-section-head{margin-bottom:26px}
 #home .hm-section-head h2{font-size:28px;line-height:1.35;text-wrap:balance}
 #home .hm-section-head .hm-link{margin-top:12px}
 #home .hm-product-stage{display:flex;flex-direction:column;gap:18px;min-height:0}
 #home .hm-product-copy{width:100%}
 #home .hm-product-copy .hm-overline{font-size:11px;margin-bottom:12px}
 #home .hm-product-copy h3{font-size:32px;margin:0;line-height:1.3}
 #home .hm-product-copy>p:not(.hm-overline),#home .hm-product-rule{display:none}
 #home .hm-product-stage figure{width:100%}
 #home .hm-product-stage figure>img{height:auto;aspect-ratio:4/3;object-fit:contain}
 #home .hm-product-stage figcaption{font-size:9px;margin:8px 0 0}
 #home .hm-dish-marquee{margin-top:24px;padding-bottom:0;overflow-x:auto;mask-image:none;scroll-snap-type:x proximity}
 #home .hm-dish-track{animation:none;will-change:auto}
 #home .hm-dish-group[aria-hidden=true]{display:none}
 #home .hm-dish-marquee .hm-dish-group>img{width:54vw;height:auto;aspect-ratio:4/3;border-radius:14px;scroll-snap-align:start}
 #home .hm-tech-layout{display:flex;flex-direction:column;gap:22px}
 #home .hm-tech-copy{padding:0;width:100%}
 #home .hm-tech-copy h3{font-size:25px;line-height:1.4;margin-bottom:0}
 #home .hm-tech-copy>p:not(.hm-mobile-tech-copy){display:none}
 #home .hm-tech-copy>.hm-mobile-tech-copy{font-size:14px;line-height:1.75;margin:16px 0 0}
 #home .hm-tech-display{margin-top:0;padding:16px;width:100%;border-radius:18px}
 #home .hm-monitor{padding:0;font-size:8px;letter-spacing:.5px}
 #home .hm-tech-display>svg{display:none}
 #home .hm-mobile-system svg{width:100%;height:auto;margin:8px 0}
 #home .hm-tech-description{font-size:12px;line-height:1.7;min-height:0;padding:14px 0 0}
 .hmm-node rect{fill:#1d2b23;stroke:#7e987c66}.hmm-node text{fill:#c4d0c3;font-size:12px;text-anchor:middle}
 .hmm-core rect{fill:#71321e;stroke:#fe714b}.hmm-core text{fill:#ffe4d1;text-anchor:middle;font-size:13px}
 .hmm-wires path{fill:none;stroke:#fe714b44;stroke-width:1.5}.hmm-wires .hmm-flow{stroke:#ff986c;stroke-dasharray:6 95;animation:hmm-flow 4s linear infinite;animation-play-state:paused}
 .hm-mobile-system.is-running .hmm-flow{animation-play-state:running}
 #home .hm-news-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:0}
 #home .hm-news-card{display:grid;grid-template-columns:96px minmax(0,1fr);gap:8px 14px;padding:20px 0;border-bottom:1px solid #e2e5db}
 #home .hm-news-card figure{grid-column:1;grid-row:1/3;aspect-ratio:1;margin:0;border-radius:12px}
 #home .hm-news-card>p{grid-column:2;font-size:10px;gap:4px;margin:0;line-height:1.6}
 #home .hm-news-card h3{grid-column:2;font-size:17px;line-height:1.5;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}
 #home .hm-news-arrow{display:none}
 #contact-view .ct-width{width:calc(100% - 44px)}
 #contact-view .ct-section{padding:36px 0 54px}
 #contact-view .ct-layout{display:flex;flex-direction:column;gap:30px}
 #contact-view .ct-copy h1,.en #contact-view .ct-copy h1{font-size:34px;line-height:1.3;margin:24px 0 20px}
 #contact-view .ct-eyebrow{font-size:10px;letter-spacing:1px}
 #contact-view .ct-lead{display:none}
 #contact-view .ct-mobile-lead{font-size:15px;line-height:1.75;color:#697366;margin:0}
 #contact-view .ct-directions{display:grid;grid-template-columns:1fr 1fr;gap:22px 16px;margin-top:28px}
 #contact-view .ct-directions article{display:flex;flex-direction:column;gap:12px;padding-top:18px}
 #contact-view .ct-directions svg{width:28px;height:28px;margin:0}
 #contact-view .ct-directions h2,.en #contact-view .ct-directions h2{font-size:19px;line-height:1.4;margin:0 0 9px}
 #contact-view .ct-directions p,.en #contact-view .ct-directions p{font-size:13px;line-height:1.7}
 #contact-view .ct-connect{display:flex;flex-direction:column;width:100%;max-width:none;padding:24px;border-radius:20px}
 #contact-view .ct-card-top{order:0;margin-bottom:20px}
 #contact-view .ct-connect>.ct-eyebrow{order:1}
 #contact-view .ct-connect>h2{order:2;font-size:25px;margin:14px 0}
 #contact-view .ct-card-intro{order:3;font-size:14px;line-height:1.7;margin-bottom:20px}
 #contact-view .ct-form-link{order:4;font-size:16px;min-height:48px;margin-bottom:14px}
 #contact-view .ct-mobile-scan{order:5;font-size:12px;line-height:1.7;color:#767e71;margin:0 0 18px}
 #contact-view .ct-qr-link{order:6;width:170px;padding:8px;max-width:100%;box-sizing:border-box}
 #contact-view .ct-qr-window{width:100%;height:auto;aspect-ratio:1}
 #contact-view .ct-scan{display:none}
 footer .footer-top h2,.en footer .footer-top h2{font-size:23px;line-height:1.5;text-wrap:balance;letter-spacing:-.5px}
 footer .footer-top{padding-bottom:22px}
 footer .footer-bottom{font-size:10px;row-gap:12px;align-items:center}
}
@keyframes hmm-flow{to{stroke-dashoffset:-101}}
@media(prefers-reduced-motion:reduce){.hmm-flow{animation:none!important}}
/* Intermediate widths inherit the established desktop look, with compact spacing. */
@media(min-width:768px) and (max-width:1199px){
 header{padding-inline:24px;gap:18px}
 header nav{gap:18px}
 header nav a{font-size:13px}
 .en header nav a{font-size:13px}
 .header-tools{gap:16px}
 #contact-view .ct-layout{gap:32px}
 #home .hm-product-stage{grid-template-columns:minmax(0,40fr) minmax(0,60fr)}
 #home .hm-tech-layout{grid-template-columns:minmax(0,40fr) minmax(0,60fr)}
 #home .hm-tech-copy{padding-right:24px}
}
@media(max-height:500px) and (max-width:1000px){
 #mobile-nav{max-height:calc(100dvh - 64px);overflow-y:auto}
}
@media(max-width:767px){
 #home .hero{display:flex;flex-direction:column}
 #home .hero .hero-visual{position:relative;inset:auto;flex:none;order:0}
 #home .hero .hero-copy,.en #home .hero .hero-copy{position:relative;inset:auto;order:1;width:100%;color:#fff}
 #home .hero h1,.en #home .hero h1{position:static!important;max-width:100%!important;width:100%!important;color:inherit;text-shadow:none}
 #home .hero .hero-copy .eyebrow{position:static!important;inset:auto}
 #home .hero .hero-controls{position:relative;inset:auto;order:2}
 #home .hero .visual-caption{position:relative;inset:auto;order:3;align-self:flex-end;color:#a3afa4}
 #contact-view{padding-top:64px}
}

@media(max-width:767px){
 #home .hm-product .hm-section-head .hm-desktop-title{display:none}
 #home .hm-product .hm-section-head .hm-mobile-title{display:block}
 #contact-view .ct-directions p:not(.ct-direction-short){display:none}
}
@media(max-width:767px){.en #home .hero h1{min-height:5.4em}}
@media(max-width:350px){#home .hero h1{min-height:4.05em}}

@media(min-width:768px) and (max-width:1199px){#store-view .scenario-card{transition:none}}

/* One mobile selector system, independent of artwork light/dark variants. */
@media(max-width:767px){
 #home .hero .hero-controls .tabs button{color:#d5dfd7;background:#26362d;border:1px solid #45574b;box-shadow:none;font-weight:400;transition:background .18s,color .18s,border-color .18s}
 #home .hero .hero-controls .tabs button[aria-pressed="true"]{color:#a82d0b;background:#fff1e8;border-color:#fe714b;box-shadow:inset 0 1px 0 #ffffffb3;font-weight:600}
 #home .hero .hero-controls .tabs button:after{height:2px;background:#526558;left:7px;width:calc(100% - 14px)}
 #home .hero .hero-controls .tabs button[aria-pressed="true"]:after{height:2px;background:linear-gradient(to right,#cf3913 0%,#cf3913 var(--kv-progress,0%),#dbc1b5 var(--kv-progress,0%),#dbc1b5 100%)}
 #home .hero .hero-controls .tabs button:focus-visible{outline:2px solid #fff1e8;outline-offset:3px}
}
@media(max-width:767px){
 header #menu{width:44px;min-height:44px}
 footer .footer-brand{display:inline-flex;align-items:center;min-height:44px}
 #store-view .qr-close{min-width:44px;min-height:44px;right:8px;top:8px}
}

/* Compact KV pagination: five quiet progress tracks, one row at every narrow width. */
@media(max-width:760px){
 #home .hero .hero-controls .tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;width:100%;height:44px}
 #home .hero .hero-controls .tabs button,#home .hero .hero-controls .tabs button:nth-child(n+4),.en #home .hero .hero-controls .tabs button{grid-column:auto;width:100%;height:44px;min-height:44px;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;font-size:0;line-height:0;color:transparent;overflow:hidden}
 #home .hero .hero-controls .tabs button[aria-pressed="true"]{background:transparent;border:0;box-shadow:none;color:transparent;font-size:0}
 #home .hero .hero-controls .tabs button:after{left:0;bottom:20px;width:100%;height:3px;border-radius:3px;background:#fff6}
 #home .hero .hero-controls .tabs button[aria-pressed="true"]:after{height:3px;background:linear-gradient(to right,#fe4819 0%,#fe4819 var(--kv-progress,0%),#fff8 var(--kv-progress,0%),#fff8 100%)}
}

/* Bridge legacy tablet rules: artwork and overlay share the same complete hero canvas. */
@media(min-width:768px) and (max-width:999px){
 #home .hero{display:block;height:clamp(540px,72vw,710px);min-height:0;max-height:none;padding:0;position:relative}
 #home .hero .hero-visual{position:absolute;inset:0;width:100%;height:100%;max-height:none}
 #home .hero .hero-visual #hero-img,#home .hero .hero-visual #hero-video{width:100%;height:100%;max-height:none;object-fit:cover}
 #home .hero .hero-copy,.en #home .hero .hero-copy{position:absolute;inset:0;padding:0;min-height:0;width:100%}
 #home .hero .hero-controls{position:absolute;left:5%;right:5%;bottom:46px;width:auto;height:auto;padding:0}
 #home .hero .hero-controls .tabs{width:100%;gap:14px;justify-content:space-between}
 #home .hero .hero-controls .tabs button{min-width:0;width:auto;flex:1;font-size:10px;white-space:normal;line-height:1.5}
 #home .hero .hero-copy .eyebrow{top:26%;left:6.5%}
 #home .hero h1,.en #home .hero h1{top:33%;font-size:clamp(34px,4.8vw,46px);line-height:1.3;max-width:86%;margin:0}
 #home .hero .visual-caption{bottom:16px;right:5%;max-width:80%}
}
/* 761–767px is still narrow: no seven-pixel gap between the responsive systems. */
@media(min-width:761px) and (max-width:767px){
 #home .hero .hero-visual #hero-img,#home .hero .hero-visual #hero-video{width:100%;height:100%;max-height:none}
}
@media(min-width:761px) and (max-width:767px){
 #home .hero .hero-controls .tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;height:44px}
 #home .hero .hero-controls .tabs button,#home .hero .hero-controls .tabs button:nth-child(n+4),.en #home .hero .hero-controls .tabs button{grid-column:auto;width:100%;min-width:0;height:44px;min-height:44px;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;color:transparent;font-size:0;line-height:0}
 #home .hero .hero-controls .tabs button:after{left:0;bottom:20px;width:100%;height:3px;border-radius:3px;background:#fff6}
 #home .hero .hero-controls .tabs button[aria-pressed=true]:after{background:linear-gradient(to right,#fe4819 0%,#fe4819 var(--kv-progress,0%),#fff8 var(--kv-progress,0%),#fff8 100%)}
}
@media(min-width:768px) and (max-width:1023px){
 #store-view .scenario-card:not(.expanded) .scenario-category{display:none}
 .en #store-view .scenario-card:not(.expanded) .scenario-text{left:50%;right:auto;bottom:24px;transform:translateX(-50%)}
 .en #store-view .scenario-card:not(.expanded) .scenario-text strong{writing-mode:vertical-rl;white-space:nowrap;font-size:16px;letter-spacing:.4px;line-height:1.4}
}
