/*
Theme Name: Tianyi Hang Industrial
Description: English industrial export catalog and OEM inquiry site for Shanghai Tianyi Hang.
Version: 1.2.1
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: tianyihang
*/
:root{--ink:#10192a;--night:#080f1e;--dark:#101c30;--blue:#a8d1ff;--muted:#53647b;--line:#d6e1ef;--paper:#f2f6fb;--heading:"Barlow Condensed","Arial Narrow","Impact",sans-serif;--body:"Inter","Segoe UI",Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font:16px/1.6 var(--body)}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #4f9cf3;outline-offset:4px}[hidden]{display:none!important}section[id],article[id]{scroll-margin-top:30px}.shell{width:min(1376px,calc(100% - 104px));margin-inline:auto}.skip{position:absolute;z-index:20;background:white;color:#111;padding:10px;left:16px;top:-80px}.skip:focus{top:12px}
.site-header{background:var(--night);color:white;border-bottom:1px solid #263246;position:relative;z-index:5}.header-inner{display:flex;align-items:center;justify-content:space-between;min-height:79px;gap:20px}.brand{display:inline-flex;align-items:center;gap:11px;font-weight:800;letter-spacing:.105em;font-size:17px;line-height:1.1;white-space:nowrap}.brand small{display:block;font-size:8px;letter-spacing:.22em;margin-top:6px;color:#a9bad2}.brand-mark{width:34px;height:30px;display:flex;gap:4px;align-items:center;justify-content:center;transform:skewX(-18deg)}.brand-mark i{width:6px;background:var(--blue);height:23px}.brand-mark i:nth-child(2){height:29px}.brand-mark i:nth-child(3){height:15px}.site-header nav,.footer nav{display:flex;gap:30px;align-items:center;color:#bac6d8;font-size:14px}.site-header nav a:hover,.footer nav a:hover,.site-header nav [aria-current]{color:white}.menu-toggle{display:none}.btn{display:inline-flex;justify-content:space-between;align-items:center;gap:20px;border-radius:6px;border:1px solid transparent;padding:13px 18px;background:var(--blue);color:var(--night);font-size:13px;font-weight:750;line-height:1.3;transition:background .2s,border-color .2s;white-space:nowrap}.btn span{font-size:17px}.btn:hover{background:#d1e8ff}.btn.outline{border-color:#9aaac0;background:transparent;color:inherit}.btn.outline:hover{border-color:#3876be;background:#b7d5ff44}.header-cta{color:#e3ecfa;background:#ffffff08;border-color:#4a5d79}.header-cta:hover{color:var(--night)}
.eyebrow{display:flex;align-items:center;gap:10px;font-size:12px;letter-spacing:.15em;font-weight:750;margin:0 0 14px}.eyebrow i{display:inline-block;width:7px;height:7px;background:#4c8fde;flex:none}.hero{color:#f0f6ff;background:radial-gradient(ellipse at 50% 44%,#172c4c 0%,var(--night) 65%);min-height:calc(100svh - 79px);padding:clamp(28px,5vh,68px) 0 26px;overflow:hidden;display:flex;flex-direction:column;justify-content:center}.hero-heading{text-align:center;position:relative;z-index:2;animation:appear .8s both}.hero-heading .eyebrow{justify-content:center;color:#b3c9e9}.hero h1,.sub-hero h1{font:800 clamp(76px,14.15vw,218px)/.8 var(--heading);letter-spacing:-.016em;margin:0}.hero-gallery{height:clamp(265px,42vh,505px);width:min(1480px,100%);margin:9px auto 0;position:relative;touch-action:pan-y;animation:appear .9s .1s both}.hero-tile{position:absolute;inset:50% auto auto 50%;width:clamp(162px,21vw,310px);height:83%;margin:0;overflow:hidden;border:1px solid #7a9ec488;border-radius:12px;transform:translate(calc(-50% + var(--x,0)*80%),calc(-50% + var(--y,0)*1%)) rotate(var(--tilt,0deg)) scale(var(--scale,1));transition:transform .74s cubic-bezier(.22,.7,.2,1),opacity .55s,filter .55s;opacity:0;filter:brightness(.67);background:#1e3554;box-shadow:0 14px 34px #02071480;pointer-events:none}.hero-tile img{width:100%;height:100%;object-fit:cover}.hero-tile figcaption{position:absolute;bottom:0;left:0;right:0;padding:24px 12px 10px;background:linear-gradient(transparent,#081120e8);font-weight:650;font-size:13px;opacity:0}.hero-tile.pos-0 figcaption{opacity:1}.hero-tile.pos--3,.hero-tile.pos-3{--x:0;opacity:0}.hero-tile.pos--2{--x:-2.04;--y:23;--tilt:-17deg;--scale:.86;opacity:1;z-index:1}.hero-tile.pos--1{--x:-1.05;--y:6;--tilt:-9deg;--scale:.94;opacity:1;z-index:2}.hero-tile.pos-0{opacity:1;z-index:3;filter:brightness(1);border-color:#a8d1ff}.hero-tile.pos-1{--x:1.05;--y:6;--tilt:9deg;--scale:.94;opacity:1;z-index:2}.hero-tile.pos-2{--x:2.04;--y:23;--tilt:17deg;--scale:.86;opacity:1;z-index:1}.hero-controls{display:flex;justify-content:center;align-items:center;gap:14px;margin-top:4px;position:relative;z-index:4}.slide-status{font-size:12px;color:#aab9d1;font-variant-numeric:tabular-nums;letter-spacing:.12em}.slide-status span{color:white}.slide-arrows{display:flex;gap:6px}.slide-arrows button{background:#0b1628;color:white;border:1px solid #596c88;border-radius:50%;width:39px;height:39px;font-size:18px}.slide-arrows button:hover{background:#2d486b}.hero-bottom{display:grid;grid-template-columns:1fr 1.2fr 1.4fr auto;gap:21px;align-items:center;border-top:1px solid #2d3d55;padding-top:16px;margin-top:20px}.hero-bottom span:not(.btn span){font-size:11px;letter-spacing:.1em;font-weight:700;color:var(--blue)}.hero-bottom p{font-size:13px;line-height:1.43;margin:4px 0 0;color:#b9c9df}.facility{justify-self:end}.facility strong{font-size:15px}
.section{padding:clamp(60px,8vw,118px) 0}.section-head{display:flex;justify-content:space-between;gap:30px;align-items:flex-end;margin-bottom:34px}.section h2{font:800 clamp(39px,5vw,76px)/.96 var(--heading);margin:0;letter-spacing:.006em}.section h3{line-height:1.15}.cap{background:#e8eff8}.jump-nav{display:flex;gap:3px;background:#121d31;color:#dceafe;padding:5px;border-radius:8px;flex-wrap:wrap}.jump-nav a{font-weight:680;font-size:11px;padding:9px 12px;border-radius:5px}.jump-nav a:hover,.jump-nav a.active,.jump-nav a:focus-visible{background:var(--blue);color:var(--night)}.stack{padding-bottom:20px}.stack-card{position:sticky;top:calc(18px + var(--row)*24px);scroll-margin-top:calc(24px + var(--row)*24px);padding:10px;border-radius:18px;background:#c4dcf5;margin-bottom:14px;box-shadow:0 12px 25px #152b4d16}.stack-card>div{background:#fff;border-radius:12px;padding:16px;display:grid;grid-template-columns:1fr 1.18fr 1.6fr;gap:28px;align-items:start}.stack-card img{width:100%;height:220px;object-fit:cover;border-radius:7px}.stack-card strong{font-size:13px;padding:10px;color:#355273}.stack-card h3{font:800 clamp(23px,3vw,39px)/1 var(--heading);margin:10px 0 12px}.stack-card p,.about-aside p{color:var(--muted);max-width:50ch}.about{background:#fff}.about-aside{max-width:360px}.about-aside p{margin-top:0}.factory-image{position:relative;border-radius:13px;overflow:hidden;box-shadow:0 22px 46px #20345335}.factory-image img{width:100%;height:clamp(320px,48vw,620px);object-fit:cover;object-position:center 55%}.play,.close{display:grid;place-items:center;background:#fff;border:1px solid #d5dfed;color:var(--ink);border-radius:50%;width:64px;height:64px;position:absolute;top:20px;right:20px}.play:hover,.close:hover{background:var(--blue)}.years{position:absolute;left:18px;bottom:18px;background:var(--night);color:white;padding:12px 23px;border-radius:7px;font:700 36px/1 var(--heading)}dialog{border:0;border-radius:12px;padding:34px;width:min(760px,calc(100% - 32px));color:var(--ink)}dialog::backdrop{background:#020916d9}dialog h2{font-size:38px;margin-bottom:24px}dialog video{width:100%;background:#000}.close{width:38px;height:38px;top:12px;right:12px;font-size:24px}
.product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.product-card{border:1px solid var(--line);border-radius:10px;background:#fff;overflow:hidden;transition:box-shadow .2s,transform .2s}.product-card:hover{box-shadow:0 15px 32px #1223421a;transform:translateY(-3px)}.product-card a{display:block}.product-img img{width:100%;aspect-ratio:1.18;object-fit:contain;background:#f6f5f2}.product-info{padding:17px 35px 17px 16px;position:relative}.product-info small{color:#436387;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.product-info h3{font-size:17px;margin:6px 0;overflow-wrap:anywhere}.product-info span{position:absolute;right:15px;top:20px}.text-link{display:inline-block;margin-top:24px;color:#1d5598;text-decoration:underline;text-underline-offset:4px}.applications,.contact{background:var(--dark);color:#f2f7ff}.applications .eyebrow,.contact .eyebrow{color:var(--blue)}.application-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.application-grid article{position:relative;border-radius:10px;overflow:hidden}.application-grid img{width:100%;height:280px;object-fit:cover}.application-grid h3{position:absolute;bottom:0;background:linear-gradient(transparent,#081224);width:100%;margin:0;padding:42px 15px 15px}.quality{background:#e9f0fa}.cert-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.cert-grid a{background:white;border:1px solid var(--line);border-radius:8px;overflow:hidden;padding:12px}.cert-grid img{aspect-ratio:.74;object-fit:contain;margin:auto}.cert-grid span{font-size:12px;display:block;margin-top:10px}.split{display:grid;grid-template-columns:1fr 1.1fr;gap:clamp(20px,5vw,100px)}.split p{max-width:55ch}details{border-top:1px solid #bfcce0;padding:14px 0}summary{font-weight:700;cursor:pointer}details p{color:var(--muted);margin:10px 0 0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}label{font-size:13px;font-weight:650;display:block}input,select,textarea{display:block;margin:5px 0 14px;width:100%;padding:10px 11px;border:1px solid #a2b1c8;border-radius:5px;background:#fff;color:var(--ink)}textarea{resize:vertical}.contact input,.contact textarea{background:#1a2941;color:#fff;border-color:#52637f}.contact textarea::placeholder{color:#afbdd3}.contact p{color:#c1d0e5}#rfq-download{color:var(--blue);text-decoration:underline}.footer{background:var(--night);color:#aebed5;padding:33px 0}.foot-inner{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:21px}.footer .brand{color:white}.footer span,.footer nav{font-size:13px}.footer nav{flex-wrap:wrap;gap:16px}
.sub-hero{background:var(--dark);color:white;padding:75px 0}.sub-hero h1{font-size:clamp(54px,9vw,126px);line-height:.88}.sub-hero p:not(.eyebrow){margin-bottom:0;color:#c3d3e9}.filters{display:grid;grid-template-columns:1fr 2fr;gap:20px;max-width:780px}.detail{padding-top:40px}.breadcrumb{color:#456184;font-size:14px;margin:0 0 25px}.breadcrumb a{text-decoration:underline}.detail-grid{display:grid;grid-template-columns:1.03fr 1fr;gap:clamp(25px,6vw,94px)}.detail h1{font:800 clamp(40px,6vw,83px)/.95 var(--heading);margin:0 0 28px;overflow-wrap:anywhere}.detail h2{font-size:32px;margin:24px 0 14px}.detail-photo{border:1px solid var(--line);border-radius:10px;background:#f6f5f2;overflow:hidden}.detail-photo img{width:100%;height:clamp(275px,40vw,535px);object-fit:contain}.thumbnails{display:flex;gap:9px;margin-top:10px}.thumbnails button{padding:0;width:72px;height:72px;border:1px solid var(--line);border-radius:7px;overflow:hidden;background:white}.thumbnails button[aria-pressed=true]{border:2px solid #316eb7}.thumbnails img{width:100%;height:100%;object-fit:cover}.detail table{width:100%;border-collapse:collapse;font-size:14px;margin:15px 0}.detail th,.detail td{text-align:left;border-bottom:1px solid var(--line);padding:10px}.detail th{background:#e5edf8}.guide{max-width:920px}.guide .btn{margin:10px 0}.guide h2{margin-top:32px}.reveal.pending{opacity:0;transform:translateY(17px)}.reveal{transition:opacity .55s,transform .55s}@keyframes appear{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1080px){.shell{width:calc(100% - 56px)}.hero-bottom{grid-template-columns:1fr 1fr auto}.facility{justify-self:start}.hero-bottom .btn{grid-column:3;grid-row:1 / 3}.hero-bottom>div:nth-child(3){grid-column:1 / 3}.section-head{align-items:flex-start;flex-wrap:wrap}.cert-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.shell{width:calc(100% - 34px)}.header-inner{min-height:64px}.header-cta{display:none}.site-header nav{display:none;position:absolute;top:100%;inset-inline:0;padding:18px;background:var(--night);border-bottom:1px solid #3d4d66}.site-header nav.open{display:flex;flex-wrap:wrap;gap:16px 22px}.menu-toggle{display:inline-flex;gap:8px;align-items:center;background:transparent;border:1px solid #667995;border-radius:5px;padding:5px 9px;color:white;font-size:13px}.hero{min-height:calc(100svh - 64px);padding-top:33px;justify-content:flex-start}.hero h1{font-size:clamp(52px,15vw,113px)}.hero-gallery{height:clamp(224px,37vh,370px);margin-top:15px}.hero-tile{width:clamp(140px,38vw,245px)}.hero-tile.pos--2,.hero-tile.pos-2{opacity:.35}.hero-bottom{grid-template-columns:1fr 1fr;gap:13px;margin-top:14px;padding-top:12px}.hero-bottom .btn{grid-column:1 / 3;grid-row:auto;justify-self:start}.hero-bottom>div:nth-child(3){grid-column:1 / 3}.hero-bottom p{font-size:12px}.hero-bottom br{display:none}.hero-controls{margin-top:0}.stack-card{position:relative;top:auto;scroll-margin-top:12px}.stack-card>div{grid-template-columns:1fr 1fr;gap:10px 15px}.stack-card strong{grid-column:1/-1;padding:0}.stack-card img{height:100%;min-height:145px}.stack-card h3{margin-top:0}.stack-card p{font-size:13px;margin-bottom:0}.product-grid,.application-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.application-grid img{height:210px}.split,.detail-grid{grid-template-columns:1fr}.foot-inner{align-items:flex-start;flex-direction:column}}
@media(max-width:400px){.brand{font-size:14px}.jump-nav a{padding:7px;font-size:10px}.stack-card>div{grid-template-columns:1fr}.stack-card img{height:170px}.form-grid{grid-template-columns:1fr;gap:0}.filters{grid-template-columns:1fr;gap:0}.cert-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.reveal.pending{opacity:1;transform:none}}

.brand-logo{width:135px;height:48px;object-fit:contain;padding:5px 8px;background:#eaf3ff;border-radius:5px}
@supports(animation-timeline:view()){
  @media(prefers-reduced-motion:no-preference){
    .factory-image img{animation:factory-drift linear both;animation-timeline:view();animation-range:entry 10% exit 90%}
    @keyframes factory-drift{from{object-position:center 43%}to{object-position:center 59%}}
  }
}

/* Product detail */
.product-highlights {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(140px, 100%), 1fr));
  gap: 8px;
  margin: 0 0 26px;
}
.product-highlights > div {
  background: #ffffffd6;
  padding: 12px;
  border: 1px solid #cfdeed;
  border-radius: 7px;
}
.product-highlights dt { color: #446184; font-size: 12px; line-height: 1.35; margin-bottom: 5px; }
.product-highlights dd { margin: 0; font-size: 15px; font-weight: 750; line-height: 1.3; }
.product-section { padding: clamp(46px, 6vw, 82px) 0; scroll-margin-top: 64px; }
.admin-bar .product-section { scroll-margin-top: 100px; }
.product-heading { margin-bottom: 26px; }
.product-heading h2 {
  font: 800 clamp(34px, 5vw, 63px)/.98 var(--heading);
  margin: 0;
  letter-spacing: .004em;
}
.product-heading p:not(.eyebrow) { color: var(--muted); margin: 12px 0 0; max-width: 65ch; }
.product-specs { background: #fff; }
.spec-content { display: grid; grid-template-columns: minmax(0, 1fr); gap: 18px; }
.spec-table-wrap {
  overflow-x: auto;
  border: 1px solid #d6e1ef;
  border-radius: 9px;
  background: white;
}
.spec-table { border-collapse: collapse; width: 100%; font-size: 14px; line-height: 1.5; }
.spec-table caption {
  text-align: left;
  background: #e7f0fa;
  font-size: 17px;
  font-weight: 750;
  padding: 12px 15px;
}
.spec-table th, .spec-table td { padding: 9px 14px; border: 1px solid #e1e8f2; text-align: left; vertical-align: top; }
.spec-table th { color: #233d5d; background: #f3f7fd; font-weight: 650; }
.spec-table th[scope^="col"] { background: #d3e4f8; }
.spec-table td { min-width: 92px; }
.spec-table th[scope="row"] { min-width: 130px; }
.spec-table tr:nth-child(even) td { background: #f9fbfe; }
.source-notes { margin: 0; padding: 10px 0 10px 23px; color: var(--muted); }
.source-notes li + li { margin-top: 5px; }
.source-subheading { font-size: 18px; margin: 12px 0 -12px; }
.drawing-section { background: #e9f0f9; }
.drawing-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(285px, 100%), 1fr)); gap: 14px; }
.drawing-grid figure { margin: 0; min-width: 0; background: white; border: 1px solid var(--line); border-radius: 9px; overflow: hidden; }
.drawing-grid figure:only-child { max-width: 720px; }
.drawing-grid img { width: 100%; height: 235px; object-fit: contain; padding: 12px; }
.drawing-grid figcaption { display: flex; justify-content: space-between; padding: 10px 14px; font-size: 13px; font-weight: 650; border-top: 1px solid var(--line); }
.drawing-grid a:hover figcaption { background: #e7f0fa; }
@media (max-width: 600px) {
  .spec-table th, .spec-table td { padding: 8px 10px; }
  .drawing-grid img { height: 200px; }
}

.reference-detail { --detail-night: #060a18; --detail-red: #ff6259; --detail-gold: #e5b65f; }
.reference-detail .shell { max-width: 1180px; }
.reference-hero { position: relative; isolation: isolate; color: white; background: #1e2837; }
.reference-hero-image { position: absolute; inset: 0; z-index: -2; width: 100%; height: 100%; object-fit: cover; object-position: center 52%; }
.reference-hero::after {
  position: absolute; inset: 0; z-index: -1; content: "";
  background: linear-gradient(180deg, #090e17a6, transparent 45%), linear-gradient(90deg, #0b13263d, #040813dc);
}
.reference-hero-inner {
  min-height: clamp(370px, 45vw, 620px);
  display: flex; flex-direction: column; justify-content: space-between; gap: 48px;
  padding: clamp(26px, 4vw, 58px) 0;
}
.reference-hero nav { font-size: 13px; font-weight: 650; }
.reference-hero nav a:hover { text-decoration: underline; }
.reference-hero nav span { margin: 0 .35em; color: #bdcbe0; }
.reference-hero-copy { align-self: end; max-width: 780px; text-align: right; }
.reference-hero-copy p { margin: 0; }
.reference-hero-copy p:first-child { font-size: 12px; font-weight: 650; letter-spacing: .07em; }
.reference-hero-copy p:last-child { max-width: 54ch; margin: 14px 0 0 auto; color: #eff3fa; }
.reference-hero-copy .reference-hero-title {
  margin: 13px 0 0;
  font: 800 clamp(38px, 6.5vw, 94px)/.94 var(--heading);
  text-transform: uppercase;
}
.reference-intro { display: grid; grid-template-columns: 1fr 1fr; background: var(--detail-night); color: white; }
.reference-office { min-height: 100%; position: relative; }
.reference-office img { position: absolute; width: 100%; height: 100%; object-fit: cover; object-position: center 48%; }
.reference-intro-copy { max-width: 740px; padding: clamp(36px, 5.8vw, 100px) clamp(26px, 5.3vw, 94px); }
.reference-kicker { color: var(--detail-gold); font-size: 12px; font-weight: 750; letter-spacing: .12em; margin: 0 0 14px; }
.reference-intro h1 { margin: 0 0 18px; font: 500 clamp(32px, 4.3vw, 62px)/1.03 Georgia, serif; overflow-wrap: anywhere; }
.reference-intro-copy > p:not(.reference-kicker), .reference-faq p { color: #d6dce7; }
.reference-intro ul { list-style: none; padding: 16px 19px; margin: 22px 0; border: 1px solid #283142; font-size: 14px; }
.reference-intro li + li { margin-top: 5px; }
.reference-intro li::before { content: "✓"; color: var(--detail-gold); margin-right: 8px; font-weight: 800; }
.reference-cta { display: inline-block; color: var(--detail-red); text-transform: uppercase; font-weight: 800; font-size: 14px; letter-spacing: .06em; }
.reference-cta:hover { text-decoration: underline; text-underline-offset: 4px; }
.reference-heading { text-align: center; margin-bottom: 36px; }
.reference-heading h2, .reference-services h2, .reference-applications h2 {
  font-size: clamp(31px, 4vw, 58px); line-height: 1.04; margin: 0; letter-spacing: -.035em;
}
.reference-heading h2 span { display: inline-block; padding: .01em .12em .05em; border: 1px solid #b65a50; border-radius: 4px; }
.reference-heading p { max-width: 65ch; margin: 14px auto 0; color: #343945; }
.reference-product {
  display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr);
  gap: clamp(24px, 5vw, 68px); align-items: center; margin: 0 0 34px;
  padding: clamp(14px, 3vw, 30px); border: 1px solid #dfe3ea; border-radius: 8px;
}
.reference-product h3 { font-size: clamp(19px, 2.5vw, 30px); line-height: 1.17; margin: 0 0 15px; overflow-wrap: anywhere; }
.reference-product .detail-photo img { height: clamp(220px, 24vw, 330px); }
.reference-product .product-highlights { margin-bottom: 0; }
.reference-product .product-highlights > div { background: #f7f7fa; border-color: #dfe3ea; }
.reference-spec-note { margin: 22px 0 0; font-size: 13px; color: var(--muted); }
.reference-detail .spec-table caption { background: #f1f2f5; }
.reference-detail .spec-table th { background: #fafafa; color: #202632; }
.reference-detail .spec-table th[scope^="col"] { background: #f1f2f5; }
.reference-detail .drawing-section { background: #f3f4f6; }
.reference-services, .reference-faq { background: var(--detail-night); color: white; }
.reference-services h2 { text-align: center; font-weight: 600; margin-bottom: 33px; }
.reference-card-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(16px, 2.4vw, 30px); }
.reference-card-grid img { width: 100%; aspect-ratio: 1.13; object-fit: cover; border-radius: 10px; }
.reference-card-grid h3 { font-size: 17px; line-height: 1.2; margin: 14px 0 6px; }
.reference-card-grid p { font-size: 14px; color: #ccd4e1; margin: 0; }
.reference-applications { background: #fff; }
.reference-use-grid { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: clamp(24px, 6vw, 82px); }
.reference-use-grid img { width: 100%; height: clamp(280px, 39vw, 520px); object-fit: cover; }
.reference-use-grid ul { list-style: none; padding: 0; margin: 22px 0; }
.reference-use-grid li { padding: 5px 0; border-bottom: 1px solid #dfe1e6; }
.reference-use-grid li::before { content: "•"; margin-right: 8px; }
.reference-sourcing { margin-top: clamp(28px, 4vw, 55px); }
.reference-sourcing p { max-width: 82ch; }
.reference-sourcing .text-link { margin-top: 0; }
.reference-faq-grid { display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); gap: clamp(24px, 5.5vw, 75px); align-items: start; }
.reference-faq .reference-kicker { color: var(--detail-red); }
.reference-faq h2 { font: 800 clamp(48px, 6.3vw, 90px)/.86 var(--heading); margin: 0 0 26px; text-transform: uppercase; }
.reference-faq h2 em { color: var(--detail-red); font-style: normal; }
.reference-faq h3 { font-size: 19px; margin: 0; }
.reference-faq-grid > div > p:not(.reference-kicker) { max-width: 42ch; margin: 8px 0 16px; }
.reference-faq-list { display: grid; gap: 8px; }
.reference-faq-list details { background: #121624; border: 1px solid #262938; border-radius: 8px; padding: 14px 18px; }
.reference-faq-list summary::marker { color: var(--detail-red); }
.reference-faq-list p { font-size: 14px; margin: 7px 0 0 17px; }
@media (max-width: 760px) {
  .reference-intro, .reference-product, .reference-use-grid, .reference-faq-grid { grid-template-columns: minmax(0, 1fr); }
  .reference-office { min-height: 260px; }
  .reference-card-grid { grid-template-columns: minmax(0, 1fr); gap: 26px; }
  .reference-card-grid img { aspect-ratio: 1.65; }
}
.hero-gallery { cursor: grab; user-select: none; }
.hero-gallery.is-dragging { cursor: grabbing; }
.hero-gallery.is-dragging .hero-tile { transition: none; }
.hero-gallery .hero-tile {
  transform: translate(calc(-50% + var(--x, 0) * 80% + var(--drag-x, 0px)), calc(-50% + var(--y, 0) * 1%))
    rotate(var(--tilt, 0deg)) scale(var(--scale, 1));
}
.hero-tile.pos--3, .hero-tile.pos--4 { --x: -3; --y: 34; --tilt: -23deg; --scale: .8; }
.hero-tile.pos-3, .hero-tile.pos-4 { --x: 3; --y: 34; --tilt: 23deg; --scale: .8; }
.slide-arrows [data-autoplay] { font-size: 15px; }
