/* Locally served, OFL-licensed fonts. No external font service is required. */
@font-face{
  font-family:"Renwang Inter";
  src:url("fonts/InterVariable.woff2") format("woff2");
  font-style:normal;
  font-weight:100 900;
  font-display:swap;
}
@font-face{
  font-family:"Renwang Arabic";
  src:url("fonts/NotoSansArabic.woff2") format("woff2");
  font-style:normal;
  font-weight:400 700;
  font-display:swap;
  unicode-range:U+0600-06FF,U+0750-077F,U+0870-08FF,U+200C-200E,U+FB50-FDFF,U+FE70-FEFF;
}
:root{
  --rw-font:"Renwang Inter","PingFang SC","Microsoft YaHei","Segoe UI",sans-serif;
  --rw-body-size:18px;
  --rw-copy:#525b64;
}
body{font-family:var(--rw-font);font-size:var(--rw-body-size);line-height:1.75;font-optical-sizing:auto;font-feature-settings:"calt" 1,"liga" 1}
h1,h2,h3{font-weight:500;letter-spacing:-.035em}
h2{line-height:1.15}h3{line-height:1.3}
.hero h1{font-weight:400;letter-spacing:-.055em}
.hero{height:auto;max-height:none;min-height:100svh}
.hero-layout{height:auto;min-height:max(820px,100svh)}
.eyebrow,.hero .eyebrow,.equipment-hero .eyebrow{font-size:14px;line-height:1.65;letter-spacing:.11em}
.button,.button-small,.text-link,.hero-links .button,.hero-links .text-link{font-size:16px;line-height:1.5;font-weight:600}
.button{min-height:50px}
.button-small{min-height:44px}
.hero-primary,.equipment-hero .hero-primary{font-size:20px;line-height:1.5;font-weight:600}
.site-header .brand strong{font-weight:650}
.site-header .brand small,.brand small{font-size:10px;letter-spacing:.18em;line-height:1.5}
.desktop-nav ul{gap:24px}
.desktop-nav a{font-size:16px;font-weight:500;letter-spacing:0}
.language-menu summary{font-size:15px;min-height:44px}
.language-options{width:180px}
.language-options a{font-size:16px;min-height:44px}
.hero-description{font-size:24px;line-height:1.65;max-width:850px;color:#fff}
.hero .eyebrow{max-width:700px}
.scroll-link{font-size:13px;letter-spacing:.08em}
.hero-caption>span,.hero-caption small,.hero-media-note,.feature-media-note{font-size:14px;line-height:1.6}
.hero-media-note{max-width:400px}
.slide-controls button:last-child{font-size:14px;width:36px;height:36px;flex-shrink:0}
.intro-copy p{font-size:22px;line-height:1.75;color:var(--rw-copy)}
.section-heading>p,.page-head p:not(.eyebrow),.feature-content>p:not(.eyebrow){font-size:20px;line-height:1.75}
.feature-content>p:not(.eyebrow){max-width:600px;color:#eef0f1}
.section-heading>p,.page-head p:not(.eyebrow){color:var(--rw-copy)}
.solution-card h3,.solution-featured h3{font-weight:500;line-height:1.15}
.solution-card p,.solution-card:not(:first-child) p,.archive-solutions .solution-card p{font-size:17px;line-height:1.65;color:#f5f5f5}
.card-action{font-size:16px;line-height:1.5;gap:12px}
.card-number{font-size:14px}
.image-label{font-size:14px;line-height:1.5;background:#191d21e6;padding:5px 9px}
.project-meta{font-size:14px;line-height:1.6;letter-spacing:.035em;color:var(--rw-copy)}
.project-card h3,.project-carousel .project-card h3{font-size:28px;line-height:1.3;font-weight:500}
.project-size{font-size:16px;color:var(--rw-copy)}
.project-carousel-controls span{font-size:14px}
.story-label{font-size:14px;line-height:1.5;letter-spacing:.08em}
.story-card h2{font-size:25px;line-height:1.3;font-weight:500;letter-spacing:-.03em}
.story-slides{min-height:340px}
.story-controls button{width:34px;height:34px;font-size:14px}
.story-footer{gap:12px}
.step-number{font-size:16px;font-weight:500}
.process-grid h3,.about-values h3{font-size:30px}
.process-grid p,.about-values p{font-size:18px;line-height:1.75;color:var(--rw-copy)}
.cta-grid>div>p:not(.eyebrow){font-size:18px;line-height:1.75;color:var(--rw-copy);max-width:450px}
.footer-brand>p,.footer-top>div>a:not(.brand){font-size:16px;line-height:1.7;color:#c9cdd1}
.footer-top h3{font-size:14px;line-height:1.5;font-weight:500;letter-spacing:.07em;color:#e5cb9a}
.location-dot,.footer-bottom{font-size:14px;line-height:1.65;color:#c2c7cc}
.social-links>a{height:40px;width:40px}.social-links svg{height:19px;width:19px}
.cookie-banner p,.cookie-banner .button-small,.cookie-banner .button{font-size:14px;line-height:1.65}
.cookie-banner p{color:var(--rw-copy)}
.project-filters button{font-size:16px;min-height:44px}
.detail-meta dt{font-size:14px;line-height:1.6;letter-spacing:.06em;color:var(--rw-copy)}
.detail-meta dd{font-size:20px;line-height:1.6}
.prose,.legal p,.legal li{font-size:18px;line-height:1.85;color:var(--rw-copy)}
.prose h2{font-size:38px}.prose h3,.legal h2{font-size:30px}
.contact-intro>p:not(.eyebrow){font-size:18px;line-height:1.8;color:var(--rw-copy)}
.contact-sidebar-note{font-size:14px!important}
.form-tabs button{font-size:16px;line-height:1.6}
.form-field{font-size:16px;line-height:1.6;font-weight:600;min-width:0}
.form-field input,.form-field select,.form-field textarea{font-size:17px;line-height:1.5;min-height:50px;padding:12px}
.form-field input::placeholder,.form-field textarea::placeholder{font-size:16px;color:#737b83}
.upload-area strong{font-size:18px;line-height:1.6;font-weight:500}
.upload-browse{font-size:16px;color:var(--rw-copy);line-height:1.7}
.form-hint,.form-consent,.form-preview{font-size:14px;line-height:1.75;color:var(--rw-copy)}
.form-consent input{width:18px;height:18px;margin-top:3px}
.file-list li{font-size:15px}
.file-list button{font-size:22px;min-width:36px;min-height:36px}
.form-error{font-size:16px;line-height:1.7}
.form-success p{font-size:18px;line-height:1.75;color:var(--rw-copy)}
.reference{font-family:var(--rw-font);font-size:20px;font-weight:600;letter-spacing:.04em;overflow-wrap:anywhere}
.faq summary{font-size:18px;line-height:1.6}
.faq details p{font-size:17px;line-height:1.8;color:var(--rw-copy)}
.image-caption,.inquiry-context span{font-size:14px;line-height:1.7;color:var(--rw-copy)}
.inquiry-context{font-size:16px;line-height:1.7}
.equipment-lead{font-size:20px;line-height:1.75;color:#eef0f1}
.equipment-hero-media figcaption{font-size:14px;line-height:1.7}
.equipment-card-photo>span{font-size:14px}
.equipment-card h3{font-size:32px;line-height:1.25}
.equipment-card p,.equipment-enquiry>div>p:not(.eyebrow){font-size:18px;line-height:1.75;color:var(--rw-copy)}
.equipment-enquiry .equipment-availability{font-size:16px!important}
.mega-kicker,.mega-panel-heading{font-size:14px;line-height:1.6;letter-spacing:.04em}
.mega-panel-heading>a{font-size:14px;line-height:1.6}
.mega-row>a{font-size:28px;line-height:1.35;letter-spacing:-.025em;padding-block:23px}
.mega-submenu a{font-size:17px;line-height:1.6;padding-block:10px;color:var(--rw-copy)}
.mega-sidebar-note{font-size:14px;line-height:1.7;color:var(--rw-copy)}
.mega-sidebar-note .location-dot{color:var(--rw-copy)}
.mega-sidebar-note>a{font-size:16px;line-height:1.6}
.mega-card h3{font-size:24px;line-height:1.3}
.mega-card-meta{font-size:14px;line-height:1.6;letter-spacing:0;color:var(--rw-copy)}
.mega-card-description,.mega-bottom-link p,.mega-steps p,.mega-about p:not(.mega-statement){font-size:17px;line-height:1.7;color:var(--rw-copy)}
.mega-bottom-link{gap:24px;flex-wrap:wrap}
.mega-image-note{font-size:14px;line-height:1.75;color:var(--rw-copy)}
.mega-steps span{font-size:16px}
.mega-steps h3{font-size:26px;line-height:1.3}
.mega-contact-body{font-size:22px;line-height:1.7}
html[lang=zh] :is(h1,h2,h3,.mega-row>a){letter-spacing:0;line-height:1.35}
html[lang=ar] body{font-family:"Renwang Arabic",var(--rw-font);line-height:1.85}
html[lang=ar] :is(h1,h2,h3,.mega-row>a){letter-spacing:0;line-height:1.45}
html[lang=ar] :is(.eyebrow,.hero .eyebrow,.equipment-hero .eyebrow,.mega-kicker,.mega-panel-heading,.project-meta,.story-label,.detail-meta dt){letter-spacing:0}
@media(max-width:1350px){
  .desktop-nav{display:none}.header-actions{margin-inline-start:auto}
  .hero-description{font-size:22px}
  .story-card h2{font-size:23px}
  .story-slides{min-height:320px}
  .mega-row>a{font-size:26px}
  .mega-panel-heading{gap:16px;align-items:flex-start}
  .mega-card h3{font-size:22px}
}
@media(max-width:1000px){
  .hero-description{font-size:20px}
  .hero-primary,.equipment-hero .hero-primary{font-size:18px}
  .hero-layout{grid-template-columns:minmax(0,1fr) 270px;gap:30px}
  .hero{height:auto;max-height:none;min-height:800px}
  .intro-copy p{font-size:20px}
  .mega-row>a{font-size:25px}
  .story-slides{min-height:330px}
  .story-footer{flex-wrap:wrap}
}
@media(max-width:720px){
  :root{--rw-body-size:17px}
  .site-header .brand small{font-size:9px}
  .language-menu summary{font-size:15px}
  .hero-layout{display:block;padding-top:140px;padding-bottom:125px;min-height:max(760px,100svh)}
  .hero h1{font-size:clamp(56px,12.5vw,86px);line-height:1.08}
  .hero .eyebrow{font-size:13px;max-width:360px;letter-spacing:.08em}
  .hero-description{font-size:19px;line-height:1.7;max-width:500px}
  .hero-media-note{font-size:14px;max-width:270px}
  .hero-primary,.equipment-hero .hero-primary{font-size:18px}
  .intro-copy p,.section-heading>p,.page-head p:not(.eyebrow),.feature-content>p:not(.eyebrow){font-size:18px;line-height:1.75}
  .solution-card p,.solution-card:first-child p,.solution-card:not(:first-child) p,.archive-solutions .solution-card p{font-size:16px;line-height:1.65;max-width:none}
  .solution-grid{grid-auto-rows:410px}
  .archive-solutions .solution-card{min-height:410px}
  .project-card h3,.project-carousel .project-card h3{font-size:26px}
  .project-meta{font-size:14px;letter-spacing:0}
  .process-grid p,.about-values p,.cta-grid>div>p:not(.eyebrow),.prose,.legal p,.legal li{font-size:17px}
  .process-grid h3,.about-values h3{font-size:28px}
  .detail-meta dd{font-size:18px}
  .prose h2{font-size:32px}
  .contact-layout{gap:30px}
  .form-grid{grid-template-columns:1fr;gap:20px}
  .dimensions{grid-template-columns:1fr;gap:18px}
  .form-field input,.form-field select,.form-field textarea{font-size:17px}
  .form-tabs{gap:15px}
  .form-tabs button{font-size:16px}
  .equipment-lead{font-size:18px}
  .equipment-card p,.equipment-enquiry>div>p:not(.eyebrow){font-size:17px}
  .equipment-card h3{font-size:30px}
  .equipment-hero-media figcaption{font-size:14px}
  .mega-row>a{font-size:27px;padding-block:20px}
  .mega-submenu a{font-size:17px}
  .mega-sidebar-note>a{font-size:16px}
  .mega-kicker{font-size:14px}
  .footer-top{gap:35px 20px}
  .footer-bottom{font-size:14px}
  .footer-bottom>div{flex-wrap:wrap;gap:16px}
}
