/* Shared reading and image scale for Korean and Traditional Chinese. */
html{scroll-padding-top:120px}
body{font-size:18px;line-height:1.8}
.draft{font-size:14px;padding:9px 5%}
header{gap:30px}
.brand{font-size:22px}
.brand-sub{font-size:11px}
nav{font-size:18px;gap:32px;font-weight:600}
nav a{padding:8px 0}
#nav-count{width:26px;height:26px;font-size:14px}
.languages{font-size:16px}
.languages button{padding:8px}
.eyebrow{font-size:14px;letter-spacing:.15em}
.hero h1{font-size:clamp(46px,4.8vw,76px)}
.lead{font-size:18px;max-width:460px}
.button{font-size:17px;padding:16px 25px;min-height:54px}
.hero-dates{font-size:17px;gap:22px}
.hero-dates b{font-size:28px}
.hero-dates small{font-size:14px}
.art-label{font-size:14px}
.product-tile span,.product-tile b,.art-tag span{font-size:11px}
.image-caption{font-size:12px;max-width:80%;text-align:right}
.intro-strip>p{font-size:23px;max-width:440px}
.intro-strip b{font-size:44px}
.intro-strip span{font-size:15px}
h2{font-size:clamp(32px,3.1vw,46px)}
.section-heading p:last-child{font-size:17px;max-width:390px}
.filters button{font-size:16px;padding:11px 20px}
.search{min-width:270px}
.search input{font-size:17px;padding:9px 5px}
.results-line,.results-line small{font-size:14px}
.results-line{padding:20px 0}
.company-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:38px 28px}
.company-card{padding-bottom:24px}
.card-art{height:auto;aspect-ratio:6/5;min-height:280px}
.card-art img{width:94%;height:91%}
.art-number{font-size:14px;top:12px;left:15px}
.art-word{font-size:clamp(30px,3vw,46px)}
.art-corner{font-size:14px;right:15px;bottom:10px}
.card-tags{font-size:14px;margin-top:20px}
.company-card h3{font-size:21px;line-height:1.65;margin:10px 0}
.company-card p{font-size:17px;line-height:1.8;margin-bottom:22px}
.card-actions{gap:12px;flex-wrap:wrap}
.detail-button{font-size:16px;padding:10px 0;min-height:44px}
.select-button{font-size:16px;padding:10px 14px;min-height:44px}
.session-top{font-size:14px}
.session-grid h3{font-size:36px}
.session-grid article>p{font-size:17px}
.session-date small{font-size:18px}
.steps-grid span{font-size:17px}
.steps-grid h3{font-size:24px}
.steps-grid p{font-size:17px}
.meeting-copy>p:not(.eyebrow){font-size:18px;max-width:430px}
.notice{font-size:16px;max-width:430px}
.form-head h3{font-size:22px}
#selected-list{font-size:17px}
.selected-item{font-size:16px;padding:10px 0}
.selected-item button{font-size:24px;min-width:44px;min-height:44px}
legend,.city-option{font-size:16px}
.city-option{min-height:40px}
.city-option input{width:20px!important;height:20px}
.meeting form>label,.form-row label{font-size:16px;gap:8px}
.meeting input,.meeting textarea{font-size:18px;padding:12px}
.form-hint{font-size:14px}
#form-status{font-size:16px}
.faq summary{font-size:19px;padding:6px 0}
.faq details p{font-size:17px}
footer{font-size:15px}
footer .brand{font-size:20px}
dialog{width:min(850px,94vw)}
.dialog-name{font-size:29px}
.dialog-products{font-size:18px;line-height:1.9}
.dialog-products small{font-size:15px;color:var(--muted)}
.dialog-products li{margin-bottom:12px}
.dialog-note{font-size:16px;padding:18px}
.dialog-links{font-size:17px;align-items:center}
.dialog-close{font-size:32px;min-width:44px;min-height:44px}
@media(max-width:1100px){
  header{gap:18px}
  nav{gap:22px}
  .company-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 24px}
  .card-art{min-height:280px}
  .intro-strip{gap:4%}
  .intro-strip>p{font-size:21px;max-width:330px}
}
@media(max-width:800px){
  header{flex-wrap:wrap;gap:12px;padding:16px 5%}
  .languages{margin-left:auto}
  nav{order:3;justify-content:space-between;width:100%;border-top:1px solid var(--line);padding-top:10px;gap:12px}
  .tools{flex-direction:column}
  .search{width:100%;min-width:0}
  .hero{gap:24px}
  .hero h1{font-size:clamp(40px,5.8vw,54px)}
  .hero-art{min-height:480px}
  .art-label{font-size:12px}
  .image-caption{font-size:10px}
  .hero-dates{flex-wrap:wrap}
  .section-heading{display:block}
  .section-heading p:last-child{max-width:550px}
}
@media(max-width:600px){
  body{font-size:17px}
  html{scroll-padding-top:150px}
  .draft{font-size:13px}
  .brand{font-size:18px}
  .brand-sub{font-size:9px}
  .languages{font-size:15px;gap:4px}
  .languages button{padding:7px 4px}
  nav{font-size:16px;gap:8px}
  #nav-count{font-size:13px;width:24px;height:24px;margin-left:4px}
  .hero{grid-template-columns:1fr}
  .hero h1{font-size:46px}
  .lead{font-size:18px}
  .hero-dates{font-size:16px;gap:16px}
  .hero-dates b{font-size:26px}
  .hero-art{min-height:420px}
  .product-tile img{height:190px}
  .beauty img{height:170px}
  .image-caption{font-size:10px}
  .eyebrow{font-size:13px}
  .intro-strip>p{max-width:100%;font-size:22px}
  .intro-strip b{font-size:38px}
  .intro-strip span{font-size:14px;white-space:normal}
  h2{font-size:32px}
  .filters{gap:8px}
  .filters button{font-size:15px;padding:10px 16px}
  .results-line,.results-line small{font-size:14px}
  .company-grid{grid-template-columns:minmax(0,1fr);gap:32px}
  .card-art{min-height:0;aspect-ratio:6/5}
  .art-word{font-size:42px}
  .company-card h3{font-size:22px}
  .company-card p{font-size:18px}
  .card-tags{font-size:14px}
  .card-actions{flex-direction:row;align-items:center;justify-content:space-between}
  .select-button{width:auto}
  .session-grid{gap:24px}
  .session-top{font-size:12px}
  .session-grid h3{font-size:30px}
  .session-grid article>p{font-size:15px}
  .session-date small{font-size:16px}
  .steps-grid{grid-template-columns:1fr;gap:20px;margin-top:30px}
  .steps-grid h3{font-size:23px;margin-top:8px}
  .steps-grid p{font-size:17px}
  .meeting{grid-template-columns:1fr}
  .meeting form{padding:22px}
  .meeting-copy>p:not(.eyebrow){font-size:18px}
  .notice{font-size:16px}
  .form-row{grid-template-columns:1fr}
  .faq summary{font-size:19px}
  .faq details p{font-size:17px}
  footer .brand{font-size:19px}
  dialog{padding:40px 24px 26px}
  .dialog-name{font-size:25px}
  .dialog-products{font-size:18px}
}
