/* Base: 1440 PC / 390 SP. --site-scale is the active design scale. */
:root {
  --pc-scale: calc(100vw / 1440);
  --sp-scale: calc(100vw / 390);
  --site-scale: var(--pc-scale);
  --header-height: calc(113 * var(--site-scale));
  --hover-transition: .35s ease;
  --navy: #0e2138;
  --card: #193051;
  --teal: #29b3b3;
  --ice: #e3f0ff;
  --blue: #97bfeb;
  --section-space: calc(60 * var(--site-scale));
}
*, *::before, *::after { box-sizing: border-box; }
html { width: 100%; scroll-padding-top: calc(var(--header-height) + var(--header-top, 0rem)); }
body { margin: 0; width: 100%; color: var(--navy); background: #fff; font-family: "Noto Sans JP", sans-serif; font-size: calc(16 * var(--site-scale)); line-height: 1.7; overflow-wrap: break-word; }
h1,h2,h3,h4,p,figure,blockquote,dl,dd,fieldset,form { margin: 0; }
ul,ol,li { margin: 0; padding: 0; }
ul,ol { list-style: none; }
table { border-collapse: collapse; }
fieldset { border: 0; padding: 0; }
button,input,select,textarea { font: inherit; }
button { color: inherit; border: 0; background: transparent; padding: 0; cursor: pointer; }
a { color: inherit; text-decoration: none; }
img,video,iframe { display: block; }
img { border: 0; }
a:focus-visible,button:focus-visible { outline: calc(3 * var(--site-scale)) solid var(--teal); outline-offset: calc(5 * var(--site-scale)); }
[hidden] { display: none !important; }
[id] { scroll-margin-top: calc(30 * var(--site-scale)); }
/* Layout */
.l-main { width: 100%; }
.l-container { width: calc(1200 * var(--site-scale)); margin-inline: auto; }
.l-container--wide { width: calc(1368 * var(--site-scale)); }
.l-container--wide-end { width: calc(1284 * var(--site-scale)); margin-left: calc(120 * var(--site-scale)); margin-right: calc(36 * var(--site-scale)); }
.l-header { position: fixed; inset: 0 0 auto; z-index: 20; background: rgba(14,33,56,.9); color: #fff; }
.admin-bar .l-header { top: var(--header-top, var(--wp-admin--admin-bar--height, 0)); }
.l-header__inner { display: flex; align-items: end; justify-content: space-between; padding: calc(12 * var(--site-scale)) calc(36 * var(--site-scale)); gap: calc(32 * var(--site-scale)); }
.l-header__brand { flex: 0 0 auto; font-family: "Albert Sans", sans-serif; font-weight: 800; font-size: calc(46 * var(--site-scale)); line-height: calc(40 * var(--site-scale)); }
.l-header__right { display: flex; flex-direction: column; align-items: end; gap: calc(10 * var(--site-scale)); }
.l-header__tagline { font-size: calc(15 * var(--site-scale)); font-weight: 700; line-height: 1.5; text-align: right; }
.l-header__menu-toggle { display: none; }
.l-footer { padding: 0 0 calc(40 * var(--site-scale)); background: var(--navy); color: #fff; }
.l-footer__brand { display: flex; flex-direction: column; align-items: center; gap: calc(15 * var(--site-scale)); padding: calc(60 * var(--site-scale)) 0 calc(48 * var(--site-scale)); border-bottom: calc(1 * var(--site-scale)) solid #c9e2fe; }
.l-footer__brand span { font: 800 calc(72 * var(--site-scale))/1 "Albert Sans",sans-serif; }
.l-footer__brand img { width: calc(472 * var(--site-scale)); height: calc(30 * var(--site-scale)); object-fit: contain; }
.l-footer__information { display: flex; justify-content: space-between; gap: calc(40 * var(--site-scale)); padding-top: calc(40 * var(--site-scale)); }
.l-footer__company { flex: 0 0 auto; }
.l-footer__company > p { font-weight: 700; }
.l-footer__company address { display: flex; align-items: center; gap: calc(10 * var(--site-scale)); margin-top: calc(14 * var(--site-scale)); font-style: normal; }
.l-footer__company address img { width: calc(13 * var(--site-scale)); height: calc(18 * var(--site-scale)); }
.l-footer__navigation { display: flex; gap: calc(60 * var(--site-scale)); font-family: "Barlow Semi Condensed", "Noto Sans JP", sans-serif; font-size: calc(18 * var(--site-scale)); font-weight: 500; line-height: calc(22 * var(--site-scale)); padding-right: calc(20 * var(--site-scale)); }
.l-footer__navigation ul { display: flex; flex-direction: column; gap: calc(20 * var(--site-scale)); }
.l-footer__products li:not(:first-child) { color: #c9e2fe; }
.l-footer__products li:nth-child(2) { font-weight: 400; }
.l-footer__navigation a:hover { color: var(--teal); }
.l-footer__copyright { text-align: center; font: 400 calc(18 * var(--site-scale))/calc(22 * var(--site-scale)) "Barlow Semi Condensed",sans-serif; margin-top: calc(40 * var(--site-scale)); }
/* Components */
.c-navigation { display: flex; align-items: end; gap: calc(48 * var(--site-scale)); }
.c-navigation__list { display: flex; gap: calc(25 * var(--site-scale)); align-items: center; font-size: calc(18 * var(--site-scale)); font-weight: 600; line-height: calc(22 * var(--site-scale)); padding-bottom: calc(1 * var(--site-scale)); }
.c-navigation__list > li { flex: 0 0 auto; }
.c-navigation__list > li > a,.c-navigation__product-toggle { transition: color var(--hover-transition); }
.c-navigation__list > li > a:focus-visible,.c-navigation__product-toggle:focus-visible { color: var(--teal); }
.c-navigation__products { position: relative; }
.c-navigation__product-toggle { display: flex; align-items: center; gap: calc(12 * var(--site-scale)); }
.c-navigation__product-toggle img { width: calc(14 * var(--site-scale)); height: calc(8 * var(--site-scale)); transition: transform .2s; }
.c-navigation__product-toggle[aria-expanded="true"] { color: var(--teal); }
.c-navigation__submenu { position: absolute; top: calc(34 * var(--site-scale)); left: 0; background: #fff; color: var(--navy); width: calc(369 * var(--site-scale)); padding: calc(20 * var(--site-scale)); }
.c-navigation__submenu::before { content: ""; position: absolute; bottom: 100%; left: 0; width: 100%; height: calc(12 * var(--site-scale)); }
.c-navigation__submenu li + li { margin-top: calc(12 * var(--site-scale)); }
.c-navigation__submenu a { display: block; font: 600 calc(18 * var(--site-scale))/calc(22 * var(--site-scale)) "Barlow Semi Condensed","Noto Sans JP",sans-serif; white-space: nowrap; }
.c-navigation__submenu a:hover { color: var(--teal); }
/* Figma: regular 95:5753, header 95:5791/95:5804, footer 95:5809. */
.c-button { --button-hover: 0; --button-hover-color: var(--teal); --button-hover-border: var(--teal); --button-ball-size: calc(16 * var(--site-scale)); --button-gap: calc(12 * var(--site-scale)); --button-body-shift: calc(0 * var(--site-scale)); --button-arrow-shift: calc(4 * var(--site-scale)); --button-transition: var(--hover-transition); display: inline-flex; align-items: center; justify-content: center; gap: var(--button-gap); padding: calc(14 * var(--site-scale)) calc(20 * var(--site-scale)); background: var(--teal); color: #fff; border-radius: calc(220 * var(--site-scale)); font-size: calc(18 * var(--site-scale)); font-weight: 700; line-height: calc(22 * var(--site-scale)); box-shadow: inset 0 0 0 calc(1 * var(--site-scale)) transparent; transition: background-color var(--button-transition),color var(--button-transition),box-shadow var(--button-transition); }
.c-button__body { position: relative; display: inline-flex; align-items: center; flex: 0 0 auto; padding-left: calc(var(--button-ball-size) + var(--button-gap)); transform: translateX(calc(var(--button-hover) * var(--button-body-shift))); transition: transform var(--button-transition); }
.c-button__label { display: block; white-space: nowrap; transform: translateX(calc(var(--button-hover) * -1 * (var(--button-ball-size) + var(--button-gap)))); transition: transform var(--button-transition); }
.c-button__ball { position: absolute; top: 50%; left: calc(var(--button-hover) * (100% - var(--button-ball-size))); width: var(--button-ball-size); height: var(--button-ball-size); background-color: currentColor; mask: url("../images/ball-white.svg") center / contain no-repeat; transform: translateY(-50%); transition: left var(--button-transition); }
.c-button__arrow { display: block; flex: 0 0 auto; width: calc(14 * var(--site-scale)); height: calc(8 * var(--site-scale)); margin-left: calc(12 * var(--site-scale)); background-color: currentColor; mask: url("../images/chevron-white.svg") center / contain no-repeat; transform: translateX(calc(var(--button-hover) * var(--button-arrow-shift))) rotate(-90deg); transition: transform var(--button-transition); }
.c-button:focus-visible { --button-hover: 1; background-color: #fff; color: var(--button-hover-color); box-shadow: inset 0 0 0 calc(1 * var(--site-scale)) var(--button-hover-border); }
@media (hover: hover) and (pointer: fine) {
  .c-navigation__submenu { opacity: 0; transform: translateY(calc(12 * var(--site-scale))); transition: opacity .3s ease-out,transform .3s ease-out; }
  .c-navigation__submenu.is-open { opacity: 1; transform: translateY(0); }
  .c-navigation__submenu.is-closing { pointer-events: none; }
  /* The hover bridge follows the same progress as the moving panel. */
  .c-navigation__submenu::before { height: calc(24 * var(--site-scale)); transition: height .3s ease-out; }
  .c-navigation__submenu.is-open::before { height: calc(12 * var(--site-scale)); }
  .c-navigation__list > li > a:hover,.c-navigation__product-toggle:hover { color: var(--teal); }
  .c-button:hover { --button-hover: 1; background-color: #fff; color: var(--button-hover-color); box-shadow: inset 0 0 0 calc(1 * var(--site-scale)) var(--button-hover-border); }
}
@media (prefers-reduced-motion: reduce) {
  .c-navigation__submenu,.c-navigation__submenu::before { transition: none; }
  .c-button,.c-button__body,.c-button__label,.c-button__ball,.c-button__arrow,.c-navigation__list > li > a,.c-navigation__product-toggle { transition: none; }
}
.c-button--pending { cursor: default; }
.c-button--contact { --button-hover-color: var(--navy); --button-hover-border: transparent; --button-ball-size: calc(22 * var(--site-scale)); --button-body-shift: calc(13 * var(--site-scale)); --button-arrow-shift: calc(12 * var(--site-scale)); padding: calc(30 * var(--site-scale)) calc(30 * var(--site-scale)) calc(30 * var(--site-scale)) calc(60 * var(--site-scale)); border-radius: calc(3 * var(--site-scale)); font-size: calc(32 * var(--site-scale)); line-height: calc(38 * var(--site-scale)); white-space: nowrap; }
.c-button--contact .c-button__arrow { width: calc(22 * var(--site-scale)); height: calc(12 * var(--site-scale)); margin-left: calc(64 * var(--site-scale)); }
.c-navigation__contact { --button-hover-color: var(--navy); --button-hover-border: transparent; --button-body-shift: calc(6 * var(--site-scale)); --button-arrow-shift: calc(6 * var(--site-scale)); display: flex; align-items: center; gap: calc(12 * var(--site-scale)); padding: calc(13 * var(--site-scale)) calc(12 * var(--site-scale)) calc(14 * var(--site-scale)); background: var(--teal); color: var(--navy); border-radius: calc(3 * var(--site-scale)); font: 600 calc(24 * var(--site-scale))/1.2 "Barlow Semi Condensed",sans-serif; }
.c-sub-fv { position: relative; height: calc(383 * var(--site-scale)); background: #d4d6d7; color: var(--navy); }
.c-sub-fv__image { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.c-sub-fv__inner { position: relative; padding-top: calc(208 * var(--site-scale)); text-align: center; }
.c-sub-fv__heading { display: flex; flex-direction: column; align-items: center; gap: calc(10 * var(--site-scale)); }
.c-sub-fv__english { font: 600 calc(48 * var(--site-scale))/calc(58 * var(--site-scale)) "Barlow Semi Condensed",sans-serif; }
.c-sub-fv__english::after { content: ""; display: block; width: calc(36 * var(--site-scale)); height: calc(2 * var(--site-scale)); margin: calc(9 * var(--site-scale)) auto 0; background: currentColor; }
.c-sub-fv__title { font-size: calc(15 * var(--site-scale)); font-weight: 700; line-height: 1.7; }
.c-media { position: relative; width: 100%; aspect-ratio: 16/9; background: #000; }
.c-media__content { width: 100%; height: 100%; object-fit: cover; }
.c-media--hero { height: 100%; aspect-ratio: auto; }
.c-media--hero [data-autoplay]:not(.is-video-started) { opacity: 0; }
.c-media--about { aspect-ratio: 800/448; }
.c-section-heading { color: inherit; }
.c-section-heading--center { text-align: center; }
.c-section-heading__eyebrow { font: 600 calc(24 * var(--site-scale))/calc(29 * var(--site-scale)) "Barlow Semi Condensed",sans-serif; margin-bottom: calc(12 * var(--site-scale)); }
.c-section-heading__title { font-size: calc(30 * var(--site-scale)); font-weight: 700; line-height: 1.7; }
.c-section-heading__translation { font: 600 calc(16 * var(--site-scale))/1 "Barlow Semi Condensed",sans-serif; margin-top: calc(15 * var(--site-scale)); }
.c-record { height: calc(447 * var(--site-scale)); background: var(--card); border-radius: calc(5 * var(--site-scale)); padding: calc(48 * var(--site-scale)) calc(14 * var(--site-scale)); text-align: center; }
.c-record__logo-wrap { height: calc(88 * var(--site-scale)); display: flex; align-items: center; justify-content: center; }
.c-record__logo { width: calc(172 * var(--site-scale)); height: calc(88 * var(--site-scale)); object-fit: contain; }
.c-record__logo--mlp { width: calc(164 * var(--site-scale)); }
.c-record__logo--intennse { width: calc(168 * var(--site-scale)); }
.c-record__logo--atp { width: calc(165.511 * var(--site-scale)); }
.c-record__logo--ppa { width: calc(150 * var(--site-scale)); height: calc(77 * var(--site-scale)); }
.c-record__label { font-size: calc(18 * var(--site-scale)); line-height: 1.5; color: var(--blue); margin-top: calc(12 * var(--site-scale)); letter-spacing: calc(-.7 * var(--site-scale)); white-space: nowrap; }
.c-record__label::after { content: ""; display: block; width: calc(100 * var(--site-scale)); height: calc(1 * var(--site-scale)); background: var(--blue); margin: calc(16 * var(--site-scale)) auto calc(12 * var(--site-scale)); }
.c-record__number { font: 700 calc(72 * var(--site-scale))/1 "Barlow Semi Condensed",sans-serif; color: var(--teal); }
.c-record__main { margin-top: calc(12 * var(--site-scale)); font-size: calc(18 * var(--site-scale)); font-weight: 700; line-height: 1.5; }
.c-record__sub { margin-top: calc(10 * var(--site-scale)); font-size: calc(16 * var(--site-scale)); font-weight: 500; line-height: 1.5; color: var(--blue); }
.c-service { background: var(--card); border-radius: calc(5 * var(--site-scale)); padding: calc(48 * var(--site-scale)) calc(24 * var(--site-scale)); height: calc(439 * var(--site-scale)); }
.c-service__title { font-size: calc(24 * var(--site-scale)); font-weight: 700; line-height: 1.7; color: var(--blue); text-align: center; white-space: nowrap; }
.c-service__icon { width: calc(120 * var(--site-scale)); height: calc(120 * var(--site-scale)); display: flex; align-items: center; justify-content: center; margin: calc(10 * var(--site-scale)) auto; }
.c-service__icon img { width: 100%; height: 100%; object-fit: contain; }
.c-service__icon--solution img { width: calc(119 * var(--site-scale)); height: calc(56 * var(--site-scale)); }
.c-service__icon--logistics img { width: calc(118 * var(--site-scale)); height: calc(76 * var(--site-scale)); }
.c-service__icon--afterservice img { width: calc(86 * var(--site-scale)); height: calc(70 * var(--site-scale)); }
.c-service__text { font-size: calc(16 * var(--site-scale)); line-height: 1.7; text-align: justify; }
.c-updates { display: flex; flex-direction: column; align-items: flex-start; }
.c-updates .c-section-heading__title { line-height: 1; }
.c-updates__list { width: 100%; margin-top: calc(36 * var(--site-scale)); display: flex; flex-direction: column; gap: calc(24 * var(--site-scale)); }
.c-updates > .c-button { align-self: center; margin-top: calc(60 * var(--site-scale)); }
.c-update { display: grid; grid-template-columns: 1fr calc(24 * var(--site-scale)); gap: calc(20 * var(--site-scale)); align-items: center; height: calc(135 * var(--site-scale)); border-bottom: calc(1 * var(--site-scale)) solid #8f8f8f; padding: 0 calc(20 * var(--site-scale)) calc(24 * var(--site-scale)) 0; }
.c-update--with-image { grid-template-columns: calc(177 * var(--site-scale)) 1fr calc(24 * var(--site-scale)); }
.c-update__thumbnail { width: 100%; height: calc(111 * var(--site-scale)); object-fit: cover; }
.c-update__content { width: 100%; }
.c-update__meta { display: flex; align-items: center; gap: calc(12 * var(--site-scale)); flex-wrap: wrap; }
.c-update__meta time { color: #8f8f8f; font: 500 calc(16 * var(--site-scale))/1.2 "Barlow Semi Condensed",sans-serif; }
.c-update__category { color: var(--teal); border: calc(1 * var(--site-scale)) solid currentColor; padding: calc(2 * var(--site-scale)) calc(5 * var(--site-scale)); font-size: calc(14 * var(--site-scale)); line-height: 1; }
.c-update__title { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; font-size: calc(20 * var(--site-scale)); font-weight: 500; line-height: 1.7; margin-top: calc(6 * var(--site-scale)); color: #111; }
.c-update__arrow { width: calc(24 * var(--site-scale)); height: calc(24 * var(--site-scale)); }
a.c-update:hover .c-update__title { color: var(--teal); }
.c-contact { background: var(--ice); padding: calc(60 * var(--site-scale)) 0; }
.c-contact__inner { display: flex; align-items: flex-end; justify-content: space-between; gap: calc(60 * var(--site-scale)); }
.c-contact__copy { width: calc(570 * var(--site-scale)); flex: 0 0 auto; }
.c-contact__eyebrow { font: 600 calc(24 * var(--site-scale))/1.2 "Barlow Semi Condensed",sans-serif; margin-bottom: calc(12 * var(--site-scale)); }
.c-contact__title { font-size: calc(30 * var(--site-scale)); line-height: 1.7; font-weight: 700; white-space: nowrap; }
.c-contact__text { font-size: calc(16 * var(--site-scale)); line-height: 1.7; margin-top: calc(24 * var(--site-scale)); }

/* Contact page variant of the common subpage heading and common button. */
.c-sub-fv--plain { height: auto; background: #fff; }
.c-sub-fv--plain .c-sub-fv__inner { width: calc(960 * var(--site-scale)); padding: calc(205 * var(--site-scale)) 0 calc(36 * var(--site-scale)); text-align: left; }
.c-sub-fv--plain .c-sub-fv__heading { align-items: flex-start; }
.c-sub-fv--plain .c-sub-fv__english::after { margin-left: 0; background: var(--teal); }
.c-contact-form { width: 100%; color: #111; }
.c-contact-form__fields { display: flex; flex-direction: column; gap: calc(36 * var(--site-scale)); }
.c-contact-form__row { display: grid; grid-template-columns: calc(140 * var(--site-scale)) 1fr; align-items: center; }
.c-contact-form__row--message { align-items: start; }
.c-contact-form__label { position: relative; font-size: calc(16 * var(--site-scale)); font-weight: 700; line-height: 1.6; }
.c-contact-form__required { display: inline-block; color: var(--teal); margin-left: calc(5 * var(--site-scale)); }
.c-contact-form__row--message .c-contact-form__required { position: absolute; left: calc(96 * var(--site-scale)); top: 0; }
.c-contact-form__control { width: 100%; }
.c-contact-form__input { display: block; width: 100%; height: calc(40 * var(--site-scale)); padding: calc(6 * var(--site-scale)) calc(12 * var(--site-scale)); border: calc(1 * var(--site-scale)) solid #a8a8a8; border-radius: calc(3 * var(--site-scale)); background: #fff; color: #111; font-size: calc(16 * var(--site-scale)); line-height: 1.5; }
.c-contact-form__input--textarea { height: calc(180 * var(--site-scale)); resize: vertical; }
.c-contact-form__input:focus-visible,.c-contact-form__consent input:focus-visible { outline: calc(2 * var(--site-scale)) solid var(--teal); outline-offset: calc(3 * var(--site-scale)); }
.c-contact-form__input[aria-invalid="true"] { border-color: #b42318; }
.c-contact-form__error { color: #b42318; font-size: calc(14 * var(--site-scale)); line-height: 1.6; margin-top: calc(6 * var(--site-scale)); }
.c-contact-form__actions { display: flex; flex-direction: column; align-items: center; gap: calc(36 * var(--site-scale)); margin-top: calc(80 * var(--site-scale)); }
.c-contact-form__actions > .c-contact-form__error { margin-top: calc(-24 * var(--site-scale)); }
.c-contact-form__consent { display: flex; align-items: center; gap: calc(10 * var(--site-scale)); font-size: calc(16 * var(--site-scale)); line-height: 1.6; }
.c-contact-form__consent input { flex: 0 0 auto; appearance: auto; width: calc(19 * var(--site-scale)); height: calc(19 * var(--site-scale)); margin: 0; accent-color: var(--teal); cursor: pointer; }
.c-contact-form__consent input:disabled { cursor: not-allowed; }
.c-contact-form__consent label { cursor: pointer; }
.c-contact-form__consent a,.c-contact-form__policy-pending { font-weight: 700; text-decoration: underline; text-underline-offset: .15em; }
.c-contact-form__consent a:hover { color: var(--teal); }
.c-contact-form__trap { display: none; }
.c-contact-form__alert { margin-bottom: calc(28 * var(--site-scale)); padding: calc(20 * var(--site-scale)); border: calc(1 * var(--site-scale)) solid #b42318; color: #b42318; font-size: calc(16 * var(--site-scale)); }
.c-contact-form__alert ul { margin-top: calc(10 * var(--site-scale)); }
.c-contact-form__alert a { text-decoration: underline; }
.c-contact-form__result { padding: calc(48 * var(--site-scale)); background: #eaf4ff; text-align: center; font-size: calc(20 * var(--site-scale)); }
.c-contact-form__result a { display: inline-block; margin-top: calc(24 * var(--site-scale)); font-size: calc(16 * var(--site-scale)); text-decoration: underline; }
.c-button--submit { --button-ball-size: calc(20 * var(--site-scale)); width: calc(298 * var(--site-scale)); padding: calc(20 * var(--site-scale)) calc(20 * var(--site-scale)) calc(20 * var(--site-scale)) calc(76 * var(--site-scale)); font-size: calc(20 * var(--site-scale)); line-height: calc(24 * var(--site-scale)); }
.c-button--submit .c-button__arrow { width: calc(16 * var(--site-scale)); height: calc(9 * var(--site-scale)); margin-left: auto; }
.c-button--submit:disabled { --button-hover: 0; background: #a1a1a1; color: #fff; box-shadow: none; cursor: not-allowed; }

/* Contact Form 7 integration: preserve the existing form geometry. */
.c-contact-form .wpcf7-form-control-wrap { display: block; width: 100%; }
.c-contact-form .wpcf7-not-valid-tip { display: block; color: #b42318; font-size: calc(14 * var(--site-scale)); line-height: 1.6; margin-top: calc(6 * var(--site-scale)); }
.c-contact-form .wpcf7-response-output { margin-top: calc(24 * var(--site-scale)); padding: calc(16 * var(--site-scale)); border: calc(1 * var(--site-scale)) solid #b42318; font-size: calc(16 * var(--site-scale)); line-height: 1.6; }
.c-contact-form.init .wpcf7-response-output,.c-contact-form.submitting .wpcf7-response-output { display: none; }
.c-contact-form.sent .wpcf7-response-output { border-color: var(--teal); }
.wpcf7 .screen-reader-response { position: absolute; width: calc(1 * var(--site-scale)); height: calc(1 * var(--site-scale)); overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.c-contact-form__consent .wpcf7-form-control-wrap { width: auto; }
.c-contact-form__consent .wpcf7-list-item { display: flex; margin: 0; }

.c-back-link { display: inline-flex; align-items: center; gap: calc(8 * var(--site-scale)); color: var(--navy); font: 600 calc(24 * var(--site-scale))/calc(29 * var(--site-scale)) "Barlow Semi Condensed",sans-serif; }
.c-back-link__icon { flex: 0 0 auto; width: calc(24 * var(--site-scale)); height: calc(24 * var(--site-scale)); transform: scaleX(-1); }
.c-back-link:hover,.c-back-link:focus-visible { text-decoration: underline; text-underline-offset: .18em; }
.c-back-link:focus-visible { outline: calc(2 * var(--site-scale)) solid var(--teal); outline-offset: calc(6 * var(--site-scale)); }

.c-article-filter { width: 100%; }
.c-article-filter__toggle { display: flex; align-items: center; gap: calc(30 * var(--site-scale)); width: fit-content; margin-left: auto; padding: calc(12 * var(--site-scale)) calc(10 * var(--site-scale)) calc(12 * var(--site-scale)) calc(30 * var(--site-scale)); border-radius: calc(5 * var(--site-scale)); background: var(--navy); color: #fff; font-size: calc(16 * var(--site-scale)); font-weight: 700; line-height: 1.7; list-style: none; cursor: pointer; }
.c-article-filter__toggle::-webkit-details-marker { display: none; }
.c-article-filter__toggle > img { width: calc(24 * var(--site-scale)); height: calc(24 * var(--site-scale)); transform: rotate(90deg); }
.c-article-filter[open] .c-article-filter__toggle > img { transform: rotate(-90deg); }
.c-article-filter__panel { padding: calc(30 * var(--site-scale)) calc(24 * var(--site-scale)); background: #eaf4ff; display: flex; flex-direction: column; gap: calc(20 * var(--site-scale)); }
.c-article-filter__group { display: flex; flex-direction: column; gap: calc(12 * var(--site-scale)); align-items: flex-start; }
.c-article-filter__heading { font: 600 calc(24 * var(--site-scale))/calc(29 * var(--site-scale)) "Barlow Semi Condensed",sans-serif; color: var(--navy); }
.c-article-filter__categories { display: flex; flex-wrap: wrap; gap: calc(16 * var(--site-scale)) calc(36 * var(--site-scale)); }
.c-article-filter__categories a { display: flex; align-items: center; gap: calc(16 * var(--site-scale)); font-size: calc(16 * var(--site-scale)); font-weight: 700; line-height: 1.7; color: #111; overflow-wrap: anywhere; }
.c-article-filter__categories a[aria-current],.c-article-filter__categories a:hover { color: var(--teal); }
.c-article-filter__categories img { flex: 0 0 auto; width: calc(24 * var(--site-scale)); height: calc(24 * var(--site-scale)); }
.c-article-filter__select { position: relative; width: calc(272 * var(--site-scale)); }
.c-article-filter__select select { appearance: none; width: 100%; border: calc(1 * var(--site-scale)) solid #8f8f8f; border-radius: calc(5 * var(--site-scale)); padding: calc(8 * var(--site-scale)) calc(52 * var(--site-scale)) calc(8 * var(--site-scale)) calc(20 * var(--site-scale)); font-size: calc(16 * var(--site-scale)); font-weight: 700; line-height: 1.7; color: var(--navy); background: #fff; cursor: pointer; }
.c-article-filter__select select:disabled { color: #8f8f8f; cursor: not-allowed; }
.c-article-filter__select > img { pointer-events: none; position: absolute; right: calc(20 * var(--site-scale)); top: 50%; width: calc(24 * var(--site-scale)); height: calc(24 * var(--site-scale)); transform: translateY(-50%) rotate(90deg); }
.c-article-filter__apply { background: var(--navy); color: #fff; padding: calc(8 * var(--site-scale)) calc(16 * var(--site-scale)); border-radius: calc(5 * var(--site-scale)); font-size: calc(16 * var(--site-scale)); }
.c-article-filter__toggle:focus-visible,.c-article-filter a:focus-visible,.c-article-filter select:focus-visible,.c-list-pagination a:focus-visible,a.c-update:focus-visible { outline: calc(2 * var(--site-scale)) solid var(--teal); outline-offset: calc(4 * var(--site-scale)); }
.c-list-pagination { display: flex; justify-content: center; align-items: center; gap: calc(36 * var(--site-scale)); color: var(--navy); }
.c-list-pagination__link { display: inline-flex; align-items: center; gap: calc(8 * var(--site-scale)); font: 600 calc(24 * var(--site-scale))/calc(29 * var(--site-scale)) "Barlow Semi Condensed",sans-serif; }
.c-list-pagination__link[aria-disabled] { opacity: .4; }
.c-list-pagination__link[href]:hover { text-decoration: underline; text-underline-offset: .18em; }
.c-list-pagination__arrow { width: calc(24 * var(--site-scale)); height: calc(24 * var(--site-scale)); }
.c-list-pagination__arrow--prev { transform: scaleX(-1); }
.c-list-pagination__index,.c-list-pagination__index img { display: block; width: calc(22 * var(--site-scale)); height: calc(22 * var(--site-scale)); }


/* Rich article content, shared by the fixed-page sample and real editorial posts. */
.c-article-content { margin-top: calc(40 * var(--site-scale)); color: #111; font-size: calc(16 * var(--site-scale)); line-height: 1.7; overflow-wrap: anywhere; display: flow-root; }
.c-article-content > * { margin: 0; }
.c-article-content > * + * { margin-top: calc(20 * var(--site-scale)); }
.c-article-content h2 { display: flex; align-items: start; gap: calc(12 * var(--site-scale)); color: var(--navy); font-size: calc(24 * var(--site-scale)); font-weight: 700; line-height: 1.7; }
.c-article-content h2::before { content: "●"; flex: 0 0 auto; color: var(--teal); }
.c-article-content > h2 { margin-top: calc(40 * var(--site-scale)); }
.c-article-content h2 + p { margin-top: calc(24 * var(--site-scale)); }
.c-article-content h3,.c-article-content h4 { color: var(--navy); font-size: calc(20 * var(--site-scale)); font-weight: 700; line-height: 1.7; }
.c-article-content a { color: var(--teal); text-decoration: underline; text-underline-offset: .2em; }
.c-article-content a:focus-visible { outline: calc(2 * var(--site-scale)) solid var(--teal); outline-offset: calc(4 * var(--site-scale)); }
.c-article-content .wp-block-image { width: 100%; float: none; }
.c-article-content .wp-block-image.is-style-project-inline { width: calc(585 * var(--site-scale)); }
.c-article-content img { width: 100%; height: auto; }
.c-article-content .aligncenter { margin-inline: auto; }
.c-article-content .alignright { margin-left: auto; }
.c-article-content figcaption { margin-top: calc(8 * var(--site-scale)); color: #555; font-size: calc(14 * var(--site-scale)); }
.c-article-content ul,.c-article-content ol { padding-left: 1.5em; list-style: disc; }
.c-article-content ol { list-style: decimal; }
.c-article-content li + li { margin-top: .4em; }
.c-article-content blockquote { padding: calc(20 * var(--site-scale)); border-left: calc(3 * var(--site-scale)) solid var(--teal); background: #eaf4ff; }
.c-article-content table { width: 100%; border-collapse: collapse; }
.c-article-content th,.c-article-content td { padding: calc(12 * var(--site-scale)); border: calc(1 * var(--site-scale)) solid #8f8f8f; text-align: left; }
.c-article-content th { background: #eaf4ff; }
.c-article-content .wp-block-table { overflow-x: auto; }
.c-article-content iframe,.c-article-content video { width: 100%; aspect-ratio: 16 / 9; height: auto; }
.c-article-content pre { overflow-x: auto; padding: calc(20 * var(--site-scale)); background: #eaf4ff; }

/* Page */
.p-home-hero { height: calc(894 * var(--site-scale)); position: relative; color: #fff; overflow: hidden; }
.p-home-hero__visual { position: absolute; inset: 0 0 auto; height: calc(841 * var(--site-scale)); width: 100%; }
.p-home-hero::after { content: ""; position: absolute; inset: auto 0 0; height: calc(267 * var(--site-scale)); background: url("../images/curve-top.svg") center top / calc(1796 * var(--site-scale)) calc(552 * var(--site-scale)) no-repeat; }
.p-home-hero__content { position: relative; z-index: 1; display: flex; flex-direction: column; align-items: center; padding-top: calc(707 * var(--site-scale)); }
.p-home-hero__title { font: 800 calc(72 * var(--site-scale))/1 "Albert Sans",sans-serif; }
.p-home-hero__powered { width: calc(472 * var(--site-scale)); height: calc(30 * var(--site-scale)); object-fit: contain; margin-top: calc(15 * var(--site-scale)); }
.p-home-hero__copy { width: calc(1081 * var(--site-scale)); height: calc(50 * var(--site-scale)); object-fit: contain; margin-top: calc(20 * var(--site-scale)); }
.p-home-about { background: var(--navy); color: #fff; padding: calc(60 * var(--site-scale)) 0 calc(84 * var(--site-scale)); }
.p-home-about__inner { display: grid; grid-template-columns: calc(420 * var(--site-scale)) 1fr; gap: calc(64 * var(--site-scale)); align-items: start; }
.p-home-about__heading { display: flex; align-items: center; gap: calc(12 * var(--site-scale)); font: 600 calc(38 * var(--site-scale))/1.2 "Albert Sans",sans-serif; white-space: nowrap; }
.p-home-about__heading img { width: calc(17 * var(--site-scale)); height: calc(17 * var(--site-scale)); object-fit: contain; }
.p-home-about__lead { font-size: calc(24 * var(--site-scale)); font-weight: 700; line-height: 1.7; margin-top: calc(6 * var(--site-scale)); }
.p-home-about__text { font-size: calc(16 * var(--site-scale)); line-height: 1.7; text-align: justify; margin-top: calc(24 * var(--site-scale)); }
.p-home-about__copy > .c-button { margin-top: calc(24 * var(--site-scale)); }
.p-home-products { position: relative; background: var(--navy); color: #fff; z-index: 2; }
.p-home-products::after { content: ""; position: absolute; inset: 100% 0 auto; height: calc(115 * var(--site-scale)); background: url("../images/curve-bottom.svg") center bottom / calc(1796 * var(--site-scale)) calc(552 * var(--site-scale)) no-repeat; }
.p-home-products__inner { display: flex; flex-direction: column; align-items: center; }
.p-home-products .c-section-heading { margin-bottom: calc(36 * var(--site-scale)); }
.p-home-products__lineup { display: grid; grid-template-columns: repeat(4,1fr); gap: calc(44 * var(--site-scale)); width: calc(1180 * var(--site-scale)); margin-top: calc(36 * var(--site-scale)); }
.p-home-products__item { display: flex; flex-direction: column; align-items: center; gap: calc(27 * var(--site-scale)); }
.p-home-products__logo-wrap { width: 100%; height: calc(82 * var(--site-scale)); }
.p-home-products__logo { width: 100%; height: calc(60 * var(--site-scale)); object-fit: contain; }
.p-home-products__mat { width: calc(153 * var(--site-scale)); height: calc(26 * var(--site-scale)); object-fit: contain; margin: calc(-4 * var(--site-scale)) auto 0; }
.p-home-products__description { object-fit: contain; object-position: top; }
.p-home-products__description--mat { width: calc(260 * var(--site-scale)); height: calc(84 * var(--site-scale)); font-size: calc(20 * var(--site-scale)); font-weight: 700; font-style: italic; line-height: 1.4; text-align: center; }
.p-home-products__description--acrytech { width: calc(215 * var(--site-scale)); height: calc(84 * var(--site-scale)); object-position: top; }
.p-home-products__description--cushion { width: calc(209 * var(--site-scale)); height: calc(84 * var(--site-scale)); }
.p-home-products__description--faultline { width: calc(167 * var(--site-scale)); height: calc(84 * var(--site-scale)); object-position: top; }
.p-home-products__lead { margin-top: calc(38 * var(--site-scale)); font-size: calc(30 * var(--site-scale)); font-weight: 700; line-height: 1.7; text-align: center; }
.p-home-products__inner > .c-button { margin-top: calc(48 * var(--site-scale)); padding-block: calc(16.5 * var(--site-scale)); }
.p-home-proof { background: var(--navy); color: #fff; }
.p-home-proof__scene { position: relative; height: calc(832 * var(--site-scale)); width: 100%; overflow: hidden; }
.p-home-proof__stadium { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.p-home-proof__curve { position: absolute; inset: auto 0 0; height: calc(257 * var(--site-scale)); background: url("../images/curve-top.svg") center top / calc(1796 * var(--site-scale)) calc(552 * var(--site-scale)) no-repeat; }
.p-home-proof__athlete { position: absolute; bottom: 0; object-fit: contain; z-index: 1; }
.p-home-proof__athlete--male { left: 0; width: calc(522 * var(--site-scale)); height: calc(682 * var(--site-scale)); }
.p-home-proof__athlete--female { right: 0; width: calc(555 * var(--site-scale)); height: calc(711 * var(--site-scale)); }
.p-home-proof__athlete-name { position: absolute; z-index: 3; bottom: calc(71 * var(--site-scale)); background: var(--navy); padding: calc(10 * var(--site-scale)); font-family: "Barlow Semi Condensed",sans-serif; line-height: 1.2; }
.p-home-proof__athlete-name p { font-size: calc(20 * var(--site-scale)); font-weight: 600; }
.p-home-proof__athlete-name span { font-size: calc(14 * var(--site-scale)); }
.p-home-proof__athlete-name--male { left: calc(120 * var(--site-scale)); }
.p-home-proof__athlete-name--female { right: calc(130 * var(--site-scale)); }
.p-home-proof__official { position: absolute; z-index: 2; bottom: calc(4 * var(--site-scale)); left: 50%; transform: translateX(-50%); display: flex; flex-direction: column; align-items: center; gap: calc(8 * var(--site-scale)); font-size: calc(18 * var(--site-scale)); line-height: 1.7; }
.p-home-proof__official > p:first-child { font-weight: 700; }
.p-home-proof__official img { width: calc(180 * var(--site-scale)); height: calc(92 * var(--site-scale)); object-fit: contain; }
.p-home-proof__official > span { font-family: "Metal",serif; }
.p-home-proof__details { display: grid; grid-template-columns: calc(468 * var(--site-scale)) 1fr; gap: calc(48 * var(--site-scale)); padding-block: calc(60 * var(--site-scale)); }
.p-home-proof__copy h2 { font-size: calc(30 * var(--site-scale)); line-height: 1.7; }
.p-home-proof__subtitle { font-size: calc(18 * var(--site-scale)); font-weight: 700; line-height: 1.7; margin-top: calc(10 * var(--site-scale)); white-space: nowrap; }
.p-home-proof__text { font-size: calc(16 * var(--site-scale)); line-height: 1.7; text-align: justify; margin-top: calc(24 * var(--site-scale)); }
.p-home-proof__photos { display: grid; grid-template-columns: repeat(2,1fr); gap: calc(24 * var(--site-scale)); align-items: start; }
.p-home-proof__photos img { width: 100%; height: calc(237 * var(--site-scale)); object-fit: cover; }
.p-home-proof__records { display: grid; grid-template-columns: repeat(4,1fr); gap: calc(16 * var(--site-scale)); }
.p-home-services { position: relative; padding: calc(30 * var(--site-scale)) 0 calc(210 * var(--site-scale)); color: #fff; background: linear-gradient(to bottom,var(--navy) calc(100% - 180 * var(--site-scale)),transparent 0); }
.p-home-services::after { content: ""; position: absolute; inset: auto 0 0; height: calc(180 * var(--site-scale)); background: url("../images/curve-bottom.svg") center bottom / calc(1796 * var(--site-scale)) calc(552 * var(--site-scale)) no-repeat; pointer-events: none; }
.p-home-services__title { font-size: calc(30 * var(--site-scale)); line-height: 1.7; font-weight: 700; text-align: center; }
.p-home-services__list { display: grid; grid-template-columns: repeat(4,1fr); gap: calc(16 * var(--site-scale)); margin-top: calc(30 * var(--site-scale)); }
.p-home-updates { padding: calc(120 * var(--site-scale)) 0 calc(80 * var(--site-scale)); }
.p-home-updates__inner { display: grid; grid-template-columns: repeat(2,1fr); gap: calc(40 * var(--site-scale)); }
/* AT Sports fixed page — Figma 95:7003. */
.p-about-company { background: var(--navy); color: #fff; }
.p-about-company__intro { display: grid; grid-template-columns: calc(340 * var(--site-scale)) 1fr; gap: var(--section-space); padding-block: var(--section-space); align-items: start; }
.p-about-company__brand img { width: calc(220 * var(--site-scale)); height: calc(144 * var(--site-scale)); object-fit: contain; }
.p-about-company__tagline { font-size: calc(18 * var(--site-scale)); line-height: 1.7; font-weight: 700; white-space: nowrap; margin-top: calc(14 * var(--site-scale)); }
.p-about-company__text { font-size: calc(16 * var(--site-scale)); line-height: 1.7; text-align: justify; }
.p-about-company__text p + p { margin-top: calc(16 * var(--site-scale)); }
.p-about-company__text a { text-decoration: underline; }
.p-about-company__features { padding-bottom: var(--section-space); }
.p-about-company__feature-list { display: grid; grid-template-columns: repeat(4,1fr); gap: calc(16 * var(--site-scale)); }
.p-about-company__feature { padding: calc(23 * var(--site-scale)); border: calc(1 * var(--site-scale)) solid var(--blue); border-radius: calc(5 * var(--site-scale)); background: var(--card); color: var(--blue); font-size: calc(20 * var(--site-scale)); font-weight: 500; line-height: 1.7; text-align: justify; }
.p-about-company__feature:first-child { letter-spacing: calc(-.6 * var(--site-scale)); }
.p-about-company__photos { display: grid; grid-template-columns: repeat(5,1fr); }
.p-about-company__photos img { width: 100%; height: auto; aspect-ratio: 288/210; object-fit: cover; }
.p-about-trust { background: var(--navy); color: #fff; }
.p-about-trust__heading { padding-block: calc(30 * var(--site-scale)); text-align: center; }
.p-about-trust__title { font: 700 calc(38 * var(--site-scale))/1.7 "Albert Sans",sans-serif; }
.p-about-trust__translation { font-size: calc(24 * var(--site-scale)); font-weight: 700; line-height: 1.7; }
.p-about-trust__tours { display: flex; align-items: end; justify-content: center; gap: calc(72 * var(--site-scale)); padding-block: calc(30 * var(--site-scale)); }
.p-about-trust__tour { display: flex; flex-direction: column; align-items: center; gap: calc(29 * var(--site-scale)); }
.p-about-trust__tour-logo { width: calc(240 * var(--site-scale)); height: calc(123 * var(--site-scale)); object-fit: contain; }
.p-about-trust__tour--mlp { gap: calc(38 * var(--site-scale)); }
.p-about-trust__tour--mlp .p-about-trust__tour-logo { height: calc(105 * var(--site-scale)); }
.p-about-trust__tour--atp { gap: calc(54 * var(--site-scale)); }
.p-about-trust__tour--atp .p-about-trust__tour-logo { height: calc(72 * var(--site-scale)); }
.p-about-trust__tour-label { font-size: calc(24 * var(--site-scale)); font-weight: 700; line-height: 1.5; color: var(--blue); text-align: center; white-space: nowrap; }
.p-about-trust__tour--mlp .p-about-trust__tour-label { letter-spacing: calc(-.7 * var(--site-scale)); }
.p-about-trust__affiliations { background: #fff; color: var(--navy); }
.p-about-trust__affiliation-viewport { width: 100%; overflow: hidden; }
.p-about-trust__affiliation-track { display: flex; width: 200%; animation: about-affiliation-slide 28s linear infinite; will-change: transform; }
.p-about-trust__affiliation-list { display: grid; grid-template-columns: 122fr 122fr 143fr 172fr 172fr 178fr; flex: 0 0 50%; }
.p-about-trust__affiliation-list img { width: 100%; height: calc(121 * var(--site-scale)); object-fit: contain; }
.p-about-trust__memberships { padding: calc(12 * var(--site-scale)) calc(20 * var(--site-scale)); font: 700 calc(28 * var(--site-scale))/1.7 "Albert Sans",sans-serif; text-align: center; }
@keyframes about-affiliation-slide {
  to { transform: translateX(-50%); }
}
@media (prefers-reduced-motion: reduce) {
  .p-about-trust__affiliation-track { animation: none; will-change: auto; }
}
.p-content { padding: calc(180 * var(--site-scale)) 0 calc(100 * var(--site-scale)); }
.p-content__title { font-size: calc(40 * var(--site-scale)); margin-bottom: calc(40 * var(--site-scale)); }
.p-content__entry { padding-block: calc(24 * var(--site-scale)); border-bottom: calc(1 * var(--site-scale)) solid #ddd; }
.p-content__body { line-height: 1.9; }
.p-content__body img { width: 100%; height: auto; }
.p-content__back { display: inline-block; margin-top: calc(30 * var(--site-scale)); text-decoration: underline; }

/* Products: shared introductions, feature lists and specification cards. */
.c-product-intro { padding: calc(60 * var(--site-scale)) 0 calc(30 * var(--site-scale)); background: linear-gradient(to bottom,var(--navy) calc(100% - 322 * var(--site-scale)),#eaf4ff 0); }
.c-product-intro__title { display: flex; flex-direction: column; align-items: center; gap: calc(15 * var(--site-scale)); }
.c-product-intro__logo { width: auto; height: calc(93 * var(--site-scale)); }
.c-product-intro__mat { width: calc(279 * var(--site-scale)); height: calc(48 * var(--site-scale)); }
.c-product-intro__caption { margin-top: calc(10 * var(--site-scale)); color: #fff; text-align: center; }
.c-product-intro--mat .c-product-intro__caption { margin-top: calc(24 * var(--site-scale)); }
.c-product-intro__caption img { width: auto; height: calc(39 * var(--site-scale)); margin-inline: auto; }
.c-product-intro__caption-text { font-size: calc(32 * var(--site-scale)); font-weight: 700; font-style: italic; line-height: 1.22; }
.c-product-intro__video { width: calc(800 * var(--site-scale)); margin: calc(40 * var(--site-scale)) auto calc(30 * var(--site-scale)); border-radius: calc(10 * var(--site-scale)); overflow: hidden; }
.c-product-intro__tagline { text-align: center; }
.c-product-intro__tagline img { width: auto; height: calc(37 * var(--site-scale)); margin-inline: auto; }
.c-product-intro__tagline-text { display: block; font-size: calc(30 * var(--site-scale)); font-weight: 700; font-style: italic; line-height: 1.5; }
.c-product-features { display: grid; grid-template-columns: repeat(3,1fr); }
.c-product-features__item { padding: calc(20 * var(--site-scale)); }
.c-product-features__item:nth-child(odd) { background: #eaf4ff; }
.c-product-features__title { display: flex; align-items: center; gap: calc(16 * var(--site-scale)); font-size: calc(22 * var(--site-scale)); font-weight: 700; line-height: 1.5; margin-bottom: calc(12 * var(--site-scale)); }
.c-product-features__title img { width: calc(27 * var(--site-scale)); height: calc(27 * var(--site-scale)); flex: 0 0 auto; }
.c-product-features__item p { color: #111; font-size: calc(16 * var(--site-scale)); line-height: 1.7; text-align: justify; }
.c-product-gallery { display: grid; }
.c-product-gallery--mat { grid-template-columns: repeat(4,1fr); }
.c-product-gallery--acrytech { grid-template-columns: repeat(3,1fr); gap: calc(15 * var(--site-scale)); }
.c-product-gallery img { width: 100%; height: auto; }
.c-coating { height: calc(489 * var(--site-scale)); padding: calc(48 * var(--site-scale)) calc(24 * var(--site-scale)) calc(24 * var(--site-scale)); border-radius: calc(5 * var(--site-scale)); background: var(--card); text-align: center; }
.c-coating__icon { width: calc(86 * var(--site-scale)); height: calc(86 * var(--site-scale)); margin-inline: auto; }
.c-coating__name { font: 600 calc(24 * var(--site-scale))/calc(29 * var(--site-scale)) "Barlow Semi Condensed",sans-serif; margin-top: calc(12 * var(--site-scale)); }
.c-coating__summary { height: calc(54 * var(--site-scale)); margin-top: calc(18 * var(--site-scale)); font-size: calc(18 * var(--site-scale)); font-weight: 700; line-height: 1.5; color: var(--blue); }
.c-coating__details { width: calc(160 * var(--site-scale)); margin-inline: auto; font-size: calc(16 * var(--site-scale)); font-weight: 500; line-height: 1.5; }
.c-coating__details::before { content: ""; display: block; width: calc(100 * var(--site-scale)); height: calc(1 * var(--site-scale)); background: var(--blue); margin: calc(16 * var(--site-scale)) auto calc(18 * var(--site-scale)); }
.c-coating__details > div + div { margin-top: calc(12 * var(--site-scale)); }
.c-coating__details dt { color: #bdbdbd; margin-bottom: calc(2 * var(--site-scale)); }
.c-product-benefits { display: flex; flex-direction: column; gap: calc(10 * var(--site-scale)); }
.c-product-benefits__item { display: grid; grid-template-columns: calc(384 * var(--site-scale)) 1fr; align-items: center; background: var(--card); border-radius: calc(5 * var(--site-scale)); padding: calc(8 * var(--site-scale)) calc(20 * var(--site-scale)); }
.c-product-benefits__item h3 { display: flex; align-items: center; gap: calc(20 * var(--site-scale)); font-size: calc(24 * var(--site-scale)); line-height: 1.5; }
.c-product-benefits__item img { width: calc(60 * var(--site-scale)); height: calc(60 * var(--site-scale)); flex: 0 0 auto; }
.c-product-benefits__item p { font-size: calc(24 * var(--site-scale)); line-height: 1.5; font-weight: 500; color: #bdbdbd; }
.c-product-benefits--faultline .c-product-benefits__item { grid-template-columns: calc(400 * var(--site-scale)) 1fr; padding-block: calc(10 * var(--site-scale)); }
.c-product-benefits--faultline p { font-size: calc(18 * var(--site-scale)); }
.c-product-level { display: flex; flex-direction: column; padding: calc(25 * var(--site-scale)); background: var(--card); border-radius: calc(5 * var(--site-scale)); }
.c-product-level h4 { display: flex; align-items: center; gap: calc(15 * var(--site-scale)); font: 600 calc(30 * var(--site-scale))/1.2 "Barlow Semi Condensed",sans-serif; color: var(--blue); margin-bottom: calc(20 * var(--site-scale)); }
.c-product-level h4 > span:first-child { display: flex; align-items: center; justify-content: center; width: calc(48 * var(--site-scale)); height: calc(48 * var(--site-scale)); border-radius: 50%; background: var(--blue); color: #fff; }
.c-product-level__image { padding: calc(20 * var(--site-scale)); background: #fff; }
.c-product-level__image img { width: 100%; height: auto; }
.c-product-level__text { font-size: calc(16 * var(--site-scale)); line-height: 1.7; text-align: justify; margin-top: calc(12 * var(--site-scale)); margin-bottom: calc(12 * var(--site-scale)); }
.c-product-level__badge { align-self: flex-start; margin-top: auto; padding: calc(5 * var(--site-scale)) calc(10 * var(--site-scale)); background: var(--blue); color: var(--card); font-size: calc(16 * var(--site-scale)); font-weight: 700; line-height: 1.7; }
.p-products__editor { padding-block: var(--section-space); }
.p-products__section-title { font-size: calc(30 * var(--site-scale)); line-height: 1.7; text-align: center; font-weight: 700; }
.p-products-mat__content { padding-top: calc(30 * var(--site-scale)); padding-bottom: calc(80 * var(--site-scale)); }
.p-products-mat__lead { display: grid; grid-template-columns: calc(324 * var(--site-scale)) calc(787 * var(--site-scale)); gap: calc(49 * var(--site-scale)); align-items: center; margin-bottom: calc(30 * var(--site-scale)); }
.p-products-mat__lead img { width: 100%; height: auto; }
.p-products-mat__lead p { font-size: calc(36 * var(--site-scale)); font-weight: 700; line-height: 1.7; }
.p-products-acrytech__features { padding-block: var(--section-space); }
.p-products-coatings { padding-block: calc(30 * var(--site-scale)); background: var(--navy); color: #fff; }
.p-products-coatings__list { display: grid; grid-template-columns: repeat(5,1fr); gap: calc(15 * var(--site-scale)); margin-top: calc(30 * var(--site-scale)); }
.p-products-colors { padding: calc(30 * var(--site-scale)) 0 calc(60 * var(--site-scale)); background: var(--navy); color: #fff; }
.p-products-colors__count { display: inline-block; }
.p-products-colors__sheets { display: grid; grid-template-columns: repeat(2,1fr); gap: calc(36 * var(--site-scale)); width: calc(1236 * var(--site-scale)); margin: calc(30 * var(--site-scale)) auto 0; }
.p-products-colors__sheets img { width: 100%; height: auto; }
.p-products-acrytech__gallery { padding-block: var(--section-space); }
.p-products-cushion__intro { display: grid; grid-template-columns: calc(550 * var(--site-scale)) calc(390 * var(--site-scale)); gap: calc(40 * var(--site-scale)); width: calc(980 * var(--site-scale)); margin: calc(48 * var(--site-scale)) auto calc(60 * var(--site-scale)); }
.p-products-cushion__membrane { width: 100%; height: auto; }
.p-products-cushion__copy { padding-top: calc(30 * var(--site-scale)); }
.p-products-cushion__claim { color: #9a191d; margin-bottom: calc(24 * var(--site-scale)); }
.p-products-cushion__number { display: flex; align-items: baseline; gap: calc(2 * var(--site-scale)); border-bottom: calc(3 * var(--site-scale)) solid currentColor; padding-bottom: calc(4 * var(--site-scale)); line-height: 1; white-space: nowrap; }
.p-products-cushion__number > span { font-size: calc(64 * var(--site-scale)); font-weight: 900; }
.p-products-cushion__number strong { font: 700 calc(177 * var(--site-scale))/1 "Barlow Semi Condensed",sans-serif; letter-spacing: calc(2 * var(--site-scale)); }
.p-products-cushion__number small { font-size: calc(113 * var(--site-scale)); }
.p-products-cushion__claim-label { display: block; margin-top: calc(16 * var(--site-scale)); font-size: calc(30 * var(--site-scale)); line-height: 1; white-space: nowrap; }
.p-products-cushion__copy > p { font-size: calc(16 * var(--site-scale)); line-height: 1.7; text-align: justify; color: #111; }
.p-products-cushion__performance { padding-top: var(--section-space); padding-bottom: var(--section-space); background: var(--navy); color: #fff; }
.p-products-cushion__benefits { display: grid; grid-template-columns: calc(776 * var(--site-scale)) calc(414 * var(--site-scale)); gap: calc(10 * var(--site-scale)); align-items: end; margin-bottom: calc(30 * var(--site-scale)); }
.p-products-cushion__system { width: 100%; height: auto; }
.p-products-levels__title { margin-bottom: calc(30 * var(--site-scale)); }
.p-products-levels__title > span { display: block; margin-bottom: calc(12 * var(--site-scale)); font: 600 calc(24 * var(--site-scale))/calc(29 * var(--site-scale)) "Barlow Semi Condensed",sans-serif; }
.p-products-levels__list { display: grid; grid-template-columns: repeat(3,1fr); gap: calc(15 * var(--site-scale)); }
.p-products-faultline__intro { width: calc(1060 * var(--site-scale)); margin: calc(30 * var(--site-scale)) auto; font-size: calc(24 * var(--site-scale)); font-weight: 700; line-height: 1.7; text-align: center; }
.p-products-faultline__performance { background: var(--navy); color: #fff; padding-block: calc(30 * var(--site-scale)); }
.p-products-faultline__benefits { display: grid; grid-template-columns: calc(340 * var(--site-scale)) calc(850 * var(--site-scale)); gap: calc(10 * var(--site-scale)); align-items: start; }
.p-products-faultline__image { width: 100%; height: auto; }


.p-contact-form { padding-bottom: calc(80 * var(--site-scale)); }
.p-contact-form__inner { width: calc(960 * var(--site-scale)); }
.p-contact-form__introduction { margin-bottom: calc(32 * var(--site-scale)); font-size: calc(16 * var(--site-scale)); }

/* Privacy policy: shared article typography, policy-specific spacing only. */
.p-privacy-policy .c-sub-fv__inner { padding-bottom: calc(39.5 * var(--site-scale)); }
.p-privacy-policy-body { padding-bottom: calc(80 * var(--site-scale)); }
.p-privacy-policy-body__inner { width: calc(960 * var(--site-scale)); }
.p-privacy-policy-body .p-privacy-policy-body__content { margin-top: 0; text-align: justify; }
.p-privacy-policy-body__content > h2 { margin-top: calc(20 * var(--site-scale)); }
.p-privacy-policy-body__content > h2:first-of-type { margin-top: calc(40 * var(--site-scale)); }
.p-privacy-policy-body__content > h2 + * { margin-top: calc(24 * var(--site-scale)); }
.p-privacy-policy-body__content ul { padding-left: 1em; }
.p-privacy-policy-body__content ul > li::marker { content: "・"; }
.p-privacy-policy-body__content p + p,.p-privacy-policy-body__content p + ul,.p-privacy-policy-body__content li > ul,.p-privacy-policy-body__content li > .p-privacy-policy-body__bullets,.p-privacy-policy-body__content ol > li + li { margin-top: calc(27 * var(--site-scale)); }
.p-privacy-policy-body__content ul > li + li { margin-top: 0; }
.p-privacy-policy-body__contact { margin-top: calc(40 * var(--site-scale)); }
.p-privacy-policy-body__back { display: flex; padding-left: calc(396 * var(--site-scale)); margin-top: calc(80 * var(--site-scale)); }

.p-thanks .c-sub-fv__inner { padding-bottom: calc(39.5 * var(--site-scale)); }
.p-thanks .c-sub-fv__heading { padding-left: calc(43.5 * var(--site-scale)); }
.p-thanks-message { padding-bottom: calc(80 * var(--site-scale)); }
.p-thanks-message__inner { width: calc(960 * var(--site-scale)); }
.p-thanks-message__content { color: #111; font-size: calc(16 * var(--site-scale)); line-height: 1.7; text-align: justify; }
.p-thanks-message__content p { margin: 0; }
.p-thanks-message__back { display: flex; justify-content: center; margin-top: calc(80 * var(--site-scale)); }

.c-sub-fv--listing { height: calc(380 * var(--site-scale)); }
.c-sub-fv--listing .c-sub-fv__inner { padding-top: calc(205 * var(--site-scale)); }
.c-article-archive { padding-top: calc(40 * var(--site-scale)); padding-bottom: calc(80 * var(--site-scale)); }
.c-article-archive__inner { width: calc(960 * var(--site-scale)); }
.c-article-archive__introduction { margin-bottom: calc(40 * var(--site-scale)); font-size: calc(30 * var(--site-scale)); font-weight: 700; line-height: 1.7; color: var(--navy); }
.p-news-archive__introduction { text-align: center; }
.c-article-archive__results { margin-top: calc(40 * var(--site-scale)); }
.c-article-archive__list { display: flex; flex-direction: column; gap: calc(24 * var(--site-scale)); }
.p-projects-archive .c-update { align-items: start; }
.p-projects-archive .c-update__arrow { align-self: center; }
.c-article-archive .c-list-pagination { margin-top: calc(80 * var(--site-scale)); }
.c-article-archive__empty { padding-block: calc(60 * var(--site-scale)); font-size: calc(18 * var(--site-scale)); text-align: center; color: var(--navy); }


/* Projects & Resources article — Figma 95:6705. */
.c-article-detail .c-sub-fv__inner { padding-bottom: calc(20 * var(--site-scale)); }
.c-article { padding-bottom: calc(80 * var(--site-scale)); }
.c-article__inner { width: calc(960 * var(--site-scale)); }
.c-article__entry { margin-top: calc(40 * var(--site-scale)); }
.c-article__title { padding-bottom: calc(16 * var(--site-scale)); border-bottom: calc(1 * var(--site-scale)) solid #8f8f8f; font-size: calc(30 * var(--site-scale)); font-weight: 700; line-height: 1.7; color: var(--navy); overflow-wrap: anywhere; }
.c-article__meta { display: flex; align-items: center; flex-wrap: wrap; gap: calc(8 * var(--site-scale)) calc(20 * var(--site-scale)); margin-top: calc(20 * var(--site-scale)); }
.c-article__meta time { color: #8f8f8f; font: 500 calc(18 * var(--site-scale))/calc(22 * var(--site-scale)) "Barlow Semi Condensed",sans-serif; }
.c-article__category { padding: calc(2 * var(--site-scale)) calc(5 * var(--site-scale)); border: calc(1 * var(--site-scale)) solid var(--teal); color: var(--teal); font-size: calc(16 * var(--site-scale)); line-height: 1; overflow-wrap: anywhere; }
.c-article__featured { margin-top: calc(40 * var(--site-scale)); }
.c-article__featured img { width: 100%; height: calc(480 * var(--site-scale)); object-fit: cover; }
.c-article .c-list-pagination { margin-top: calc(80 * var(--site-scale)); }

/* Utility */
.l-footer__product-toggle { display: none; }
.u-sp-only { display: none; }
.u-sr-only { position: absolute; width: calc(1 * var(--site-scale)); height: calc(1 * var(--site-scale)); overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.u-skip-link { position: fixed; left: calc(20 * var(--site-scale)); top: calc(10 * var(--site-scale)); z-index: 100; padding: calc(12 * var(--site-scale)); background: #fff; color: var(--navy); transform: translateY(-200%); }
.u-skip-link:focus { transform: translateY(0); }

/* The sole PC/SP layout breakpoint. */
@media (width < 48em) {
  :root { --site-scale: var(--sp-scale); --header-height: calc(80 * var(--sp-scale)); --section-space: calc(30 * var(--sp-scale)); }
  body { font-size: calc(16 * var(--sp-scale)); }
  .l-container,.l-container--wide,.l-container--wide-end { width: calc(350 * var(--sp-scale)); margin-inline: auto; }
  .l-header__inner { display: grid; grid-template-columns: 1fr calc(44 * var(--sp-scale)); align-items: center; column-gap: 0; row-gap: calc(12 * var(--sp-scale)); padding: calc(12 * var(--sp-scale)); }
  .l-header__brand { grid-column: 1; grid-row: 2; font-size: calc(20 * var(--sp-scale)); line-height: calc(30 * var(--sp-scale)); position: relative; z-index: 22; }
  .l-header__right { display: contents; }
  .l-header__tagline { display: block; grid-column: 1 / -1; grid-row: 1; font-size: calc(12 * var(--sp-scale)); font-weight: 500; line-height: calc(14 * var(--sp-scale)); text-align: left; position: relative; z-index: 22; }
  .l-header__menu-toggle { display: flex; grid-column: 2; grid-row: 2; flex-direction: column; justify-content: center; gap: calc(8 * var(--sp-scale)); width: calc(44 * var(--sp-scale)); height: calc(30 * var(--sp-scale)); position: relative; z-index: 22; }
  .l-header__menu-toggle span { display: block; width: calc(30 * var(--sp-scale)); height: calc(1 * var(--sp-scale)); margin-inline: auto; background: #fff; transition: transform .2s,opacity .2s; }
  .l-header__menu-toggle[aria-expanded="true"] span:first-child { transform: translateY(calc(9 * var(--sp-scale))) rotate(31deg); }
  .l-header__menu-toggle[aria-expanded="true"] span:nth-child(2) { opacity: 0; }
  .l-header__menu-toggle[aria-expanded="true"] span:last-child { transform: translateY(calc(-9 * var(--sp-scale))) rotate(-31deg); }
  .c-navigation { position: fixed; inset: var(--header-height) 0 auto; width: 100%; height: calc(100dvh - var(--header-height) - var(--header-top, 0rem)); background: #fff; color: #111; padding: calc(24 * var(--sp-scale)) calc(20 * var(--sp-scale)) calc(60 * var(--sp-scale)); display: none; flex-direction: column; align-items: stretch; gap: calc(48 * var(--sp-scale)); overflow-y: auto; overscroll-behavior: contain; }
  .c-navigation.is-open { display: flex; }
  .c-navigation__list { flex-direction: column; align-items: stretch; gap: 0; font-family: "Barlow Semi Condensed","Noto Sans JP",sans-serif; font-weight: 500; font-size: calc(18 * var(--sp-scale)); line-height: calc(22 * var(--sp-scale)); }
  .c-navigation__list > li > a,.c-navigation__product-toggle { display: flex; width: 100%; padding: calc(24 * var(--sp-scale)) calc(10 * var(--sp-scale)); border-bottom: calc(1 * var(--sp-scale)) solid #8f8f8f; }
  .c-navigation__product-toggle { justify-content: space-between; color: #111; }
  .c-navigation__submenu { opacity: 1; transform: none; transition: none; position: static; width: 100%; padding: 0; margin-top: 0; box-shadow: none; color: var(--teal); border-bottom: calc(1 * var(--sp-scale)) solid #8f8f8f; }
  .c-navigation__submenu::before { display: none; transition: none; }
  .c-navigation__submenu a { font-size: calc(18 * var(--sp-scale)); font-weight: 500; line-height: calc(22 * var(--sp-scale)); padding: calc(24 * var(--sp-scale)) calc(10 * var(--sp-scale)); white-space: normal; }
  .c-button.c-navigation__contact { --button-ball-size: calc(22 * var(--sp-scale)); justify-content: center; padding: calc(14 * var(--sp-scale)) calc(30 * var(--sp-scale)); color: #fff; font-size: calc(32 * var(--sp-scale)); line-height: calc(38 * var(--sp-scale)); }
  .is-menu-open { overflow: hidden; }
  .c-button { --button-ball-size: calc(16 * var(--sp-scale)); position: relative; width: 100%; font-size: calc(18 * var(--sp-scale)); line-height: calc(22 * var(--sp-scale)); padding: calc(20 * var(--sp-scale)) calc(48 * var(--sp-scale)); }
  .c-button--contact { --button-ball-size: calc(22 * var(--sp-scale)); width: 100%; padding: calc(30 * var(--sp-scale)); font-size: calc(20 * var(--sp-scale)); line-height: calc(24 * var(--sp-scale)); gap: calc(12 * var(--sp-scale)); }
  .c-button--contact .c-button__arrow { width: calc(22 * var(--sp-scale)); height: calc(12 * var(--sp-scale)); right: calc(30 * var(--sp-scale)); margin-left: 0; }
  .c-section-heading__eyebrow { font-size: calc(20 * var(--sp-scale)); line-height: calc(24 * var(--sp-scale)); margin-bottom: calc(10 * var(--sp-scale)); }
  .c-section-heading__title { font-size: calc(26 * var(--sp-scale)); line-height: 1.7; }
  .c-section-heading__translation { font-size: calc(20 * var(--sp-scale)); line-height: calc(24 * var(--sp-scale)); margin-top: calc(6 * var(--sp-scale)); }
  .p-home-hero { height: calc(751 * var(--sp-scale)); }
  .p-home-hero__visual { height: calc(580 * var(--sp-scale)); }
  .p-home-hero::after { height: calc(238 * var(--sp-scale)); background-size: calc(560 * var(--sp-scale)) calc(290 * var(--sp-scale)); }
  .p-home-hero__content { padding-top: calc(573 * var(--sp-scale)); }
  .p-home-hero__title { font-size: calc(36 * var(--sp-scale)); font-weight: 700; }
  .p-home-hero__powered { width: calc(237 * var(--sp-scale)); height: calc(18 * var(--sp-scale)); margin-top: calc(8 * var(--sp-scale)); }
  .p-home-hero__copy-sp { width: calc(297 * var(--sp-scale)); height: calc(62 * var(--sp-scale)); margin-top: calc(24 * var(--sp-scale)); }
  .p-home-about { padding: 0 0 calc(60 * var(--sp-scale)); }
  .p-home-about__inner { grid-template-columns: 1fr; gap: calc(36 * var(--sp-scale)); }
  .p-home-about__inner > .c-media { grid-row: 1; }
  .p-home-about__heading { font-size: calc(30 * var(--sp-scale)); line-height: calc(36 * var(--sp-scale)); gap: calc(8 * var(--sp-scale)); justify-content: center; }
  .p-home-about__heading img { width: calc(14 * var(--sp-scale)); height: calc(14 * var(--sp-scale)); }
  .p-home-about__lead { font-size: calc(18 * var(--sp-scale)); line-height: 1.7; text-align: center; margin-top: calc(6 * var(--sp-scale)); }
  .p-home-about__text { font-size: calc(16 * var(--sp-scale)); line-height: 1.75; margin-top: calc(20 * var(--sp-scale)); }
  .p-home-about__copy > .c-button { margin-top: calc(36 * var(--sp-scale)); }
  .p-home-products .c-section-heading { width: calc(390 * var(--sp-scale)); padding-top: calc(20 * var(--sp-scale)); margin-bottom: calc(24 * var(--sp-scale)); border-top: calc(2 * var(--sp-scale)) solid #fff; }
  .p-home-products .c-section-heading__title { font-size: calc(26 * var(--sp-scale)); }
  .p-home-products::after { height: calc(115 * var(--sp-scale)); background-size: calc(560 * var(--sp-scale)) calc(290 * var(--sp-scale)); }
  .p-home-products__lineup { width: calc(274 * var(--sp-scale)); grid-template-columns: 1fr; gap: calc(36 * var(--sp-scale)); margin-top: 0; padding-block: calc(60 * var(--sp-scale)); }
  .p-home-products__item { gap: calc(15 * var(--sp-scale)); }
  .p-home-products__logo-wrap { height: calc(60 * var(--sp-scale)); }
  .p-home-products__logo { height: calc(60 * var(--sp-scale)); }
  .p-home-products__mat { width: calc(153 * var(--sp-scale)); height: calc(26 * var(--sp-scale)); margin-top: calc(-6 * var(--sp-scale)); }
  .p-home-products__description--mat { width: calc(223 * var(--sp-scale)); height: calc(48 * var(--sp-scale)); font-size: calc(17 * var(--sp-scale)); }
  .p-home-products__description--acrytech { width: calc(185 * var(--sp-scale)); height: calc(48 * var(--sp-scale)); }
  .p-home-products__description--cushion { width: calc(272 * var(--sp-scale)); height: calc(48 * var(--sp-scale)); }
  .p-home-products__description--faultline { width: calc(274 * var(--sp-scale)); height: calc(22 * var(--sp-scale)); }
  .p-home-products__lead { display: none; }
  .p-home-products__inner > .c-button { margin-top: 0; padding-block: calc(20 * var(--sp-scale)); }
  .p-home-proof__scene { height: calc(733 * var(--sp-scale)); }
  .p-home-proof__stadium { inset: calc(35 * var(--sp-scale)) 0 auto; height: calc(575 * var(--sp-scale)); object-position: 48% center; }
  .p-home-proof__athlete--male { left: calc(-96 * var(--sp-scale)); width: calc(284 * var(--sp-scale)); height: calc(392 * var(--sp-scale)); bottom: calc(128 * var(--sp-scale)); }
  .p-home-proof__athlete--female { width: calc(268 * var(--sp-scale)); height: calc(343 * var(--sp-scale)); bottom: calc(128 * var(--sp-scale)); right: calc(-31 * var(--sp-scale)); }
  .p-home-proof__curve { height: calc(235 * var(--sp-scale)); background-size: calc(560 * var(--sp-scale)) calc(290 * var(--sp-scale)); }
  .p-home-proof__athlete-name { bottom: calc(247 * var(--sp-scale)); padding: calc(10 * var(--sp-scale)); }
  .p-home-proof__athlete-name--male { left: 0; bottom: calc(232 * var(--sp-scale)); }
  .p-home-proof__athlete-name--female { right: 0; bottom: calc(200 * var(--sp-scale)); }
  .p-home-proof__athlete-name p { font-size: calc(18 * var(--sp-scale)); }
  .p-home-proof__athlete-name span { font-size: calc(12 * var(--sp-scale)); }
  .p-home-proof__official { bottom: calc(-36 * var(--sp-scale)); gap: calc(5 * var(--sp-scale)); font-size: calc(13 * var(--sp-scale)); line-height: 1.7; }
  .p-home-proof__official img { width: calc(129 * var(--sp-scale)); height: calc(66 * var(--sp-scale)); }
  .p-home-proof__details { grid-template-columns: 1fr; gap: calc(30 * var(--sp-scale)); padding-block: calc(60 * var(--sp-scale)); }
  .p-home-proof__copy h2 { font-size: calc(26 * var(--sp-scale)); }
  .p-home-proof__organization { font-size: calc(24 * var(--sp-scale)); }
  .p-home-proof__subtitle { font-size: calc(16 * var(--sp-scale)); white-space: normal; margin-top: calc(10 * var(--sp-scale)); }
  .p-home-proof__text { font-size: calc(16 * var(--sp-scale)); line-height: 1.7; margin-top: calc(24 * var(--sp-scale)); }
  .p-home-proof__photos { grid-template-columns: 1fr; gap: calc(24 * var(--sp-scale)); }
  .p-home-proof__photos img { height: calc(237 * var(--sp-scale)); }
  .p-home-proof__records { grid-template-columns: 1fr; gap: calc(24 * var(--sp-scale)); }
  .c-record { height: auto; padding: calc(48 * var(--sp-scale)) calc(24 * var(--sp-scale)); }
  .c-record__logo-wrap { height: calc(88 * var(--sp-scale)); }
  .c-record__logo { width: calc(172 * var(--sp-scale)); height: calc(88 * var(--sp-scale)); }
  .c-record__logo--ppa { width: calc(150 * var(--sp-scale)); height: calc(77 * var(--sp-scale)); }
  .c-record__label { font-size: calc(18 * var(--sp-scale)); margin-top: calc(12 * var(--sp-scale)); letter-spacing: calc(-.7 * var(--sp-scale)); }
  .c-record__label::after { width: calc(100 * var(--sp-scale)); margin: calc(16 * var(--sp-scale)) auto calc(12 * var(--sp-scale)); }
  .c-record__number { font-size: calc(72 * var(--sp-scale)); }
  .c-record__main { margin-top: calc(12 * var(--sp-scale)); font-size: calc(18 * var(--sp-scale)); }
  .c-record__sub { margin-top: calc(10 * var(--sp-scale)); font-size: calc(16 * var(--sp-scale)); }
  .p-home-services { padding: calc(30 * var(--sp-scale)) 0 calc(60 * var(--sp-scale)); background: linear-gradient(to bottom,var(--navy) calc(100% - calc(60 * var(--sp-scale))),transparent 0); }
  .p-home-services::after { height: calc(60 * var(--sp-scale)); background-size: calc(560 * var(--sp-scale)) calc(290 * var(--sp-scale)); }
  .p-home-services__title { font-size: calc(22 * var(--sp-scale)); line-height: 1.7; text-align: center; }
  .p-home-services__list { grid-template-columns: 1fr; gap: calc(16 * var(--sp-scale)); margin-top: calc(30 * var(--sp-scale)); }
  .c-service { display: block; padding: calc(48 * var(--sp-scale)) calc(55 * var(--sp-scale)); height: auto; }
  .c-service__title { text-align: center; font-size: calc(24 * var(--sp-scale)); margin-bottom: 0; }
  .c-service__icon { width: calc(120 * var(--sp-scale)); height: calc(120 * var(--sp-scale)); margin: calc(10 * var(--sp-scale)) auto; }
  .c-service__icon--solution img { width: calc(119 * var(--sp-scale)); height: calc(56 * var(--sp-scale)); }
  .c-service__icon--logistics img { width: calc(118 * var(--sp-scale)); height: calc(76 * var(--sp-scale)); }
  .c-service__icon--afterservice img { width: calc(86 * var(--sp-scale)); height: calc(70 * var(--sp-scale)); }
  .c-service__text { font-size: calc(16 * var(--sp-scale)); line-height: 1.7; }
  .p-home-updates { padding: calc(160 * var(--sp-scale)) 0 calc(80 * var(--sp-scale)); }
  .p-home-updates__inner { grid-template-columns: 1fr; gap: calc(60 * var(--sp-scale)); }
  .c-updates__list { margin-top: calc(48 * var(--sp-scale)); gap: calc(14 * var(--sp-scale)); }
  .c-updates > .c-button { margin-top: calc(48 * var(--sp-scale)); }
  .c-update { height: auto; padding: 0 0 calc(36 * var(--sp-scale)); grid-template-columns: 1fr calc(22 * var(--sp-scale)); column-gap: calc(52 * var(--sp-scale)); row-gap: calc(14 * var(--sp-scale)); }
  .c-update--with-image { grid-template-columns: calc(84 * var(--sp-scale)) 1fr calc(32 * var(--sp-scale)); column-gap: calc(10 * var(--sp-scale)); padding-bottom: calc(14 * var(--sp-scale)); }
  .c-update__thumbnail { grid-column: 1; grid-row: 2; height: calc(72 * var(--sp-scale)); }
  .c-update__meta { grid-column: 1 / -1; grid-row: 1; gap: calc(12 * var(--sp-scale)); }
  .c-update__meta time { font-size: calc(16 * var(--sp-scale)); }
  .c-update__category { font-size: calc(14 * var(--sp-scale)); padding: calc(2 * var(--sp-scale)) calc(5 * var(--sp-scale)); }
  .c-update__title { grid-column: 1; grid-row: 2; font-size: calc(16 * var(--sp-scale)); line-height: 1.5; margin-top: 0; }
  .c-update__arrow { grid-column: -2; grid-row: 2; justify-self: end; width: calc(22 * var(--sp-scale)); height: calc(22 * var(--sp-scale)); }
  .c-contact { padding: calc(60 * var(--sp-scale)) 0; }
  .c-contact__inner { flex-direction: column; align-items: stretch; gap: calc(48 * var(--sp-scale)); }
  .c-contact__copy { width: 100%; }
  .c-contact__eyebrow { font-size: calc(20 * var(--sp-scale)); line-height: calc(24 * var(--sp-scale)); margin-bottom: calc(10 * var(--sp-scale)); }
  .c-contact__title { font-size: calc(26 * var(--sp-scale)); white-space: normal; }
  .c-contact__text { font-size: calc(16 * var(--sp-scale)); line-height: 1.7; margin-top: calc(24 * var(--sp-scale)); }
  .l-footer { padding-bottom: calc(40 * var(--sp-scale)); }
  .l-footer__brand { padding: calc(48 * var(--sp-scale)) 0 calc(36 * var(--sp-scale)); gap: calc(8 * var(--sp-scale)); }
  .l-footer__brand span { font-size: calc(38 * var(--sp-scale)); }
  .l-footer__brand img { width: calc(237 * var(--sp-scale)); height: calc(18 * var(--sp-scale)); }
  .l-footer__information { flex-direction: column; padding-top: calc(30 * var(--sp-scale)); gap: calc(36 * var(--sp-scale)); }
  .l-footer__company { font-size: calc(16 * var(--sp-scale)); }
  .l-footer__company address { font-size: calc(16 * var(--sp-scale)); line-height: 1.5; gap: calc(10 * var(--sp-scale)); margin-top: calc(14 * var(--sp-scale)); align-items: flex-start; }
  .l-footer__navigation { flex-direction: column; padding-right: 0; gap: 0; font-size: calc(18 * var(--sp-scale)); line-height: calc(22 * var(--sp-scale)); }
  .l-footer__navigation ul { gap: 0; }
  .l-footer__copyright { font-size: calc(14 * var(--sp-scale)); line-height: calc(22 * var(--sp-scale)); margin-top: calc(30 * var(--sp-scale)); }
  .p-content { padding: calc(130 * var(--sp-scale)) 0 calc(60 * var(--sp-scale)); }
  .p-content__title { font-size: calc(28 * var(--sp-scale)); margin-bottom: calc(28 * var(--sp-scale)); }
  .c-sub-fv { height: calc(250 * var(--sp-scale)); }
  .c-sub-fv__inner { padding-top: calc(134 * var(--sp-scale)); }
  .c-sub-fv__english { font-size: calc(35 * var(--sp-scale)); line-height: calc(42 * var(--sp-scale)); }
  .c-sub-fv__title { font-size: calc(15 * var(--sp-scale)); }
  .p-about-company__intro { grid-template-columns: 1fr; gap: calc(20 * var(--sp-scale)); }
  .p-about-company__brand { display: flex; flex-direction: column; align-items: flex-start; }
  .p-about-company__brand img { width: calc(138 * var(--sp-scale)); height: calc(90 * var(--sp-scale)); }
  .p-about-company__tagline { font-size: calc(18 * var(--sp-scale)); white-space: normal; margin-top: calc(12 * var(--sp-scale)); }
  .p-about-company__text { font-size: calc(16 * var(--sp-scale)); line-height: 1.7; }
  .p-about-company__feature-list { grid-template-columns: repeat(2,1fr); gap: calc(20 * var(--sp-scale)); }
  .p-about-company__feature { font-size: calc(18 * var(--sp-scale)); padding: calc(24 * var(--sp-scale)) calc(10 * var(--sp-scale)); letter-spacing: calc(-.54 * var(--sp-scale)); }
  .p-about-company__photos { display: flex; width: 100%; overflow-x: auto; scrollbar-width: none; }
  .p-about-company__photos li:last-child { grid-column: auto; }
  .p-about-trust__heading { padding-block: calc(30 * var(--sp-scale)); }
  .p-about-trust__title { font-size: calc(26 * var(--sp-scale)); line-height: 1.5; }
  .p-about-trust__translation { font-size: calc(18 * var(--sp-scale)); margin-top: calc(5 * var(--sp-scale)); }
  .p-about-trust__tours { flex-direction: column; align-items: center; gap: calc(48 * var(--sp-scale)); padding-block: calc(30 * var(--sp-scale)); }
  .p-about-trust__tour { gap: calc(20 * var(--sp-scale)); }
  .p-about-trust__tour-logo { width: calc(200 * var(--sp-scale)); height: calc(102 * var(--sp-scale)); }
  .p-about-trust__tour--mlp .p-about-trust__tour-logo { height: calc(87 * var(--sp-scale)); }
  .p-about-trust__tour--atp .p-about-trust__tour-logo { height: calc(59 * var(--sp-scale)); }
  .p-about-trust__tour-label { font-size: calc(24 * var(--sp-scale)); white-space: normal; letter-spacing: calc(-.6 * var(--sp-scale)); }
  .p-about-trust__affiliation-track { width: calc(1520 * var(--sp-scale)); animation-duration: 15s; }
  .p-about-trust__affiliation-list { grid-template-columns: 122fr 122fr 143fr 172fr 172fr 178fr; flex-basis: calc(760 * var(--sp-scale)); padding: calc(12 * var(--sp-scale)) calc(20 * var(--sp-scale)); }
  .p-about-trust__affiliation-list img { height: calc(85 * var(--sp-scale)); }
  .p-about-trust__memberships { width: calc(350 * var(--sp-scale)); margin-inline: auto; font-size: calc(18 * var(--sp-scale)); padding-bottom: calc(24 * var(--sp-scale)); }

  /* Products: reflow the PC composition without changing its content. */
  .c-product-intro { padding-top: calc(48 * var(--sp-scale)); padding-bottom: calc(30 * var(--sp-scale)); background: linear-gradient(to bottom,var(--navy) calc(247 * var(--sp-scale)),#eaf4ff 0); }
  .c-product-intro__logo { width: calc(284 * var(--sp-scale)); height: auto; }
  .c-product-intro--acrytech .c-product-intro__logo { width: calc(284 * var(--sp-scale)); }
  .c-product-intro--faultline .c-product-intro__logo { width: calc(284 * var(--sp-scale)); }
  .c-product-intro__mat { width: calc(153 * var(--sp-scale)); height: calc(26 * var(--sp-scale)); }
  .c-product-intro__caption,.c-product-intro--mat .c-product-intro__caption { margin-top: calc(10 * var(--sp-scale)); font-size: calc(20 * var(--sp-scale)); font-style: italic; font-weight: 700; line-height: 1.5; }
  .c-product-intro__video { width: 100%; margin-top: calc(20 * var(--sp-scale)); margin-bottom: calc(20 * var(--sp-scale)); }
  .c-product-intro__tagline { font-size: calc(26 * var(--sp-scale)); font-style: italic; font-weight: 700; line-height: 1.5; }
  .c-product-intro--mat .c-product-intro__tagline { font-size: calc(24 * var(--sp-scale)); }
  .c-product-features { grid-template-columns: 1fr; }
  .c-product-features__item { padding: calc(20 * var(--sp-scale)) calc(25 * var(--sp-scale)); }
  .c-product-features__title { font-size: calc(20 * var(--sp-scale)); gap: calc(10 * var(--sp-scale)); margin-bottom: calc(8 * var(--sp-scale)); }
  .c-product-features__item p { font-size: calc(16 * var(--sp-scale)); line-height: 1.7; }
  .c-product-gallery--mat { grid-template-columns: repeat(2,1fr); }
  .c-product-gallery--acrytech { grid-template-columns: repeat(3,1fr); gap: 0; }
  .c-coating { height: auto; padding: calc(48 * var(--sp-scale)) calc(60 * var(--sp-scale)); }
  .c-coating__summary { width: calc(180 * var(--sp-scale)); height: calc(54 * var(--sp-scale)); margin-inline: auto; font-size: calc(18 * var(--sp-scale)); }
  .c-coating__details { width: calc(160 * var(--sp-scale)); display: block; font-size: calc(16 * var(--sp-scale)); }
  .c-coating__details::before { margin-bottom: calc(18 * var(--sp-scale)); }
  .c-coating__details > div + div { margin-top: calc(12 * var(--sp-scale)); }
  .c-product-benefits { gap: calc(12 * var(--sp-scale)); }
  .c-product-benefits__item,.c-product-benefits--faultline .c-product-benefits__item { grid-template-columns: calc(60 * var(--sp-scale)) 1fr; padding: calc(8 * var(--sp-scale)) calc(15 * var(--sp-scale)); gap: calc(2 * var(--sp-scale)) calc(12 * var(--sp-scale)); }
  .c-product-benefits__item h3 { display: contents; }
  .c-product-benefits__item h3 > span { grid-column: 2; grid-row: 1; font-size: calc(22 * var(--sp-scale)); line-height: 1.5; }
  .c-product-benefits__item img { grid-column: 1; grid-row: 1 / 3; width: calc(60 * var(--sp-scale)); height: calc(60 * var(--sp-scale)); }
  .c-product-benefits__item p,.c-product-benefits--faultline p { grid-column: 2; grid-row: 2; font-size: calc(16 * var(--sp-scale)); }
  .c-product-level { padding: calc(20 * var(--sp-scale)); }
  .c-product-level__text { font-size: calc(16 * var(--sp-scale)); line-height: 1.7; }
  .c-product-level__badge { font-size: calc(16 * var(--sp-scale)); }
  .p-products__section-title { font-size: calc(22 * var(--sp-scale)); }
  .p-products-mat__content { width: 100%; padding-top: calc(36 * var(--sp-scale)); padding-bottom: calc(24 * var(--sp-scale)); }
  .p-products-mat__lead { display: block; width: calc(350 * var(--sp-scale)); margin-inline: auto; margin-bottom: calc(24 * var(--sp-scale)); }
  .p-products-mat__lead img { width: calc(324 * var(--sp-scale)); height: calc(200 * var(--sp-scale)); margin-bottom: calc(-46 * var(--sp-scale)); }
  .p-products-mat__lead p { position: relative; font-size: calc(26 * var(--sp-scale)); text-align: right; }
  .p-products-coatings { padding-block: calc(30 * var(--sp-scale)); }
  .p-products-coatings__list { grid-template-columns: 1fr; gap: calc(20 * var(--sp-scale)); margin-top: calc(24 * var(--sp-scale)); }
  .p-products-colors { padding: calc(20 * var(--sp-scale)) calc(25 * var(--sp-scale)) calc(48 * var(--sp-scale)); }
  .p-products-colors .p-products__section-title { font-size: calc(26 * var(--sp-scale)); }
  .p-products-colors__count { display: block; }
  .p-products-colors__sheets { width: 100%; grid-template-columns: 1fr; gap: calc(10 * var(--sp-scale)); margin-top: calc(20 * var(--sp-scale)); }
  .p-products-acrytech__gallery { width: 100%; padding-block: 0; }
  .p-products-cushion__intro { display: block; width: calc(350 * var(--sp-scale)); margin-top: calc(36 * var(--sp-scale)); margin-bottom: calc(48 * var(--sp-scale)); }
  .p-products-cushion__membrane { width: calc(329 * var(--sp-scale)); height: calc(200 * var(--sp-scale)); object-fit: contain; object-position: left; }
  .p-products-cushion__copy { position: relative; width: calc(260 * var(--sp-scale)); padding-top: 0; margin-left: auto; margin-top: calc(-50 * var(--sp-scale)); }
  .p-products-cushion__claim { margin-bottom: calc(20 * var(--sp-scale)); }
  .p-products-cushion__number { justify-content: center; gap: calc(4 * var(--sp-scale)); }
  .p-products-cushion__number > span { font-size: calc(44 * var(--sp-scale)); }
  .p-products-cushion__number strong { font-size: calc(120 * var(--sp-scale)); }
  .p-products-cushion__number small { font-size: calc(60 * var(--sp-scale)); }
  .p-products-cushion__claim-label { font-size: calc(20 * var(--sp-scale)); text-align: center; }
  .p-products-cushion__copy > p { font-size: calc(16 * var(--sp-scale)); line-height: 1.7; }
  .p-products-cushion__benefits { grid-template-columns: 1fr; gap: calc(12 * var(--sp-scale)); margin-bottom: calc(36 * var(--sp-scale)); }
  .p-products-levels__title > span { font-size: calc(22 * var(--sp-scale)); }
  .p-products-levels__list { grid-template-columns: 1fr; gap: calc(15 * var(--sp-scale)); }
  .p-products-faultline__intro { width: calc(350 * var(--sp-scale)); font-size: calc(16 * var(--sp-scale)); margin-block: calc(24 * var(--sp-scale)); text-align: center; }
  .p-products-faultline__performance { padding-block: var(--section-space); }
  .p-products-faultline__benefits { grid-template-columns: 1fr; gap: calc(12 * var(--sp-scale)); }
  .p-products-faultline__image { grid-row: 2; }
  .p-products-faultline__performance,.p-products-cushion__performance { padding-block: calc(36 * var(--sp-scale)); }


  .c-sub-fv--plain .c-sub-fv__inner { width: calc(350 * var(--sp-scale)); padding-top: calc(122 * var(--sp-scale)); padding-bottom: calc(40 * var(--sp-scale)); }
  .p-contact-form { padding-bottom: calc(100 * var(--sp-scale)); }
  .p-contact-form__inner { width: calc(350 * var(--sp-scale)); }
  .p-contact-form__introduction { font-size: calc(15 * var(--sp-scale)); }
  .c-contact-form__fields { gap: calc(16 * var(--sp-scale)); }
  .c-contact-form__row { grid-template-columns: 1fr; gap: calc(10 * var(--sp-scale)); }
  .c-contact-form__row--message .c-contact-form__required { position: static; }
  .c-contact-form__input { height: calc(48 * var(--sp-scale)); padding: calc(10 * var(--sp-scale)) calc(12 * var(--sp-scale)); font-size: calc(16 * var(--sp-scale)); }
  .c-contact-form__input--textarea { height: calc(240 * var(--sp-scale)); }
  .c-contact-form__actions { margin-top: calc(80 * var(--sp-scale)); gap: calc(36 * var(--sp-scale)); }
  .c-contact-form__actions > .c-contact-form__error { margin-top: calc(-14 * var(--sp-scale)); }
  .c-contact-form__consent { font-size: calc(16 * var(--sp-scale)); gap: calc(10 * var(--sp-scale)); }
  .c-button--submit { --button-ball-size: calc(20 * var(--sp-scale)); width: calc(298 * var(--sp-scale)); font-size: calc(20 * var(--sp-scale)); line-height: calc(24 * var(--sp-scale)); padding: calc(20 * var(--sp-scale)) calc(48 * var(--sp-scale)); }
  .c-contact-form__result { padding: calc(28 * var(--sp-scale)) calc(20 * var(--sp-scale)); font-size: calc(18 * var(--sp-scale)); }

  .p-privacy-policy .c-sub-fv { height: auto; }
  .p-privacy-policy .c-sub-fv__inner { padding-bottom: calc(24 * var(--sp-scale)); }
  .p-privacy-policy .c-sub-fv__english { font-size: calc(35 * var(--sp-scale)); line-height: calc(42 * var(--sp-scale)); }
  .p-privacy-policy-body { padding-bottom: calc(80 * var(--sp-scale)); }
  .p-privacy-policy-body__inner { width: calc(350 * var(--sp-scale)); }
  .p-privacy-policy-body .p-privacy-policy-body__content { margin-top: 0; text-align: justify; }
  .p-privacy-policy-body__content > h2 { margin-top: calc(40 * var(--sp-scale)); }
  .p-privacy-policy-body__content > h2:first-of-type { margin-top: calc(40 * var(--sp-scale)); }
  .p-privacy-policy-body__content p + p,.p-privacy-policy-body__content p + ul,.p-privacy-policy-body__content li > ul,.p-privacy-policy-body__content li > .p-privacy-policy-body__bullets,.p-privacy-policy-body__content ol > li + li { margin-top: calc(20 * var(--sp-scale)); }
  .p-privacy-policy-body__contact { margin-top: calc(32 * var(--sp-scale)); }
  .p-privacy-policy-body__contact .c-button { width: 100%; }
  .p-privacy-policy-body__back { justify-content: center; padding-left: 0; margin-top: calc(80 * var(--sp-scale)); }
  .p-thanks .c-sub-fv { height: auto; }
  .p-thanks .c-sub-fv__inner { padding-bottom: calc(40 * var(--sp-scale)); }
  .p-thanks .c-sub-fv__heading { padding-left: 0; }
  .p-thanks .c-sub-fv__english { width: 100%; font-size: calc(35 * var(--sp-scale)); line-height: calc(42 * var(--sp-scale)); text-wrap: initial; }
  .p-thanks-message { padding-bottom: calc(100 * var(--sp-scale)); }
  .p-thanks-message__inner { width: calc(350 * var(--sp-scale)); }
  .p-thanks-message__content { font-size: calc(16 * var(--sp-scale)); line-height: 1.7; text-align: justify; }
  .p-thanks-message__content p + p { margin-top: 0; }
  .p-thanks-message__back { margin-top: calc(80 * var(--sp-scale)); }
  .c-back-link { padding-block: 0; font-size: calc(24 * var(--sp-scale)); line-height: calc(29 * var(--sp-scale)); }
  .c-sub-fv--listing { height: calc(250 * var(--sp-scale)); }
  .c-sub-fv--listing .c-sub-fv__inner { padding-top: calc(134 * var(--sp-scale)); }
  .c-sub-fv--listing .c-sub-fv__english { font-size: calc(35 * var(--sp-scale)); }
  .c-article-archive { padding-top: calc(20 * var(--sp-scale)); padding-bottom: calc(80 * var(--sp-scale)); }
  .c-article-archive__inner { width: calc(350 * var(--sp-scale)); }
  .c-article-archive__introduction { font-size: calc(22 * var(--sp-scale)); line-height: 1.7; margin-bottom: calc(30 * var(--sp-scale)); }
  .c-article-archive__results { margin-top: calc(30 * var(--sp-scale)); }
  .c-article-archive__list { gap: calc(14 * var(--sp-scale)); }
  .p-projects-archive .c-update { height: auto; padding-bottom: calc(14 * var(--sp-scale)); grid-template-columns: calc(84 * var(--sp-scale)) 1fr calc(32 * var(--sp-scale)); column-gap: calc(10 * var(--sp-scale)); }
  .p-projects-archive .c-update__thumbnail { height: calc(72 * var(--sp-scale)); }
  .p-projects-archive .c-update__title { font-size: calc(16 * var(--sp-scale)); }
  .p-news-archive .c-update { height: auto; padding-block: 0 calc(36 * var(--sp-scale)); }
  .p-news-archive .c-update__title { font-size: calc(16 * var(--sp-scale)); }
  .p-news-archive__introduction { text-align: center; }
  .c-article-archive .c-list-pagination { margin-top: calc(80 * var(--sp-scale)); }
  .c-article-filter__toggle { padding: calc(12 * var(--sp-scale)) calc(10 * var(--sp-scale)) calc(12 * var(--sp-scale)) calc(30 * var(--sp-scale)); font-size: calc(16 * var(--sp-scale)); gap: calc(30 * var(--sp-scale)); }
  .c-article-filter__panel { padding: calc(24 * var(--sp-scale)) calc(20 * var(--sp-scale)); gap: calc(24 * var(--sp-scale)); }
  .c-article-filter__heading { font-size: calc(22 * var(--sp-scale)); line-height: 1.2; }
  .c-article-filter__categories { gap: calc(10 * var(--sp-scale)) calc(20 * var(--sp-scale)); }
  .c-article-filter__categories a { font-size: calc(16 * var(--sp-scale)); gap: calc(16 * var(--sp-scale)); padding-block: calc(7 * var(--sp-scale)); }
  .c-article-filter__select { width: 100%; }
  .c-article-filter__group { align-items: stretch; }
  .c-list-pagination { gap: calc(36 * var(--sp-scale)); }
  .c-list-pagination__link { font-size: calc(24 * var(--sp-scale)); line-height: calc(29 * var(--sp-scale)); padding-block: 0; }
  .c-list-pagination__index { display: flex; justify-content: center; align-items: center; width: calc(44 * var(--sp-scale)); height: calc(44 * var(--sp-scale)); }

  .c-article-detail .c-sub-fv__inner { padding-bottom: calc(20 * var(--sp-scale)); }
  .c-article-detail .c-sub-fv__english { font-size: calc(35 * var(--sp-scale)); }
  .c-article { padding-bottom: calc(80 * var(--sp-scale)); }
  .c-article__inner { width: calc(350 * var(--sp-scale)); }
  .c-article__entry { margin-top: calc(30 * var(--sp-scale)); }
  .c-article__title { font-size: calc(20 * var(--sp-scale)); padding-bottom: calc(10 * var(--sp-scale)); }
  .c-article__meta { margin-top: calc(20 * var(--sp-scale)); gap: calc(8 * var(--sp-scale)) calc(20 * var(--sp-scale)); }
  .c-article__meta time { font-size: calc(18 * var(--sp-scale)); line-height: calc(22 * var(--sp-scale)); }
  .c-article__category { font-size: calc(16 * var(--sp-scale)); }
  .c-article__featured { margin-top: calc(40 * var(--sp-scale)); }
  .c-article__featured img { height: calc(175 * var(--sp-scale)); }
  .c-article-content { margin-top: calc(12 * var(--sp-scale)); font-size: calc(16 * var(--sp-scale)); line-height: 1.7; }
  .c-article-content h2 { font-size: calc(20 * var(--sp-scale)); gap: calc(6 * var(--sp-scale)); }
  .c-article-content > h2 { margin-top: calc(40 * var(--sp-scale)); }
  .c-article-content h3,.c-article-content h4 { font-size: calc(18 * var(--sp-scale)); }
  .c-article-content .wp-block-image.is-style-project-inline { width: 100%; }
  .c-article .c-list-pagination { margin-top: calc(80 * var(--sp-scale)); }

/* Figma SP 95:10284: preserve shared markup and all PC rules. */
  .l-header { background: rgba(16,33,53,.9); }
  .is-menu-open .l-header { background: #102135; }
  .c-navigation__product-toggle img { display: none; }
  .c-navigation__product-toggle::after,.l-footer__product-toggle::after { content: ""; display: block; flex: 0 0 auto; width: calc(16 * var(--sp-scale)); height: calc(16 * var(--sp-scale)); background: #8f8f8f; mask: url("../images/sp/menu-plus.svg") center / contain no-repeat; }
  .c-navigation__product-toggle[aria-expanded="true"]::after,.l-footer__product-toggle[aria-expanded="true"]::after { mask-image: url("../images/sp/menu-minus.svg"); }
  .c-navigation__submenu li + li { margin-top: 0; }
  .c-navigation__product-toggle[aria-expanded="true"] { color: #111; }
  .c-button__arrow { position: absolute; right: calc(20 * var(--sp-scale)); margin-left: 0; }
  .c-button.c-navigation__contact .c-button__arrow { width: calc(22 * var(--sp-scale)); height: calc(12 * var(--sp-scale)); right: calc(30 * var(--sp-scale)); }
  .p-home-hero__copy-sp img { margin-inline: auto; width: calc(295 * var(--sp-scale)); height: calc(26 * var(--sp-scale)); }
  .p-home-hero__copy-sp img + img { width: calc(265 * var(--sp-scale)); height: calc(26 * var(--sp-scale)); margin-top: calc(10 * var(--sp-scale)); }
  .p-home-about .c-media--about { aspect-ratio: 350/236; }
  .p-home-products__item:first-child .p-home-products__logo-wrap { height: calc(82 * var(--sp-scale)); }
  .p-home-products__item:first-child .p-home-products__logo,.p-home-products__item:nth-child(3) .p-home-products__logo { height: calc(62 * var(--sp-scale)); }
  .p-home-products__item:nth-child(3) { gap: calc(6 * var(--sp-scale)); }
  .p-home-products__item:nth-child(3) .p-home-products__logo-wrap { height: calc(62 * var(--sp-scale)); }
  .p-home-products__description--cushion img { width: calc(124 * var(--sp-scale)); height: calc(21 * var(--sp-scale)); margin-inline: auto; }
  .p-home-products__description--cushion img + img { width: calc(272 * var(--sp-scale)); height: calc(21 * var(--sp-scale)); margin-top: calc(6 * var(--sp-scale)); }
  .p-home-proof__scene { overflow: visible; }
  .p-home-proof { overflow: clip; }
  .p-home-proof__official > p:first-child { white-space: nowrap; }
  .p-home-proof__official > span { font-size: calc(14 * var(--sp-scale)); line-height: 1.7; }
  .p-home-updates .c-section-heading__title { line-height: 1.7; }
  .c-update__content { display: contents; }
  .c-update--with-image .c-update__title { grid-column: 2; }
  .l-footer__company address img { flex: 0 0 auto; margin-top: calc(3 * var(--sp-scale)); }
  .l-footer__navigation a { display: block; padding: calc(24 * var(--sp-scale)) calc(10 * var(--sp-scale)); border-bottom: calc(1 * var(--sp-scale)) solid #4e5a69; }
  .l-footer__products > li:first-child:has(> .l-footer__product-toggle:not([hidden])) > a { display: none; }
  .l-footer .l-footer__product-toggle { display: flex; width: 100%; align-items: center; justify-content: space-between; padding: calc(24 * var(--sp-scale)) calc(10 * var(--sp-scale)); border-bottom: calc(1 * var(--sp-scale)) solid #4e5a69; font: inherit; text-align: left; }
  .l-footer__product-item a { border-bottom: 0; }
  .l-footer__product-item:last-child a { border-bottom: calc(1 * var(--sp-scale)) solid #4e5a69; }
  .l-footer__products li:nth-child(2) { font-weight: 500; }
  .c-sub-fv__heading { gap: calc(6 * var(--sp-scale)); }
  .c-sub-fv__english::after { margin-top: calc(6 * var(--sp-scale)); }
  .p-about-company__photos li { flex: 0 0 calc(193 * var(--sp-scale)); }
  .p-about-company__photos img { width: 100%; height: calc(140 * var(--sp-scale)); object-fit: cover; }
  .p-about-company__text p + p { margin-top: 0; }
  .c-product-intro__title { gap: calc(10 * var(--sp-scale)); }
  .c-product-intro--mat .c-product-intro__caption { display: none; }
  .c-product-intro--mat .c-product-intro__video { margin-top: calc(20 * var(--sp-scale)); }
  .c-product-intro--cushion .c-product-intro__tagline { width: calc(370 * var(--sp-scale)); margin-left: calc(-10 * var(--sp-scale)); }
  .c-product-features__title img { width: calc(22 * var(--sp-scale)); height: calc(22 * var(--sp-scale)); }
  .c-product-features__title br { display: none; }
  .p-products-acrytech__features { width: 100%; padding-block: calc(24 * var(--sp-scale)); }
  .p-products-acrytech__features .c-product-features__item:not(:first-child) .c-product-features__title { font-size: calc(18 * var(--sp-scale)); }
  .p-products-acrytech__features .c-product-features__title br { display: initial; }
  .p-products-coatings .p-products__section-title { width: calc(340 * var(--sp-scale)); margin-inline: auto; font-size: calc(20 * var(--sp-scale)); }
  .c-product-level h4 { font-size: calc(26 * var(--sp-scale)); gap: calc(12 * var(--sp-scale)); margin-bottom: calc(12 * var(--sp-scale)); }
  .c-product-level h4 > span:first-child { width: calc(32 * var(--sp-scale)); height: calc(32 * var(--sp-scale)); font-size: calc(22 * var(--sp-scale)); }
  .c-contact-form__label { font-size: calc(15 * var(--sp-scale)); font-weight: 500; }
  .u-pc-only { display: none; }
  .u-sp-only { display: block; }
}

/* Opening sequence: current logo (95:10116), reference dissolve (41:1070).
   Header and hero details reveal together 2s after the opening dissolve, then remain visible. */
.p-home-loading { display: none; }
.is-home-intro .p-home-loading { position: fixed; inset: 0; z-index: 50; display: flex; align-items: center; justify-content: center; background: var(--navy); color: #fff; opacity: 0; visibility: hidden; pointer-events: none; transition: opacity 1s ease-out,visibility 0s 1s; }
.is-home-loading .p-home-loading { opacity: 1; visibility: visible; transition: none; }
.p-home-loading__brand { display: flex; flex-direction: column; align-items: center; gap: calc(15 * var(--site-scale)); }
.p-home-loading__brand span { font: 700 calc(72 * var(--site-scale))/1 "Albert Sans",sans-serif; white-space: nowrap; }
.p-home-loading__brand img { width: calc(472 * var(--site-scale)); height: calc(30 * var(--site-scale)); object-fit: contain; }
.is-home-loading .p-home-loading__brand { animation: home-logo-in 2s ease-out .8s both; }
@keyframes home-logo-in { from { opacity: 0; } to { opacity: 1; } }
.is-home-intro .p-home-intro { height: calc(100svh + 300 * var(--site-scale)); background: var(--navy); }
.is-home-intro .p-home-hero { position: sticky; top: 0; height: 100svh; }
.is-home-intro .p-home-hero__visual { height: 100%; }
.is-home-intro .p-home-hero::after { opacity: 0; transform: translateY(100%); transition: opacity .8s ease-out,transform .8s ease-out; }
.is-home-intro .p-home-hero__content { position: absolute; inset: auto 0 calc(12 * var(--site-scale)); padding-top: 0; opacity: 0; transform: translateY(calc(90 * var(--site-scale))); transition: opacity .8s ease-out,transform .8s ease-out; }
.is-home-intro .l-header { opacity: 0; visibility: hidden; pointer-events: none; transform: translateY(calc(-100% - var(--header-top, 0rem))); transition: opacity .8s ease-out,transform .8s ease-out,visibility 0s .8s; }
.is-home-intro.is-home-revealed .l-header { opacity: 1; visibility: visible; pointer-events: auto; transform: translateY(0); transition-delay: 0s; }
.is-home-intro.is-home-revealed .p-home-hero::after,
.is-home-intro.is-home-revealed .p-home-hero__content { opacity: 1; transform: translateY(0); }
@media (width < 48em) {
  .p-home-loading__brand span { font-size: calc(35 * var(--site-scale)); }
  .p-home-loading__brand img { width: calc(230 * var(--site-scale)); height: calc(16 * var(--site-scale)); }
  .is-home-intro .p-home-intro { height: calc(751 * var(--sp-scale)); }
  .is-home-intro .p-home-hero { position: relative; height: 100%; }
  .is-home-intro .p-home-hero__visual { height: calc(580 * var(--sp-scale)); }
  .is-home-intro .p-home-hero__content { bottom: calc(30 * var(--sp-scale)); }
}
@media (prefers-reduced-motion: reduce) {
  .p-home-loading { display: none !important; }
  .is-home-intro .l-header,.is-home-intro .p-home-hero::after,.is-home-intro .p-home-hero__content { transition: none; }
}
