/*
Theme Name: 维亚达原生主题
Description: 原 HTML 布局，原生页面、文章、分类和区块，无 Elementor 依赖。
Version: 1.0.0
Requires at least: 6.4
Requires PHP: 7.4
Text Domain: weiyada-native
*/
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Noto+Sans+SC:wght@300;400;500;600;700;800&display=swap');
:root{--blue:#0799d5;--navy:#07152a;--ink:#202a35;--muted:#89939d;--line:#e9edf1}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:76px}body{margin:0;color:var(--ink);font-family:'DM Sans','Noto Sans SC',Arial,sans-serif;font-size:16px}a{color:inherit;text-decoration:none}.container{width:min(1180px,calc(100% - 48px));margin:auto}.topline{height:82px;background:#fff}.top-inner{height:100%;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:12px}.brand-mark{font-weight:900;font-size:32px;line-height:1;letter-spacing:-4px;color:#067bb4;position:relative}.brand-mark span{color:#202a35}.brand b{display:block;font-size:18px;letter-spacing:.04em;color:#182632}.brand small{display:block;margin-top:4px;font-size:11px;letter-spacing:.12em;color:#99a5ae}.hotline{display:flex;align-items:center;gap:12px;color:#139ed3}.phone-icon{width:38px;height:38px;border:1px solid #bfe8f6;border-radius:50%;display:grid;place-items:center;font-size:24px}.hotline small,.hotline b{display:block}.hotline small{font-size:14px;color:#8899a2}.hotline b{font-size:20px;letter-spacing:.03em}.site-header{height:48px;background:#14191d;color:#dce2e6;position:sticky;top:0;z-index:20}.nav-wrap{display:flex;height:100%;align-items:center;justify-content:space-between}.main-nav{height:100%;display:flex;align-items:stretch}.main-nav a{padding:0 22px;display:grid;place-items:center;font-size:16px;transition:.2s}.main-nav a:hover,.main-nav a.active{background:var(--blue);color:#fff}.nav-cta{color:#fff;background:#078fc8;border-radius:2px;padding:10px 16px;font-size:16px}.nav-cta span{padding-left:10px}.menu-toggle{display:none;background:none;color:white;border:0;font-size:22px}.hero{height:545px;background:radial-gradient(ellipse at 70% 75%,#116ab8 0%,transparent 34%),radial-gradient(ellipse at 30% 100%,#205eb0 0%,transparent 38%),linear-gradient(110deg,#06152f,#082556 58%,#03152e);position:relative;overflow:hidden;color:#fff}.hero:before{content:"";position:absolute;inset:0;background-image:radial-gradient(#73c8ff 1px,transparent 1.3px),radial-gradient(#57aafa 1px,transparent 1.5px);background-size:39px 39px,71px 71px;background-position:0 0,20px 17px;opacity:.24}.hero:after{content:"";height:110px;position:absolute;bottom:0;left:0;right:0;background:linear-gradient(0deg,rgba(137,193,255,.27),transparent);border-top:1px solid rgba(157,207,255,.22)}.hero-content{position:relative;z-index:2;padding-top:68px}.eyebrow,.kicker{font-size:14px;letter-spacing:.2em;color:#57c7f2;font-weight:700}.eyebrow i{display:inline-block;width:20px;height:1px;background:#37bbed;vertical-align:middle;margin-right:8px}.hero h1{font-size:54px;line-height:1.3;letter-spacing:.025em;margin:20px 0 12px;font-weight:700}.hero h1 em{font-style:normal;color:#50c6fa}.hero-content>p{font-size:18px;color:#c9d9ee;letter-spacing:.06em;margin:0}.hero-actions{display:flex;gap:12px;margin-top:30px}.btn{padding:13px 22px;border-radius:3px;font-size:16px;font-weight:600;display:inline-flex;align-items:center;gap:20px}.btn-blue{color:#fff;background:var(--blue);box-shadow:0 8px 20px #068dc455}.btn-blue:hover{background:#087eae}.btn-ghost{border:1px solid #ffffff55;color:#fff}.hero-stats{display:flex;margin-top:43px;gap:36px}.hero-stats div{padding-right:30px;border-right:1px solid #ffffff40}.hero-stats b{font-size:30px}.hero-stats b span{color:#53c6f7;font-size:20px}.hero-stats small{display:block;color:#a8bfd8;font-size:14px;margin-top:3px}.hero-orbit{position:absolute;border:1px solid #52bdff2a;border-radius:50%;transform:rotate(-20deg)}.orbit-one{width:780px;height:230px;right:-15px;top:135px}.orbit-two{width:600px;height:160px;right:75px;top:175px}.hero-machine{position:absolute;right:12%;bottom:74px;width:310px;height:240px;opacity:.6;transform:skewY(-7deg)}.machine-glow{position:absolute;bottom:8px;width:330px;height:40px;background:#2e9efa55;filter:blur(18px);border-radius:50%}.machine-block{position:absolute;bottom:35px;right:20px;width:235px;height:145px;border:2px solid #88caff88;background:linear-gradient(145deg,#5099cb44,#041b3a);box-shadow:15px 16px 0 #081e39,20px 22px 0 #66bfff38}.machine-block:before{content:"";position:absolute;left:-40px;top:-28px;width:48px;height:168px;border:2px solid #89cfff80;background:#153754}.machine-block:after{content:"";position:absolute;right:25px;top:24px;width:90px;height:88px;border:1px solid #9cd5ff88;box-shadow:inset 0 0 20px #64b7ff55}.machine-block span{position:absolute;width:120px;height:8px;background:#75caff;top:-8px;left:35px}.machine-block i{position:absolute;bottom:-30px;left:30px;width:175px;height:25px;border-bottom:2px solid #8bd0ff}.hero-bottom{position:absolute;z-index:3;bottom:0;left:0;right:0;height:34px;background:#eef1f3;color:#737e85;font-size:14px;padding-top:10px}.section{padding:70px 0}.section-heading{text-align:center;margin:0 auto 24px}.section-heading .kicker{font-size:12px;letter-spacing:.22em}.section-heading h2{font-size:32px;margin:7px 0 0;font-weight:700;letter-spacing:.1em}.section-heading h2 span{color:var(--blue)}.section-heading>p{font-size:12px;color:#9ba6ad;letter-spacing:.14em;margin:1px 0}.heading-line{width:34px;height:2px;background:var(--blue);margin:14px auto}.filter-row{display:flex;justify-content:center;gap:10px;margin:22px 0 27px;flex-wrap:wrap}.filter-row :is(button, a.catalog-more){border:1px solid transparent;background:#f0f2f4;border-radius:30px;padding:8px 19px;color:#6f7a82;font:inherit;font-size:15px;cursor:pointer;transition:.2s}.filter-row :is(button, a.catalog-more):hover,.filter-row :is(button, a.catalog-more).selected{background:#0799d5;color:#fff}.card-grid{display:grid;gap:18px}.four{grid-template-columns:repeat(4,1fr)}.product-card{border:1px solid #e7ebee;background:#fff;transition:.25s;overflow:hidden}.product-card:hover{transform:translateY(-5px);box-shadow:0 12px 30px #11263a18}.product-photo{height:185px;background-color:#f6f7f8;background-size:cover;background-position:center;position:relative}.product-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#fff3,transparent 25%)}.product-label{height:38px;display:flex;align-items:center;justify-content:center;background:#4c5358;color:#fff;font-size:15px;letter-spacing:.04em}.injection{background:#f0f3f7;position:relative;overflow:hidden}.injection:before{content:"";position:absolute;inset:0;background:linear-gradient(130deg,#fff8,transparent 45%,#cbd5e1aa),repeating-linear-gradient(135deg,transparent 0 135px,#fff4 136px 146px)}.injection .container{position:relative}.why{background:#fff}.why-title{height:145px;text-align:center;background:linear-gradient(110deg,#111 0%,#202020 50%,#101010);color:#fff;padding:24px 0;position:relative;overflow:hidden}.why-title:after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(165deg,transparent 0 95px,#ffffff06 96px 97px)}.why-title span{color:#54c4ef;font-size:12px;letter-spacing:.18em}.why-title h2{font-size:30px;line-height:1.35;margin:6px 0}.why-title h2 span{font-size:inherit;color:#fff}.advantage-list{padding:42px 0 55px}.advantage{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center;min-height:245px}.advantage.reverse .adv-image{order:2}.advantage.reverse .adv-copy{order:1;text-align:right}.adv-image{height:205px;background-size:cover;background-position:center}.adv-copy{position:relative;padding:14px 0 10px 56px}.reverse .adv-copy{padding:14px 56px 10px 0}.number{position:absolute;left:0;top:8px;background:#222;color:#fff;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;font-size:18px}.reverse .number{left:auto;right:0}.adv-copy h3{font-size:20px;margin:0 0 14px}.adv-copy h3 span{font-size:16px;color:#515c64}.adv-copy h3 span:first-of-type{color:var(--blue)}.adv-copy ul{list-style:none;margin:0;padding:0;color:#7d878d;font-size:15px;line-height:2.2}.adv-copy li:before{content:"•";color:#139dce;padding-right:8px}.reverse li:after{content:"•";color:#139dce;padding-left:8px}.quality{background:#1d1f20;color:#fff;padding:28px 0}.quality-inner{display:flex;justify-content:space-between;align-items:center}.quality-inner>div:first-child>span{font-size:12px;letter-spacing:.2em;color:#63c9ee}.quality h2{font-size:20px;margin:8px 0}.quality h2 b{font-size:16px;color:#bdc5ca;font-weight:400}.quality p{margin:5px 0;color:#abb3b7;font-size:15px}.checks{border-left:1px solid #ffffff2c;padding-left:45px;min-width:330px}.checks p{color:#e4e7e9}.checks p:last-child{font-size:20px}.gallery{background:linear-gradient(#f7f8f8,#edf0f1);background-image:linear-gradient(#ffffffbb,#ffffffda),var(--wyn-background_gallery, url('assets/remote/photo-1581091226825-a6a2a5aee158.jpg'));background-size:cover;background-position:center}.tabs{display:flex;justify-content:center;gap:5px;margin:20px auto}.tabs button{border:0;padding:9px 22px;background:#30383c;color:#fff;font:inherit;font-size:15px;cursor:pointer}.tabs button.selected{background:var(--blue)}.photo-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.photo-grid .factory-photo{height:155px;background-size:cover;background-position:center;position:relative;overflow:hidden}.factory-photo span{position:absolute;bottom:0;left:0;right:0;padding:9px 12px;background:#111b;color:#fff;font-size:15px}.cases{background:#fff}.case-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:16px}.case-feature{height:390px;position:relative;background-size:cover;background-position:center;overflow:hidden}.case-feature:after{content:"";position:absolute;inset:30% 0 0;background:linear-gradient(transparent,#07111be8)}.case-caption{position:absolute;z-index:1;bottom:24px;left:24px;color:#fff}.case-caption small{color:#60cff7}.case-caption h3{font-size:22px;margin:7px 0}.case-caption p{font-size:15px;color:#d1d8de}.case-list{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.case-tile{position:relative;min-height:124px;background-size:cover;background-position:center;color:#fff;display:flex;flex-direction:column;justify-content:flex-end;padding:12px;overflow:hidden}.case-tile:before{content:"";position:absolute;inset:0;background:linear-gradient(transparent,#08111bc9)}.case-tile>*{z-index:1}.case-tile span{font-size:12px;color:#7ad4f4}.case-tile b{font-size:15px;margin-top:4px}.all-cases{background:#0b9bce;align-items:center;justify-content:center}.all-cases:before{display:none}.all-cases span{font-size:27px;color:white}.all-cases b{font-size:16px}.news{background:linear-gradient(#171a1ddf,#15181bef),var(--wyn-background_news, url('assets/remote/photo-1518770660439-4636190af475.jpg')) center/cover;color:#fff}.section-heading.light h2{color:#fff}.section-heading.light .kicker{color:#59c8ef}.news-columns{display:grid;grid-template-columns:1fr 1fr;gap:42px}.column-title{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #ffffff44;margin-bottom:14px}.column-title h3{font-size:18px;margin:0;padding:10px 0}.column-title h3 span{font-size:12px;color:#7d8b95;margin-left:7px}.column-title>a{font-size:14px;color:#9cb0bc}.news-photo{height:160px;background-size:cover;background-position:center}.news-feature{display:block;background:#ffffff13;padding:12px}.news-feature small{display:block;color:#53c5ed;margin-top:12px;font-size:12px}.news-feature h3{font-size:16px;margin:8px 0}.news-feature p{font-size:15px;color:#aab4ba;margin:0}.news-links{list-style:none;padding:0 12px;margin:10px 0}.news-links li{border-bottom:1px solid #ffffff1a;padding:9px 0;font-size:14px}.news-links a{color:#d4dade}.news-links time{float:right;color:#839099}.faq-list details{padding:12px;border-bottom:1px solid #ffffff24;font-size:15px}.faq-list summary{cursor:pointer;color:#e5ebee}.faq-list details[open] summary{color:#55c5ec}.faq-list p{margin:10px 0 0;color:#aab6bd;line-height:1.8}.about{text-align:center;padding:65px 0 75px}.about-text{max-width:100%;margin:24px auto 25px;color:#768188;font-size:16px;line-height:2.2;text-align:left}.footer-main{background:linear-gradient(110deg,#222729f4,#171a1cf4),var(--wyn-background_footer_main, url('assets/remote/photo-1567789884554-0b844b597180.jpg')) center/cover;color:#d5dade;padding:45px 0}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1.6fr;gap:30px}.footer-brand .brand b{color:#fff}.footer-brand .brand-mark{color:#47bce8}.footer-brand p{font-size:16px;line-height:1.9;color:#89949a;margin-top:20px}.footer-grid h4{font-size:16px;color:#fff;margin:3px 0 17px}.footer-grid>div:not(:first-child)>a{display:block;font-size:14px;color:#9ca6ab;margin:10px 0}.footer-contact p{font-size:15px;color:#aab4b9}.footer-contact .footer-button{display:inline-block!important;padding:9px 15px;background:#078fc8;color:#fff!important;margin-top:6px!important}.copyright{background:#111416;color:#778187;font-size:12px;padding:15px 0}.copyright .container{display:flex;justify-content:space-between}.float-contact{position:fixed;right:18px;top:48%;z-index:30;background:#0799d5;color:#fff;padding:12px;border-radius:3px;box-shadow:0 4px 18px #0002;font-size:14px;writing-mode:vertical-rl;display:flex;align-items:center;gap:8px}.float-contact span{font-size:18px}.back-top{position:fixed;right:20px;bottom:20px;z-index:30;width:37px;height:37px;border-radius:50%;background:#242b30;color:#fff;display:grid;place-items:center;opacity:0;pointer-events:none;transition:.2s}.back-top.visible{opacity:1;pointer-events:auto}
.photo{background-size:cover;background-position:center;background-color:#d8e0e5}.mold-photo{background-image:var(--wyn-background_mold_photo, url('assets/remote/photo-1581092160562-40aa08e78837.jpg'))}.factory-photo{background-image:var(--wyn-background_factory_photo, url('assets/remote/photo-1567789884554-0b844b597180.jpg'))}.cnc-photo{background-image:var(--wyn-background_cnc_photo, url('assets/remote/photo-1581091226825-a6a2a5aee158.jpg'))}.service-photo{background-image:var(--wyn-background_service_photo, url('assets/remote/photo-1551836022-d5d88e9218df.jpg'))}.case-main{background-image:url('assets/remote/photo-1581092160607-ee22621dd758.jpg')}.case2{background-image:url('assets/remote/photo-1486262715619-67b85e0b08d3.jpg')}.case3{background-image:url('assets/remote/photo-1519389950473-47ba0277781c.jpg')}.case4{background-image:url('assets/remote/photo-1558008258-3256797b43f3.jpg')}.case5{background-image:url('assets/remote/photo-1565043589221-1a6fd9ae45c7.jpg')}.case6{background-image:url('assets/remote/photo-1581092334651-ddf26d9a09d0.jpg')}.news-photo{background-image:url('assets/remote/photo-1581092160562-40aa08e78837.jpg')}
@media(max-width:900px){.main-nav a{padding:0 11px;font-size:15px}.nav-cta{display:none}.hero h1{font-size:46px}.hero-machine{right:5%;opacity:.38}.product-photo{height:150px}.advantage{gap:25px}.footer-grid{grid-template-columns:repeat(3,1fr)}.footer-brand{grid-column:span 3}.footer-contact{grid-column:span 2}}
@media(max-width:640px){.container{width:calc(100% - 32px)}.topline{height:68px}.brand-mark{font-size:27px}.brand b{font-size:16px}.brand small{font-size:10px}.hotline{gap:7px}.phone-icon{width:30px;height:30px;font-size:18px}.hotline b{font-size:16px}.hotline small{font-size:11px}.site-header{height:46px}.menu-toggle{display:block}.main-nav{display:none;position:absolute;top:46px;left:0;right:0;background:#191e22;height:auto;flex-direction:column;padding:8px 16px 15px}.main-nav.open{display:flex}.main-nav a{padding:12px;display:block}.hero{height:525px}.hero-content{padding-top:68px}.hero h1{font-size:38px}.hero-content>p{font-size:16px;max-width:290px;line-height:1.8}.hero-machine{right:-70px;bottom:75px;transform:scale(.75) skewY(-7deg);transform-origin:right bottom;opacity:.3}.hero-stats{gap:15px;margin-top:35px}.hero-stats div{padding-right:14px}.hero-stats b{font-size:24px}.hero-actions{flex-wrap:wrap}.btn{padding:11px 14px}.section{padding:52px 0}.section-heading h2{font-size:28px}.filter-row{gap:6px}.filter-row :is(button, a.catalog-more){padding:7px 12px;font-size:14px}.four{grid-template-columns:repeat(2,1fr);gap:10px}.product-photo{height:135px}.product-label{height:34px;font-size:14px}.why-title{height:130px;padding:22px 0}.why-title h2{font-size:24px}.advantage-list{padding:25px 0}.advantage{grid-template-columns:1fr;gap:12px;padding:16px 0;min-height:0}.advantage.reverse .adv-image,.advantage.reverse .adv-copy{order:initial}.adv-image{height:190px}.adv-copy,.reverse .adv-copy{padding:10px 0 10px 48px;text-align:left}.number,.reverse .number{left:0;right:auto;width:34px;height:34px}.adv-copy h3{font-size:18px}.adv-copy h3 span{font-size:15px}.reverse li:after{display:none}.quality-inner{display:block}.checks{border:0;padding:10px 0 0;min-width:0}.photo-grid{grid-template-columns:repeat(2,1fr);gap:7px}.factory-photo{height:130px}.case-layout{grid-template-columns:1fr}.case-feature{height:270px}.case-list{grid-template-columns:repeat(2,1fr)}.case-tile{min-height:115px}.news-columns{grid-template-columns:1fr;gap:28px}.news{padding:52px 0}.about-text{text-align:left;font-size:15px}.footer-grid{grid-template-columns:repeat(2,1fr);gap:22px}.footer-brand{grid-column:span 2}.footer-contact{grid-column:span 2}.copyright .container{display:block;line-height:1.9}.float-contact{right:8px;padding:10px 8px}.back-top{right:10px;bottom:10px}}

/* Readable typography: allow enlarged text to wrap without clipping. */
body { line-height: 1.65; }
.site-header { height: 48px; }
html { scroll-padding-top: 64px; }
.main-nav a { padding-inline: 17px; white-space: nowrap; }
.nav-cta { white-space: nowrap; }
.hero { height: auto; min-height: 610px; padding-bottom: 80px; }
.hero-bottom { height: auto; min-height: 42px; padding-block: 9px; }
.product-label { height: auto; min-height: 46px; padding: 9px 8px; text-align: center; line-height: 1.5; }
.why-title { height: auto; min-height: 165px; padding-block: 28px; }
.adv-copy h3 { line-height: 1.65; }
.adv-copy ul { line-height: 1.95; }
.quality-inner { gap: 28px; }
.quality h2 { line-height: 1.7; }
.checks { min-width: 360px; padding-left: 28px; }
.case-caption { right: 24px; }
.case-caption small { font-size: 14px; }
.news-links a { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 4px 14px; }
.news-links time { float: none; white-space: nowrap; font-size: 13px; }
.column-title { gap: 12px; }
.column-title > a { white-space: nowrap; }
.column-title h3 span { display: inline-block; }
.about-text { line-height: 2; }
.footer-grid { grid-template-columns: 2.3fr 1fr 1fr 1fr 1.8fr; gap: 24px; }
.footer-grid > div { min-width: 0; }
.footer-brand .brand { flex-wrap: wrap; }
.brand-logo { display: block; width: min(390px, 100%); height: auto; }
.topline .brand { min-width: 0; max-width: 100%; }
.topline .brand-logo { max-height: 78px; object-fit: contain; object-position: left center; }
.topline .top-inner { flex-wrap: nowrap; gap: 20px; }
.topline .brand { flex: 0 1 390px; }
.topline .brand-logo { width: 100%; min-width: 0; }
.topline .hotline { flex: 0 0 auto; white-space: nowrap; }
@media (max-width: 640px) {
  .topline .top-inner { gap: 12px; }
  .topline .hotline { gap: 6px; }
  .topline .hotline b { font-size: clamp(12px, 2.8vw, 18px); letter-spacing: 0; }
  .topline .hotline small { font-size: 11px; }
  .topline .phone-icon { display: none; }
}
.footer-brand .brand { display: inline-flex; max-width: 100%; padding: 0; background: transparent; border-radius: 0; }
.footer-brand .brand-logo { width: min(340px, 100%); filter: brightness(0) invert(1); opacity: .9; }
.footer-contact p { overflow-wrap: anywhere; }
@media (max-width: 1050px) {
  .menu-toggle { display: block; }
  .main-nav { display: none; position: absolute; top: 100%; left: 0; right: 0; height: auto; background: #191e22; flex-direction: column; padding: 8px 16px 15px; }
  .main-nav.open { display: flex; }
  .main-nav a { display: block; padding: 12px; font-size: 16px; }
  .nav-cta { display: inline-block; }
  .footer-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .footer-brand { grid-column: span 3; }
  .footer-contact { grid-column: span 2; }
}
@media (max-width: 760px) {
  .quality-inner { flex-direction: column; align-items: flex-start; }
  .checks { min-width: 0; padding: 0; border: 0; }
}
@media (max-width: 640px) {
  .topline { height: auto; min-height: 90px; padding-block: 14px; }
  .top-inner { flex-wrap: wrap; gap: 12px 20px; }
  .brand { gap: 10px; }
  .brand b { font-size: 16px; }
  .brand small { font-size: 10px; letter-spacing: .03em; }
  .hotline b { font-size: 18px; }
  .hero { min-height: 620px; }
  .hero-content { padding-top: 48px; }
  .eyebrow { font-size: 12px; letter-spacing: .1em; }
  .hero h1 { font-size: clamp(30px, 8.5vw, 38px); }
  .hero-content > p { max-width: 100%; }
  .hero-stats { gap: 14px; flex-wrap: wrap; }
  .section-heading h2 { font-size: 28px; }
  .product-label { min-height: 44px; font-size: 14px; }
  .filter-row :is(button, a.catalog-more) { font-size: 14px; }
  .adv-copy h3 { font-size: 19px; }
  .adv-copy h3 span { font-size: 16px; }
  .about-text { font-size: 16px; }
  .case-caption { left: 18px; right: 18px; bottom: 18px; }
  .case-caption h3 { font-size: 20px; }
  .case-tile { min-height: 135px; }
  .footer-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .footer-brand, .footer-contact { grid-column: span 2; }
}
/* Align navigation with the shared page content container. */
.nav-wrap {
  width: min(1180px, calc(100% - 48px));
  gap: 24px;
}
.main-nav { flex: 1; justify-content: center; min-width: 0; }
.main-nav a { flex: 1; padding-inline: 12px; text-align: center; }
.nav-cta { flex-shrink: 0; }
@media (max-width: 1050px) {
  .nav-wrap { width: calc(100% - 48px); }
  .main-nav { left: 24px; right: 24px; }
  .main-nav a { flex: none; padding: 12px; }
}
@media (max-width: 640px) {
  .nav-wrap { width: calc(100% - 32px); }
  .main-nav { left: 16px; right: 16px; }
}


/* Reference navigation includes a dedicated silicone products section. */
.silicone-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.silicone-grid article { padding: 24px; border: 1px solid var(--line); background: #f7f9fb; }
.silicone-grid article { position: relative; transition: border-color .2s, box-shadow .2s; }
.silicone-grid article:hover { border-color: var(--blue); box-shadow: 0 8px 20px #16364914; }
.silicone-grid article h3 a::after { content: ""; position: absolute; inset: 0; }
.silicone-grid h3 { margin: 0 0 12px; font-size: 20px; }
.silicone-grid p { margin: 0; color: #768188; font-size: 16px; line-height: 1.9; }
.silicone-contact { text-align: center; margin-top: 28px; }
@media (max-width: 640px) { .silicone-grid { grid-template-columns: 1fr; } }

/* Banner carousel: slides share a grid cell to keep the height stable. */
.hero-carousel { min-height: 0; padding: 0; background: #071b38; touch-action: pan-y; }
.hero-carousel::before, .hero-carousel::after { display: none; }
.hero-slides { display: grid; }
.hero-slide { grid-area: 1 / 1; min-width: 0; position: relative; opacity: 0; visibility: hidden; pointer-events: none; transition: opacity .65s ease, visibility .65s; }
.hero-slide.is-active { opacity: 1; visibility: visible; pointer-events: auto; }
.hero-slide-background { position: absolute; inset: 0; background-color: #082a50; background-position: center; background-size: cover; }
.slide-mould { background-image: var(--wyn-background_slide_mould, url('assets/remote/photo-1581092160562-40aa08e78837.jpg')); }
.slide-injection { background-image: var(--wyn-background_slide_injection, url('assets/remote/photo-1581091226825-a6a2a5aee158.jpg')); }
.slide-factory { background-image: var(--wyn-background_slide_factory, url('assets/remote/photo-1567789884554-0b844b597180.jpg')); }
.hero-carousel .hero-content { min-height: 640px; padding-top: 62px; padding-bottom: 138px; }
.hero-carousel .hero-title { font-size: 54px; line-height: 1.3; letter-spacing: .025em; margin: 20px 0 12px; font-weight: 700; }
.hero-title em { font-style: normal; color: #50c6fa; }
.hero-arrow { position: absolute; z-index: 4; top: 45%; transform: translateY(-50%); width: 40px; height: 60px; border: 1px solid #ffffff40; border-radius: 3px; color: white; background: #07152a66; font: 36px/1 Arial, sans-serif; cursor: pointer; }
.hero-prev { left: 8px; }
.hero-next { right: 8px; }
.hero-controls { position: absolute; z-index: 4; bottom: 66px; left: 50%; transform: translateX(-50%); display: flex; align-items: center; gap: 18px; }
.hero-dots { display: flex; align-items: center; gap: 2px; }
.hero-dots button { width: 36px; height: 44px; border: 0; padding: 0; background: transparent; cursor: pointer; display: grid; place-items: center; }
.hero-dots button::after { content: ''; width: 9px; height: 9px; border-radius: 10px; background: #ffffff88; transition: width .25s, background .25s; }
.hero-dots button.is-active::after { width: 26px; background: #4bc7ff; }
.hero-playback { min-height: 44px; padding: 0 12px; border: 1px solid #ffffff50; border-radius: 3px; background: #07152a66; color: #fff; font: inherit; font-size: 14px; cursor: pointer; }
.hero-arrow:hover, .hero-playback:hover { background: #0799d5; }
.hero-carousel button:focus-visible, .hero-carousel a:focus-visible { outline: 3px solid #fff; outline-offset: 3px; }
@media (min-width: 641px) and (max-width: 1320px) { .hero-carousel .hero-content { padding-inline: 36px; } }
@media (max-width: 900px) { .hero-carousel .hero-title { font-size: 46px; } }
@media (max-width: 640px) {
  .hero-carousel .hero-content { min-height: 610px; padding-top: 46px; padding-bottom: 145px; }
  .hero-carousel .hero-title { font-size: clamp(30px, 8.5vw, 38px); }
  .hero-carousel .hero-content > p { max-width: 100%; }
  .hero-controls { bottom: 68px; }
  .hero-arrow { top: auto; bottom: 68px; transform: none; width: 36px; height: 44px; font-size: 28px; }
  .hero-prev { left: 16px; }
  .hero-next { right: 16px; }
}
@media (prefers-reduced-motion: reduce) { .hero-slide, .hero-dots button::after { transition: none; } }

/* Minimal carousel arrows without a surrounding box. */
.hero-arrow { border: 0; background: transparent; text-shadow: 0 2px 8px #0008; }
.hero-arrow:hover { background: transparent; color: #50c6fa; }

/* Business guide between the banner and the mould catalogue. */
.hero-carousel .hero-content { min-height: 600px; padding-bottom: 104px; }
.hero-controls { bottom: 24px; }
.service-strip { background: #f4f6f8; border-bottom: 1px solid #e4e9ee; }
.service-strip-inner { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding-block: 22px; }
.service-strip-content { min-width: 0; }
.service-strip-links { display: flex; align-items: center; flex-wrap: wrap; gap: 10px 22px; }
.service-strip-links strong { color: #243440; font-size: 16px; padding-left: 12px; border-left: 3px solid var(--blue); }
.service-strip-links a { font-size: 15px; color: #475864; }
.service-strip-links a:hover { color: #078fc8; }
.service-strip-content p { margin: 9px 0 0; color: #657681; font-size: 14px; line-height: 1.8; }
.service-strip-phone { flex-shrink: 0; border-left: 1px solid #d9e1e7; padding-left: 28px; }
.service-strip-phone > span { display: block; color: #657681; font-size: 13px; }
.service-strip-phone strong { display: block; color: #078fc8; font-size: 22px; letter-spacing: .02em; margin-top: 3px; }
.service-strip-phone strong span { margin-left: 10px; }
@media (max-width: 900px) {
  .service-strip-inner { flex-wrap: wrap; gap: 16px; }
  .service-strip-phone { border-left: 0; padding-left: 0; }
}
@media (max-width: 640px) {
  .hero-carousel .hero-content { min-height: 570px; padding-bottom: 104px; }
  .hero-arrow { bottom: 24px; }
  .service-strip-inner { padding-block: 20px; }
  .service-strip-links { gap: 10px 16px; }
  .service-strip-links strong { flex-basis: 100%; }
  .service-strip-content p { font-size: 14px; }
  .service-strip-phone { width: 100%; border-top: 1px solid #d9e1e7; padding-top: 12px; }
}

/* Shared category button contrast for mould and injection sections. */
:is(#mould, #injection) .filter-row :is(button, a.catalog-more) {
  background: #fff;
  border-color: #a9bac8;
  color: #344b5e;
  box-shadow: 0 2px 5px rgba(28, 54, 76, .08);
}
:is(#mould, #injection) .filter-row :is(button, a.catalog-more):hover {
  background: #e5f5fd;
  border-color: #0788bd;
  color: #08638b;
}
:is(#mould, #injection) .filter-row :is(button, a.catalog-more).selected {
  background: #0785b8;
  border-color: #0785b8;
  color: #fff;
  box-shadow: 0 3px 8px rgba(7, 133, 184, .18);
}
:is(#mould, #injection) .filter-row :is(button, a.catalog-more).selected:hover {
  background: #066e99;
  border-color: #066e99;
  color: #fff;
}
:is(#mould, #injection) .filter-row :is(button, a.catalog-more):focus-visible {
  outline: 3px solid #08638b;
  outline-offset: 3px;
}




/* Compact navigation: animated icon and staggered dropdown links. */
.menu-toggle {
  position: relative;
  width: 44px;
  height: 44px;
  padding: 0;
  border-radius: 4px;
  cursor: pointer;
  transition: background-color .2s ease, transform .2s ease;
}
.menu-toggle:hover { background: #ffffff12; }
.menu-toggle:active { transform: scale(.9); }
.menu-toggle:focus-visible { outline: 2px solid #50c6fa; outline-offset: 2px; }
.menu-toggle span {
  position: absolute;
  left: 10px;
  top: 21px;
  width: 24px;
  height: 2px;
  border-radius: 2px;
  background: currentColor;
  transition: transform .3s ease, opacity .2s ease;
}
.menu-toggle span:nth-child(1) { transform: translateY(-7px); }
.menu-toggle span:nth-child(3) { transform: translateY(7px); }
.menu-toggle.is-open span:nth-child(1) { transform: rotate(45deg); }
.menu-toggle.is-open span:nth-child(2) { opacity: 0; transform: scaleX(0); }
.menu-toggle.is-open span:nth-child(3) { transform: rotate(-45deg); }
@media (max-width: 1050px) {
  .main-nav {
    display: flex;
    max-height: min(620px, calc(100dvh - 64px));
    overflow-y: auto;
    border-radius: 0 0 6px 6px;
    box-shadow: 0 14px 28px #0003;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(-10px);
    clip-path: inset(0 0 100% 0);
    transition: clip-path .32s ease, transform .32s ease, opacity .25s ease, visibility 0s linear .32s;
  }
  .main-nav.open {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateY(0);
    clip-path: inset(0 0 0 0);
    transition: clip-path .35s ease, transform .35s ease, opacity .25s ease, visibility 0s;
  }
  .main-nav a {
    opacity: 0;
    transform: translateY(-8px);
    transition: opacity .18s ease, transform .18s ease, background-color .2s ease;
  }
  .main-nav.open a {
    opacity: 1;
    transform: translateY(0);
    transition-delay: calc(var(--menu-index, 0) * 25ms);
  }
}
@media (prefers-reduced-motion: reduce) {
  .menu-toggle, .menu-toggle span, .main-nav, .main-nav.open, .main-nav a, .main-nav.open a {
    transition: none;
  }
}

/* Compact side menu, aligned below the menu toggle. */
@media (max-width: 1050px) {
  .main-nav {
    left: 24px;
    right: auto;
    width: min(260px, calc(100vw - 48px));
    padding: 10px;
    justify-content: flex-start;
    border-radius: 0 0 8px 8px;
    transform: translateX(-18px);
    clip-path: none;
    transition: transform .28s ease, opacity .22s ease, visibility 0s linear .28s;
  }
  .main-nav.open {
    transform: translateX(0);
    clip-path: none;
    transition: transform .28s ease, opacity .22s ease, visibility 0s;
  }
  .main-nav a {
    text-align: left;
    padding: 10px 18px;
    border-radius: 4px;
    transform: translateX(-8px);
  }
  .main-nav.open a { transform: translateX(0); }
}
@media (max-width: 640px) {
  .main-nav { left: 16px; right: auto; width: min(240px, calc(100vw - 32px)); }
}
@media (prefers-reduced-motion: reduce) {
  .main-nav, .main-nav.open, .main-nav a, .main-nav.open a { transition: none; }
}

/* Mobile business guide: predictable two-column links and a compact contact card. */
@media (max-width: 640px) {
  .service-strip-inner {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 16px;
    padding-block: 22px;
  }
  .service-strip-links {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
  }
  .service-strip-links strong {
    grid-column: 1 / -1;
    margin-bottom: 4px;
    line-height: 1.4;
  }
  .service-strip-links a {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    padding: 10px 8px;
    border: 1px solid #dce4eb;
    border-radius: 6px;
    background: #fff;
    text-align: center;
    font-size: 15px;
    line-height: 1.5;
  }
  .service-strip-links a:hover { background: #eaf6fc; border-color: #87bfd8; }
  .service-strip-content p {
    margin-top: 14px;
    font-size: 14px;
    line-height: 1.85;
    overflow-wrap: anywhere;
  }
  .service-strip-phone {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 6px 16px;
    min-width: 0;
    width: 100%;
    padding: 14px 16px;
    border: 1px solid #d3e7f1;
    border-radius: 8px;
    background: #eaf5fb;
  }
  .service-strip-phone > span { font-size: 13px; line-height: 1.6; }
  .service-strip-phone strong {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    margin: 0;
    font-size: 20px;
    line-height: 1.5;
    letter-spacing: 0;
    white-space: nowrap;
  }
  .service-strip-phone strong span { margin-left: 0; }
  .service-strip a:focus-visible { outline: 2px solid #0785b8; outline-offset: 3px; }
}
@media (max-width: 420px) {
  .service-strip-phone { display: grid; grid-template-columns: minmax(0, 1fr); gap: 4px; }
}

/* Consistent two-column product filters on narrow screens. */
@media (max-width: 640px) {
  :is(#mould, #injection) .filter-row {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin: 22px 0 26px;
  }
  :is(#mould, #injection) .filter-row :is(button, a.catalog-more) {
    width: 100%;
    min-width: 0;
    min-height: 44px;
    padding: 10px 8px;
    border-radius: 6px;
    font-size: 14px;
    line-height: 1.5;
    text-align: center;
  }
}

/* Center the complete title group and normalize nested heading spacing. */
.why-title {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 165px;
  padding: 28px 20px;
  text-align: center;
}
.why-title > span {
  display: block;
  padding-left: .18em;
  line-height: 1.5;
}
.why-title h2 {
  margin: 0;
  max-width: 100%;
  line-height: 1.5;
  letter-spacing: 0;
}
.why-title h2 span { letter-spacing: inherit; }

/* Mobile quality commitment: separate headline, assurances and contact. */
@media (max-width: 640px) {
  .quality { padding-block: 30px; }
  .quality-inner {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 22px;
    align-items: start;
  }
  .quality-inner > div:first-child > span {
    display: block;
    font-size: 12px;
    line-height: 1.5;
    letter-spacing: .16em;
    margin-bottom: 12px;
  }
  .quality h2 { margin: 0; font-size: 23px; line-height: 1.5; }
  .quality h2 b {
    display: block;
    margin-top: 8px;
    font-size: 16px;
    line-height: 1.7;
    color: #d1d9df;
  }
  .quality-inner > div:first-child > p {
    margin: 12px 0 0;
    max-width: 100%;
    font-size: 14px;
    line-height: 1.85;
    color: #abbac5;
  }
  .quality .checks {
    display: grid;
    gap: 12px;
    min-width: 0;
    width: 100%;
    padding: 20px 0 0;
    border: 0;
    border-top: 1px solid #ffffff24;
  }
  .quality .checks p { margin: 0; font-size: 15px; line-height: 1.8; }
  .quality .checks p:last-child {
    margin-top: 4px;
    padding: 14px 16px;
    border: 1px solid #ffffff1c;
    border-radius: 6px;
    background: #ffffff08;
    font-size: 14px;
    color: #bdcbd4;
  }
  .quality .checks p:last-child b {
    display: block;
    margin-top: 4px;
    font-size: 23px;
    line-height: 1.5;
    color: #63c9ee;
    white-space: nowrap;
  }
}

/* Advantage lists: one leading marker and aligned wrapped lines. */
.adv-copy ul { text-align: left; }
.adv-copy li { position: relative; padding-left: 16px; margin-bottom: 6px; }
.adv-copy li:last-child { margin-bottom: 0; }
.adv-copy li::before { position: absolute; left: 0; top: 0; padding: 0; }
.adv-copy li::after { content: none; display: none; }

/* Match the text layout of all four advantages. */
.advantage.reverse .adv-copy {
  padding: 14px 0 10px 56px;
  text-align: left;
}
.advantage.reverse .number { left: 0; right: auto; }
@media (max-width: 640px) {
  .advantage.reverse .adv-copy { padding: 10px 0 10px 48px; }
}

/* Highlighted title text shares the heading typography at every breakpoint. */
.adv-copy h3 span {
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
}

/* FAQ disclosure indicator follows the expand/collapse transition. */
.faq-list summary { position: relative; padding-right: 26px; list-style: none; transition: color .28s ease; }
.faq-list summary::-webkit-details-marker { display: none; }
.faq-list summary::after {
  content: '';
  position: absolute;
  right: 4px;
  top: .5em;
  width: 8px;
  height: 8px;
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: rotate(45deg);
  transition: transform .28s ease;
}
.faq-list summary[aria-expanded="true"]::after { transform: rotate(225deg); }
.faq-list summary[aria-expanded="false"] { color: #e5ebee; }
@media (prefers-reduced-motion: reduce) { .faq-list summary, .faq-list summary::after { transition: none; } }

/* Use the same date typography throughout the news section. */
.news time {
  font-family: Arial, sans-serif;
  font-size: 13px;
  font-weight: 400;
  font-style: normal;
  font-variant-numeric: tabular-nums;
  line-height: 1.65;
  letter-spacing: 0;
  white-space: nowrap;
}
.news-links time {
  flex: 0 0 10ch;
  margin-left: auto;
  text-align: right;
}
.news-links a { align-items: baseline; }

/* Reference-style floating contact card with the supplied QR image. */
.contact-widget {
  position: fixed;
  z-index: 30;
  right: 12px;
  top: 50%;
  transform: translateY(-50%);
  width: 164px;
  border: 2px solid #5ba7e4;
  background: #fff;
  color: #333;
  box-shadow: 0 5px 20px #12375424;
}
.contact-widget summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 6px;
  padding: 10px 9px;
  background: #519edc;
  color: #fff;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.5;
  list-style: none;
  cursor: pointer;
}
.contact-widget summary::-webkit-details-marker { display: none; }
.contact-chevron { transition: transform .2s; }
.contact-widget[open] .contact-chevron { transform: rotate(180deg); }
.contact-widget-body { padding: 10px 9px 0; text-align: center; }
.contact-widget-body img { display: block; width: 100%; height: auto; border-top: 1px solid #e5e5e5; }
.contact-widget-body p { margin: 6px 0; color: #777; font-size: 14px; }
.contact-widget-phone { display: block; font: 700 18px/1.7 Arial, sans-serif; }
.contact-widget-link { display: block; border-top: 1px solid #ddd; padding: 7px 0; color: #168ccf; font-size: 15px; }
.contact-widget a:focus-visible, .contact-widget summary:focus-visible { outline: 2px solid #08638b; outline-offset: 2px; }
@media (max-width: 640px) {
  .contact-widget { right: 8px; top: auto; bottom: 62px; transform: none; width: 148px; }
  .contact-widget:not([open]) { width: 120px; }
  .contact-widget summary { font-size: 14px; padding: 9px 8px; }
  .contact-widget-phone { font-size: 16px; }
}
@media (prefers-reduced-motion: reduce) { .contact-chevron { transition: none; } }

/* Stable icon/text alignment in the floating contact header. */
.contact-widget summary {
  display: grid;
  grid-template-columns: 20px minmax(0, 1fr) 16px;
  align-items: center;
  gap: 8px;
  min-height: 44px;
  padding: 10px;
}
.contact-widget .contact-icon { display: block; width: 20px; height: 20px; }
.contact-widget .contact-heading { text-align: center; white-space: nowrap; line-height: 1.4; }
.contact-widget .contact-chevron { display: block; width: 16px; height: 16px; transform-origin: center; }
@media (max-width: 640px) {
  .contact-widget summary { grid-template-columns: 18px minmax(0, 1fr) 14px; gap: 5px; padding: 9px 8px; }
  .contact-widget .contact-icon { width: 18px; height: 18px; }
  .contact-widget .contact-chevron { width: 14px; height: 14px; }
}

/* Dock the collapsed contact tab to the right edge. */
.contact-widget { right: 0; border-right: 0; border-radius: 7px 0 0 7px; }
.contact-widget:not([open]) { width: 44px; }
.contact-widget:not([open]) summary {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 10px;
  padding: 12px 8px;
  border-radius: 5px 0 0 5px;
}
.contact-widget:not([open]) .contact-heading {
  writing-mode: vertical-rl;
  text-orientation: upright;
  letter-spacing: 3px;
  font-size: 14px;
}
.contact-widget:not([open]) .contact-chevron { transform: rotate(90deg); }
.contact-widget[open] .contact-chevron { transform: rotate(-90deg); }
@media (max-width: 640px) {
  .contact-widget { right: 0; }
  .contact-widget:not([open]) { width: 40px; }
}

/* Balance footer columns across tablet and phone widths. */
@media (min-width: 641px) and (max-width: 1050px) {
  .footer-grid {
    grid-template-columns: repeat(3, minmax(0, .8fr)) minmax(0, 1.65fr);
    gap: 28px 20px;
    align-items: start;
  }
  .footer-brand { grid-column: 1 / -1; }
  .footer-brand p { margin-bottom: 0; }
  .footer-contact { grid-column: auto; }
  .footer-contact p { margin: 10px 0; }
}
@media (max-width: 640px) {
  .footer-main { padding-block: 32px; }
  .footer-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 26px 20px;
    align-items: start;
  }
  .footer-brand { grid-column: 1 / -1; }
  .footer-brand p { margin: 16px 0 0; font-size: 14px; line-height: 1.85; }
  .footer-contact { grid-column: auto; }
  .footer-grid h4 { margin: 0 0 12px; }
  .footer-grid > div:not(:first-child) > a { margin-block: 9px; font-size: 14px; }
  .footer-contact p { margin: 9px 0; font-size: 14px; line-height: 1.7; overflow-wrap: anywhere; }
}

/* Company introduction with readable paragraphs and Chinese first-line indents. */
.about-text { text-align: justify; line-height: 2; }
.about-text p { margin: 0 0 18px; text-indent: 2em; }
.about-text p:last-child { margin-bottom: 0; }
@media (max-width: 640px) {
  .about-text { text-align: justify; line-height: 1.95; }
  .about-text p { margin-bottom: 16px; }
}

.service-strip-phone strong { display: flex; align-items: center; gap: 12px; }
.service-phone-icon { display: block; width: 21px; height: 21px; flex-shrink: 0; }



/* Local mould photography, consistent with the dedicated catalogue page. */
.product-photo-mould { background-color: #fff; background-size: contain; background-repeat: no-repeat; }
/* Welcome line shared with the mould catalogue. */
.catalog-welcome { background: #fafafa; border-bottom: 1px solid #edf0f2; color: #8a949c; font-size: 12px; padding: 5px 0; }
@media (max-width: 540px) { .catalog-welcome { font-size: 11px; } }
.back-top { border: 0; cursor: pointer; font: inherit; }
/* Shared footer spacing and interaction across all pages. */
/* A compact, proportional brand strip on phones. */
@media (max-width: 760px) {
  .topline { height: auto; min-height: 0; padding-block: 12px; }
  .topline .top-inner { height: auto; min-height: 42px; gap: 12px; }
  .topline .brand { flex: 0 1 280px; width: 56%; max-width: 56%; }
  .topline .brand-logo { width: 100%; height: auto; max-height: 56px; }
  .topline .hotline { gap: clamp(4px, 1vw, 8px); }
  .topline .hotline b { font-size: clamp(13px, 2.8vw, 18px); letter-spacing: 0; }
  .topline .hotline small { font-size: 11px; }
  .topline .phone-icon { display: grid; flex: 0 0 auto; width: clamp(24px, 5vw, 36px); height: clamp(24px, 5vw, 36px); font-size: clamp(16px, 3.2vw, 22px); line-height: 1; }
}
@media (max-width: 480px) {
  .topline { padding-block: 10px; }
  .topline .top-inner { gap: 10px; min-height: 38px; }
}
@media (max-width: 760px) {
  .contact-widget { display: none; }
}
.mobile-nav-title, .mobile-nav-consult { display: none; }
@media (max-width: 1050px) {
  .site-header .nav-wrap { display: grid; grid-template-columns: 44px minmax(0, 1fr) auto; gap: 12px; }
  .mobile-nav-title { display: block; color: #eef4f7; font-size: 16px; font-weight: 500; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
  .mobile-nav-consult { display: inline-flex; align-items: center; justify-content: center; gap: 7px; min-height: 40px; padding: 0 13px; border-radius: 4px; background: #0799d5; color: #fff; font-size: 14px; white-space: nowrap; transition: background .2s; }
  .mobile-nav-consult svg { width: 16px; height: 16px; }
  .mobile-nav-consult:hover { background: #0786bb; }
  .mobile-nav-consult:focus-visible { outline: 2px solid #fff; outline-offset: 3px; }
}
@media (max-width: 380px) {
  .site-header .nav-wrap { gap: 8px; }
  .mobile-nav-consult { padding-inline: 9px; font-size: 13px; }
  .mobile-nav-title { font-size: 15px; }
}
.footer-main { padding: 48px 0 42px; }
.footer-main .footer-grid { grid-template-columns: minmax(240px, 2.2fr) repeat(3, minmax(100px, .9fr)) minmax(220px, 1.6fr); gap: clamp(20px, 2.6vw, 34px); align-items: start; }
.footer-main .footer-grid h4 { margin: 0 0 14px; font-size: 16px; line-height: 1.8; }
.footer-main .footer-brand p,
.footer-main .footer-grid > div:not(:first-child) > a,
.footer-main .footer-contact p { font-size: 15px; line-height: 1.8; color: #aab6be; }
.footer-main .footer-brand p { margin: 20px 0 0; }
.footer-main .footer-grid > div:not(:first-child) > a { position: relative; width: fit-content; max-width: 100%; padding: 5px 0; margin: 3px 0; text-decoration: none; transition: color .2s ease; }
.footer-main .footer-grid > div:not(:first-child) > a:hover,
.footer-main .footer-grid > div:not(:first-child) > a:focus-visible { color: #4dc8f4; }
.footer-main .footer-contact p { display: flex; align-items: baseline; gap: 9px; margin: 3px 0; padding: 5px 0; }
.footer-contact-icon { display: block; width: 17px; height: 17px; flex: 0 0 17px; align-self: flex-start; margin-top: 5px; color: #b9c8d0; }
.footer-contact p > span { min-width: 0; }
.footer-main a:focus-visible { outline: 2px solid #4dc8f4; outline-offset: 4px; border-radius: 2px; }
.copyright { padding-block: 17px; line-height: 1.8; }
.copyright .container { gap: 12px 24px; }
@media (min-width: 641px) and (max-width: 1050px) {
  .footer-main .footer-grid { grid-template-columns: repeat(3, minmax(0, 1fr)) minmax(220px, 1.6fr); gap: 30px 20px; }
  .footer-main .footer-brand { grid-column: 1 / -1; }
  .footer-main .footer-brand p { max-width: 720px; margin-top: 16px; }
  .footer-main .footer-contact { grid-column: auto; }
}
@media (max-width: 640px) {
  .footer-main { padding: 32px 0; }
  .footer-main .footer-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 26px 16px; }
  .footer-main .footer-brand { grid-column: 1 / -1; }
  .footer-main .footer-brand p { margin-top: 16px; }
  .footer-main .footer-grid h4 { margin-bottom: 10px; }
  .footer-main .footer-contact { grid-column: 1 / -1; padding-top: 20px; border-top: 1px solid #ffffff1c; }
  .copyright .container { display: flex; flex-direction: column; align-items: center; text-align: center; gap: 4px; }
}
@media (prefers-reduced-motion: reduce) {
  .footer-main .footer-grid > div:not(:first-child) > a { transition: none; }
}

/* All three homepage slides share one text and three-column information layout. */
.hero-carousel .hero-content > p { min-height: 3.4em; max-width: 660px; line-height: 1.7; }
.hero-carousel .hero-stats { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); width: min(100%, 660px); gap: 24px; margin-top: 28px; }
.hero-carousel .hero-stats > div { min-width: 0; padding-right: 18px; }
.hero-carousel .hero-stats > div:last-child { border-right: 0; padding-right: 0; }
.hero-carousel .hero-stats b { display: block; font-size: 30px; line-height: 1.4; }
.hero-carousel .hero-stats small { font-size: 14px; line-height: 1.7; margin-top: 6px; }
@media (max-width: 640px) {
 .hero-carousel .eyebrow { min-height: 2.8em; line-height: 1.4; }
 .hero-carousel .hero-content > p { min-height: 5.1em; }
 .hero-carousel .hero-stats { gap: 12px; margin-top: 24px; }
 .hero-carousel .hero-stats > div { padding-right: 10px; }
 .hero-carousel .hero-stats b { font-size: clamp(18px, 4.5vw, 26px); }
 .hero-carousel .hero-stats small { font-size: 12px; }
}
