/* 자동 생성 — 손으로 고치지 않는다. site.css 을 고친 뒤 php scripts/make-wide-css.php (1920px 보다 넓은 화면에서만 쓰인다) */
:root { --u: max(1px, min(100vw / 1920, 100vh / 950, 2.5px)); }
:root { --page: min(calc(1760 * var(--u)), calc(100vw - clamp(calc(40 * var(--u)), 7.5vw, calc(144 * var(--u))))); --edge: max(calc(20 * var(--u)), calc((100vw - var(--page)) / 2)); --title-display: clamp(calc(40 * var(--u)), 4.3vw, calc(58 * var(--u))); --title-page: clamp(calc(40 * var(--u)), 4.8vw, calc(68 * var(--u))); --title-section: clamp(calc(30 * var(--u)), 3.2vw, calc(48 * var(--u))) }
body { margin: 0; font-size: calc(15 * var(--u)); line-height: 1.65 }
.skip-link { left: calc(16 * var(--u)); top: calc(-80 * var(--u)); padding: calc(12 * var(--u)) calc(18 * var(--u)) }
.skip-link:focus { top: calc(16 * var(--u)) }
.site-header { width: var(--page); min-height: calc(108 * var(--u)); margin: auto; grid-template-columns: auto 1fr auto; gap: calc(42 * var(--u)); left: 50% }
.brand { min-height: calc(44 * var(--u)); gap: calc(13 * var(--u)); letter-spacing: .05em }
.main-menu a::after { left: 0; right: 100%; bottom: calc(-7 * var(--u)); height: 1px }
.main-menu a.is-current::after, .main-menu a:hover::after, .main-menu a:focus-visible::after { right: 0 }
.nav-group { padding: calc(38 * var(--u)) 0 }
.nav-group > a { gap: calc(8 * var(--u)) }
.nav-chevron { width: calc(6 * var(--u)); height: calc(6 * var(--u)) }
.submenu { min-width: calc(230 * var(--u)); padding: calc(14 * var(--u)); top: calc(96 * var(--u)); left: calc(-18 * var(--u)) }
.submenu a { padding: calc(11 * var(--u)) calc(13 * var(--u)); font-size: calc(14 * var(--u)) }
.hero { min-height: 100vh; min-height: 100svh }
.eyebrow { margin: 0 0 calc(24 * var(--u)); font-size: calc(12.5 * var(--u)); letter-spacing: .16em }
.hero h1 { margin: 0; letter-spacing: -.035em }
.button { max-width: 100%; min-height: calc(52 * var(--u)); gap: calc(28 * var(--u)); font-size: calc(15 * var(--u)); line-height: 1.5 }
.button-quiet { padding: 0 calc(22 * var(--u)); gap: calc(12 * var(--u)) }
.media-placeholder { padding: calc(30 * var(--u)) }
.media-placeholder::before, .media-placeholder::after { inset: 50% auto auto 50% }
.media-placeholder::before { width: 1px; height: 150% }
.media-placeholder::after { width: 150%; height: 1px }
.media-placeholder span { top: calc(24 * var(--u)); right: calc(24 * var(--u)); font-size: calc(10 * var(--u)); letter-spacing: .18em }
.media-placeholder p { margin: 0; font-size: calc(12 * var(--u)); letter-spacing: .18em }
.product-proof-inner { padding: clamp(calc(76 * var(--u)), 7vw, calc(116 * var(--u))) 0 clamp(calc(80 * var(--u)), 7.5vw, calc(122 * var(--u))) }
.proof-cards { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: clamp(calc(16 * var(--u)), 1.8vw, calc(28 * var(--u))) }
.proof-card { min-width: 0 }
.proof-card-number { font-size: calc(13 * var(--u)); letter-spacing: .1em }
.proof-card h3 { line-height: 1.3; letter-spacing: -.03em }
.proof-card > p { margin: calc(12 * var(--u)) 0 clamp(calc(24 * var(--u)), 2.2vw, calc(32 * var(--u))); font-size: calc(14 * var(--u)); line-height: 1.7 }
.scroll-progress { left: 0; top: 0; right: 0; height: calc(2 * var(--u)) }
.scroll-progress i { height: 100% }
.product-card::after, .quality-card::after { left: 0; top: 0; width: 100%; height: calc(2 * var(--u)) }
.proof-card::after { left: 0; top: 0; width: 34%; height: calc(3 * var(--u)) }
.section-shell { width: var(--page); margin: auto }
.section-heading { grid-template-columns: 1fr 1.2fr .8fr; gap: calc(50 * var(--u)); margin-bottom: calc(70 * var(--u)) }
.section-heading h2 { margin: 0; font-size: var(--title-section); line-height: 1.12; letter-spacing: -.035em }
.section-heading > p:last-child { margin: calc(12 * var(--u)) 0 0; font-size: calc(14 * var(--u)) }
.product-grid { width: 100%; margin-inline: auto; gap: clamp(calc(16 * var(--u)), 1.5vw, calc(24 * var(--u))) }
.product-card { min-width: 0 }
.card-number { top: calc(18 * var(--u)); left: calc(18 * var(--u)); padding: calc(7 * var(--u)) calc(9 * var(--u)) }
.card-number, .card-link { font-size: calc(10 * var(--u)); letter-spacing: .12em }
.card-link { font-size: calc(12.5 * var(--u)); letter-spacing: .06em }
.product-card-media { width: 100%; margin: 0 }
.product-card-media img { width: 100%; height: 100% }
.product-card-copy { grid-template-columns: minmax(0, 1fr) auto }
.product-card h2, .product-card h3 { margin: 0; font-size: calc(17 * var(--u)) }
.site-footer { padding: calc(84 * var(--u)) var(--edge) calc(64 * var(--u)); gap: clamp(calc(40 * var(--u)), 4vw, calc(64 * var(--u))); font-size: calc(15 * var(--u)); line-height: 1.85 }
.footer-brand small { font-size: calc(5.5 * var(--u)) }
.site-footer address strong { font-size: calc(16 * var(--u)) }
.site-footer > p { margin: calc(30 * var(--u)) 0 0; padding-top: calc(26 * var(--u)); font-size: calc(13 * var(--u)) }
.footer-column { gap: calc(11 * var(--u)) }
.footer-contact a, .footer-links a { line-height: 1.65 }
.footer-contact small { font-size: calc(11 * var(--u)) }
.flash { left: 50%; top: calc(16 * var(--u)); max-width: min(92vw, calc(720 * var(--u))); padding: calc(13 * var(--u)) calc(18 * var(--u)); font-size: calc(13 * var(--u)) }
.cookie-banner { left: calc(22 * var(--u)); right: calc(22 * var(--u)); bottom: calc(22 * var(--u)); max-width: calc(760 * var(--u)); margin-left: auto; padding: calc(18 * var(--u)) calc(20 * var(--u)); gap: calc(25 * var(--u)) }
.cookie-banner p { flex: 1; margin: 0; font-size: calc(11 * var(--u)) }
.cookie-banner > div { gap: calc(8 * var(--u)) }
.cookie-banner button { padding: calc(9 * var(--u)) calc(12 * var(--u)); font: inherit; font-size: calc(10 * var(--u)) }
.page-main { padding-top: calc(109 * var(--u)) }
.page-lead { margin: 0 0 calc(8 * var(--u)); font-size: clamp(calc(14 * var(--u)), 1.2vw, calc(16 * var(--u))); line-height: 1.75 }
.section-index-path { gap: calc(12 * var(--u)); line-height: 1; letter-spacing: .16em }
.section-index-path a { padding: calc(6 * var(--u)); margin: calc(-6 * var(--u)) }
.section-index-path a { min-height: calc(44 * var(--u)) }
.section-index-path i { width: calc(4 * var(--u)); height: calc(4 * var(--u)) }
.section-index h1 { margin: 0 }
.section-index .page-lead { margin: calc(18 * var(--u)) auto 0 }
.company-story { padding: clamp(calc(70 * var(--u)), 7vw, calc(95 * var(--u))) 0 }
.ceo-message { grid-template-columns: minmax(0, 1.28fr) minmax(calc(280 * var(--u)), .72fr); column-gap: clamp(calc(48 * var(--u)), 6vw, calc(82 * var(--u))) }
.ceo-brand-mark { min-height: calc(420 * var(--u)); margin: 0; padding: clamp(calc(36 * var(--u)), 4.5vw, calc(70 * var(--u))) }
.ceo-brand-mark img { width: 100%; max-width: calc(340 * var(--u)); height: auto }
.ceo-brand-label { font-size: clamp(calc(10 * var(--u)), .8vw, calc(12 * var(--u))); line-height: 1; letter-spacing: .16em }
.ceo-brand-label-top { top: clamp(calc(24 * var(--u)), 2.4vw, calc(34 * var(--u))); left: clamp(calc(24 * var(--u)), 2.4vw, calc(34 * var(--u))) }
.ceo-brand-label-bottom { right: clamp(calc(24 * var(--u)), 2.4vw, calc(34 * var(--u))); bottom: clamp(calc(24 * var(--u)), 2.4vw, calc(34 * var(--u))) }
.company-section-heading { margin-bottom: calc(42 * var(--u)); padding-bottom: calc(26 * var(--u)) }
.company-section-heading .eyebrow { margin: 0 0 calc(14 * var(--u)); gap: calc(12 * var(--u)); font-size: calc(14 * var(--u)); letter-spacing: .16em }
.company-section-heading .eyebrow span { padding-right: calc(12 * var(--u)) }
.company-section-heading h2 { max-width: 24ch; margin: 0; font-size: clamp(calc(34 * var(--u)), 3.4vw, calc(44 * var(--u))); line-height: 1.18; letter-spacing: -.035em }
.ceo-message .company-section-heading h2 { max-width: none; font-size: clamp(calc(26 * var(--u)), 2.2vw, calc(32 * var(--u))) }
.ceo-message-copy { gap: calc(18 * var(--u)) }
.ceo-message-copy p { margin: 0 }
.ceo-signature { margin-top: calc(42 * var(--u)); padding-top: calc(24 * var(--u)); gap: calc(14 * var(--u)) }
.ceo-signature span { font-size: calc(13.5 * var(--u)); letter-spacing: .07em }
.ceo-signature p { margin: 0; gap: calc(10 * var(--u)) }
.ceo-signature strong { font-size: calc(19 * var(--u)); letter-spacing: .05em }
.ceo-signature small { font-size: calc(13.5 * var(--u)) }
.history-section, .facilities { padding: clamp(calc(65 * var(--u)), 7vw, calc(85 * var(--u))) 0 }
.section-heading.compact { grid-template-columns: .7fr 1.8fr; margin-bottom: calc(45 * var(--u)) }
.history-section > .company-section-heading { width: 100%; margin-inline: auto }
.facility-grid { grid-template-columns: repeat(2,1fr); gap: calc(18 * var(--u)) }
.facility-placeholder { min-height: calc(380 * var(--u)) }
.facility-photo { min-height: calc(380 * var(--u)); margin: 0 }
.facility-photo img { width: 100%; height: 100%; min-height: calc(380 * var(--u)) }
.facility-photo figcaption { right: 0; bottom: 0; left: 0; padding: calc(46 * var(--u)) calc(24 * var(--u)) calc(22 * var(--u)); gap: calc(12 * var(--u)); font-size: calc(15 * var(--u)) }
.facility-photo figcaption span { font-size: calc(12 * var(--u)); letter-spacing: .12em }
.location-grid { min-height: calc(570 * var(--u)); padding-top: calc(85 * var(--u)); padding-bottom: calc(85 * var(--u)); grid-template-columns: .75fr 1.25fr; gap: calc(80 * var(--u)) }
.location-grid address { margin-bottom: calc(35 * var(--u)) }
.location-map { min-height: calc(400 * var(--u)) }
.location-map iframe { width: 100%; height: 100%; min-height: calc(400 * var(--u)) }
.product-detail-hero { grid-template-columns: 1fr 1fr; gap: clamp(calc(40 * var(--u)), 5vw, calc(80 * var(--u))) }
.product-detail-intro { width: 100%; max-width: calc(520 * var(--u)) }
.product-detail-photo { width: 100%; max-width: calc(520 * var(--u)); margin: 0 }
.product-detail-photo img { width: 100%; height: 100% }
.product-detail-hero h1 { margin: 0; font-size: clamp(calc(28 * var(--u)), 3vw, calc(44 * var(--u))); line-height: 1.12; letter-spacing: -.035em }
.product-detail-intro .page-lead { margin-top: calc(16 * var(--u)) }
.origin-badge { margin-top: calc(40 * var(--u)) }
.facts-grid { grid-auto-columns: minmax(0, 1fr) }
.facts-grid span, .cert-note span { margin-bottom: calc(34 * var(--u)); font-size: calc(9 * var(--u)); letter-spacing: .13em }
.facts-grid strong { font-size: calc(13 * var(--u)) }
.cert-note p { margin: 0 }
.spec-section > .section-heading.compact { gap: calc(10 * var(--u)); margin-bottom: calc(60 * var(--u)) }
.spec-section > .section-heading.compact .eyebrow { margin: 0 }
.table-scroll { max-width: 100%; min-width: 0 }
table { width: 100% }
th, td { padding: calc(17 * var(--u)) calc(14 * var(--u)); font-size: calc(12 * var(--u)) }
.spec-section table { margin-inline: auto }
th { font-size: calc(9 * var(--u)); letter-spacing: .1em }
.quote-band { padding: clamp(calc(50 * var(--u)), 6vw, calc(65 * var(--u))) 0 }
.quote-band > div { gap: calc(40 * var(--u)) }
.quote-band h2 { margin: 0; font-size: clamp(calc(28 * var(--u)), 3vw, calc(36 * var(--u))); line-height: 1.2 }
.quality-checks, .quality-resources { padding: clamp(calc(75 * var(--u)), 8vw, calc(105 * var(--u))) 0 clamp(calc(85 * var(--u)), 9vw, calc(120 * var(--u))) }
.quality-section-heading { padding-bottom: clamp(calc(30 * var(--u)), 3vw, calc(42 * var(--u))); grid-template-columns: calc(48 * var(--u)) minmax(0, 1fr); gap: clamp(calc(18 * var(--u)), 2vw, calc(28 * var(--u))) }
.checks-grid { grid-template-columns: repeat(3, minmax(0, 1fr)) }
.quality-card { min-width: 0 }
.quality-card h3 { line-height: 1.35 }
.quality-card p { margin: calc(10 * var(--u)) 0 0 }
.quality-process { padding: clamp(calc(75 * var(--u)), 8vw, calc(105 * var(--u))) 0 clamp(calc(85 * var(--u)), 9vw, calc(120 * var(--u))) }
.quality-process > div { gap: clamp(calc(32 * var(--u)), 3.4vw, calc(46 * var(--u))) }
.quality-process ol { margin: 0; padding: 0 }
.quality-process li { padding: calc(28 * var(--u)) calc(26 * var(--u)) calc(32 * var(--u)) }
.quality-process li::before { width: calc(34 * var(--u)); height: calc(2 * var(--u)); margin-bottom: calc(20 * var(--u)) }
.quality-process li span { font-size: calc(10 * var(--u)); letter-spacing: .12em }
.quality-process li strong { margin-top: calc(12 * var(--u)) }
.quality-process li p { margin: calc(10 * var(--u)) 0 0; font-size: calc(13 * var(--u)); line-height: 1.65 }
.quality-process li:hover::before { width: calc(68 * var(--u)) }
.resource-links { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(calc(16 * var(--u)), 1.5vw, calc(24 * var(--u))) }
.resource-links a { min-height: calc(240 * var(--u)); padding: calc(76 * var(--u)) calc(30 * var(--u)) calc(30 * var(--u)); grid-template-columns: minmax(0, 1fr) auto; gap: calc(24 * var(--u)) }
.resource-links a::after { top: 0; left: 0; width: 100%; height: calc(2 * var(--u)) }
.resource-link-copy h3 { margin: 0; font-size: clamp(calc(24 * var(--u)), 2.5vw, calc(30 * var(--u))); letter-spacing: -.03em }
.resource-link-copy p { max-width: 44em; margin: calc(14 * var(--u)) 0 0; font-size: calc(15 * var(--u)); line-height: 1.7 }
.resource-links b { font-size: calc(18 * var(--u)) }
.certificate-grid { gap: clamp(calc(14 * var(--u)), 1.4vw, calc(22 * var(--u))) }
.certificate-card { min-width: 0 }
.certificate-card h2 { margin: 0; font-size: calc(16 * var(--u)); line-height: 1.38 }
.certificate-card small { margin-top: calc(8 * var(--u)); font-size: calc(10 * var(--u)); line-height: 1.5 }
.certificate-footnote { margin: clamp(calc(28 * var(--u)), 3vw, calc(42 * var(--u))) 0 0; padding-top: calc(22 * var(--u)); font-size: calc(14 * var(--u)); line-height: 1.7 }
.faq-list summary { padding: calc(30 * var(--u)) 0; grid-template-columns: calc(80 * var(--u)) 1fr calc(30 * var(--u)) }
.faq-list summary strong { font-size: calc(20 * var(--u)) }
.simple-cta { margin-bottom: calc(100 * var(--u)); padding: calc(45 * var(--u)) }
.simple-cta h2 { font-size: calc(30 * var(--u)) }
.faq-list, .faq-list + .simple-cta { max-width: calc(900 * var(--u)); margin-left: auto; margin-right: auto }
.legal-page > h1 { font-size: var(--title-page); line-height: 1.1; letter-spacing: -.045em }
.legal-page > .page-lead { max-width: calc(800 * var(--u)); margin: calc(25 * var(--u)) 0 calc(60 * var(--u)) }
.legal-page article { margin-left: auto }
.legal-page article h2 { margin-top: calc(42 * var(--u)) }
.legal-page aside { margin-top: calc(55 * var(--u)); padding: calc(20 * var(--u)); font-size: calc(12 * var(--u)) }
.error-page { min-height: 75vh; padding-top: calc(150 * var(--u)) }
.error-page > span { font-size: calc(12 * var(--u)); letter-spacing: .2em }
.error-page h1 { font-size: clamp(calc(34 * var(--u)), 4vw, calc(46 * var(--u))) }
.visually-hidden { width: 1px; height: 1px }
.button-accent { padding: 0 calc(26 * var(--u)) }
.button-navy { padding: 0 calc(26 * var(--u)) }
.button-outline { padding: 0 calc(24 * var(--u)) }
.button-small { min-height: calc(36 * var(--u)); padding: 0 calc(14 * var(--u)); gap: calc(6 * var(--u)); font-size: calc(12 * var(--u)) }
.button-danger { padding: 0 calc(14 * var(--u)) }
.button-block { width: 100% }
.text-link { min-height: calc(44 * var(--u)); padding-block: calc(6 * var(--u)); margin-block: calc(-6 * var(--u)); gap: calc(10 * var(--u)); font-size: calc(14 * var(--u)); letter-spacing: .04em }
.badge-list { margin: 0; padding: 0; gap: calc(8 * var(--u)) }
.badge-list li { padding: calc(6 * var(--u)) calc(12 * var(--u)); letter-spacing: .03em }
.empty-state { margin: 0; padding: calc(60 * var(--u)) calc(24 * var(--u)) }
.brand img { width: clamp(calc(204 * var(--u)), 15vw, calc(262 * var(--u))); height: auto }
.site-header-solid::before { top: 0; bottom: -1px; left: 50%; width: 100vw }
.site-header-overlay::before { top: 0; height: calc(180 * var(--u)); left: 50%; width: 100vw }
.main-menu { gap: clamp(calc(22 * var(--u)), 2.6vw, calc(48 * var(--u))); font-size: clamp(calc(17.5 * var(--u)), 1.3vw, calc(20 * var(--u))) }
.header-actions { gap: clamp(calc(14 * var(--u)), 1.4vw, calc(24 * var(--u))) }
.header-order { min-height: calc(40 * var(--u)); padding: 0 calc(18 * var(--u)); flex: none; font-size: calc(15 * var(--u)); letter-spacing: .02em }
.languages { gap: calc(12 * var(--u)); font-size: calc(17 * var(--u)) }
.languages-icon { width: calc(24 * var(--u)); height: calc(24 * var(--u)); flex: none }
.languages a { padding: calc(4 * var(--u)) }
.languages a + a { padding-left: calc(12 * var(--u)) }
.languages a + a::before { left: 0; top: 50%; width: 1px; height: calc(14 * var(--u)) }
.hero { padding: 0 }
.hero-media { inset: 0 }
.hero-video { inset: 0 }
.hero-video iframe { top: 50%; left: 50%; width: max(100%, 177.78vh); height: max(100%, 56.25vw) }
.hero-shade { inset: 0 }
.hero-inner { flex: 1 1 auto }
.hero h1 { max-width: none }
.hero-title-secondary { margin-top: calc(8 * var(--u)); font-size: clamp(calc(34 * var(--u)), 4.4vw, calc(68 * var(--u))); line-height: 1.1; letter-spacing: -.04em }
.hero-strengths { margin: 0 auto; padding: 0 0 calc(38 * var(--u)) }
.hero-strengths li { padding: calc(22 * var(--u)) calc(24 * var(--u)) 0 0; gap: calc(4 * var(--u)) }
.hero-strengths strong { font-size: clamp(calc(22 * var(--u)), 2vw, calc(32 * var(--u))); letter-spacing: -.02em }
.hero-strengths span { font-size: calc(14 * var(--u)) }
.welcome { grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr); gap: 0 clamp(calc(36 * var(--u)), 5vw, calc(90 * var(--u))) }
.welcome-copy h2 { margin: 0; letter-spacing: -.04em }
.welcome-copy > p { margin: calc(22 * var(--u)) 0 calc(30 * var(--u)); font-size: clamp(calc(15 * var(--u)), 1.2vw, calc(18 * var(--u))); line-height: 1.8 }
.welcome-media { margin: 0 }
.welcome-media img { width: 100%; height: 100% }
.welcome-stats { margin: clamp(calc(48 * var(--u)), 5vw, calc(80 * var(--u))) 0 0 }
.welcome-stats div { padding: calc(26 * var(--u)) calc(20 * var(--u)) 0 0 }
.welcome-stats div + div { padding-left: calc(24 * var(--u)) }
.welcome-stats dt { font-size: calc(14 * var(--u)) }
.welcome-stats dd { margin: calc(6 * var(--u)) 0 0; font-size: clamp(calc(28 * var(--u)), 3vw, calc(44 * var(--u))); letter-spacing: -.03em }
.proof-card { padding: 0 }
.proof-card-media { margin: 0 }
.proof-card-media img { width: 100%; height: 100% }
.proof-card-media .proof-card-number { left: calc(18 * var(--u)); bottom: calc(14 * var(--u)); font-size: calc(34 * var(--u)); letter-spacing: -.02em }
.proof-card-body { padding: clamp(calc(22 * var(--u)), 2vw, calc(30 * var(--u))); flex: 1 }
.proof-card h3 { margin: 0; font-size: clamp(calc(19 * var(--u)), 1.5vw, calc(23 * var(--u))) }
.proof-card-body > p { margin: calc(12 * var(--u)) 0 clamp(calc(20 * var(--u)), 2vw, calc(28 * var(--u))); line-height: 1.7 }
.category-cards { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: clamp(calc(14 * var(--u)), 1.4vw, calc(22 * var(--u))) }
.category-card { min-width: 0 }
.category-card-media { margin: 0 }
.category-card-media img { width: 100%; height: 100% }
.category-card-media.is-empty span { font-size: clamp(calc(26 * var(--u)), 3vw, calc(44 * var(--u))); letter-spacing: .06em }
.category-card-copy { padding: calc(24 * var(--u)) calc(26 * var(--u)) calc(28 * var(--u)); flex: 1; gap: calc(8 * var(--u)) }
.category-card-copy p { margin: 0; font-size: calc(12 * var(--u)); letter-spacing: .1em }
.category-card-copy h3 { margin: 0; font-size: clamp(calc(22 * var(--u)), 2vw, calc(28 * var(--u))); letter-spacing: -.03em }
.category-card-copy span { font-size: calc(14 * var(--u)); line-height: 1.6; padding-right: calc(36 * var(--u)) }
.category-card-copy b { right: calc(24 * var(--u)); bottom: calc(26 * var(--u)); font-size: calc(20 * var(--u)) }
.video-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(calc(16 * var(--u)), 1.8vw, calc(28 * var(--u))) }
.video-card h3 { margin: calc(6 * var(--u)) 0 0 }
.video-card p:not(.video-card-label) { margin: calc(10 * var(--u)) 0 0 }
.video-card-label { margin: calc(18 * var(--u)) 0 0; letter-spacing: .16em }
.lite-yt { width: 100%; padding: 0 }
.lite-yt img { width: 100%; height: 100% }
.lite-yt-play { top: 50%; left: 50%; width: calc(68 * var(--u)); height: calc(68 * var(--u)); border-radius: 50% }
.lite-yt-play::after { top: 50%; left: 54% }
.lite-yt-frame { width: 100% }
.new-product { grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); gap: 0 clamp(calc(36 * var(--u)), 5vw, calc(84 * var(--u))) }
.new-product-media { margin: 0 }
.new-product-media img { width: 100%; height: 100% }
.new-product-copy h2 { margin: 0; line-height: 1.15; letter-spacing: -.04em }
.new-product-copy > p { margin: calc(20 * var(--u)) 0 calc(22 * var(--u)); font-size: calc(16 * var(--u)); line-height: 1.8 }
.new-product-copy .button { margin-top: calc(30 * var(--u)) }
.brand-call { padding: calc(26 * var(--u)) calc(34 * var(--u)); gap: calc(4 * var(--u)) }
.brand-call span { font-size: calc(12 * var(--u)); letter-spacing: .12em }
.brand-call strong { font-size: clamp(calc(32 * var(--u)), 3vw, calc(46 * var(--u))); letter-spacing: -.02em }
.brand-call small { font-size: calc(13 * var(--u)) }
.news-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(calc(16 * var(--u)), 1.6vw, calc(26 * var(--u))) }
.home-news .news-grid { grid-template-columns: repeat(4, minmax(0, 1fr)) }
.news-card { min-width: 0 }
.news-card-media { margin: 0 }
.news-card-media img { width: 100%; height: 100% }
.news-card-media.is-empty span { font-size: calc(13 * var(--u)); letter-spacing: .2em }
.news-card-copy { padding: calc(20 * var(--u)) calc(22 * var(--u)) calc(24 * var(--u)); gap: calc(10 * var(--u)); flex: 1 }
.news-card-meta { margin: 0; gap: calc(6 * var(--u)) calc(12 * var(--u)) }
.news-card h3 { margin: 0 }
.news-card-summary { margin: 0 }
.news-card .card-link { margin-top: auto; padding-top: calc(8 * var(--u)) }
.catalog-band { grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: 0 clamp(calc(36 * var(--u)), 5vw, calc(80 * var(--u))) }
.catalog-band-covers img { width: 46%; max-width: calc(250 * var(--u)); height: auto }
.catalog-band-covers img + img { margin-left: -12% }
.catalog-band-copy h2 { margin: 0; letter-spacing: -.035em }
.catalog-band-copy > p { margin: calc(14 * var(--u)) 0 calc(26 * var(--u)) }
.catalog-band-actions { gap: calc(10 * var(--u)) }
.download-link { padding: calc(18 * var(--u)) calc(22 * var(--u)); grid-template-columns: minmax(0, 1fr) auto auto; gap: calc(18 * var(--u)) }
.download-link strong { font-size: calc(16 * var(--u)) }
.download-link span { font-size: calc(13 * var(--u)) }
.download-link b { font-size: calc(18 * var(--u)) }
.page-tabs { margin-bottom: 0; gap: clamp(calc(18 * var(--u)), 2.4vw, calc(40 * var(--u))) }
.page-tabs a { flex: none; padding: calc(20 * var(--u)) calc(2 * var(--u)) calc(18 * var(--u)); font-size: calc(15 * var(--u)) }
.page-tabs a small { margin-left: calc(4 * var(--u)); font-size: calc(12 * var(--u)) }
.product-index { padding: clamp(calc(56 * var(--u)), 5vw, calc(80 * var(--u))) 0 clamp(calc(50 * var(--u)), 5vw, calc(70 * var(--u))) }
.category-heading { margin-bottom: clamp(calc(26 * var(--u)), 2.6vw, calc(40 * var(--u))); gap: calc(30 * var(--u)) }
.category-heading .eyebrow { margin-bottom: calc(10 * var(--u)) }
.category-heading h2 { margin: 0; font-size: clamp(calc(28 * var(--u)), 2.8vw, calc(40 * var(--u))); letter-spacing: -.035em }
.category-heading div > p:not(.eyebrow) { margin: calc(10 * var(--u)) 0 0 }
.product-grid { grid-template-columns: repeat(4, minmax(0, 1fr)) }
.product-card-placeholder { gap: calc(14 * var(--u)); font-size: calc(12 * var(--u)); letter-spacing: .12em; padding: 0 calc(14 * var(--u)) }
.product-card-placeholder i { width: calc(54 * var(--u)); height: calc(54 * var(--u)); border-radius: 50% }
.product-card-placeholder i::after { inset: calc(14 * var(--u)); border-radius: 50% }
.product-card-copy { min-height: calc(138 * var(--u)); padding: calc(18 * var(--u)) calc(20 * var(--u)) calc(20 * var(--u)); flex: 1; gap: calc(6 * var(--u)) }
.product-card-code { margin: 0; letter-spacing: .08em }
.product-card h2, .product-card h3 { font-size: calc(17 * var(--u)); line-height: 1.4 }
.product-card-foot { margin-top: auto; padding-top: calc(10 * var(--u)); gap: calc(10 * var(--u)) }
.product-card-foot .origin-chip { min-width: 0 }
.product-card-foot .card-link { flex: none }
.origin-chip { padding: calc(3 * var(--u)) calc(8 * var(--u)); font-size: calc(12 * var(--u)); letter-spacing: .01em }
.product-path { padding: calc(26 * var(--u)) 0 0; gap: calc(10 * var(--u)); font-size: calc(12.5 * var(--u)) }
.product-path i { width: calc(4 * var(--u)); height: calc(4 * var(--u)) }
.product-path a { min-width: calc(44 * var(--u)); min-height: calc(44 * var(--u)); padding: calc(6 * var(--u)); margin: calc(-6 * var(--u)) }
.product-detail-hero { min-height: 0; padding: calc(30 * var(--u)) 0 calc(70 * var(--u)) }
.product-badges { margin-top: calc(26 * var(--u)); gap: calc(14 * var(--u)) }
.origin-badge { width: auto; margin: 0; padding: calc(12 * var(--u)) calc(16 * var(--u)); gap: calc(14 * var(--u)) }
.origin-badge span { letter-spacing: .12em }
.origin-badge strong { font-size: calc(14 * var(--u)) }
.product-notice { margin-top: calc(22 * var(--u)); padding: calc(16 * var(--u)) calc(18 * var(--u)) }
.product-notice p { margin: 0; font-size: calc(15 * var(--u)); line-height: 1.7 }
.product-notice a { margin-top: calc(10 * var(--u)); gap: calc(8 * var(--u)); font-size: calc(14 * var(--u)) }
.product-actions { margin-top: calc(30 * var(--u)); gap: calc(10 * var(--u)) }
.product-detail-photo.is-empty { gap: calc(12 * var(--u)) }
.product-detail-photo figcaption { font-size: calc(13 * var(--u)) }
.facts-section { padding: calc(60 * var(--u)) 0; gap: calc(34 * var(--u)) }
.facts-title { margin: 0 0 calc(18 * var(--u)); font-size: calc(20 * var(--u)) }
.facts-group-head { margin-bottom: calc(18 * var(--u)) }
.facts-group-head .eyebrow { margin-bottom: calc(8 * var(--u)) }
.facts-group-head h2 { margin: 0; font-size: clamp(calc(22 * var(--u)), 2vw, calc(28 * var(--u))) }
.facts-group-head p:not(.eyebrow) { margin: calc(6 * var(--u)) 0 0 }
.facts-grid { margin: 0; grid-template-columns: repeat(auto-fill, minmax(calc(230 * var(--u)), 1fr)) }
.facts-grid div { min-height: 0; padding: calc(18 * var(--u)) calc(20 * var(--u)) }
.facts-grid dt { font-size: calc(13 * var(--u)); letter-spacing: .04em }
.facts-grid dd { margin: calc(6 * var(--u)) 0 0; font-size: calc(15 * var(--u)); line-height: 1.55 }
.feature-list { margin: 0; padding: 0; gap: calc(10 * var(--u)) }
.feature-list li { padding-left: calc(18 * var(--u)); line-height: 1.65 }
.feature-list li::before { left: 0; top: .6em; width: calc(6 * var(--u)); height: calc(6 * var(--u)) }
.cert-note { margin-top: 0; padding: calc(18 * var(--u)) calc(20 * var(--u)) }
.cert-note span { margin: 0 0 calc(6 * var(--u)); font-size: calc(11 * var(--u)); letter-spacing: .08em }
.cert-note p { font-size: calc(14 * var(--u)) }
.guide-note { padding: calc(24 * var(--u)) calc(26 * var(--u)) }
.guide-note h2 { margin: 0 0 calc(10 * var(--u)); font-size: calc(17 * var(--u)) }
.guide-note p { margin: 0; line-height: 1.8 }
.spec-section { padding: calc(80 * var(--u)) 0 }
.scroll-hint { margin: 0; font-size: calc(13 * var(--u)) }
.spec-group-title { margin: calc(56 * var(--u)) 0 0; gap: calc(12 * var(--u)); font-size: calc(24 * var(--u)) }
.spec-group-title span { font-size: calc(12 * var(--u)); letter-spacing: .12em }
.spec-table + .spec-table { margin-top: calc(48 * var(--u)) }
.spec-group-title + .spec-table { margin-top: calc(20 * var(--u)) }
.spec-table h3 { margin: 0 0 calc(14 * var(--u)); padding-left: calc(12 * var(--u)); font-size: calc(18 * var(--u)) }
.spec-section table { min-width: calc(640 * var(--u)) }
.spec-section th, .spec-section td { padding: calc(14 * var(--u)) calc(12 * var(--u)); font-size: calc(13.5 * var(--u)) }
.spec-section thead th { font-size: calc(12.5 * var(--u)); letter-spacing: .01em }
.spec-section tbody th { font-size: calc(13.5 * var(--u)); letter-spacing: 0 }
.spec-note { margin: calc(12 * var(--u)) 0 0; font-size: calc(14 * var(--u)) }
.quote-band div > p:not(.eyebrow) { margin: calc(12 * var(--u)) 0 0 }
.related-products { padding: clamp(calc(60 * var(--u)), 6vw, calc(90 * var(--u))) 0 clamp(calc(80 * var(--u)), 8vw, calc(110 * var(--u))) }
.company-story, .history-section, .facilities { scroll-margin-top: calc(20 * var(--u)) }
.timeline-year { padding: calc(34 * var(--u)) 0; grid-template-columns: minmax(calc(120 * var(--u)), calc(250 * var(--u))) minmax(0, 1fr); gap: clamp(calc(20 * var(--u)), 3vw, calc(50 * var(--u))) }
.timeline-year h3 { margin: 0; font-size: clamp(calc(30 * var(--u)), 3vw, calc(44 * var(--u))); letter-spacing: -.03em }
.timeline-year ol { margin: 0; padding: 0; gap: calc(18 * var(--u)) }
.timeline-year li { grid-template-columns: calc(90 * var(--u)) minmax(0, 1fr); gap: calc(16 * var(--u)) }
.timeline-year time { padding-top: calc(2 * var(--u)); font-size: calc(14 * var(--u)) }
.timeline-year strong { font-size: calc(17 * var(--u)); line-height: 1.45 }
.timeline-year li span { font-size: calc(15 * var(--u)); line-height: 1.6 }
.site-list { margin: 0 0 calc(30 * var(--u)); grid-template-columns: repeat(2, minmax(0, 1fr)); gap: calc(16 * var(--u)) }
.site-list div { padding: calc(24 * var(--u)) }
.site-list dt { font-size: calc(17 * var(--u)) }
.site-list dd { margin: calc(10 * var(--u)) 0 0; font-size: calc(15 * var(--u)); line-height: 1.65 }
.thai-subsidiary { padding: clamp(calc(70 * var(--u)), 7vw, calc(110 * var(--u))) 0; scroll-margin-top: calc(20 * var(--u)) }
.thai-grid { grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr); gap: clamp(calc(36 * var(--u)), 5vw, calc(80 * var(--u))) }
.thai-media { margin: 0 }
.thai-media img { width: 100%; height: 100% }
.thai-copy .eyebrow { gap: calc(12 * var(--u)); font-size: calc(14 * var(--u)) }
.thai-copy .eyebrow span { padding-right: calc(12 * var(--u)) }
.thai-copy h2 { margin: 0; letter-spacing: -.035em }
.thai-copy > p:not(.eyebrow, .region-tag) { margin: calc(18 * var(--u)) 0 0; line-height: 1.8 }
.thai-copy .thai-note { padding: calc(16 * var(--u)) calc(18 * var(--u)) }
.thai-copy dl { margin: calc(26 * var(--u)) 0 calc(30 * var(--u)); gap: 0 }
.thai-copy dl div { padding: calc(14 * var(--u)) 0; grid-template-columns: calc(110 * var(--u)) minmax(0, 1fr); gap: calc(16 * var(--u)) }
.thai-copy dt { font-size: calc(13 * var(--u)) }
.thai-copy dd { margin: 0; font-size: calc(15 * var(--u)) }
.location-section { margin-top: 0; scroll-margin-top: calc(20 * var(--u)) }
.location-grid address { font-size: calc(17 * var(--u)) }
.location-contact { margin: 0 0 calc(34 * var(--u)); gap: 0 }
.location-contact div { padding: calc(13 * var(--u)) 0; grid-template-columns: calc(100 * var(--u)) minmax(0, 1fr); gap: calc(14 * var(--u)) }
.location-contact dt { font-size: calc(13 * var(--u)) }
.location-contact dd { margin: 0 }
.location-contact a { min-height: calc(44 * var(--u)); margin-block: calc(-8 * var(--u)) }
.principle-list { padding: 0; grid-template-columns: repeat(3, minmax(0, 1fr)) }
.principle-list p { margin: calc(10 * var(--u)) 0 0; line-height: 1.7 }
.quality-card-icon img { width: calc(32 * var(--u)); height: calc(32 * var(--u)) }
.quality-card h3 { margin-top: calc(8 * var(--u)) }
.quality-standard { margin: calc(40 * var(--u)) 0 0; padding: calc(28 * var(--u)) calc(30 * var(--u)); gap: calc(8 * var(--u)) calc(22 * var(--u)); font-size: clamp(calc(18 * var(--u)), 1.6vw, calc(24 * var(--u))) }
.quality-standard span { font-size: calc(12 * var(--u)); letter-spacing: .16em }
.quality-process ol { grid-template-columns: repeat(3, minmax(0, 1fr)) }
.quality-process li strong { font-size: calc(18 * var(--u)) }
.quality-process li ul { margin: calc(14 * var(--u)) 0 0; padding: 0; gap: calc(8 * var(--u)) }
.quality-process li li { padding: 0 0 0 calc(14 * var(--u)); font-size: calc(15 * var(--u)); line-height: 1.6 }
.quality-process li li::before { left: 0; top: .62em; width: calc(5 * var(--u)); height: calc(5 * var(--u)); margin: 0 }
.quality-process li li:hover::before { width: calc(5 * var(--u)) }
.quality-evaluation { padding: clamp(calc(70 * var(--u)), 7vw, calc(100 * var(--u))) 0 }
.evaluation-copy { grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr); gap: clamp(calc(30 * var(--u)), 4vw, calc(64 * var(--u))) }
.evaluation-text { gap: clamp(calc(18 * var(--u)), 1.6vw, calc(26 * var(--u))) }
.evaluation-copy p { margin: 0; line-height: 1.85 }
.evaluation-copy dl { margin: 0; grid-template-columns: repeat(2, minmax(0, 1fr)) }
.evaluation-copy dt { font-size: calc(12 * var(--u)) }
.evaluation-copy dd { margin: calc(6 * var(--u)) 0 0 }
.quality-resources { padding-top: clamp(calc(70 * var(--u)), 7vw, calc(100 * var(--u))) }
.catalog-downloads { padding: clamp(calc(60 * var(--u)), 6vw, calc(90 * var(--u))) 0 clamp(calc(90 * var(--u)), 9vw, calc(120 * var(--u))); grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(calc(20 * var(--u)), 2.4vw, calc(36 * var(--u))) }
.catalog-card { padding: clamp(calc(24 * var(--u)), 2.6vw, calc(40 * var(--u))); grid-template-columns: minmax(calc(140 * var(--u)), calc(220 * var(--u))) minmax(0, 1fr); gap: clamp(calc(22 * var(--u)), 2.6vw, calc(40 * var(--u))) }
.catalog-card figure { margin: 0 }
.catalog-card figure img { width: 100%; height: 100% }
.catalog-card h2 { margin: 0; font-size: clamp(calc(22 * var(--u)), 2vw, calc(30 * var(--u))) }
.catalog-meta-line { margin: calc(8 * var(--u)) 0 calc(18 * var(--u)); font-size: calc(14 * var(--u)) }
.catalog-card ul { margin: 0 0 calc(26 * var(--u)); padding: 0; gap: calc(8 * var(--u)) }
.catalog-card li { padding-left: calc(16 * var(--u)); font-size: calc(15 * var(--u)) }
.catalog-card li::before { left: 0; top: .62em; width: calc(5 * var(--u)); height: calc(5 * var(--u)) }
.certificate-index { padding: clamp(calc(70 * var(--u)), 7vw, calc(100 * var(--u))) 0 clamp(calc(90 * var(--u)), 9vw, calc(120 * var(--u))) }
.certificate-grid { margin-top: calc(30 * var(--u)); grid-template-columns: repeat(4, minmax(0, 1fr)) }
.certificate-grid-compact { grid-template-columns: repeat(6, minmax(0, 1fr)) }
.certificate-second { margin-top: clamp(calc(60 * var(--u)), 6vw, calc(90 * var(--u))) }
.certificate-media { margin: 0; padding: calc(14 * var(--u)) }
.certificate-media img { width: 100%; height: 100% }
.certificate-card-copy { min-height: 0; padding: calc(18 * var(--u)) calc(20 * var(--u)) calc(20 * var(--u)); gap: calc(8 * var(--u)) }
.certificate-card h3 { margin: 0; font-size: calc(16 * var(--u)) }
.certificate-card-copy p { margin: 0; font-size: calc(15 * var(--u)); line-height: 1.65 }
.download-chip { margin-top: auto; padding: calc(8 * var(--u)) calc(12 * var(--u)); font-size: calc(13 * var(--u)) }
.certificate-footnote { margin-top: calc(40 * var(--u)) }
.faq-list { padding: calc(40 * var(--u)) 0 calc(80 * var(--u)) }
.faq-list summary span { font-size: calc(12 * var(--u)) }
.faq-answer { max-width: calc(820 * var(--u)); margin: 0 0 calc(35 * var(--u)) calc(80 * var(--u)) }
.faq-answer p { margin: 0; font-size: calc(16 * var(--u)); line-height: 1.85 }
.faq-answer .table-scroll { margin-top: calc(18 * var(--u)) }
.faq-answer th { font-size: calc(12 * var(--u)); letter-spacing: 0 }
.faq-answer td { font-size: calc(13.5 * var(--u)) }
.simple-cta { gap: calc(30 * var(--u)) }
.simple-cta h2 { margin: 0 }
.simple-cta p { margin: calc(10 * var(--u)) 0 0 }
.news-index { padding: clamp(calc(50 * var(--u)), 5vw, calc(80 * var(--u))) 0 clamp(calc(90 * var(--u)), 9vw, calc(120 * var(--u))) }
.article-head { max-width: calc(880 * var(--u)); padding: calc(20 * var(--u)) 0 calc(30 * var(--u)) }
.article-head .product-path { padding: calc(10 * var(--u)) 0 calc(30 * var(--u)) }
.article-head h1 { margin: calc(14 * var(--u)) 0 0; font-size: clamp(calc(30 * var(--u)), 3.6vw, calc(48 * var(--u))); line-height: 1.22; letter-spacing: -.04em }
.article-head .page-lead { margin-top: calc(18 * var(--u)) }
.article-hero { max-width: calc(1080 * var(--u)); margin: 0 auto }
.article-hero img { width: 100%; height: 100% }
.article-body { max-width: calc(820 * var(--u)); padding: clamp(calc(40 * var(--u)), 5vw, calc(70 * var(--u))) 0 }
.article-body > * + * { margin-top: calc(22 * var(--u)) }
.article-body h2 { margin-top: calc(48 * var(--u)); padding-left: calc(14 * var(--u)); font-size: clamp(calc(22 * var(--u)), 2vw, calc(28 * var(--u))); line-height: 1.35 }
.article-body p { font-size: calc(17 * var(--u)); line-height: 1.9 }
.article-lead { font-size: clamp(calc(18 * var(--u)), 1.6vw, calc(22 * var(--u))) !important; line-height: 1.7 !important }
.article-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: calc(14 * var(--u)) }
.article-cards article { padding: calc(22 * var(--u)) }
.article-cards span { font-size: calc(12 * var(--u)) }
.article-cards h3 { margin: calc(8 * var(--u)) 0 0; font-size: calc(18 * var(--u)) }
.article-cards p { margin: calc(8 * var(--u)) 0 0; font-size: calc(15 * var(--u)); line-height: 1.7 }
.article-specs { margin-top: calc(18 * var(--u)) }
.article-table, .article-image { margin-left: 0; margin-right: 0 }
.article-table th { font-size: calc(12.5 * var(--u)); letter-spacing: 0 }
.article-table td { font-size: calc(14 * var(--u)) }
.article-table figcaption, .article-image figcaption { margin-top: calc(10 * var(--u)); font-size: calc(13 * var(--u)) }
.article-body blockquote { margin: calc(30 * var(--u)) 0; padding: calc(24 * var(--u)) calc(28 * var(--u)) }
.article-body blockquote p { margin: 0; font-size: calc(18 * var(--u)) }
.article-body blockquote cite { margin-top: calc(10 * var(--u)); font-size: calc(14 * var(--u)) }
.article-product { margin-top: calc(44 * var(--u)); padding: calc(18 * var(--u)); grid-template-columns: calc(90 * var(--u)) minmax(0, 1fr) auto; gap: calc(18 * var(--u)) }
.article-product img { width: calc(90 * var(--u)); height: calc(90 * var(--u)) }
.article-product small { font-size: calc(12 * var(--u)) }
.article-product strong { margin-top: calc(4 * var(--u)); font-size: calc(18 * var(--u)) }
.article-nav { max-width: calc(1080 * var(--u)); margin-bottom: clamp(calc(70 * var(--u)), 7vw, calc(100 * var(--u))); padding-top: calc(30 * var(--u)); grid-template-columns: 1fr auto 1fr; gap: calc(20 * var(--u)) }
.article-nav a { line-height: 1.5 }
.article-nav small { margin-bottom: calc(4 * var(--u)); font-size: calc(12 * var(--u)) }
.article-nav-list { padding: calc(12 * var(--u)) calc(22 * var(--u)); font-size: calc(14 * var(--u)) }
.legal-page { padding-top: calc(150 * var(--u)) }
.legal-shell { max-width: calc(980 * var(--u)) }
.legal-page h1 { margin: 0; font-size: clamp(calc(32 * var(--u)), 3.6vw, calc(48 * var(--u))); letter-spacing: -.04em }
.legal-page .page-lead { max-width: calc(820 * var(--u)); margin: calc(20 * var(--u)) 0 calc(8 * var(--u)) }
.legal-toc { margin-bottom: calc(40 * var(--u)); padding: calc(22 * var(--u)) calc(24 * var(--u)); grid-template-columns: repeat(2, minmax(0, 1fr)); gap: calc(8 * var(--u)) calc(30 * var(--u)) }
.legal-toc a { min-height: calc(44 * var(--u)) }
.legal-page article { max-width: none; margin: 0 }
.legal-page article section { scroll-margin-top: calc(20 * var(--u)); padding: calc(26 * var(--u)) 0 }
.legal-page article h2 { margin: 0 0 calc(12 * var(--u)); font-size: calc(19 * var(--u)) }
.legal-page article p { margin: 0 0 calc(10 * var(--u)); line-height: 1.85 }
.legal-page article ul { margin: calc(6 * var(--u)) 0 calc(12 * var(--u)); padding-left: calc(20 * var(--u)); line-height: 1.85 }
.legal-page article .table-scroll { margin-top: calc(14 * var(--u)) }
.legal-page article th { font-size: calc(12.5 * var(--u)); letter-spacing: 0 }
.legal-page article td { font-size: calc(13.5 * var(--u)) }
.error-actions { margin-top: calc(26 * var(--u)); gap: calc(10 * var(--u)) }
.site-footer { grid-template-columns: 1fr 1.3fr 1.1fr .9fr }
.footer-top { gap: calc(24 * var(--u)) }
.footer-brand img { width: 100%; height: auto }
.footer-social { gap: calc(6 * var(--u)) }
.footer-social a { width: calc(44 * var(--u)); height: calc(44 * var(--u)) }
.footer-social svg { width: calc(20 * var(--u)); height: calc(20 * var(--u)) }
.site-footer address { gap: calc(4 * var(--u)) }
.footer-phone { font-size: calc(26 * var(--u)); letter-spacing: -.01em }
.board { padding: clamp(calc(48 * var(--u)), 5vw, calc(70 * var(--u))) 0 clamp(calc(80 * var(--u)), 8vw, calc(110 * var(--u))) }
.board-narrow { max-width: calc(900 * var(--u)) }
.board-toolbar { margin-bottom: calc(16 * var(--u)); gap: calc(16 * var(--u)) }
.board-count { margin: 0; font-size: calc(14 * var(--u)) }
.board-table th, .board-table td { padding: calc(16 * var(--u)) calc(12 * var(--u)); font-size: calc(14 * var(--u)) }
.board-table th { font-size: calc(13 * var(--u)); letter-spacing: 0 }
.board-table .col-title { width: 100% }
.board-table .col-title a { gap: calc(8 * var(--u)) }
.board-table .col-title a:hover .title-text { text-underline-offset: calc(3 * var(--u)) }
.lock-icon { width: calc(15 * var(--u)); height: calc(15 * var(--u)); flex: none }
.cat-chip { flex: none; padding: calc(3 * var(--u)) calc(8 * var(--u)); font-size: calc(12 * var(--u)) }
.badge { padding: calc(4 * var(--u)) calc(10 * var(--u)); font-size: calc(12 * var(--u)) }
.pagination { margin-top: calc(28 * var(--u)); gap: calc(6 * var(--u)) }
.pagination a, .pagination strong { min-width: calc(38 * var(--u)); height: calc(38 * var(--u)); padding: 0 calc(8 * var(--u)); font-size: calc(14 * var(--u)) }
.notice-box { margin-top: calc(36 * var(--u)); padding: calc(22 * var(--u)) calc(24 * var(--u)) }
.notice-box ul { margin: calc(10 * var(--u)) 0 0; padding-left: calc(18 * var(--u)); font-size: calc(15 * var(--u)); line-height: 1.85 }
.board-admin-link { margin: calc(18 * var(--u)) 0 0; font-size: calc(12 * var(--u)) }
.board-admin-link a { min-height: calc(44 * var(--u)); padding-inline: calc(8 * var(--u)); margin-inline: calc(-8 * var(--u)) }
.board-card { padding: clamp(calc(24 * var(--u)), 3vw, calc(38 * var(--u))) }
.board-card + .board-card { margin-top: calc(18 * var(--u)) }
.field { gap: calc(8 * var(--u)); margin: 0 0 calc(22 * var(--u)) }
.field > span, .field legend { font-size: calc(14 * var(--u)) }
.field em { margin-left: calc(4 * var(--u)); font-size: calc(12 * var(--u)) }
.field > span small { margin-left: calc(4 * var(--u)); font-size: calc(12 * var(--u)) }
.field input, .field select, .field textarea, .pw-box input, .filter-bar input, .filter-bar select, .reply-form textarea { width: 100%; min-width: 0; min-height: calc(50 * var(--u)); padding: calc(12 * var(--u)) calc(14 * var(--u)); border-radius: 0; font: inherit; font-size: calc(16 * var(--u)) }
.field textarea { min-height: calc(220 * var(--u)); line-height: 1.7 }
.field input[type="file"] { padding: calc(10 * var(--u)); font-size: calc(14 * var(--u)) }
.field-row { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 calc(20 * var(--u)) }
.field-short { max-width: calc(380 * var(--u)) }
.field-hint { font-size: calc(14 * var(--u)); line-height: 1.6 }
.honeypot { left: calc(-9999 * var(--u)); width: 1px; height: 1px }
.privacy-field { padding: 0 }
.privacy-field legend { padding: 0; margin-bottom: calc(8 * var(--u)) }
.privacy-box { max-height: calc(200 * var(--u)); padding: calc(16 * var(--u)) calc(18 * var(--u)); font-size: calc(14 * var(--u)); line-height: 1.75 }
.privacy-box p { margin: 0 0 calc(10 * var(--u)) }
.agree-row { margin-top: calc(14 * var(--u)); gap: calc(10 * var(--u)) }
.agree-row input { width: calc(20 * var(--u)); height: calc(20 * var(--u)); margin-top: 1px; flex: none }
.board-actions { margin-top: calc(24 * var(--u)); gap: calc(10 * var(--u)) }
.alert { margin: 0 0 calc(18 * var(--u)); padding: calc(14 * var(--u)) calc(18 * var(--u)); font-size: calc(14 * var(--u)); line-height: 1.6 }
.done-box { padding: clamp(calc(50 * var(--u)), 6vw, calc(80 * var(--u))) calc(24 * var(--u)) }
.done-icon { width: calc(60 * var(--u)); height: calc(60 * var(--u)); margin: 0 auto calc(20 * var(--u)); border-radius: 50%; font-size: calc(26 * var(--u)) }
.done-box h2 { margin: 0; font-size: clamp(calc(22 * var(--u)), 2.2vw, calc(28 * var(--u))) }
.done-box p { margin: calc(16 * var(--u)) 0 calc(28 * var(--u)); line-height: 1.85 }
.pw-box { max-width: calc(480 * var(--u)); margin: 0 auto; padding: clamp(calc(30 * var(--u)), 4vw, calc(48 * var(--u))) }
.pw-icon { width: calc(56 * var(--u)); height: calc(56 * var(--u)); margin: 0 auto calc(16 * var(--u)); border-radius: 50% }
.pw-icon svg { width: calc(26 * var(--u)); height: calc(26 * var(--u)) }
.pw-box h2 { margin: 0; font-size: calc(22 * var(--u)) }
.pw-box > p { margin: calc(10 * var(--u)) 0 0; font-size: calc(14 * var(--u)) }
.pw-box .pw-title { margin: calc(18 * var(--u)) 0; padding: calc(12 * var(--u)) }
.inquiry-view header { padding-bottom: calc(20 * var(--u)) }
.inquiry-view h2 { margin: calc(12 * var(--u)) 0 0; font-size: clamp(calc(22 * var(--u)), 2.2vw, calc(28 * var(--u))); line-height: 1.35 }
.view-meta { margin: calc(16 * var(--u)) 0 0; gap: calc(8 * var(--u)) calc(24 * var(--u)); font-size: calc(14 * var(--u)) }
.view-meta div { gap: calc(8 * var(--u)) }
.view-meta dd { margin: 0 }
.view-content { padding: calc(26 * var(--u)) 0; font-size: calc(16 * var(--u)); line-height: 1.9 }
.view-file { margin: 0; padding: calc(14 * var(--u)) calc(16 * var(--u)); gap: calc(10 * var(--u)); font-size: calc(14 * var(--u)) }
.view-file a { text-underline-offset: calc(3 * var(--u)) }
.reply-box { margin-top: calc(24 * var(--u)); padding: calc(22 * var(--u)) calc(24 * var(--u)) }
.reply-box h3 { margin: 0 0 calc(10 * var(--u)); font-size: calc(15 * var(--u)) }
.reply-content { line-height: 1.85 }
.reply-box time { margin-top: calc(10 * var(--u)); font-size: calc(13 * var(--u)) }
.board-login { min-height: 76vh; padding: calc(160 * var(--u)) calc(20 * var(--u)) calc(90 * var(--u)) }
.login-box { width: 100%; max-width: calc(420 * var(--u)) }
.login-box h1 { margin: 0; font-size: calc(26 * var(--u)) }
.login-box > p { margin: calc(8 * var(--u)) 0 calc(24 * var(--u)); font-size: calc(14 * var(--u)) }
.login-back { margin-top: calc(18 * var(--u)); font-size: calc(13 * var(--u)) }
.admin-bar .section-shell { min-height: calc(52 * var(--u)); gap: calc(16 * var(--u)); font-size: calc(14 * var(--u)) }
.admin-bar nav { gap: calc(18 * var(--u)) }
.admin-bar nav form { margin: 0 }
.admin-bar nav button { padding: 0; font: inherit }
.admin-head { margin-bottom: calc(18 * var(--u)); gap: calc(12 * var(--u)) }
.admin-head h1 { margin: 0; font-size: calc(26 * var(--u)) }
.admin-head h1 small { margin-left: calc(8 * var(--u)); font-size: calc(14 * var(--u)) }
.admin-head-actions { gap: calc(8 * var(--u)) }
.filter-bar { margin-bottom: calc(18 * var(--u)); gap: calc(8 * var(--u)) }
.filter-bar select { width: auto; min-height: calc(42 * var(--u)); font-size: calc(14 * var(--u)) }
.filter-bar input { flex: 1; min-width: calc(220 * var(--u)); width: auto; min-height: calc(42 * var(--u)); font-size: calc(14 * var(--u)) }
.admin-table th, .admin-table td { padding: calc(12 * var(--u)) calc(10 * var(--u)); font-size: calc(13.5 * var(--u)) }
.admin-table th { font-size: calc(12.5 * var(--u)); letter-spacing: 0 }
.admin-table td .button + .button { margin-left: calc(4 * var(--u)) }
.chk { width: calc(17 * var(--u)); height: calc(17 * var(--u)) }
.detail-table { width: 100% }
.detail-table th { width: calc(130 * var(--u)); padding: calc(12 * var(--u)) calc(14 * var(--u)); font-size: calc(13 * var(--u)); letter-spacing: 0 }
.detail-table td { padding: calc(12 * var(--u)) calc(16 * var(--u)); font-size: calc(14 * var(--u)) }
.content-cell { line-height: 1.85 }
.reply-cell small { margin-top: calc(8 * var(--u)) }
.admin-reply-head { margin-bottom: calc(12 * var(--u)); gap: calc(12 * var(--u)) }
.admin-reply-head h2 { margin: 0; font-size: calc(17 * var(--u)) }
.reply-form textarea { min-height: calc(180 * var(--u)); line-height: 1.7 }
:root { --home-space: clamp(calc(88 * var(--u)), 8.5vw, calc(136 * var(--u))); --home-title: clamp(calc(30 * var(--u)), 3.3vw, calc(50 * var(--u))) }
html { scroll-padding-top: calc(100 * var(--u)) }
.site-header { top: 0 }
.site-header.is-scrolled::before { top: 0; bottom: 0; height: auto }
.home-chapter { margin: 0 0 clamp(calc(28 * var(--u)), 3vw, calc(44 * var(--u))); line-height: 1.3 }
.home-chapter b { flex: none }
.home-chapter span { min-width: 0 }
.home-chapter::after { flex: 1 1 calc(24 * var(--u)); min-width: calc(24 * var(--u)) }
.home-head { margin-bottom: clamp(calc(40 * var(--u)), 4.4vw, calc(64 * var(--u))); grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); gap: 0 clamp(calc(30 * var(--u)), 5vw, calc(90 * var(--u))) }
.home-head h2 { margin: 0; line-height: 1.2; letter-spacing: -.04em }
.home-head h2, .welcome-copy h2, .new-product-copy h2, .catalog-band-copy h2 { font-size: var(--home-title) }
.home-head-side p { margin: 0 }
.home-head-side { gap: calc(16 * var(--u)) }
.welcome, .product-proof-inner, .category-showcase, .video-section, .new-product, .home-news, .catalog-section { padding-top: var(--home-space); padding-bottom: var(--home-space) }
.company-section-heading .eyebrow span, .thai-copy .eyebrow span { flex: none }
.region-tag { margin: 0 0 calc(22 * var(--u)); gap: calc(10 * var(--u)); padding: calc(6 * var(--u)) calc(14 * var(--u)) calc(6 * var(--u)) calc(6 * var(--u)); font-size: calc(13 * var(--u)) }
.region-tag b { padding: calc(4 * var(--u)) calc(8 * var(--u)); letter-spacing: .12em }
.facilities::before, .history-section::before { right: 0; top: clamp(calc(30 * var(--u)), 4vw, calc(70 * var(--u))); font-size: clamp(calc(80 * var(--u)), 13vw, calc(220 * var(--u))); line-height: 1; letter-spacing: -.05em }
.thai-subsidiary::after { right: -1vw; bottom: -2.4vw; font-size: clamp(calc(80 * var(--u)), 14vw, calc(240 * var(--u))); line-height: 1; letter-spacing: -.05em }
.page-main:has(> .section-index:first-child) { padding-top: 0 }
body:has(.page-main > .section-index:first-child) .site-header-solid:not(.is-scrolled):not(.menu-all-open)::before { bottom: auto; height: calc(180 * var(--u)) }
.section-index { min-height: clamp(calc(460 * var(--u)), 58vh, calc(600 * var(--u))); padding: calc(calc(108 * var(--u)) + clamp(calc(40 * var(--u)), 4vw, calc(70 * var(--u)))) clamp(calc(24 * var(--u)), 3vw, calc(72 * var(--u))) clamp(calc(64 * var(--u)), 6vw, calc(96 * var(--u))) }
.section-index-path { margin-bottom: calc(26 * var(--u)) }
.section-index h1 { max-width: 20ch; font-size: clamp(calc(42 * var(--u)), 5.2vw, calc(78 * var(--u))); line-height: 1.08; letter-spacing: -.045em }
.section-index .page-lead { max-width: 46em; margin-top: calc(22 * var(--u)); font-size: clamp(calc(15 * var(--u)), 1.25vw, calc(19 * var(--u))) }
.menu-toggle { width: calc(44 * var(--u)); height: calc(44 * var(--u)); margin-right: calc(-10 * var(--u)); padding: calc(10 * var(--u)); gap: calc(5 * var(--u)) }
.menu-toggle span { height: calc(2 * var(--u)) }
.menu-toggle b { width: 1px; height: 1px }
@media (min-width: 1181px) {
  .site-header { grid-template-columns: auto 1fr auto auto }
}
.menu-curtain { inset: 0; padding: clamp(calc(140 * var(--u)), 16vh, calc(180 * var(--u))) 0 calc(60 * var(--u)) }
.menu-curtain-inner { grid-template-columns: minmax(0, 3fr) minmax(calc(240 * var(--u)), 1fr); gap: clamp(calc(40 * var(--u)), 6vw, calc(120 * var(--u))) }
.curtain-nav { grid-template-columns: repeat(auto-fit, minmax(calc(170 * var(--u)), 1fr)); gap: calc(44 * var(--u)) clamp(calc(24 * var(--u)), 3vw, calc(48 * var(--u))) }
.curtain-title { margin-bottom: calc(14 * var(--u)); padding-bottom: calc(14 * var(--u)); font-size: clamp(calc(24 * var(--u)), 2.2vw, calc(32 * var(--u))); letter-spacing: -.03em }
.curtain-group ul { margin: 0; padding: 0 }
.curtain-group li a { padding: calc(7 * var(--u)) 0; font-size: calc(16 * var(--u)) }
.curtain-aside { padding-left: clamp(calc(24 * var(--u)), 3vw, calc(48 * var(--u))); gap: calc(34 * var(--u)) }
.curtain-label { margin: 0 0 calc(12 * var(--u)); font-size: calc(12 * var(--u)); letter-spacing: .16em }
.curtain-contact { gap: calc(6 * var(--u)); font-size: calc(14 * var(--u)) }
.curtain-phone { font-size: clamp(calc(30 * var(--u)), 2.6vw, calc(40 * var(--u))); letter-spacing: -.02em }
.curtain-social { gap: calc(4 * var(--u)) }
.curtain-social a { padding: calc(6 * var(--u)) 0; gap: calc(12 * var(--u)); font-size: calc(15 * var(--u)) }
.curtain-social svg { width: calc(24 * var(--u)); height: calc(24 * var(--u)); flex: none }
.curtain-thai { padding: calc(12 * var(--u)) calc(18 * var(--u)); font-size: calc(14 * var(--u)) }
.quality-section-heading { margin-bottom: clamp(calc(36 * var(--u)), 4vw, calc(56 * var(--u))); padding: 0 }
.quality-section-heading .home-chapter { margin-bottom: clamp(calc(18 * var(--u)), 2vw, calc(26 * var(--u))) }
.quality-section-heading h2 { max-width: none; margin: 0; font-size: var(--home-title); line-height: 1.2; letter-spacing: -.04em }
.quality-principles { padding: var(--home-space) 0 0 }
.quality-checks, .quality-process, .quality-evaluation, .quality-resources { padding-top: var(--home-space); padding-bottom: var(--home-space) }
.principle-list { margin: 0; gap: 0 }
.principle-list li { padding: calc(34 * var(--u)) calc(34 * var(--u)) calc(36 * var(--u)) 0 }
.principle-list li + li { padding-left: calc(34 * var(--u)) }
.principle-list li + li::before { left: calc(-15 * var(--u)); top: calc(-16 * var(--u)); width: calc(30 * var(--u)); height: calc(30 * var(--u)); font-size: calc(14 * var(--u)) }
.principle-list span { font-size: clamp(calc(36 * var(--u)), 3.4vw, calc(52 * var(--u))); line-height: 1; letter-spacing: -.04em }
.principle-list strong { margin-top: calc(18 * var(--u)); font-size: clamp(calc(19 * var(--u)), 1.5vw, calc(22 * var(--u))) }
.principle-list p { font-size: calc(15 * var(--u)) }
.quality-metrics { margin: clamp(calc(40 * var(--u)), 4vw, calc(64 * var(--u))) 0 0; grid-template-columns: repeat(4, minmax(0, 1fr)) }
.quality-metrics div { padding: clamp(calc(26 * var(--u)), 2.6vw, calc(38 * var(--u))) clamp(calc(20 * var(--u)), 2.2vw, calc(34 * var(--u))); gap: calc(10 * var(--u)) }
.quality-metrics dd { margin: 0; font-size: clamp(calc(34 * var(--u)), 3.4vw, calc(52 * var(--u))); line-height: 1.12; letter-spacing: -.03em }
.quality-metrics dt { font-size: calc(14 * var(--u)) }
.checks-grid { margin-top: 0; gap: 0 }
.quality-card { padding: clamp(calc(24 * var(--u)), 2.2vw, calc(32 * var(--u))) }
.quality-card-head { gap: calc(12 * var(--u)) }
.quality-card-number { font-size: calc(12 * var(--u)); letter-spacing: .08em }
.quality-card-cycle { padding: calc(3 * var(--u)) calc(9 * var(--u)); letter-spacing: .04em }
.quality-card-icon { width: calc(58 * var(--u)); height: calc(58 * var(--u)); margin: calc(24 * var(--u)) 0 0 }
.quality-card-copy { min-height: 0; padding: calc(20 * var(--u)) 0 0 }
.quality-card h3 { margin: 0; font-size: clamp(calc(18 * var(--u)), 1.5vw, calc(21 * var(--u))) }
.quality-card p { margin-top: calc(10 * var(--u)); font-size: calc(14 * var(--u)); line-height: 1.7 }
.quality-standard { margin-top: 0 }
.quality-process ol { gap: 0 }
.quality-process ol > li { padding: clamp(calc(26 * var(--u)), 2.4vw, calc(34 * var(--u))) }
.quality-process ol > li > span { font-size: clamp(calc(34 * var(--u)), 3vw, calc(46 * var(--u))); line-height: 1; letter-spacing: -.04em }
.quality-process ol > li > strong { margin-top: calc(16 * var(--u)); font-size: clamp(calc(18 * var(--u)), 1.4vw, calc(20 * var(--u))) }
.evaluation-copy { margin-top: 0 }
.evaluation-text p:first-child { font-size: clamp(calc(16 * var(--u)), 1.3vw, calc(19 * var(--u))); line-height: 1.7 }
.evaluation-text p + p { padding-top: clamp(calc(18 * var(--u)), 1.6vw, calc(26 * var(--u))) }
.evaluation-copy dl { gap: 0 }
.evaluation-copy dl div { padding: clamp(calc(24 * var(--u)), 2.4vw, calc(34 * var(--u))) }
.evaluation-copy dt { letter-spacing: .06em }
.evaluation-copy dd { margin-top: calc(10 * var(--u)); font-size: clamp(calc(26 * var(--u)), 2.6vw, calc(38 * var(--u))) }
.resource-links { margin-top: 0 }
.brand-proof::before { right: -2vw; top: clamp(calc(30 * var(--u)), 4vw, calc(70 * var(--u))); font-size: clamp(calc(120 * var(--u)), 18vw, calc(300 * var(--u))); line-height: 1; letter-spacing: -.05em }
.brand-proof .brand-call { margin-top: calc(8 * var(--u)); padding: 0; grid-template-columns: auto auto; column-gap: calc(18 * var(--u)); row-gap: calc(2 * var(--u)) }
.brand-call-icon { width: calc(60 * var(--u)); height: calc(60 * var(--u)); border-radius: 50% }
.brand-call-icon svg { width: calc(25 * var(--u)); height: calc(25 * var(--u)) }
.brand-proof .brand-call span { font-size: calc(13 * var(--u)); letter-spacing: .08em }
.brand-proof .brand-call strong { font-size: clamp(calc(28 * var(--u)), 2.4vw, calc(36 * var(--u))); line-height: 1.1 }
.brand-proof .brand-call small { font-size: calc(14 * var(--u)) }
.proof-subhead { margin: clamp(calc(8 * var(--u)), 1vw, calc(16 * var(--u))) 0 clamp(calc(24 * var(--u)), 2.6vw, calc(36 * var(--u))); padding-top: clamp(calc(28 * var(--u)), 3vw, calc(40 * var(--u))); gap: calc(10 * var(--u)) calc(30 * var(--u)) }
.proof-subhead h3 { margin: 0; font-size: clamp(calc(22 * var(--u)), 2vw, calc(30 * var(--u))); letter-spacing: -.03em }
.proof-subhead p { margin: 0; font-size: clamp(calc(16 * var(--u)), 1.2vw, calc(18 * var(--u))) }
.video-card h3 { font-size: calc(20 * var(--u)) }
.video-card p:not(.video-card-label) { font-size: calc(15.5 * var(--u)); line-height: 1.75 }
.home-head-side p { font-size: clamp(calc(16.5 * var(--u)), 1.3vw, calc(19 * var(--u))); line-height: 1.8 }
.home-head-side .text-link { font-size: calc(16 * var(--u)) }
.proof-card-body > p { font-size: calc(15 * var(--u)) }
.news-card-meta { font-size: calc(14 * var(--u)) }
.news-card h3 { font-size: clamp(calc(18 * var(--u)), 1.4vw, calc(21 * var(--u))); line-height: 1.45 }
.news-card-summary { font-size: calc(15.5 * var(--u)); line-height: 1.75 }
.legal-page { padding-bottom: clamp(calc(70 * var(--u)), 7vw, calc(110 * var(--u))) }
.legal-shell { padding-top: clamp(calc(44 * var(--u)), 5vw, calc(80 * var(--u))) }
.legal-page .section-index .page-lead { max-width: 46em; margin: calc(22 * var(--u)) auto 0 }
.legal-effective { margin: 0 0 calc(20 * var(--u)); font-size: calc(14 * var(--u)) }
.legal-page article p, .legal-page article ul { font-size: calc(16 * var(--u)) }
.legal-toc a { font-size: calc(15 * var(--u)) }
:is(.welcome-stats, .principle-list, .checks-grid, .quality-process ol).motion-ready::before { left: 0; right: 0; top: calc(-2 * var(--u)); height: calc(2 * var(--u)) }
.hero-strengths::before { left: 0; top: 0; width: 22%; height: 1px }
.hero-scroll { right: max(calc(18 * var(--u)), calc(var(--edge) / 2 - calc(7 * var(--u)))); bottom: clamp(calc(140 * var(--u)), 22vh, calc(230 * var(--u))); gap: calc(14 * var(--u)) }
.hero-scroll::before { font-size: calc(10 * var(--u)); letter-spacing: .32em }
.hero-scroll i { width: 1px; height: calc(72 * var(--u)) }
.hero-scroll i::after { left: 0; top: 0; width: 1px; height: 40% }
.section-index .section-index-bg { top: -8%; left: 0; width: 100%; height: 116% }
.section-index::before { inset: 0 }
.timeline { --rail: clamp(calc(30 * var(--u)), 3vw, calc(44 * var(--u))); padding-left: var(--rail) }
.timeline::before, .timeline::after { left: calc(7 * var(--u)); top: 0; width: calc(2 * var(--u)) }
.timeline::before { bottom: 0 }
.timeline::after { height: calc(var(--timeline, 1) * 100%) }
.timeline-year::before { left: calc(1px - var(--rail)); top: calc(calc(34 * var(--u)) + clamp(calc(30 * var(--u)), 3vw, calc(44 * var(--u))) / 2 - calc(7 * var(--u))); width: calc(14 * var(--u)); height: calc(14 * var(--u)); border-radius: 50% }
@media (hover: hover) and (pointer: fine) {
  [data-spotlight]::before { inset: 0 }
}
.lite-yt-play::before { inset: 0; border-radius: 50% }
.button-accent::after, .button-navy::after { inset: 0 }
.faq-list summary i { width: calc(18 * var(--u)); height: calc(18 * var(--u)) }
.faq-list summary i::before, .faq-list summary i::after, .faq-list details[open] summary i::before { left: 0; right: 0; top: 50%; height: calc(2 * var(--u)); margin-top: -1px }
@supports (interpolate-size: allow-keywords) {
  .faq-list details::details-content { block-size: 0 }
  .faq-list details[open]::details-content { block-size: auto }
}
.to-top { right: clamp(calc(16 * var(--u)), 2vw, calc(32 * var(--u))); bottom: max(clamp(calc(16 * var(--u)), 2vw, calc(32 * var(--u))), calc(env(safe-area-inset-bottom) + calc(12 * var(--u)))); width: calc(56 * var(--u)); height: calc(56 * var(--u)); padding: 0; border-radius: 50% }
.to-top svg { width: 100%; height: 100% }
.home-chapter { gap: clamp(calc(14 * var(--u)), 1.2vw, calc(20 * var(--u))); font-size: clamp(calc(14 * var(--u)), 1.05vw, calc(17 * var(--u))); letter-spacing: .16em }
.home-chapter b { font-size: clamp(calc(24 * var(--u)), 2vw, calc(32 * var(--u))); line-height: 1; letter-spacing: -.02em }
.home-chapter::after { height: calc(2 * var(--u)) }
[data-reveal].motion-ready:not(.is-visible) .home-chapter span { letter-spacing: .5em }
.home-chapter { min-width: 0; max-width: 100% }
.odometer > span { height: var(--odo-h); line-height: var(--odo-h) }
.odometer-digit > span > span { height: var(--odo-h) }
.hero-strengths strong span { font-size: inherit }
.split-word { padding: .08em .02em .14em; margin: -.08em -.02em -.14em }
.hero-strengths li { padding-right: clamp(calc(12 * var(--u)), 1.4vw, calc(24 * var(--u))) }
.hero-strengths li + li { padding-left: clamp(calc(14 * var(--u)), 1.6vw, calc(26 * var(--u))) }
.welcome-statement { margin: 0; font-size: clamp(calc(28 * var(--u)), 3.7vw, calc(62 * var(--u))); line-height: 1.26; letter-spacing: -.045em }
.welcome-copy h2 { font-size: clamp(calc(22 * var(--u)), 2vw, calc(32 * var(--u))); line-height: 1.35 }
@media (min-width: 921px) {
  .welcome { min-height: 100vh; min-height: 100svh; padding-bottom: clamp(calc(32 * var(--u)), 5vh, calc(64 * var(--u))) }
  .welcome > .home-chapter { margin: 0 }
  .welcome-media { height: auto; min-height: clamp(calc(300 * var(--u)), 46vh, calc(560 * var(--u))) }
  .welcome-media img { inset: 0 }
  .welcome-stats { margin-top: 0 }
  .welcome-statement { font-size: clamp(calc(28 * var(--u)), min(3.7vw, 5.6vh), calc(62 * var(--u))) }
  .welcome { padding-top: calc(var(--header-h) + clamp(calc(16 * var(--u)), 3vh, calc(56 * var(--u)))); row-gap: clamp(calc(16 * var(--u)), 2.8vh, calc(44 * var(--u))) }
}
@media (min-width: 921px) and (max-height: 820px) {
  .welcome-copy > p { margin: calc(14 * var(--u)) 0 calc(18 * var(--u)) }
  .welcome-stats div { padding-top: calc(16 * var(--u)) }
  .welcome-stats dd { font-size: clamp(calc(26 * var(--u)), 2.4vw, calc(36 * var(--u))) }
}
.has-motion .scene-expand { height: 260vh }
.scene-stage { min-height: min(80vh, calc(760 * var(--u))); grid-template-columns: minmax(0, 1fr) }
.has-motion .scene-stage { top: 0; height: 100vh; height: 100svh }
.scene-media { inset: 0; margin: 0 }
.scene-media img { width: 100%; height: 100% }
.scene-media::after { inset: 0 }
.scene-caption { padding: 0 var(--edge) }
.scene-big { margin: 0; font-size: clamp(calc(54 * var(--u)), 11vw, calc(200 * var(--u))); line-height: .95; letter-spacing: -.05em }
.scene-sub { margin: clamp(calc(16 * var(--u)), 1.6vw, calc(26 * var(--u))) 0 0; font-size: clamp(calc(16 * var(--u)), 1.5vw, calc(22 * var(--u))) }
.text-marquee { padding: clamp(calc(40 * var(--u)), 5vw, calc(84 * var(--u))) 0 }
.text-marquee p { width: max-content; margin: 0; gap: .36em; font-size: clamp(calc(54 * var(--u)), 9.5vw, calc(170 * var(--u))); line-height: 1.08; letter-spacing: -.04em }
.text-marquee i { width: .26em; height: .26em; flex: none; border-radius: 50% }
[data-reveal="mask"].motion-ready::after { inset: 0 }
.ceo-message-copy p { font-size: clamp(calc(16 * var(--u)), 1.15vw, calc(18 * var(--u))); line-height: 1.9 }
.ceo-message-copy p + p { margin-top: 1.1em }
.hero .eyebrow { margin-bottom: clamp(calc(22 * var(--u)), 2.4vw, calc(34 * var(--u))) }
.hero-title-primary { letter-spacing: -.05em }
.hero-strengths { grid-template-columns: repeat(4, minmax(0, 1fr)) }
.welcome-stats { grid-template-columns: repeat(3, minmax(0, 1fr)) }
.welcome-stats dd { margin-top: auto; padding-top: calc(6 * var(--u)) }
@media (min-width: 1181px) {
  .menu-all-bg { top: 100%; left: 50%; width: 100vw; height: calc(var(--all-menu-h, 0px) + calc(40 * var(--u))) }
  .site-header.menu-all-open::before { top: 0; bottom: 0; height: auto }
  .site-header.menu-all-open .nav-group .submenu { left: 0; width: max-content; min-width: 0; max-width: calc(168 * var(--u)); padding: calc(26 * var(--u)) 0 0 }
  .site-header.menu-all-open .nav-group .submenu a { margin: 0; padding: calc(8 * var(--u)) 0; font-size: calc(15.5 * var(--u)); line-height: 1.45 }
}
@media (min-width: 1181px) {
  .main-menu { gap: clamp(calc(40 * var(--u)), 4.2vw, calc(84 * var(--u))) }
}
@media (min-width: 701px) {
  .quality-process ol > li { grid-template-rows: subgrid; row-gap: 0 }
}
.footer-contact span a { padding-block: calc(10 * var(--u)); margin-block: calc(-10 * var(--u)) }
.region-tag { width: fit-content; max-width: 100% }
.thai-copy .eyebrow { margin: 0 0 calc(14 * var(--u)) }
.thai-copy h2 { font-size: clamp(calc(34 * var(--u)), 3.4vw, calc(44 * var(--u))); line-height: 1.18 }
.section-index-inner::after { width: calc(44 * var(--u)); height: calc(3 * var(--u)); margin-top: calc(30 * var(--u)) }
.article-body > h3 { margin-top: calc(36 * var(--u)); font-size: clamp(calc(19 * var(--u)), 1.6vw, calc(22 * var(--u))); line-height: 1.45 }
.article-body > h3 + * { margin-top: calc(12 * var(--u)) }
.article-list { margin: 0; padding: 0; gap: calc(10 * var(--u)) }
.article-list li { padding-left: calc(20 * var(--u)); font-size: calc(17 * var(--u)); line-height: 1.8 }
.article-list li::before { left: calc(3 * var(--u)); top: .78em; width: calc(6 * var(--u)); height: calc(6 * var(--u)) }
.article-image img { width: auto; max-width: 100%; height: auto; max-height: min(78vh, calc(760 * var(--u))); margin-inline: auto }
.article-gallery { grid-template-columns: repeat(auto-fit, minmax(min(100%, calc(200 * var(--u))), 1fr)); gap: calc(14 * var(--u)) }
.article-gallery figure { margin: 0 }
.article-gallery img { width: 100%; height: auto }
.article-gallery figcaption { margin-top: calc(8 * var(--u)); font-size: calc(13 * var(--u)) }
.article-product.is-text { grid-template-columns: minmax(0, 1fr) auto }
.article-link { margin-top: calc(30 * var(--u)) }
.article-product + .article-product { margin-top: calc(12 * var(--u)) }
.site-header .brand img { width: clamp(calc(224 * var(--u)), 16.5vw, calc(288 * var(--u))) }
@media (min-width: 1181px) {
  .site-header.is-scrolled .brand img { width: clamp(calc(214 * var(--u)), 15.6vw, calc(262 * var(--u))) }
}
.languages { flex: none }
.footer-column h2 { margin: 0 0 calc(16 * var(--u)); font-size: calc(20 * var(--u)); line-height: 1.3; letter-spacing: .02em }
.site-footer .footer-brand { width: min(calc(270 * var(--u)), 100%) }
.site-footer .footer-brand img { width: 100% }
@media (min-width: 1181px) {
  .site-footer { grid-template-columns: 1.3fr 1.3fr 1.1fr .9fr }
}
.quality-card-cycle { font-size: calc(12 * var(--u)) }
.product-card-code { font-size: calc(12.5 * var(--u)) }
.article-cards span, .faq-list summary span { font-size: calc(13 * var(--u)) }
.video-card-label { font-size: calc(12.5 * var(--u)) }
.field em, legend em { font-size: calc(12.5 * var(--u)) }
.article-product small, .article-nav small { font-size: calc(13 * var(--u)) }
.badge-list li { font-size: calc(13 * var(--u)) }
.news-card .card-link { font-size: calc(13.5 * var(--u)) }
.section-index-path { font-size: calc(13 * var(--u)) }
.timeline-year h3 { line-height: 1.15 }
.timeline-year li span { margin-top: calc(6 * var(--u)) }
.home-chapter span { line-height: 1.4 }
.product-card-copy h3 { line-height: 1.45 }
.product-detail-intro h1 { line-height: 1.2 }
.notice-box li + li, .legal-page li + li { margin-top: calc(6 * var(--u)) }
.spec-section thead th, .article-table th { font-size: calc(13.5 * var(--u)) }
.quality-process li strong { line-height: 1.4 }
.region-tag b { font-size: calc(12 * var(--u)) }
.origin-badge span { font-size: calc(11.5 * var(--u)) }
@media (min-width: 581px) {
  .hero .eyebrow { padding: calc(8 * var(--u)) calc(16 * var(--u)); font-size: clamp(calc(11 * var(--u)), .8vw, calc(12.5 * var(--u))) }
}
@media (min-width: 701px) {
  .hero-title-primary { font-size: clamp(calc(38 * var(--u)), 5vw, calc(80 * var(--u))) }
  html[lang="en"] .hero-title-primary { font-size: clamp(calc(32 * var(--u)), 4vw, calc(62 * var(--u))) }
}
@media (min-width: 921px) {
  .hero-actions { margin-top: calc(30 * var(--u)) }
  .hero .button { min-height: calc(50 * var(--u)); padding: 0 calc(24 * var(--u)); gap: calc(10 * var(--u)); font-size: clamp(calc(14 * var(--u)), .95vw, calc(15 * var(--u))) }
}
@media (min-width: 1181px) {
  .hero-strengths strong { font-size: clamp(calc(19 * var(--u)), 1.6vw, calc(26 * var(--u))); line-height: 1.2 }
}
.hero-strengths span { line-height: 1.5 }
.proof-card-body > p { margin-bottom: 0 }
.field, .privacy-field { min-width: 0 }
.agree-row { min-height: calc(44 * var(--u)); font-size: calc(16 * var(--u)) }
.agree-row input[type="checkbox"] { width: calc(22 * var(--u)); height: calc(22 * var(--u)); min-height: calc(22 * var(--u)); padding: 0; margin: 0 }
[data-form-errors], .field input, .field select, .field textarea { scroll-margin-top: calc(120 * var(--u)) }
.hero-title-primary { font-size: clamp(calc(30 * var(--u)), 3.75vw, calc(60 * var(--u))); line-height: 1.15 }
html[lang="en"] .hero-title-primary { font-size: clamp(calc(28 * var(--u)), 3vw, calc(48 * var(--u))) }
.hero-actions { margin-top: calc(24 * var(--u)); gap: calc(10 * var(--u)) }
.hero .button { min-height: calc(44 * var(--u)); padding: 0 calc(20 * var(--u)); gap: calc(8 * var(--u)); font-size: calc(14 * var(--u)) }
.hero-inner { padding-top: calc(100 * var(--u)); padding-bottom: calc(100 * var(--u)) }
.hero .eyebrow { margin: 0 0 calc(12 * var(--u)); padding: 0; font-size: calc(12 * var(--u)); line-height: 1.5; letter-spacing: .16em }
:root { --header-h: calc(96 * var(--u)) }
@media (min-width: 1181px) {
  html { scroll-padding-top: calc(112 * var(--u)) }
  .site-header, .site-header.is-scrolled { min-height: calc(96 * var(--u)) }
  .site-header .nav-group, .site-header.is-scrolled .nav-group { padding: calc(32 * var(--u)) 0 }
  .site-header .brand img, .site-header.is-scrolled .brand img { width: clamp(calc(224 * var(--u)), 16.5vw, calc(288 * var(--u))) }
  .site-header .submenu, .site-header.is-scrolled .submenu { top: calc(84 * var(--u)) }
  .site-header.menu-all-open .nav-group .submenu { top: 100% }
}
.welcome-copy { gap: clamp(calc(18 * var(--u)), 2vw, calc(30 * var(--u))) }
.home-head-stacked { grid-template-columns: minmax(0, 1fr) }
.home-head-stacked > :is(.home-head-side) { margin-top: clamp(calc(18 * var(--u)), 2vw, calc(26 * var(--u))) }
.home-head-stacked > :is(h2, .home-head-side) { width: 100% }
.video-section { padding-top: clamp(calc(72 * var(--u)), 7vw, calc(112 * var(--u))) }
.video-head { margin-bottom: clamp(calc(36 * var(--u)), 4vw, calc(56 * var(--u))) }
.video-head .home-chapter { margin-bottom: clamp(calc(18 * var(--u)), 2vw, calc(28 * var(--u))) }
.video-head .home-head-side { gap: calc(14 * var(--u)) }
.welcome-product-search { width: min(100%, calc(960 * var(--u))); min-width: 0; margin-inline: auto; padding-top: clamp(calc(24 * var(--u)), 2.8vw, calc(34 * var(--u))); grid-template-columns: minmax(0, 1fr) auto }
.welcome-product-search::before { inset: 0 0 auto; height: 1px }
.welcome-product-search-head { margin-bottom: calc(14 * var(--u)); gap: calc(12 * var(--u)) }
.welcome-product-search-head strong { font-size: clamp(calc(18 * var(--u)), 1.5vw, calc(22 * var(--u))); line-height: 1.2; letter-spacing: -.025em }
.welcome-product-search-head span { font-size: calc(14 * var(--u)) }
.welcome-product-search input { min-width: 0; min-height: calc(64 * var(--u)); padding: calc(16 * var(--u)) calc(20 * var(--u)); border-radius: 0; font: inherit; font-size: clamp(calc(16 * var(--u)), 1.25vw, calc(19 * var(--u))) }
.welcome-product-search button { min-width: calc(118 * var(--u)); min-height: calc(64 * var(--u)); padding: 0 calc(26 * var(--u)); gap: calc(10 * var(--u)); font: inherit; font-size: calc(17 * var(--u)) }
.welcome-product-search svg { width: calc(22 * var(--u)); height: calc(22 * var(--u)); flex: none }
@media (min-width: 1081px) {
  .welcome-bar { grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr) }
  .welcome-bar .welcome-stats { margin: 0 }
  .welcome-bar .welcome-stats dd { font-size: clamp(calc(26 * var(--u)), 2.3vw, calc(38 * var(--u))) }
  .welcome-bar .welcome-product-search { width: auto; margin: 0; padding: calc(26 * var(--u)) 0 0 clamp(calc(20 * var(--u)), 2vw, calc(32 * var(--u))) }
  .welcome-bar .welcome-product-search::before { inset: calc(-2 * var(--u)) auto auto 0; width: calc(68 * var(--u)); height: calc(2 * var(--u)) }
  .welcome-bar .welcome-product-search-head { margin-bottom: calc(10 * var(--u)) }
  .welcome-bar .welcome-product-search-head strong { font-size: calc(15 * var(--u)) }
  .welcome-bar .welcome-product-search-head span { font-size: calc(13 * var(--u)) }
  .welcome-bar .welcome-product-search :is(input, button) { min-height: calc(54 * var(--u)) }
  .welcome-bar .welcome-product-search input { padding-block: calc(12 * var(--u)); font-size: calc(16 * var(--u)) }
  .welcome-bar .welcome-product-search button { min-width: calc(104 * var(--u)); padding-inline: calc(20 * var(--u)); font-size: calc(16 * var(--u)) }
}
@media (min-width: 1081px) and (max-height: 820px) {
  .welcome-bar .welcome-product-search { padding-top: calc(16 * var(--u)) }
}
.product-search { padding-top: clamp(calc(34 * var(--u)), 4vw, calc(56 * var(--u))) }
.product-search-form { padding: clamp(calc(20 * var(--u)), 2.2vw, calc(30 * var(--u))); grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr) auto; gap: calc(16 * var(--u)) clamp(calc(14 * var(--u)), 1.6vw, calc(24 * var(--u))) }
.product-search-form h2 { margin: 0; font-size: clamp(calc(20 * var(--u)), 1.6vw, calc(24 * var(--u))); letter-spacing: -.02em }
.product-search-query, .product-search-sizes label { min-width: 0; gap: calc(8 * var(--u)) }
.product-search-query label, .product-search-sizes label > span { font-size: calc(14 * var(--u)) }
.product-search-sizes { min-width: 0; margin: 0; padding: 0; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: calc(12 * var(--u)) }
.product-search-sizes legend { margin-bottom: calc(8 * var(--u)); padding: 0; font-size: calc(13 * var(--u)) }
.product-search-form :is(input, select) { width: 100%; min-width: 0; min-height: calc(50 * var(--u)); padding: calc(12 * var(--u)) calc(14 * var(--u)); border-radius: 0; font: inherit; font-size: calc(16 * var(--u)) }
.product-search-form .button { min-height: calc(50 * var(--u)); padding: 0 calc(28 * var(--u)); gap: calc(8 * var(--u)); font-size: calc(16 * var(--u)) }
.product-search-form .button svg { width: calc(20 * var(--u)); height: calc(20 * var(--u)); flex: none }
.search-results { margin-top: clamp(calc(36 * var(--u)), 4vw, calc(56 * var(--u))); padding-bottom: clamp(calc(70 * var(--u)), 7vw, calc(110 * var(--u))) }
.search-results-head { padding-bottom: calc(18 * var(--u)); gap: calc(8 * var(--u)) calc(20 * var(--u)) }
.search-results-head h2 { margin: 0; font-size: clamp(calc(26 * var(--u)), 2.4vw, calc(34 * var(--u))); letter-spacing: -.03em }
.search-results-head p { margin: 0; font-size: calc(16 * var(--u)) }
.search-results-head .text-link { margin-left: auto }
.search-block { margin-top: clamp(calc(28 * var(--u)), 3vw, calc(44 * var(--u))) }
.search-block h3 { margin: 0 0 calc(14 * var(--u)); padding-left: calc(12 * var(--u)); font-size: calc(19 * var(--u)) }
.search-block h3 small { margin-left: calc(6 * var(--u)); font-size: calc(14 * var(--u)) }
.search-items { margin: 0; padding: 0 }
.search-items a { min-height: calc(60 * var(--u)); padding: calc(14 * var(--u)) calc(10 * var(--u)); grid-template-columns: minmax(calc(120 * var(--u)), calc(220 * var(--u))) minmax(0, 1fr) auto calc(24 * var(--u)); gap: calc(4 * var(--u)) calc(20 * var(--u)) }
.search-items strong { font-size: calc(17 * var(--u)) }
.search-items span { font-size: calc(16 * var(--u)) }
.search-items small { font-size: calc(14 * var(--u)) }
.search-items b { font-size: calc(18 * var(--u)) }
.search-more { margin: calc(14 * var(--u)) 0 0; font-size: calc(15 * var(--u)) }
.search-empty { margin-top: clamp(calc(28 * var(--u)), 3vw, calc(44 * var(--u))); padding: clamp(calc(36 * var(--u)), 4vw, calc(56 * var(--u))) calc(24 * var(--u)); gap: calc(20 * var(--u)) }
.search-empty p { max-width: calc(560 * var(--u)); margin: 0; font-size: calc(16 * var(--u)); line-height: 1.75 }
.spec-section tr > :first-child { left: 0 }
.spec-section .table-scroll.is-scrolled tr > :first-child::after { top: 0; bottom: 0; left: 100%; width: calc(12 * var(--u)) }
.spec-section tbody tr[id] { scroll-margin-top: 18vh }
.cms-admin .board { padding-block: clamp(calc(36 * var(--u)), 6vw, calc(80 * var(--u))) }
.cms-tabs { margin-bottom: calc(18 * var(--u)); gap: calc(8 * var(--u)) }
.cms-tabs a { min-height: calc(44 * var(--u)); padding: 0 calc(16 * var(--u)) }
.cms-layout { grid-template-columns: minmax(calc(260 * var(--u)), .72fr) minmax(0, 2fr); gap: calc(18 * var(--u)) }
.cms-layout .board-card { margin: 0 }
.cms-list { padding: 0; top: calc(118 * var(--u)); max-height: calc(100vh - calc(140 * var(--u))) }
.cms-list-head { padding: calc(20 * var(--u)) }
.cms-list-head h2 { margin: 0; font-size: calc(18 * var(--u)) }
.cms-list-head span { font-size: calc(13 * var(--u)) }
.cms-new { padding: calc(16 * var(--u)) calc(20 * var(--u)) }
.cms-new label { margin-bottom: calc(6 * var(--u)); font-size: calc(13 * var(--u)) }
.cms-new input { min-width: 0; height: calc(42 * var(--u)); flex: 1; padding: 0 calc(10 * var(--u)) }
.cms-new button { min-width: calc(54 * var(--u)) }
.cms-list ul { margin: 0; padding: 0 }
.cms-list li a { min-height: calc(64 * var(--u)); padding: calc(12 * var(--u)) calc(20 * var(--u)); gap: calc(3 * var(--u)) }
.cms-list li small { font-size: calc(11 * var(--u)) }
.cms-editor { min-width: 0 }
.cms-empty { min-height: calc(300 * var(--u)) }
.cms-empty h2 { margin-bottom: calc(8 * var(--u)) }
.cms-form-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: calc(18 * var(--u)) }
.cms-form-grid label { min-width: 0; gap: calc(7 * var(--u)); font-size: calc(13 * var(--u)) }
.cms-form-grid :is(input, select, textarea) { width: 100%; border-radius: 0; padding: calc(11 * var(--u)) calc(12 * var(--u)); font: inherit }
.cms-form-grid :is(input, select) { min-height: calc(46 * var(--u)) }
.cms-form-grid textarea { line-height: 1.65 }
.cms-form-grid .cms-json { font-size: calc(12 * var(--u)) }
.cms-save { margin-top: calc(20 * var(--u)); padding-top: calc(18 * var(--u)); gap: calc(16 * var(--u)) }
.cms-history { margin-top: calc(24 * var(--u)); padding-top: calc(18 * var(--u)) }
.cms-history h3 { margin: 0 0 calc(12 * var(--u)); font-size: calc(15 * var(--u)) }
.cms-history h3 small { margin-left: calc(8 * var(--u)); font-size: calc(12 * var(--u)) }
.cms-history ul { margin: 0; padding: 0 }
.cms-history li { padding: calc(10 * var(--u)) 0; gap: calc(10 * var(--u)) }
.cms-history li span { font-size: calc(13 * var(--u)) }
.cms-history button { min-height: calc(44 * var(--u)); padding: 0 calc(14 * var(--u)); font: inherit; font-size: calc(13 * var(--u)) }
.cms-delete { margin-top: calc(18 * var(--u)); padding-top: calc(16 * var(--u)) }
.cms-delete button { min-height: calc(44 * var(--u)); padding: 0 calc(16 * var(--u)); font: inherit; font-size: calc(13 * var(--u)) }
.news-card-media img { inset: 0 }
.popup-overlay { inset: 0; padding: calc(20 * var(--u)) }
.popup-modal { width: 100%; max-width: calc(440 * var(--u)); max-height: calc(100vh - calc(40 * var(--u))); padding: calc(40 * var(--u)) calc(32 * var(--u)) calc(28 * var(--u)) }
.popup-close { top: calc(10 * var(--u)); right: calc(10 * var(--u)); width: calc(40 * var(--u)); height: calc(40 * var(--u)) }
.popup-close svg { width: calc(18 * var(--u)); height: calc(18 * var(--u)) }
.popup-eyebrow { margin: 0 0 calc(8 * var(--u)); font-size: calc(12 * var(--u)); letter-spacing: .04em }
.popup-modal h2 { margin: 0 0 calc(16 * var(--u)); font-size: calc(22 * var(--u)) }
.popup-body { font-size: calc(15 * var(--u)); line-height: 1.75 }
.popup-actions { margin-top: calc(26 * var(--u)); gap: calc(12 * var(--u)) }
.popup-actions button { min-height: calc(44 * var(--u)); padding: 0 calc(16 * var(--u)); font: inherit; font-size: calc(13 * var(--u)) }
.popup-actions button[data-popup-dismiss] { padding: 0 }
.article-image-placeholder { min-height: clamp(calc(160 * var(--u)), 28vw, calc(280 * var(--u))); padding: calc(24 * var(--u)); font-size: calc(16 * var(--u)) }
.header-icon { width: calc(44 * var(--u)); height: calc(44 * var(--u)); flex: none }
.header-icon svg { width: calc(24 * var(--u)); height: calc(24 * var(--u)) }
@media (min-width: 1181px) {
  .header-icon { width: calc(34 * var(--u)) }
  .header-actions .header-icon + .header-icon { margin-left: calc(-8 * var(--u)) }
  .header-actions .header-cart { margin-right: calc(-4 * var(--u)) }
}
.header-cart-count { top: calc(3 * var(--u)); right: 0; min-width: calc(18 * var(--u)); height: calc(18 * var(--u)); padding: 0 calc(5 * var(--u)); border-radius: calc(9 * var(--u)); font-size: calc(11 * var(--u)); line-height: 1 }
.curtain-shop { margin-bottom: calc(28 * var(--u)); gap: calc(8 * var(--u)) }
.curtain-shop a { min-height: calc(44 * var(--u)); padding: 0 calc(18 * var(--u)); gap: calc(8 * var(--u)) }
.curtain-shop b { min-width: calc(20 * var(--u)); height: calc(20 * var(--u)); padding: 0 calc(6 * var(--u)); border-radius: calc(10 * var(--u)); font-size: calc(12 * var(--u)) }
.shop { padding: clamp(calc(40 * var(--u)), 5vw, calc(64 * var(--u))) 0 clamp(calc(80 * var(--u)), 8vw, calc(110 * var(--u))) }
.shop-steps { margin: 0 0 calc(28 * var(--u)); padding: 0; grid-template-columns: repeat(3, minmax(0, 1fr)) }
.shop-steps li { min-width: 0 }
.shop-steps li > a, .shop-steps li > span { min-height: calc(54 * var(--u)); padding: calc(10 * var(--u)) calc(6 * var(--u)) calc(12 * var(--u)); gap: calc(10 * var(--u)); font-size: calc(15 * var(--u)); line-height: 1.35 }
.shop-steps b { width: calc(28 * var(--u)); height: calc(28 * var(--u)); flex: none; border-radius: 50%; font-size: calc(13 * var(--u)) }
.shop-member-bar { margin: 0 0 calc(26 * var(--u)); padding: calc(12 * var(--u)) calc(18 * var(--u)); gap: calc(8 * var(--u)) calc(20 * var(--u)); font-size: calc(14 * var(--u)) }
.shop-member-bar p { margin: 0 }
.shop-member-bar nav { gap: calc(4 * var(--u)) calc(18 * var(--u)) }
.shop-member-bar a, .shop-member-bar button { min-height: calc(40 * var(--u)); padding: 0; font: inherit }
.shop-member-bar form { margin: 0 }
.order-page .shop { padding-top: clamp(calc(24 * var(--u)), 3vw, calc(40 * var(--u))) }
.order-sheet-grid { grid-template-columns: minmax(0, 1fr) calc(470 * var(--u)); gap: calc(32 * var(--u)) }
.order-step-head { margin-bottom: calc(18 * var(--u)) }
.order-step-head h2 { margin: 0; font-size: calc(20 * var(--u)) }
.order-step-head p { margin: calc(4 * var(--u)) 0 0; font-size: calc(14 * var(--u)); line-height: 1.7 }
.order-catalog-tools { margin-bottom: calc(22 * var(--u)); gap: calc(12 * var(--u)) }
.order-search svg { left: calc(15 * var(--u)); top: 50%; width: calc(19 * var(--u)); height: calc(19 * var(--u)) }
.order-search input { width: 100%; min-height: calc(50 * var(--u)); padding: 0 calc(16 * var(--u)) 0 calc(44 * var(--u)); border-radius: 0; font: inherit; font-size: calc(15.5 * var(--u)) }
.order-chips { gap: calc(6 * var(--u)) }
.order-chips button { min-height: calc(38 * var(--u)); padding: 0 calc(16 * var(--u)); border-radius: calc(999 * var(--u)); font: inherit; font-size: calc(14 * var(--u)) }
.order-category { margin-bottom: calc(28 * var(--u)) }
.order-tiles { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: calc(12 * var(--u)) }
.order-tile { min-height: calc(120 * var(--u)); padding: calc(14 * var(--u)) calc(44 * var(--u)) calc(14 * var(--u)) calc(14 * var(--u)); grid-template-columns: calc(92 * var(--u)) minmax(0, 1fr); gap: calc(16 * var(--u)); font: inherit }
.order-tile-photo { width: calc(92 * var(--u)); height: calc(92 * var(--u)) }
.order-tile-photo img { width: 100%; height: 100% }
.order-tile-name { gap: calc(4 * var(--u)) }
.order-tile-name strong { font-size: calc(19 * var(--u)) }
.order-tile-name small { font-size: calc(13 * var(--u)) }
.order-tile-picked { top: calc(12 * var(--u)); right: calc(12 * var(--u)); padding: calc(3 * var(--u)) calc(10 * var(--u)); border-radius: calc(999 * var(--u)); font-size: calc(12 * var(--u)) }
.order-tile-arrow { right: calc(18 * var(--u)); top: 50%; width: calc(9 * var(--u)); height: calc(9 * var(--u)) }
.order-category-head { margin: 0 0 calc(10 * var(--u)); gap: calc(6 * var(--u)) calc(14 * var(--u)) }
.order-category-head .order-category-title { margin: 0; font-size: calc(18 * var(--u)); letter-spacing: 0 }
.order-category-back { margin-left: auto; padding: 0; font: inherit; font-size: calc(13.5 * var(--u)); text-underline-offset: calc(3 * var(--u)) }
.order-category-title { margin: 0 0 calc(8 * var(--u)); font-size: calc(13.5 * var(--u)); letter-spacing: .02em }
.order-product-head { width: 100%; min-height: calc(72 * var(--u)); padding: calc(10 * var(--u)) calc(18 * var(--u)) calc(10 * var(--u)) calc(12 * var(--u)); grid-template-columns: calc(52 * var(--u)) minmax(0, 1fr) auto calc(14 * var(--u)); gap: calc(14 * var(--u)); font: inherit }
.order-product-thumb { width: calc(52 * var(--u)); height: calc(52 * var(--u)) }
.order-product-thumb img { width: 100%; height: 100% }
.order-product-name { min-width: 0; gap: calc(2 * var(--u)) }
.order-product-name strong { font-size: calc(15.5 * var(--u)) }
.order-product-name small { font-size: calc(12.5 * var(--u)) }
.order-product-picked { padding: calc(3 * var(--u)) calc(10 * var(--u)); border-radius: calc(999 * var(--u)); font-size: calc(12.5 * var(--u)) }
.order-product-chevron { width: calc(8 * var(--u)); height: calc(8 * var(--u)) }
.order-product-note { margin: 0 0 calc(12 * var(--u)); padding: calc(10 * var(--u)) calc(14 * var(--u)); font-size: calc(13.5 * var(--u)); line-height: 1.6 }
.order-picker { padding: calc(18 * var(--u)) calc(18 * var(--u)) calc(20 * var(--u)) }
.order-picker-bar { grid-template-columns: minmax(0, 1fr) calc(100 * var(--u)) calc(88 * var(--u)) calc(96 * var(--u)); gap: calc(8 * var(--u)) }
.order-select { min-width: 0 }
.order-select-button { width: 100%; min-height: calc(48 * var(--u)); padding: 0 calc(40 * var(--u)) 0 calc(14 * var(--u)); gap: calc(8 * var(--u)); font: inherit; font-size: calc(15 * var(--u)) }
.order-select-face { min-width: 0; gap: calc(8 * var(--u)) }
.order-select-caret { right: calc(16 * var(--u)); top: 50%; width: 0; height: 0 }
.order-select-list { left: 0; right: 0; top: calc(100% + calc(4 * var(--u))); max-height: min(calc(360 * var(--u)), 55vh); margin: 0; padding: calc(4 * var(--u)) 0 }
.order-select-group { top: calc(-4 * var(--u)); padding: calc(8 * var(--u)) calc(14 * var(--u)) calc(6 * var(--u)); font-size: calc(12 * var(--u)) }
.order-select-option { min-height: calc(46 * var(--u)); padding: calc(8 * var(--u)) calc(14 * var(--u)); grid-template-columns: minmax(0, 1fr) auto; gap: 1px calc(12 * var(--u)) }
.order-select-option[aria-selected="true"] .order-select-main strong { text-underline-offset: calc(3 * var(--u)) }
.order-select-main { min-width: 0; gap: calc(4 * var(--u)) calc(8 * var(--u)); font-size: calc(14.5 * var(--u)) }
.order-select-option small { font-size: calc(12.5 * var(--u)) }
.order-select-have { font-size: calc(12.5 * var(--u)) }
.order-picker-unit, .order-picker-qty { width: 100%; min-width: 0; min-height: calc(48 * var(--u)); padding: 0 calc(10 * var(--u)); border-radius: 0; font: inherit; font-size: calc(15 * var(--u)) }
.order-picker-add { min-height: calc(48 * var(--u)); padding: 0 calc(12 * var(--u)) }
.order-picker-info { min-height: calc(20 * var(--u)); margin: calc(10 * var(--u)) 0 0; font-size: calc(13.5 * var(--u)) }
.order-picker-info strong { font-size: calc(15 * var(--u)) }
.order-picker-info small { font-size: calc(12.5 * var(--u)) }
.order-picked-title { margin: calc(18 * var(--u)) 0 calc(4 * var(--u)); font-size: calc(13 * var(--u)) }
.order-picked { margin: 0; padding: 0 }
.order-picked .order-line { grid-template-columns: minmax(calc(110 * var(--u)), calc(190 * var(--u))) calc(84 * var(--u)) calc(96 * var(--u)) calc(40 * var(--u)) minmax(calc(70 * var(--u)), 1fr) calc(24 * var(--u)) }
.order-pack { margin-left: calc(2 * var(--u)); padding: 1px calc(6 * var(--u)); font-size: calc(12 * var(--u)) }
.swatch { width: calc(14 * var(--u)); height: calc(14 * var(--u)); flex: none; border-radius: 50% }
.order-line { padding: calc(9 * var(--u)) 0; grid-template-columns: minmax(0, 1fr) calc(74 * var(--u)) calc(96 * var(--u)) calc(34 * var(--u)) calc(82 * var(--u)) calc(24 * var(--u)); gap: calc(8 * var(--u)); font-size: calc(14 * var(--u)) }
.order-line-code { min-width: 0 }
.order-line-code strong { font-size: calc(14.5 * var(--u)) }
.order-line-code small { font-size: calc(12 * var(--u)) }
.order-line-color { gap: calc(6 * var(--u)) }
.order-line-unit { font-size: calc(14.5 * var(--u)) }
.order-line-pcs { font-size: calc(12 * var(--u)) }
.order-line-remove { width: calc(24 * var(--u)); height: calc(24 * var(--u)); padding: 0; font-size: calc(18 * var(--u)); line-height: 1 }
.order-stepper { height: calc(34 * var(--u)); grid-template-columns: calc(30 * var(--u)) minmax(0, 1fr) calc(30 * var(--u)) }
.order-stepper button { padding: 0; font: inherit; font-size: calc(16 * var(--u)); line-height: 1 }
.order-stepper input { width: 100%; min-width: 0; padding: 0 calc(2 * var(--u)); border-radius: 0; font: inherit; font-size: calc(15.5 * var(--u)) }
.order-stepper input::-webkit-outer-spin-button, .order-stepper input::-webkit-inner-spin-button { margin: 0 }
.order-catalog-none, .order-noscript { margin: 0 0 calc(20 * var(--u)); padding: calc(20 * var(--u)) }
.order-cart { top: calc(var(--header-h, calc(90 * var(--u))) + calc(16 * var(--u))); max-height: calc(100vh - var(--header-h, calc(90 * var(--u))) - calc(32 * var(--u))) }
.order-cart-head { padding: calc(18 * var(--u)) calc(20 * var(--u)) calc(10 * var(--u)); gap: calc(10 * var(--u)) }
.order-cart-head h2 { margin: 0; font-size: calc(20 * var(--u)) }
.order-cart-count { font-size: calc(14 * var(--u)) }
.order-cart-clear { margin-left: auto; padding: 0; font: inherit; font-size: calc(13 * var(--u)); text-underline-offset: calc(3 * var(--u)) }
.order-cart-note { margin: 0 calc(20 * var(--u)) calc(4 * var(--u)); font-size: calc(13 * var(--u)) }
.order-cart-list { flex: 1 1 auto; min-height: 0; margin: 0; padding: 0 calc(20 * var(--u)) }
.order-cart-group { padding: calc(10 * var(--u)) 0 calc(4 * var(--u)) }
.order-cart-group-title { margin: 0 0 calc(2 * var(--u)); padding: 0; font: inherit; font-size: calc(13 * var(--u)) }
button.order-cart-group-title:hover { text-underline-offset: calc(3 * var(--u)) }
.order-lines { margin: 0; padding: 0 }
.order-cart-empty { margin: calc(4 * var(--u)) calc(20 * var(--u)) calc(18 * var(--u)); font-size: calc(14 * var(--u)); line-height: 1.7 }
.order-cart-total { margin: 0; padding: calc(12 * var(--u)) calc(20 * var(--u)) calc(4 * var(--u)) }
.order-cart-total div { gap: calc(12 * var(--u)); padding: calc(3 * var(--u)) 0 }
.order-cart-total dd { margin: 0 }
.order-cart-unit dt, .order-cart-unit dd { font-size: calc(18 * var(--u)) }
.order-cart-sum { margin-top: calc(6 * var(--u)); padding-top: calc(7 * var(--u)) !important }
.order-cart-sum dt, .order-cart-sum dd { font-size: calc(13 * var(--u)) }
.order-cart-status { min-height: calc(18 * var(--u)); margin: calc(2 * var(--u)) calc(20 * var(--u)) 0; font-size: calc(12 * var(--u)) }
.order-cart-next { margin: calc(8 * var(--u)) calc(20 * var(--u)) 0 }
.order-cart-quote { margin: calc(12 * var(--u)) calc(20 * var(--u)) calc(18 * var(--u)); font-size: calc(13 * var(--u)) }
.order-cart-quote a { text-underline-offset: calc(3 * var(--u)) }
.order-info { margin-top: calc(40 * var(--u)) }
.order-party { min-width: 0; margin: 0 0 calc(18 * var(--u)); padding: calc(14 * var(--u)) calc(18 * var(--u)) calc(4 * var(--u)) }
.order-party legend { margin-left: calc(-6 * var(--u)); padding: 0 calc(6 * var(--u)); font-size: calc(15 * var(--u)) }
.order-receiver-same { margin: 0 0 calc(14 * var(--u)) }
.order-address-pick select { width: 100%; min-height: calc(46 * var(--u)); padding: 0 calc(12 * var(--u)); border-radius: 0; font: inherit }
.order-save-address { margin: 0 0 calc(14 * var(--u)); gap: calc(8 * var(--u)) calc(14 * var(--u)) }
.order-save-address .agree-row { margin: 0 }
.order-save-address input[type="text"] { flex: 1 1 calc(220 * var(--u)); min-width: 0; max-width: 100%; min-height: calc(40 * var(--u)); padding: 0 calc(12 * var(--u)); border-radius: 0; font: inherit; font-size: calc(14 * var(--u)) }
.order-sender { padding-bottom: calc(8 * var(--u)) }
.order-sender summary { padding: calc(2 * var(--u)) 0 calc(10 * var(--u)); font-size: calc(15 * var(--u)) }
.order-sender summary small { margin-left: calc(6 * var(--u)); font-size: calc(13 * var(--u)) }
.order-info-foot { margin-top: calc(10 * var(--u)); padding-top: calc(18 * var(--u)); gap: calc(12 * var(--u)) calc(20 * var(--u)) }
.order-info-summary { margin: 0; font-size: calc(17 * var(--u)) }
.order-info-foot .button { min-width: calc(220 * var(--u)) }
.order-info-note { margin: calc(14 * var(--u)) 0 0; font-size: calc(13 * var(--u)); line-height: 1.7 }
.order-confirm { width: min(calc(720 * var(--u)), calc(100vw - calc(32 * var(--u)))); max-height: calc(100vh - calc(48 * var(--u))); padding: 0 }
.order-confirm-head { padding: calc(24 * var(--u)) calc(28 * var(--u)) calc(12 * var(--u)) }
.order-confirm-head h2 { margin: 0; font-size: calc(21 * var(--u)) }
.order-confirm-head p { margin: calc(4 * var(--u)) 0 0; font-size: calc(14.5 * var(--u)) }
.order-confirm-body { flex: 1 1 auto; min-height: 0; padding: calc(16 * var(--u)) calc(28 * var(--u)) }
.order-confirm-table { width: 100%; font-size: calc(14 * var(--u)) }
.order-confirm-table th, .order-confirm-table td { padding: calc(8 * var(--u)) calc(6 * var(--u)); font-size: calc(14 * var(--u)); letter-spacing: 0 }
.order-confirm-table thead th { font-size: calc(12.5 * var(--u)) }
.order-confirm-table td.qty { padding-right: calc(12 * var(--u)); font-size: calc(15 * var(--u)) }
.order-confirm-table td.pcs { font-size: calc(12.5 * var(--u)) }
.order-confirm-group th { padding-top: calc(14 * var(--u)); font-size: calc(13 * var(--u)) }
.order-confirm-table tfoot th, .order-confirm-table tfoot td { padding-top: calc(12 * var(--u)); padding-bottom: calc(12 * var(--u)); font-size: calc(15 * var(--u)) }
.order-confirm-table tfoot th { font-size: calc(14 * var(--u)) }
.order-confirm-table tfoot td.qty { font-size: calc(17 * var(--u)) }
.order-confirm-table tfoot td.pcs { font-size: calc(12.5 * var(--u)) }
.order-confirm-empty { margin: 0; padding: calc(14 * var(--u)) calc(16 * var(--u)) }
.order-confirm-facts { margin: calc(18 * var(--u)) 0 0; gap: 0 }
.order-confirm-facts div { padding: calc(8 * var(--u)) 0; grid-template-columns: calc(120 * var(--u)) minmax(0, 1fr); gap: calc(12 * var(--u)); font-size: calc(14 * var(--u)) }
.order-confirm-facts dd { margin: 0 }
.order-confirm-foot { padding: calc(14 * var(--u)) calc(28 * var(--u)) calc(22 * var(--u)) }
.order-confirm-foot p { margin: 0 0 calc(12 * var(--u)); font-size: calc(13 * var(--u)) }
.order-confirm-actions { gap: calc(8 * var(--u)) }
.order-confirm-actions .button { min-width: calc(150 * var(--u)) }
.shop-done .shop-done-number { margin: calc(12 * var(--u)) 0 0; font-size: calc(15 * var(--u)) }
.shop-done .shop-done-number strong { margin-left: calc(6 * var(--u)); font-size: calc(22 * var(--u)); letter-spacing: .02em }
.shop-done-actions { gap: calc(10 * var(--u)) }
.shop-closed .done-icon svg { width: calc(30 * var(--u)); height: calc(30 * var(--u)) }
.shop-closed .shop-done-actions .button { min-width: calc(200 * var(--u)) }
.shop-closed .shop-closed-note { margin: calc(26 * var(--u)) 0 0; font-size: calc(14 * var(--u)); line-height: 1.7 }
.shop-closed .shop-closed-note a { margin-left: calc(6 * var(--u)) }
.shop-preview-bar { right: calc(16 * var(--u)); bottom: calc(16 * var(--u)); max-width: min(calc(440 * var(--u)), calc(100vw - calc(32 * var(--u)))); margin: 0; padding: calc(9 * var(--u)) calc(14 * var(--u)); font-size: calc(13 * var(--u)); line-height: 1.5 }
.shop-subtitle { margin: calc(44 * var(--u)) 0 calc(14 * var(--u)); font-size: calc(19 * var(--u)) }
.shop-lines { width: 100%; font-size: calc(14 * var(--u)) }
.shop-lines th, .shop-lines td { padding: calc(13 * var(--u)) calc(12 * var(--u)) }
.shop-lines thead th { font-size: calc(13 * var(--u)); letter-spacing: 0 }
.shop-lines-item span { font-size: calc(13 * var(--u)) }
.shop-lines-item .shop-lines-packing { font-size: calc(12.5 * var(--u)) }
.shop-lines tfoot th { font-size: calc(15 * var(--u)); letter-spacing: 0 }
.shop-lines tfoot small { font-size: calc(12 * var(--u)) }
.shop-lines .shop-lines-qty { font-size: calc(15 * var(--u)) }
.shop-lines td.shop-lines-pcs { font-size: calc(12.5 * var(--u)) }
.shop-lines tfoot .shop-lines-qty { font-size: calc(16 * var(--u)) }
.shop-lines tfoot td:last-child strong { font-size: calc(17 * var(--u)) }
.shop-memo { margin-top: calc(22 * var(--u)); padding: calc(16 * var(--u)) calc(20 * var(--u)) }
.shop-memo strong { font-size: calc(14 * var(--u)) }
.shop-memo p { margin: calc(6 * var(--u)) 0 0; font-size: calc(14.5 * var(--u)); line-height: 1.75 }
.shop-facts { margin: 0 0 calc(22 * var(--u)); grid-template-columns: repeat(3, minmax(0, 1fr)) }
.shop-facts div { padding: calc(14 * var(--u)) calc(16 * var(--u)) }
.shop-facts dt { font-size: calc(12.5 * var(--u)) }
.shop-facts dd { margin: calc(2 * var(--u)) 0 0; font-size: calc(15 * var(--u)) }
.shop-status { padding: calc(3 * var(--u)) calc(10 * var(--u)); border-radius: calc(999 * var(--u)); font-size: calc(12.5 * var(--u)) }
.shop-inline-actions { gap: calc(10 * var(--u)) }
.shop-inline-actions form { margin: 0 }
.member-page .member-head { margin-bottom: calc(24 * var(--u)) }
.member-head h1 { margin: 0 0 calc(8 * var(--u)); font-size: clamp(calc(26 * var(--u)), 3vw, calc(34 * var(--u))) }
.member-head p:last-child { margin: 0 }
.member-page { padding-top: calc(140 * var(--u)) }
.member-remember { margin: calc(4 * var(--u)) 0 0; gap: 0 calc(22 * var(--u)) }
.member-remember .agree-row { min-height: calc(40 * var(--u)); margin-top: 0; font-size: calc(14.5 * var(--u)) }
.member-remember .agree-row input { width: calc(18 * var(--u)); height: calc(18 * var(--u)) }
.member-remember-note { margin: 0 0 calc(14 * var(--u)); font-size: calc(12.5 * var(--u)) }
.member-resend { margin-top: calc(12 * var(--u)) }
.member-resend-link { margin: calc(-6 * var(--u)) 0 calc(16 * var(--u)); font-size: calc(14 * var(--u)) }
.member-resend-link a { text-underline-offset: calc(4 * var(--u)) }
.member-links { margin: calc(16 * var(--u)) 0 0; gap: calc(12 * var(--u)); font-size: calc(14 * var(--u)) }
.order-form-title { margin: 0 0 calc(18 * var(--u)); font-size: calc(18 * var(--u)) }
.order-form-title small { margin-left: calc(6 * var(--u)); font-size: calc(13 * var(--u)) }
.member-addresses-empty { margin: calc(8 * var(--u)) 0 0; font-size: calc(14 * var(--u)) }
.member-address-list { margin: calc(10 * var(--u)) 0 0; padding: 0 }
.member-address-list li { padding: calc(12 * var(--u)) 0; gap: calc(12 * var(--u)) }
.member-address-list div { min-width: 0; gap: 1px; font-size: calc(14 * var(--u)) }
.member-address-list strong { font-size: calc(15 * var(--u)) }
.member-withdraw summary { font-size: calc(14 * var(--u)) }
.member-withdraw form { margin-top: calc(16 * var(--u)) }
.member-withdraw p { font-size: calc(14 * var(--u)); line-height: 1.7 }
.quote-picker { margin: 0 0 calc(22 * var(--u)); padding: calc(18 * var(--u)) calc(20 * var(--u)) calc(20 * var(--u)) }
.quote-picker legend { padding: 0 calc(6 * var(--u)); margin-left: calc(-6 * var(--u)) }
.quote-picker > .field-hint { margin: 0 0 calc(12 * var(--u)) }
.quote-picker-controls { grid-template-columns: minmax(0, 1.4fr) minmax(0, 1.6fr) minmax(0, .8fr) minmax(0, .7fr) minmax(0, .6fr) auto; gap: calc(10 * var(--u)) }
.quote-picker-controls label { gap: calc(4 * var(--u)); min-width: 0 }
.quote-picker-controls label > span { font-size: calc(12.5 * var(--u)) }
.quote-picker-controls select, .quote-picker-controls input { width: 100%; min-height: calc(44 * var(--u)); padding: 0 calc(10 * var(--u)); border-radius: 0; font: inherit; font-size: calc(14 * var(--u)) }
.quote-picker-controls .button { min-height: calc(44 * var(--u)) }
.quote-picker-packing { margin: 0; font-size: calc(13 * var(--u)); min-height: 1.4em }
.quote-picker-list { margin: calc(14 * var(--u)) 0 0; padding: 0 }
.quote-picker-list li { padding: calc(10 * var(--u)) calc(12 * var(--u)); gap: calc(12 * var(--u)); font-size: calc(14.5 * var(--u)) }
.quote-picker-list li::before { min-width: calc(22 * var(--u)); font-size: calc(12 * var(--u)) }
.quote-picker-list li span { flex: 1; min-width: 0 }
.quote-picker-list button { min-height: calc(36 * var(--u)); padding: 0 calc(6 * var(--u)); font: inherit; font-size: calc(13 * var(--u)) }
.quote-picker-empty { margin: calc(12 * var(--u)) 0 0; font-size: calc(13.5 * var(--u)) }
.inquiry-products { margin: calc(26 * var(--u)) 0 0 }
.inquiry-products h3 { margin: 0 0 calc(10 * var(--u)); font-size: calc(17 * var(--u)) }
.inquiry-products h3 small { margin-left: calc(8 * var(--u)); font-size: calc(13 * var(--u)) }
.inquiry-quote-actions { margin: calc(18 * var(--u)) 0 0; gap: calc(10 * var(--u)) }
.inquiry-quote-actions form { margin: 0 }
.product-detail-intro { min-width: 0 }
.product-detail-intro > .eyebrow { margin-bottom: calc(14 * var(--u)); font-size: calc(12 * var(--u)); letter-spacing: .1em }
.product-detail-intro h1 { font-size: clamp(calc(28 * var(--u)), 2.6vw, calc(38 * var(--u))); line-height: 1.3; letter-spacing: -.035em }
.product-detail-intro .page-lead { margin: calc(18 * var(--u)) 0 0; font-size: calc(16 * var(--u)); line-height: 1.8 }
.product-detail-intro .product-badges { margin-top: calc(24 * var(--u)); gap: calc(12 * var(--u)) }
.product-detail-intro .origin-badge { width: 100%; padding: 0; gap: calc(12 * var(--u)); line-height: 1.6 }
.product-detail-intro .origin-badge span { font-size: calc(14 * var(--u)); letter-spacing: 0 }
.product-detail-intro .origin-badge strong { min-width: 0; font-size: calc(15 * var(--u)) }
.product-detail-intro .badge-list { gap: calc(6 * var(--u)) }
.product-detail-intro .badge-list li { padding: calc(5 * var(--u)) calc(10 * var(--u)); border-radius: calc(4 * var(--u)); font-size: calc(13 * var(--u)); line-height: 1.5; letter-spacing: 0 }
.product-detail-intro .product-notice { margin-top: calc(22 * var(--u)); padding: calc(18 * var(--u)) 0 0 }
.product-detail-intro .product-notice p { font-size: calc(16 * var(--u)); line-height: 1.75 }
.product-detail-intro .product-notice a { min-height: calc(44 * var(--u)); margin-top: calc(6 * var(--u)); gap: calc(10 * var(--u)); font-size: calc(15 * var(--u)); text-underline-offset: calc(5 * var(--u)) }
.product-detail-intro .product-actions { margin-top: calc(26 * var(--u)); gap: calc(10 * var(--u)) }
.product-detail-intro .product-actions .button { min-height: calc(50 * var(--u)); padding: 0 calc(22 * var(--u)); gap: calc(20 * var(--u)); border-radius: calc(4 * var(--u)); font-size: calc(16 * var(--u)) }
.cart-sheet { padding: calc(22 * var(--u)) calc(26 * var(--u)) calc(20 * var(--u)) }
.cart-head { padding-bottom: calc(14 * var(--u)); gap: calc(12 * var(--u)) }
.cart-head h2 { margin: 0; font-size: calc(20 * var(--u)) }
.cart-head h2 span { margin-left: calc(6 * var(--u)); font-size: calc(15 * var(--u)) }
.cart-clear { min-height: calc(36 * var(--u)); padding: 0; font: inherit; font-size: calc(13 * var(--u)) }
.cart-note { margin: calc(10 * var(--u)) 0 0; font-size: calc(13 * var(--u)) }
.cart-groups, .cart-lines { margin: 0; padding: 0 }
.cart-group { padding: calc(16 * var(--u)) 0 calc(6 * var(--u)) }
.cart-group-title { margin: 0 0 calc(4 * var(--u)); gap: calc(10 * var(--u)); font-size: calc(14 * var(--u)) }
.cart-group-title img { width: calc(36 * var(--u)); height: calc(36 * var(--u)); flex: none }
.cart-line { padding: calc(10 * var(--u)) 0; grid-template-columns: minmax(0, 1fr) calc(90 * var(--u)) calc(120 * var(--u)) calc(44 * var(--u)) calc(92 * var(--u)) calc(32 * var(--u)); gap: calc(10 * var(--u)) }
.cart-line-name { min-width: 0 }
.cart-line-name strong { font-size: calc(16 * var(--u)) }
.cart-line-name small { font-size: calc(12.5 * var(--u)) }
.cart-line-color { gap: calc(6 * var(--u)); font-size: calc(14 * var(--u)) }
.cart-stepper { height: calc(38 * var(--u)); grid-template-columns: calc(34 * var(--u)) minmax(0, 1fr) calc(34 * var(--u)) }
.cart-stepper:not(:has(button:not([hidden]))) { grid-template-columns: minmax(0, 1fr) }
.cart-stepper button { padding: 0; font: inherit; font-size: calc(17 * var(--u)); line-height: 1 }
.cart-stepper input { width: 100%; min-width: 0; padding: 0 calc(2 * var(--u)); border-radius: 0; font: inherit; font-size: calc(16 * var(--u)) }
.cart-stepper input::-webkit-outer-spin-button, .cart-stepper input::-webkit-inner-spin-button { margin: 0 }
.cart-line-unit, .cart-line-qty { font-size: calc(15 * var(--u)) }
.cart-line-pcs { font-size: calc(12 * var(--u)) }
.cart-line-remove { width: calc(32 * var(--u)); height: calc(32 * var(--u)); padding: 0; font-size: calc(20 * var(--u)); line-height: 1 }
.cart-foot { padding-top: calc(16 * var(--u)); gap: calc(12 * var(--u)) calc(24 * var(--u)) }
.cart-total { min-width: min(100%, calc(280 * var(--u))); margin: 0 0 0 auto }
.cart-total div { padding: calc(3 * var(--u)) 0; gap: calc(24 * var(--u)) }
.cart-total dd { margin: 0 }
.cart-total-unit dt, .cart-total-unit dd { font-size: calc(19 * var(--u)) }
.cart-total-pcs { margin-top: calc(6 * var(--u)); padding-top: calc(7 * var(--u)) !important }
.cart-total-pcs dt, .cart-total-pcs dd { font-size: calc(13 * var(--u)) }
.cart-save { gap: calc(10 * var(--u)) }
.cart-status { margin: 0; font-size: calc(12 * var(--u)) }
.cart-empty { padding: calc(44 * var(--u)) 0 calc(26 * var(--u)) }
.cart-empty p { margin: 0 0 calc(18 * var(--u)); font-size: calc(16 * var(--u)) }
.cart-actions { margin-top: calc(22 * var(--u)); gap: calc(12 * var(--u)) }
.cart-quote { margin: calc(14 * var(--u)) 0 0; font-size: calc(13 * var(--u)) }
.cart-quote a { text-underline-offset: calc(4 * var(--u)) }
.send-page .order-info { margin-top: 0 }
.send-grid { grid-template-columns: minmax(0, 1fr) calc(400 * var(--u)); gap: calc(32 * var(--u)) }
.send-summary { top: calc(110 * var(--u)); padding: calc(20 * var(--u)) calc(22 * var(--u)) }
.send-summary-head { padding-bottom: calc(10 * var(--u)); gap: calc(10 * var(--u)) }
.send-summary-head h2 { margin: 0; font-size: calc(18 * var(--u)) }
.send-summary-head h2 span { margin-left: calc(4 * var(--u)); font-size: calc(14 * var(--u)) }
.send-summary-head a, .send-summary-more { font-size: calc(13 * var(--u)); text-underline-offset: calc(4 * var(--u)) }
.send-summary .cart-group { padding: calc(12 * var(--u)) 0 calc(4 * var(--u)) }
.send-summary .cart-group-title { font-size: calc(13 * var(--u)) }
.send-summary .cart-group-title img { width: calc(28 * var(--u)); height: calc(28 * var(--u)) }
.send-summary .cart-line { padding: calc(7 * var(--u)) 0; grid-template-columns: minmax(0, 1fr) calc(70 * var(--u)) calc(78 * var(--u)); gap: calc(2 * var(--u)) calc(8 * var(--u)) }
.send-summary .cart-line-name strong { font-size: calc(15 * var(--u)) }
.send-summary .cart-line-color { font-size: calc(13 * var(--u)) }
.send-summary .cart-line-qty { font-size: calc(16 * var(--u)) }
.send-summary .cart-total { min-width: 0; margin: calc(12 * var(--u)) 0 0 }
.send-summary .cart-total-unit dt, .send-summary .cart-total-unit dd { font-size: calc(17 * var(--u)) }
.send-summary-more { margin-top: calc(14 * var(--u)) }
.send-summary-empty { margin: calc(14 * var(--u)) 0 0; font-size: calc(14 * var(--u)); line-height: 1.7 }
.account-nav { margin: 0 0 calc(28 * var(--u)); gap: calc(4 * var(--u)) }
.account-nav a { min-height: calc(50 * var(--u)); padding: 0 calc(16 * var(--u)); flex: none; font-size: calc(15 * var(--u)) }
.account-hello { margin-bottom: calc(22 * var(--u)); padding: calc(22 * var(--u)) calc(26 * var(--u)); gap: calc(16 * var(--u)) calc(24 * var(--u)) }
.account-hello p { margin: 0 }
.account-hello-company { font-size: clamp(calc(20 * var(--u)), 2vw, calc(24 * var(--u))) }
.account-hello-person { margin-top: calc(4 * var(--u)) !important; font-size: calc(14.5 * var(--u)) }
.account-hello-person span { margin-left: calc(10 * var(--u)); padding-left: calc(10 * var(--u)) }
.account-hello-actions { gap: calc(10 * var(--u)) }
.account-hello-actions form { margin: 0 }
.account-logout { min-height: calc(44 * var(--u)); padding: 0 calc(6 * var(--u)); font: inherit; font-size: calc(14 * var(--u)); text-underline-offset: calc(4 * var(--u)) }
.account-stats { margin: 0 0 calc(28 * var(--u)); padding: 0; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: calc(14 * var(--u)) }
.account-stats a { height: 100%; padding: calc(18 * var(--u)) calc(20 * var(--u)); gap: calc(6 * var(--u)) }
.account-stats span { font-size: calc(14 * var(--u)) }
.account-stats strong { font-size: calc(32 * var(--u)); line-height: 1.1 }
.account-stats strong small { margin-left: calc(3 * var(--u)); font-size: calc(15 * var(--u)) }
.account-stats em { font-size: calc(13 * var(--u)) }
.account-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: calc(18 * var(--u)) }
.account-card { min-width: 0; padding: calc(20 * var(--u)) calc(22 * var(--u)) }
.account-card-head { padding-bottom: calc(12 * var(--u)); gap: calc(12 * var(--u)) }
.account-card-head h2 { margin: 0; font-size: calc(18 * var(--u)) }
.account-card-head a { font-size: calc(13 * var(--u)) }
.account-rows { margin: 0; padding: 0 }
.account-rows a { min-height: calc(52 * var(--u)); padding: calc(10 * var(--u)) 0; gap: calc(8 * var(--u)) calc(14 * var(--u)) }
.account-row-no { flex: none; font-size: calc(14 * var(--u)) }
.account-row-main { min-width: 0; flex: 1; font-size: calc(14 * var(--u)) }
.account-row-date { flex: none; font-size: calc(13 * var(--u)) }
.account-row-amount { flex: none; font-size: calc(15 * var(--u)) }
.account-empty { margin: calc(16 * var(--u)) 0 calc(4 * var(--u)); font-size: calc(14 * var(--u)); line-height: 1.7 }
.account-facts { margin: 0; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0 calc(24 * var(--u)) }
.account-facts div { padding: calc(12 * var(--u)) 0 }
.account-facts dt { font-size: calc(13 * var(--u)) }
.account-facts dd { margin: calc(3 * var(--u)) 0 0; font-size: calc(15 * var(--u)) }
.account-facts dd a { text-underline-offset: calc(4 * var(--u)) }
.account-statement { margin-top: calc(30 * var(--u)); padding-top: calc(22 * var(--u)); scroll-margin-top: calc(110 * var(--u)) }
.account-statement-head { margin-bottom: calc(14 * var(--u)); gap: calc(12 * var(--u)) }
.account-statement-head h2 { margin: 0; font-size: calc(20 * var(--u)) }
.account-statement-head p { margin: calc(4 * var(--u)) 0 0; font-size: calc(14 * var(--u)) }
.account-statement-total th, .account-statement-total td, .account-statement-total strong { font-size: calc(17 * var(--u)) }
.account-statement-note { margin: calc(10 * var(--u)) 0 0; font-size: calc(13 * var(--u)) }
