/* v07: fixes scoped to the annotated areas. */
/* Footer label is in HTML; legacy generated label was duplicating it. */
html body.client-redline-v07.client-redline-v07 .footer__contact::before {content:none!important;display:none!important;}
html body.client-redline-v07.client-redline-v07 .footer__contact {font-size:16px!important;}
/* Performance panels: every label and counter must be fully white. */
html body.client-redline-v07.client-redline-v07.page-performance .performance-showcase :is(p,h2,h3,li,button,span,a){color:#fff!important;-webkit-text-fill-color:#fff!important;}
html body.client-redline-v07.client-redline-v07.page-performance .performance-showcase :is(.performance-showcase__tab,.performance-showcase__counter,.performance-showcase__counter-total){opacity:1!important;}
/* About 01–04: give the paragraphs more room; remove restrictive inherited widths. */
html body.client-redline-v07.client-redline-v07.page-about .concept-card__body{padding-left:clamp(28px,4vw,64px)!important;padding-right:clamp(28px,4vw,64px)!important;min-width:0!important;}
html body.client-redline-v07.client-redline-v07.page-about .concept-card__desc{width:100%!important;max-width:42em!important;text-wrap:pretty;word-break:normal;overflow-wrap:break-word;}
/* FAQ small English label and section numbers. */
html body.client-redline-v07.client-redline-v07.page-faq .faq-head__eyebrow,html body.client-redline-v07.client-redline-v07.page-faq .faq-head__en{font-size:22px!important;font-weight:500!important;color:#285b79!important;}
html body.client-redline-v07.client-redline-v07.page-faq .faq-cat__num{font-size:24px!important;font-weight:500!important;line-height:1.3!important;min-width:2.2em!important;color:#285b79!important;}
/* Company intro and story share one left edge. */
html body.client-redline-v07.client-redline-v07.page-company :is(.c-top__body,.company-story__inner,.company-greeting__inner){width:min(1240px,calc(100% - 112px))!important;margin-left:auto!important;margin-right:auto!important;}
html body.client-redline-v07.client-redline-v07.page-company .c-top__body{padding:64px 0 0!important;display:block!important;border:0!important;}
html body.client-redline-v07.client-redline-v07.page-company .c-top__intro{margin:32px 0 0!important;padding:0!important;max-width:54em!important;}
html body.client-redline-v07.client-redline-v07.page-company .c-top,html body.client-redline-v07.client-redline-v07.page-company .c-top__title{border:0!important;}
html body.client-redline-v07.client-redline-v07.page-company .c-top::after,html body.client-redline-v07.client-redline-v07.page-company .c-top__body::after{display:none!important;}
html body.client-redline-v07.client-redline-v07.page-company .company-story{padding-top:96px!important;padding-bottom:72px!important;overflow:visible!important;}
html body.client-redline-v07.client-redline-v07.page-company .company-story__inner{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:48px!important;align-items:start!important;}
html body.client-redline-v07.client-redline-v07.page-company .company-story__copy{padding:0!important;}
html body.client-redline-v07.client-redline-v07.page-company .company-story__label-title{white-space:normal!important;max-width:100%!important;line-height:1.6!important;overflow-wrap:break-word;}
/* Reserve real document height for all three images instead of negative offsets. */
html body.client-redline-v07.client-redline-v07.page-company .company-story__media{height:auto!important;display:grid!important;grid-template-columns:1fr 1fr;gap:16px!important;padding:0!important;}
html body.client-redline-v07.client-redline-v07.page-company .company-story__main-photo{grid-column:1/-1;width:100%!important;height:auto!important;aspect-ratio:4/5;margin:0!important;}
html body.client-redline-v07.client-redline-v07.page-company .company-story__sub-photo{position:relative!important;inset:auto!important;width:100%!important;height:auto!important;aspect-ratio:3/2;margin:0!important;transform:none!important;box-shadow:none!important;}
html body.client-redline-v07.client-redline-v07.page-company .company-greeting__heading{grid-template-columns:minmax(260px,auto) 1fr!important;gap:40px!important;}
html body.client-redline-v07.client-redline-v07.page-company .company-greeting__heading .company-kicker-jp{white-space:nowrap!important;}
/* Portrait-ready layout. Text can continue below the photo rather than leaving an empty column. */
html body.client-redline-v07.client-redline-v07.page-company .company-person{display:flow-root!important;padding:56px 0!important;}
html body.client-redline-v07.client-redline-v07.page-company .company-person__portrait{float:left;width:30%!important;margin:0 48px 24px 0!important;padding:12px!important;}
html body.client-redline-v07.client-redline-v07.page-company .company-person--reverse .company-person__portrait{float:right;margin:0 0 24px 48px!important;}
html body.client-redline-v07.client-redline-v07.page-company .company-person__portrait img{width:100%!important;height:auto!important;aspect-ratio:3/4!important;object-fit:cover!important;object-position:50% 30%!important;}
html body.client-redline-v07.client-redline-v07.page-company .company-person__content{display:contents!important;}
html body.client-redline-v07.client-redline-v07.page-company .company-person__header{overflow:hidden;margin-bottom:24px!important;padding-bottom:24px!important;}
html body.client-redline-v07.client-redline-v07.page-company .company-person__message{width:auto!important;max-width:none!important;}
html body.client-redline-v07.client-redline-v07.page-company .company-person__message p{max-width:none!important;}
html body.client-redline-v07.client-redline-v07.page-company .company-person__message p+p{margin-top:20px!important;}
html body.client-redline-v07.client-redline-v07.page-company .company-person__details{clear:both;margin-top:28px!important;}
html body.client-redline-v07.client-redline-v07.page-company .company-cafe{padding-bottom:0!important;margin-bottom:0!important;}
html body.client-redline-v07.client-redline-v07.page-company main{padding-bottom:0!important;margin-bottom:0!important;}
/* Empty blue band between cafe and footer was a background spacer. */
html body.client-redline-v07.client-redline-v07.page-company .company-cafe::after{content:none!important;display:none!important;}
/* Near-full-window simulator on every page. */
html body.client-redline-v07.client-redline-v07 .sim-modal{padding:12px!important;}
html body.client-redline-v07.client-redline-v07 .sim-modal__panel{width:calc(100vw - 24px)!important;max-width:none!important;height:calc(100vh - 24px)!important;height:calc(100dvh - 24px)!important;max-height:none!important;border-radius:12px!important;}
html body.client-redline-v07.client-redline-v07 .sim-modal__close{top:12px!important;right:12px!important;width:44px!important;height:44px!important;z-index:10!important;}
@media(max-width:767px){
 html body.client-redline-v07.client-redline-v07.page-about .concept-card__body{padding:32px 24px!important;}
 html body.client-redline-v07.client-redline-v07.page-faq .faq-head__eyebrow,html body.client-redline-v07.client-redline-v07.page-faq .faq-head__en{font-size:20px!important;}
 html body.client-redline-v07.client-redline-v07.page-faq .faq-cat__num{font-size:22px!important;}
 html body.client-redline-v07.client-redline-v07.page-company :is(.c-top__body,.company-story__inner,.company-greeting__inner){width:calc(100% - 40px)!important;}
 html body.client-redline-v07.client-redline-v07.page-company .company-story__inner{grid-template-columns:1fr!important;gap:32px!important;}
 html body.client-redline-v07.client-redline-v07.page-company .company-story{padding:56px 0!important;}
 html body.client-redline-v07.client-redline-v07.page-company .company-greeting__heading{grid-template-columns:1fr!important;gap:24px!important;}
 html body.client-redline-v07.client-redline-v07.page-company .company-person__portrait,html body.client-redline-v07.client-redline-v07.page-company .company-person--reverse .company-person__portrait{float:none;width:min(100%,320px)!important;margin:0 auto 28px!important;}
 html body.client-redline-v07.client-redline-v07.page-company .company-person__header{display:block!important;}
 html body.client-redline-v07.client-redline-v07 .sim-modal{padding:4px!important;}
 html body.client-redline-v07.client-redline-v07 .sim-modal__panel{width:calc(100vw - 8px)!important;height:calc(100vh - 8px)!important;height:calc(100dvh - 8px)!important;border-radius:8px!important;}
}

html body.client-redline-v07.client-redline-v07.page-faq .faq-head__label{font-size:22px!important;font-weight:500!important;color:#285b79!important;}
html body.client-redline-v07.client-redline-v07.page-company .company-story{border-top:0!important;}
html body.client-redline-v07.client-redline-v07.page-company .footer{padding-top:32px!important;margin-top:0!important;}
@media(min-width:901px){
 html body.client-redline-v07.client-redline-v07.page-about .concept--feature-editorial .concept-card:nth-child(odd){grid-template-columns:43% 5% 52%!important;}
 html body.client-redline-v07.client-redline-v07.page-about .concept--feature-editorial .concept-card:nth-child(even){grid-template-columns:5% 47% 5% 43%!important;}
 html body.client-redline-v07.client-redline-v07.page-about .concept-card__body{padding:0 32px 0 0!important;}
}
@media(max-width:900px){html body.client-redline-v07.client-redline-v07.page-about .concept-card__body{width:auto!important;margin:32px 24px 0!important;padding:0!important;}}
