/* Whole media labels wrap as units, never halfway through a brand name. */
html[data-theme] .platform-brand-v6{flex:0 0 auto;max-width:100%;gap:9px}
html[data-theme] .platform-brand-v6>span:last-child{max-width:none;white-space:nowrap;word-break:keep-all;overflow-wrap:normal;font-size:15px;line-height:1.7}
html[data-theme] .platform-row-v6{align-items:flex-start;gap:18px 24px}
html[data-theme] .platform-wide-v7 .platform-icon-v6{width:166px}
html[data-theme] .platform-wide-v7 .platform-icon-v6 img{width:148px;height:auto;max-height:48px}
html[data-theme] .generic-contact-icon-v7{background:#edf2f5;color:#25475f;border:1px solid #cbd7df;border-radius:8px}
html[data-theme] .generic-contact-icon-v7 svg{width:39px;height:39px;min-width:39px;stroke:currentColor;fill:none}
.business-route>li>div{min-width:0}
/* Give long Japanese headings appropriate phrase boundaries. */
.copy-line-v8{display:block}
.copy-line-v8>span{display:inline-block;white-space:nowrap;max-width:100%}
html[data-theme] .real-media-heading{display:block;margin-bottom:28px}
html[data-theme] .real-media-heading>.eyebrow{max-width:none;margin-bottom:15px;font-size:14px;letter-spacing:.09em}
html[data-theme] .real-media-heading>p:last-child{font-family:var(--serif);font-size:clamp(24px,2.4vw,34px);line-height:1.7;letter-spacing:.02em}
html[data-theme] .media-copy-v8 h3{font-size:clamp(27px,3vw,44px);line-height:1.7;letter-spacing:.02em}
html[data-theme] .gourmet-hero h1{font-size:clamp(28px,3vw,45px);line-height:1.65;letter-spacing:.03em}
/* Four illustrated problems in readable two-column rows. */
html[data-theme] .sv-pain-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}
html[data-theme] .sv-pain-grid>article:nth-child(n){padding:28px;border:1px solid #d7dde1;border-top:3px solid #3b5364;display:flex;flex-direction:column}
html[data-theme] .sv-problem-label{margin-bottom:20px;color:#364c5b}
.challenge-art-v8{margin:0 0 25px}
.challenge-art-v8 img{width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;display:block;background:#f7f9fa}
html[data-theme] .sv-pain-grid h3{min-height:0;font-size:clamp(24px,2.1vw,30px);line-height:1.65;letter-spacing:.01em}
html[data-theme] .sv-pain-grid .sv-pain-context{min-height:0;margin:14px 0 25px;font-size:18px;line-height:1.9}
html[data-theme] .sv-pain-grid .sv-pain-answer{margin:auto -28px -28px;padding:24px 28px;background:#f2f5f7;border-top:1px solid #dae1e6}
html[data-theme] .sv-pain-answer>span{color:#364c5b}
html[data-theme] .sv-pain-answer h4{min-height:0;color:#253f51;font-size:22px;line-height:1.7;margin:12px 0}
html[data-theme] .sv-pain-answer p{font-size:18px;line-height:1.95}
/* A clear starting price, without implying identical scope for every store. */
.support-price-v8{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:32px;align-items:center;border:1px solid #d9cec6;border-left:4px solid #8b3228;padding:28px 35px;margin:32px 0 42px;background:#fff}
.price-kicker-v8{font:500 15px/1.9 var(--sans);color:#5e4c44}
.price-amount-v8{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;color:#813328;line-height:1.3;margin-top:8px}
.price-amount-v8>span{font-size:25px;white-space:nowrap}
.price-amount-v8>strong{font-family:var(--serif);font-size:78px;font-weight:500;line-height:1.2}
.price-description-v8>p{font-size:22px;font-family:var(--serif);line-height:1.7}
.price-description-v8>small{display:block;font-size:15px;line-height:1.85;margin-top:12px;color:#6d5c52}
.price-description-v8>a{display:inline-flex;align-items:center;gap:30px;font-size:17px;line-height:1.8;margin-top:17px;padding-bottom:6px;border-bottom:1px solid #8b3228}
/* Always available; below the menu/dialog and outside document flow. */
body.has-contact-entry-v8{padding-bottom:92px}
.contact-entry-v8{position:fixed;z-index:30;right:28px;bottom:24px;display:flex;align-items:center;gap:16px;min-height:58px;padding:15px 23px;border:1px solid #fff6;background:#272b30;color:#fff;border-radius:6px;box-shadow:0 6px 24px #1327352b;font:500 17px/1.6 var(--sans);letter-spacing:.03em}
.contact-entry-v8>svg{width:23px;height:23px;flex:0 0 auto}
.contact-entry-v8:hover{background:#434a53}
.contact-entry-v8:focus-visible{outline:3px solid #36728f;outline-offset:4px}
body.menu-open .contact-entry-v8{visibility:hidden}
html[data-theme] #contact{scroll-margin-top:100px}
#contact input,#contact select,#contact textarea,#contact button{scroll-margin-block:110px}
@media(max-width:800px){
 html[data-theme] .media-copy-v8 h3{font-size:32px}
 .support-price-v8{grid-template-columns:1fr;gap:24px;padding:26px;margin:28px 0 34px}
 .price-description-v8{padding-top:22px;border-top:1px solid #dfd5ce}
 .price-description-v8>p br{display:none}
 html[data-theme] .sv-pain-grid{gap:22px}
 html[data-theme] .sv-pain-grid>article:nth-child(n){padding:22px}
 html[data-theme] .sv-pain-grid .sv-pain-answer{margin:auto -22px -22px;padding:22px}
}
@media(max-width:600px){
 html[data-theme] .sv-pain-grid{grid-template-columns:1fr}
 html[data-theme] .real-media-heading>p:last-child{font-size:clamp(20px,6.7vw,29px)}
 html[data-theme] .media-copy-v8 h3{font-size:clamp(26px,7vw,34px)}
 html[data-theme] .gourmet-hero h1{font-size:clamp(27px,7vw,34px)}
 .contact-entry-v8{right:16px;bottom:max(14px,env(safe-area-inset-bottom));min-height:54px;padding:13px 18px;gap:12px;font-size:16px}
 .price-amount-v8>strong{font-size:70px}
 .price-amount-v8>span{font-size:23px}
 .support-price-v8{padding:24px 21px}
 html[data-theme] .platform-row-v6{gap:17px 20px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media print{.contact-entry-v8{display:none}body.has-contact-entry-v8{padding-bottom:0}}
