/* Homepage section styles; H1 hero styles live in home-v10.css. */
body[data-home-design] { font-family: "Noto Sans SC", "PingFang SC", Arial, sans-serif; color:#142239; }
.design-section { position:relative; overflow:hidden; padding:88px 0 96px; }
.design-container { width:min(1200px,calc(100% - 80px)); margin:0 auto; position:relative; z-index:1; }
.design-section h2 { font-size:42px; line-height:1.28; letter-spacing:-.04em; color:#172534; }
.design-section h2 em,.other-card h3 em { color:#075ab0; font-style:normal; }
.design-section p { color:#53647c; }
.design-link { color:#075ab0; font-size:15px; font-weight:700; display:inline-flex; align-items:center; gap:13px; }
.design-link:hover { text-decoration:underline; }
.design-pill { display:inline-flex; align-items:center; justify-content:center; gap:22px; min-height:51px; padding:11px 29px; border:1px solid #075ab0; border-radius:28px; background:#075ab0; color:#fff; font-size:15px; line-height:1.4; font-weight:700; white-space:nowrap; }
.design-pill:hover { background:#064c96; color:#fff; }
.design-pill-pale { background:#e8f3ff; color:#075ab0; border-color:#e8f3ff; }
.design-pill-pale:hover { background:#d5eaff; color:#075ab0; }
.design-pill-outline { background:#fff; color:#075ab0; }
.design-pill-outline:hover { background:#e8f3ff; color:#075ab0; }
.design-pill span { font-size:20px; font-weight:400; line-height:1; }
.section-action { text-align:center; margin-top:34px; }
.section-footnote { margin-top:22px; font-size:12px; color:#7890aa!important; }
.uv-section { background:#fff; padding-top:104px; padding-bottom:104px; }
.other-section { background:#fff; }
.uv-intro { text-align:left; margin-bottom:42px; }
.uv-eyebrow { display:block; margin-bottom:16px; color:#557ca7; font-size:12px; letter-spacing:.22em; font-weight:700; }
.uv-intro h2 { font-size:44px; }
.uv-intro p { font-size:17px; margin-top:14px; max-width:670px; }
.uv-feature { position:relative; display:grid; grid-template-columns:50% 50%; min-height:485px; overflow:hidden; background:#edf4f9 url('/assets/uv-showroom-v25.webp') center/cover no-repeat; border:1px solid #e1eaf0; }
.uv-feature-copy { position:relative; z-index:1; display:flex; flex-direction:column; align-items:flex-start; padding:55px 0 52px 56px; }
.uv-feature-label { font-size:12px; font-weight:700; letter-spacing:.11em; color:#075ab0; }
.uv-feature h3 { margin:8px 0 0; color:#13243a; font-size:94px; line-height:1.08; letter-spacing:-.075em; }
.uv-feature-copy>p { color:#334d67; font-size:17px; margin:10px 0 27px; }
.uv-feature-specs { display:flex; gap:12px; width:100%; max-width:490px; }
.uv-feature-specs .uv-spec { display:grid; grid-template-columns:24px auto; grid-template-rows:auto auto; column-gap:10px; width:auto; min-width:150px; min-height:0; border:0; }
.uv-feature-specs .uv-spec svg { grid-row:1/3; align-self:start; }
.uv-feature-specs .uv-spec strong { grid-column:2; font-size:14px; font-weight:700; }
.uv-feature-action { margin-top:auto; border-radius:3px; }
.uv-feature-image { position:relative; display:flex; align-items:flex-end; justify-content:center; min-width:0; padding:20px 28px 22px 0; }
.uv-feature-image img { position:relative; z-index:1; width:100%; max-width:600px; max-height:410px; object-fit:contain; filter:drop-shadow(0 25px 22px #25456328); }
.uv-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; margin-top:20px; }
.uv-card { display:grid; grid-template-columns:52% 48%; align-items:center; min-height:260px; background:#f4f8fb; border:1px solid #e2eaf1; overflow:hidden; }
.uv-card-image { height:100%; min-height:260px; display:flex; align-items:center; justify-content:center; overflow:hidden; padding:24px 8px 18px 20px; }
.uv-card-image img { width:100%; max-height:220px; object-fit:contain; }
.uv-card-content { padding:24px 23px 25px 3px; min-width:0; }
.uv-card h3 { color:#172534; text-align:left; font-size:34px; line-height:1.1; margin:0 0 14px; }
.uv-spec-list { border-top:1px solid #d8e3ec; }
.uv-spec { min-height:43px; border-bottom:1px solid #d8e3ec; display:grid; grid-template-columns:20px minmax(65px,1fr) minmax(100px,1.1fr); align-items:center; gap:6px; font-size:12px; color:#53647c; }
.uv-spec svg { width:19px; height:19px; color:#075ab0; }
.uv-spec strong { color:#142239; font-weight:600; white-space:nowrap; }
.uv-card-link { margin-top:18px; padding-bottom:2px; font-size:13px; }
.uv-compare { display:flex; align-items:center; justify-content:space-between; gap:32px; margin-top:20px; padding:26px 34px; background:#eaf2f8; }
.uv-compare h3 { color:#162a40; font-size:22px; }
.uv-compare p { font-size:14px; margin-top:5px; }
.uv-compare .design-pill { flex:none; border-radius:3px; }
.uv-section .section-footnote { margin-top:17px; }
.applications-design { background:#fff; padding-top:98px; padding-bottom:106px; }
.section-heading-row { display:flex; align-items:end; justify-content:space-between; gap:20px; margin:0 0 39px; }
.section-heading-row p { font-size:17px; margin-top:14px; }
.application-overview-link { margin-bottom:7px; flex:none; }
.application-design-grid { display:grid; grid-template-columns:1.2fr 1fr; grid-template-rows:repeat(2,minmax(0,245px)); gap:16px; }
.application-design-card { display:grid; grid-template-columns:44% 56%; min-width:0; min-height:0; overflow:hidden; background:#f3f7fa; }
.application-design-card:first-child { grid-row:1/3; grid-template-columns:41% 59%; }
.application-design-image { display:block; grid-column:2; grid-row:1; position:relative; height:100%; background:#eef2f5; overflow:hidden; }
.application-design-image img { position:absolute; width:100%; height:calc(100% + 110px); left:0; top:-25px; object-fit:cover; object-position:center; }
.application-design-card:first-child .application-design-image img { height:calc(100% + 115px); top:-25px; }
.application-design-image:has(img[src$="/bottle.webp"]) img { height:calc(100% + 80px); top:-18px; }
.application-design-copy { grid-column:1; grid-row:1; min-width:0; display:flex; flex-direction:column; align-items:flex-start; justify-content:center; padding:26px 24px; }
.application-design-card:first-child .application-design-copy { padding:40px 38px; }
.application-design-copy>span { color:#2465a2; font-size:10px; letter-spacing:.17em; font-weight:700; }
.application-design-card h3 { font-size:23px; line-height:1.25; color:#172534; margin-top:17px; }
.application-design-card:first-child h3 { font-size:35px; }
.application-design-card h3 a { color:inherit; text-decoration:none; }
.application-design-card h3 a:hover,.application-design-card h3 a:focus-visible { color:#075ab0; text-decoration:underline; text-underline-offset:4px; }
.application-design-copy>p { font-size:13px; line-height:1.65; margin-top:12px; }
.application-design-card:first-child .application-design-copy>p { font-size:15px; }
.application-design-link { margin-top:21px; font-size:13px; }
.application-design-card:first-child .application-design-link { margin-top:36px; }
.other-section { padding-top:94px; }
.other-section h2 { font-size:42px; }
.other-section>.design-container>.section-description { font-size:17px; margin-top:14px; margin-bottom:42px; }
.other-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; }
.other-card { min-height:410px; display:grid; grid-template-columns:50% 50%; border:1px solid #e1e8ef; border-radius:4px; overflow:hidden; background:#f6f8fa; box-shadow:none; }
.other-photo { background:#edf3f7; display:flex; align-items:center; justify-content:center; padding:24px 7px; overflow:hidden; }
.other-photo img { width:100%; max-height:330px; object-fit:contain; }
.other-copy { padding:43px 25px 33px; position:relative; display:flex; flex-direction:column; align-items:flex-start; }
.other-card h3 { font-size:23px; white-space:nowrap; color:#142239; }
.other-card h3 em { font-size:34px; }
.other-card h3 span { font-size:19px; }
.other-copy ul { list-style:none; padding:0; margin:30px 0 auto; width:100%; display:grid; gap:18px; }
.other-copy li { display:flex; align-items:center; gap:14px; color:#53647c; font-size:15px; }
.other-icon { width:38px; height:38px; display:flex; align-items:center; justify-content:center; flex:none; background:#ecf6ff; border-radius:9px; color:#075ab0; }
.other-icon svg { width:22px; height:22px; }
.other-link { margin-top:27px; }
.dtg-strip { display:flex; align-items:center; gap:26px; background:#f3f6f8; border-radius:4px; margin-top:22px; padding:20px 27px; }
.dtg-icon { display:flex; align-items:center; justify-content:center; width:58px; height:58px; border-radius:12px; background:#fff; color:#075ab0; flex:none; }
.dtg-icon svg { width:32px; height:32px; }
.dtg-strip>div { flex:1; border-left:1px solid #bad5ef; padding-left:28px; }
.dtg-strip h3 { font-size:25px; }
.dtg-strip p { font-size:15px; margin-top:4px; }
/* ImageGen v31: product discovery as one equipment stage. */
.other-section { background:#f8fbfe; }
.process-intro { margin-bottom:42px; }
.process-intro h2 { max-width:970px; }
.process-intro p { max-width:730px; font-size:17px; margin-top:14px; }
.process-stage { background:#0c2037; border-radius:10px; overflow:hidden; box-shadow:0 25px 55px #183c6040; }
.process-bays { display:grid; grid-template-columns:1fr 1fr; }
.process-bay { min-width:0; min-height:650px; position:relative; display:grid; grid-template-rows:auto minmax(360px,1fr); isolation:isolate; overflow:hidden; background:radial-gradient(circle at 76% 61%,#3a5d7d 0,#1a3550 42%,#0d223c 100%); transition:transform .35s ease,box-shadow .35s ease; }
.process-bay-j650 { background:radial-gradient(circle at 74% 32%,#356b8f 0,#133858 39%,#0a2746 100%); border-left:1px solid #bad7ed36; }
.process-bay::before { content:""; position:absolute; z-index:0; left:5%; right:5%; bottom:20px; height:63px; background:linear-gradient(180deg,#abc9df6b,#3e647f 18%,#122b46 75%,#0a1b2d); border-top:1px solid #bfdcec80; box-shadow:0 18px 24px #020d1a8c; transform:perspective(400px) rotateX(16deg); }
.process-bay-j650::before { border-top-color:#79d9ffb0; box-shadow:0 18px 24px #020d1a8c,0 -2px 21px #55caff3d; }
.process-bay:hover,.process-bay:focus-within { transform:translateY(-7px); z-index:3; box-shadow:0 28px 45px #03101fa8; }
.process-bay-copy { position:relative; z-index:2; display:grid; grid-template-columns:1fr auto; column-gap:18px; align-items:start; padding:40px 38px 0; min-width:0; }
.process-bay h3 { margin:0; color:#fff; font-size:58px; letter-spacing:-.04em; line-height:1.03; }
.process-bay-type { grid-column:1; color:#e4f2ff!important; font-size:19px; font-weight:700; margin:8px 0 16px; line-height:1.4; }
.process-bay ul { grid-column:1; list-style:none; padding:0; margin:0 0 5px; display:flex; flex-wrap:wrap; gap:8px 18px; }
.process-bay li { color:#d9e8f6; font-size:13px; line-height:1.5; padding-left:18px; position:relative; }
.process-bay li::before { content:""; position:absolute; left:0; top:.55em; width:6px; height:6px; border-radius:50%; background:#76c9ff; box-shadow:0 0 0 4px #70c8ff25; }
.process-bay-link { grid-column:2; grid-row:1/3; display:inline-flex; align-items:center; justify-content:center; min-height:45px; padding:10px 18px; margin-top:3px; border-radius:25px; color:#fff; background:#136dc7; border:1px solid #459be8; text-decoration:none; font-size:13px; font-weight:750; white-space:nowrap; transition:background .25s ease,transform .25s ease,box-shadow .25s ease; }
.process-bay-link:hover,.process-bay-link:focus-visible,.process-bay:hover .process-bay-link { color:#fff; background:#288fe8; box-shadow:0 8px 19px #001a3490; transform:translateY(-2px); }
.process-bay-link:focus-visible,.process-bay-image:focus-visible,.process-dtg-link:focus-visible { outline:3px solid #87d9ff; outline-offset:3px; }
.process-bay-image { min-width:0; position:relative; z-index:1; display:grid; place-items:center; overflow:hidden; }
.process-bay-image img { width:100%; max-width:none; height:100%; object-fit:contain; position:relative; z-index:2; transform:scale(.94); filter:drop-shadow(0 22px 17px #000a); transition:transform .45s cubic-bezier(.2,.7,.2,1),filter .45s ease; }
.process-bay-j650 .process-bay-image img { transform:scale(1.04); }
.process-bay:hover .process-bay-image img,.process-bay:focus-within .process-bay-image img { transform:scale(1.01); filter:drop-shadow(0 26px 21px #000b); }
.process-bay-j650:hover .process-bay-image img,.process-bay-j650:focus-within .process-bay-image img { transform:scale(1.11); }
.process-dtg { min-height:230px; display:grid; grid-template-columns:35% 1fr; position:relative; background:linear-gradient(110deg,#122a45,#0a1c33); border-top:1px solid #a5c8e454; transition:box-shadow .3s ease; }
.process-dtg:hover,.process-dtg:focus-within { box-shadow:inset 0 0 0 2px #63beff80; }
.process-dtg-image { position:relative; overflow:hidden; background:#e9eff4; }
.process-dtg-image img { position:absolute; width:100%; height:calc(100% + 60px); top:-16px; left:0; object-fit:cover; object-position:50% 15%; transition:transform .4s ease; }
.process-dtg:hover .process-dtg-image img,.process-dtg:focus-within .process-dtg-image img { transform:scale(1.055); }
.process-dtg-copy { display:flex; flex-direction:column; align-items:flex-start; justify-content:center; padding:35px 54px; }
.process-dtg h3 { font-size:31px; color:#fff; margin:0 0 11px; }
.process-dtg p { color:#cbddee; font-size:15px; line-height:1.65; margin:0 0 21px; max-width:610px; }
.process-dtg-link { display:inline-flex; align-items:center; min-height:41px; padding:8px 21px; border:1px solid #9dc8eb; border-radius:22px; text-decoration:none; color:#fff; font-size:13px; font-weight:750; transition:background .25s ease,color .25s ease,transform .25s ease; }
.process-dtg-link:hover,.process-dtg-link:focus-visible { color:#0b335b; background:#fff; transform:translateY(-2px); }
.company-section { background:#f7f9fb; }
.company-story { position:relative; min-height:640px; overflow:hidden; background:#f7f9fb; }
.company-story-image { position:absolute; top:0; bottom:64px; left:43%; right:calc((100% - 100vw)/2); overflow:hidden; background:#d8e3ea; }
.company-story-image::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,#f7f9fb 0%,#f7f9fbca 9%,#f7f9fb15 35%,#061d3052 100%); pointer-events:none; }
.company-story-image img { width:100%; height:100%; object-fit:cover; object-position:47% center; filter:saturate(.8) contrast(1.06); transition:transform .55s cubic-bezier(.2,.7,.2,1),filter .55s ease; }
.company-story:hover .company-story-image img { transform:scale(1.035); filter:saturate(.95) contrast(1.08); }
.company-story-inner { min-height:640px; display:flex; flex-direction:column; justify-content:space-between; }
.company-copy { position:relative; z-index:1; width:min(49%,590px); padding:77px 0 30px; }
.company-copy h2 { font-size:54px; line-height:1.13; letter-spacing:-.035em; margin:0 0 27px; color:#152437; }
.company-copy>p { font-size:16px; line-height:1.8; margin:0 0 16px; max-width:585px; color:#40546a; }
.company-copy>.company-promise { color:#17334d; font-weight:700; }
.company-actions { display:flex; align-items:center; flex-wrap:wrap; gap:13px; margin-top:28px; }
.company-actions .design-pill { min-height:46px; }
.company-secondary { display:inline-flex; align-items:center; min-height:46px; padding:9px 20px; border:1px solid #0c5ca8; border-radius:25px; color:#0c5ca8; text-decoration:none; font-size:13px; font-weight:750; background:#ffffffd9; transition:background .25s ease,color .25s ease,transform .25s ease; }
.company-secondary:hover,.company-secondary:focus-visible { color:#fff; background:#0c5ca8; transform:translateY(-2px); }
.ability-grid { position:relative; z-index:1; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:0; padding:18px 18px; margin-bottom:0; background:#fffffff0; box-shadow:0 17px 45px #0d355523; backdrop-filter:blur(10px); }
.ability-card { display:flex; align-items:center; gap:13px; min-width:0; padding:8px 16px; border-right:1px solid #c9d8e4; transition:background .25s ease,transform .25s ease; }
.ability-card:last-child { border-right:0; }
.ability-card:hover { background:#e9f3fc; transform:translateY(-3px); }
.ability-card svg { width:29px; height:29px; color:#0c5ca8; flex:none; }
.ability-card span { display:grid; gap:4px; min-width:0; }
.ability-card strong { color:#17334d; font-size:15px; line-height:1.3; }
.ability-card small { color:#53647c; font-size:12px; line-height:1.45; }
.company-service { position:relative; overflow:hidden; padding:64px 0 70px; background:radial-gradient(ellipse at 97% 100%,#174e7a 0%,#102e50 28%,#0b1e36 70%),#0b1e36; }
.company-service::before { content:""; position:absolute; width:690px; height:690px; right:-185px; bottom:-550px; border:1px solid #5ab8ed3c; border-radius:50%; box-shadow:0 0 90px #2f86ce26; pointer-events:none; }
.company-service>.design-container { position:relative; }
.company-service-heading h3 { font-size:42px; line-height:1.2; color:#fff; margin:0; }
.company-service-heading p { font-size:16px; line-height:1.6; margin:10px 0 32px; color:#bed2e6; }
.service-design-list { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:0; }
.service-design-card { position:relative; min-width:0; padding:16px 20px 23px 0; display:flex; align-items:flex-start; gap:15px; transition:transform .3s ease,filter .3s ease; }
.service-design-card:not(:last-child)::after { content:""; position:absolute; right:13px; top:43px; width:1px; height:65px; background:#66a6d550; }
.service-design-card:hover { transform:translateY(-6px); filter:brightness(1.2); }
.service-icon { width:55px; height:55px; border:1px solid #4891cd; border-radius:50%; display:flex; align-items:center; justify-content:center; color:#c9e7ff; flex:none; background:#0b284796; box-shadow:inset 0 0 18px #3783bf24; }
.service-icon svg { width:25px; height:25px; }
.service-design-copy { padding-top:6px; }
.service-design-card h4 { font-size:18px; line-height:1.35; margin:0 0 9px; color:#fff; }
.service-design-card p { font-size:14px; line-height:1.6; color:#c3d7e8; margin:0; }
.company-service-action { margin-top:29px; background:#176cc1; border-color:#5aa5e8; color:#fff; }
.company-service-action:hover,.company-service-action:focus-visible { background:#2b85d7; color:#fff; }
.certificate-section { position:relative; overflow:hidden; background:linear-gradient(115deg,#f4f8fc 0%,#e9f1f9 56%,#dce8f4 100%); padding:85px 0 95px; }
.certificate-layout { display:grid; grid-template-columns:31% minmax(0,1fr); align-items:center; gap:42px; }
.certificate-intro h2 { font-size:46px; line-height:1.18; color:#172842; margin:0; }
.certificate-intro p { font-size:17px; line-height:1.7; max-width:360px; margin-top:20px; color:#506278; }
.center-heading { text-align:center; margin-bottom:42px; }
.center-heading h2 { font-size:37px; }
.center-heading p { font-size:16px; margin-top:18px; }
.certificate-gallery { position:relative; padding:26px 18px 22px; background:linear-gradient(160deg,#dce8f3,#b9cee2); border:1px solid #c5d7e8; box-shadow:0 20px 35px #19466f1c; }
.certificate-gallery:focus-visible { outline:3px solid #0c5ca8; outline-offset:4px; }
.certificate-gallery::before { content:""; position:absolute; inset:0; background:linear-gradient(115deg,#fff8,#fff0 45%,#2e587b15); pointer-events:none; }
.certificate-gallery::after { content:""; position:absolute; z-index:0; left:-3%; right:-3%; bottom:9px; height:29px; background:linear-gradient(180deg,#a2b9ce,#7997b2 35%,#cbdbe8); box-shadow:0 13px 20px #2b526a33; transform:perspective(250px) rotateX(17deg); }
.certificate-grid { position:relative; z-index:1; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); align-items:end; gap:15px; }
.certificate-card { height:305px; min-width:0; transform:translateY(8px); transition:transform .35s ease,filter .35s ease; }
.certificate-card:nth-child(2) { height:335px; transform:none; }
.certificate-card:hover { transform:translateY(-9px); filter:drop-shadow(0 15px 12px #2d537833); }
.certificate-mat { height:100%; padding:9px; background:#f8fbff; border:1px solid #bbcad9; box-shadow:4px 6px 0 #7996b1,0 11px 19px #274b6e2b; }
.certificate-image { height:100%; border:1px solid #d3deea; background:linear-gradient(145deg,#fff,#f5f9fd); display:flex; flex-direction:column; gap:12px; align-items:center; justify-content:center; color:#879db1; }
.certificate-image svg { width:31px; height:37px; }
.certificate-image span { font-size:14px; line-height:1.45; text-align:center; color:#657b90; }

.home-blog-section { background:linear-gradient(180deg,#f9fbfd,#f4f8fc); padding:93px 0 100px; }
.journal-head { margin-bottom:32px; }
.journal-head h2 { color:#172842; font-size:43px; line-height:1.2; margin:0; }
.journal-head p { color:#50647a; font-size:17px; line-height:1.65; margin:12px 0 0; }
.journal-feature { min-height:424px; overflow:hidden; background:linear-gradient(105deg,#edf4fa 0%,#e8f1f9 40%,#dce8f4 100%); border-radius:7px; box-shadow:0 20px 42px #2045621d; transition:transform .35s ease,box-shadow .35s ease; }
.journal-feature-link { min-height:424px; display:grid; grid-template-columns:42% 58%; text-decoration:none; color:inherit; }
.journal-feature-link:focus-visible,.journal-card a:focus-visible { outline:3px solid #1575c3; outline-offset:4px; }
.journal-feature-copy { position:relative; z-index:2; display:flex; flex-direction:column; align-items:flex-start; justify-content:center; padding:43px 35px 43px 52px; }
.journal-feature h3 { color:#172842; font-size:39px; line-height:1.24; letter-spacing:-.025em; margin:0; max-width:430px; }
.journal-feature p { color:#4b6279; font-size:16px; line-height:1.7; margin:19px 0 26px; max-width:420px; }
.journal-read { display:inline-flex; align-items:center; gap:12px; color:#0b5ca8; font-size:15px; font-weight:750; white-space:nowrap; transition:gap .25s ease,color .25s ease; }
.journal-read::after { content:"→"; font-size:20px; line-height:1; }
.journal-feature .journal-read { background:#14385b; color:#fff; border-radius:24px; min-height:46px; padding:9px 19px; }
.journal-feature-gallery { min-width:0; display:grid; grid-template-columns:31% 40% 29%; align-items:stretch; gap:0; overflow:hidden; padding:25px 20px 25px 0; }
.journal-sample { position:relative; min-width:0; overflow:hidden; box-shadow:0 13px 22px #17395820; transition:transform .4s ease; }
.journal-sample-acrylic { align-self:center; height:85%; z-index:1; }
.journal-sample-shirt { align-self:stretch; z-index:2; }
.journal-sample-bottle { align-self:end; height:87%; z-index:1; }
.journal-sample img { width:100%; height:126%; object-fit:cover; object-position:center top; transition:transform .5s cubic-bezier(.2,.7,.2,1); }
.journal-feature:hover,.journal-feature:focus-within { transform:translateY(-5px); box-shadow:0 27px 50px #1c416334; }
.journal-feature:hover .journal-sample img,.journal-feature:focus-within .journal-sample img { transform:scale(1.06); }
.journal-feature:hover .journal-read,.journal-feature:focus-within .journal-read,.journal-card:hover .journal-read,.journal-card:focus-within .journal-read { gap:19px; }
.journal-secondary { display:grid; grid-template-columns:1fr 1fr; gap:17px; margin-top:17px; }
.journal-card { min-width:0; height:300px; overflow:hidden; border-radius:6px; transition:transform .35s ease,box-shadow .35s ease; }
.journal-card:hover,.journal-card:focus-within { transform:translateY(-6px); box-shadow:0 19px 35px #183f602c; }
.journal-card a { display:grid; height:100%; text-decoration:none; color:inherit; }
.journal-card-copy { position:relative; z-index:2; display:flex; flex-direction:column; align-items:flex-start; justify-content:center; min-width:0; padding:27px 26px 28px 33px; }
.journal-card h3 { font-size:25px; line-height:1.32; margin:0; letter-spacing:-.015em; }
.journal-card p { font-size:14px; line-height:1.55; margin:13px 0 19px; }
.journal-card-media { position:relative; min-width:0; overflow:hidden; }
.journal-card-media img { width:100%; height:100%; object-fit:cover; transition:transform .5s cubic-bezier(.2,.7,.2,1); }
.journal-card:hover img,.journal-card:focus-within img { transform:scale(1.045); }
.journal-card-model { background:radial-gradient(circle at 82% 34%,#3a688a 0%,#1b4463 36%,#0b263e 100%); box-shadow:0 12px 28px #173c5c21; }
.journal-card-model a { grid-template-columns:50% 50%; }
.journal-card-model h3,.journal-card-model .journal-read { color:#fff; }
.journal-card-model p { color:#c9ddee; }
.journal-card-model .journal-card-media img { position:absolute; width:118%; height:100%; right:-11%; bottom:-4%; object-fit:contain; filter:drop-shadow(0 16px 18px #001426aa); }
.journal-card-model .journal-card-media::after { content:""; position:absolute; z-index:1; left:0; right:0; bottom:0; height:31px; background:linear-gradient(transparent,#173e5d); pointer-events:none; }
.journal-card-apparel { background:#eaf2f8; box-shadow:0 12px 28px #173c5c14; }
.journal-card-apparel a { grid-template-columns:49% 51%; }
.journal-card-apparel .journal-card-media img { height:126%; object-position:55% top; }
.journal-card-apparel h3 { color:#172842; }
.journal-card-apparel p { color:#50647a; }
.journal-footer { display:flex; justify-content:center; margin-top:34px; }
.uv-card:has(a[href]),.application-design-card:has(a[href]),.other-card:has(a[href]),.dtg-strip:has(a[href]),.home-blog-feature:has(a[href]),.home-blog-side article:has(a[href]) { cursor:pointer; }
.consult-section { position:relative; isolation:isolate; overflow:hidden; min-height:584px; background:radial-gradient(circle at 35% 18%,#214c76 0%,#102d4e 30%,#0a2039 72%); color:#fff; }
.consult-visual { position:absolute; z-index:-1; inset:0 0 0 48%; overflow:hidden; clip-path:polygon(27% 0,100% 0,100% 100%,0 100%); background:#29435e; }
.consult-visual img { width:100%; height:100%; object-fit:cover; object-position:56% center; filter:brightness(.68) contrast(1.13) saturate(.77); transform:scale(1.015); transition:transform .7s cubic-bezier(.2,.7,.2,1); }
.consult-visual::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,#102b4d8f 0%,#0a213c2c 32%,#061b330d 100%); pointer-events:none; }
.consult-grid { min-height:584px; display:flex; align-items:center; }
.consult-copy { width:57%; padding:77px 0 80px; }
.consult-section h2 { color:#fff; font-size:clamp(46px,4.7vw,70px); line-height:1.14; letter-spacing:-.055em; margin:0; text-shadow:0 8px 30px #03172d42; }
.consult-section h2 span { display:block; }
.consult-section p { color:#d5e2f1; font-size:17px; line-height:1.78; max-width:550px; margin:25px 0 30px; }
.consult-action { display:inline-flex; align-items:center; justify-content:space-between; gap:34px; min-width:232px; min-height:59px; padding:12px 20px 12px 25px; border-radius:4px; background:#fff; color:#0b2b4e; font-size:16px; font-weight:750; text-decoration:none; box-shadow:0 13px 28px #00132838; transition:transform .28s ease,box-shadow .28s ease,background .28s ease; }
.consult-action:hover,.consult-action:focus-visible { background:#e9f5ff; color:#082d50; transform:translateY(-4px); box-shadow:0 21px 34px #00132865; }
.consult-action:focus-visible,.consult-contact a:focus-visible { outline:3px solid #96dcff; outline-offset:4px; }
.consult-arrow { font-size:26px; line-height:1; font-weight:400; transition:transform .28s ease; }
.consult-action:hover .consult-arrow,.consult-action:focus-visible .consult-arrow { transform:translateX(6px); }
.consult-section:hover .consult-visual img,.consult-section:focus-within .consult-visual img { transform:scale(1.06); }
.consult-contact { display:flex; flex-wrap:wrap; column-gap:29px; row-gap:8px; margin-top:28px; color:#d1deeb; font-size:13px; line-height:1.5; }
.consult-contact a { color:#fff; text-underline-offset:4px; }
.consult-contact a:hover { color:#9cddff; }
/* Clear, restrained feedback for linked homepage content. */
.uv-card,.other-card,.home-blog-feature,.home-blog-side article,.dtg-strip { transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease; }
.uv-card-image img,.other-photo img,.application-design-image img { transition:transform .35s ease; }
.application-design-image { transition:box-shadow .25s ease; }
.design-link,.design-pill { transition:color .2s ease,background-color .2s ease,box-shadow .2s ease,transform .2s ease; }
.design-link span { transition:transform .2s ease; }
@media (hover:hover) and (pointer:fine) {
 .uv-card:hover,.uv-card:focus-within,.other-card:hover,.other-card:focus-within,.home-blog-feature:hover,.home-blog-feature:focus-within,.home-blog-side article:hover,.home-blog-side article:focus-within,.dtg-strip:hover,.dtg-strip:focus-within { transform:translateY(-5px); border-color:#a9d0f3; box-shadow:0 18px 38px #12559a24; }
 .uv-card:hover .uv-card-image img,.uv-card:focus-within .uv-card-image img,.other-card:hover .other-photo img,.other-card:focus-within .other-photo img { transform:scale(1.035); }
 .application-design-card:hover .application-design-image,.application-design-card:focus-within .application-design-image { box-shadow:0 13px 28px #12559a25; }
 .application-design-card:hover .application-design-image img,.application-design-card:focus-within .application-design-image img { transform:scale(1.045); }
 .design-pill:hover,.design-pill:focus-visible { box-shadow:0 9px 20px #075ab032; transform:translateY(-2px); }
 .design-link:hover span,.design-link:focus-visible span { transform:translateX(4px); }
}
@media (prefers-reduced-motion:reduce) {
 .consult-visual img,.consult-action,.consult-arrow{transition:none!important}
 .consult-section:hover .consult-visual img,.consult-section:focus-within .consult-visual img,.consult-action:hover,.consult-action:focus-visible,.consult-action:hover .consult-arrow,.consult-action:focus-visible .consult-arrow{transform:none!important}
 .journal-feature,.journal-card,.journal-sample img,.journal-card-media img,.journal-read{transition:none!important}
 .journal-feature:hover,.journal-card:hover,.journal-feature:hover .journal-sample img,.journal-card:hover img{transform:none!important}
 .certificate-card{transition:none!important}
 .certificate-card:hover{transform:none!important}
 .company-story-image img,.ability-card,.company-secondary,.service-design-card{transition:none!important}
 .company-story:hover .company-story-image img,.ability-card:hover,.company-secondary:hover,.service-design-card:hover{transform:none!important}
 .process-bay,.process-bay-image img,.process-bay-link,.process-dtg,.process-dtg-image img,.process-dtg-link { transition:none!important; }
 .process-bay:hover,.process-bay:focus-within,.process-bay:hover .process-bay-image img,.process-bay:focus-within .process-bay-image img,.process-bay:hover .process-bay-link,.process-bay-link:hover,.process-dtg:hover .process-dtg-image img,.process-dtg:focus-within .process-dtg-image img,.process-dtg-link:hover { transform:none!important; }
 .uv-card,.other-card,.home-blog-feature,.home-blog-side article,.dtg-strip,.uv-card-image img,.other-photo img,.application-design-image img,.application-design-image,.design-link,.design-pill,.design-link span { transition:none!important; }
 .uv-card:hover,.other-card:hover,.home-blog-feature:hover,.home-blog-side article:hover,.dtg-strip:hover,.design-pill:hover,.application-design-image img:hover,.uv-card:hover img,.other-card:hover img,.application-design-card:hover img { transform:none!important; }
}
@media(max-width:1050px){
 .consult-visual{left:44%}.consult-copy{width:57%}.consult-section h2{font-size:clamp(42px,5vw,57px)}.consult-section p{max-width:450px}
 .journal-feature-copy{padding-left:32px;padding-right:22px}.journal-feature h3{font-size:32px}.journal-feature p{font-size:14px}.journal-card-copy{padding-left:22px;padding-right:16px}.journal-card h3{font-size:21px}.journal-card p{font-size:12px}
 .process-bay { min-height:610px; grid-template-rows:auto minmax(330px,1fr); }
 .process-bay-copy { padding:33px 25px 0; }
 .process-bay h3 { font-size:48px; }
 .process-bay-type { font-size:16px; }
 .process-bay li { font-size:12px; }
 .design-container{width:calc(100% - 48px)}
 .company-story,.company-story-inner{min-height:700px}.company-copy{width:54%}.company-copy h2{font-size:44px}.company-copy>p{font-size:15px}.company-story-image{left:48%}.ability-card{padding:8px 10px;gap:9px}.ability-card strong{font-size:13px}.ability-card small{font-size:11px}.service-design-card{gap:9px;padding-right:16px}.service-icon{width:47px;height:47px}.service-design-card h4{font-size:16px}.service-design-card p{font-size:12px}.other-card h3 span{display:block}.other-copy{padding-left:14px}
 .uv-feature-copy{padding-left:34px}.uv-feature-specs{gap:10px}.uv-feature-specs .uv-spec{min-width:128px}.uv-card{grid-template-columns:47% 53%}.uv-card-content{padding-right:12px}.uv-card h3{font-size:29px}.uv-spec{font-size:11px;grid-template-columns:18px minmax(55px,1fr) minmax(85px,1.1fr)}
 .certificate-layout{gap:26px;grid-template-columns:26% minmax(0,1fr)}.certificate-intro h2{font-size:39px}.certificate-intro p{font-size:15px}.certificate-gallery{padding:22px 13px 19px}.certificate-grid{gap:10px}.certificate-card{height:265px}.certificate-card:nth-child(2){height:290px}
}
@media(max-width:900px){
 .consult-section{min-height:0;background:#0b223c}.consult-visual{inset:0 0 auto;height:290px;clip-path:none}.consult-visual img{object-position:51% 38%;filter:brightness(.62) contrast(1.15) saturate(.82)}.consult-visual::after{background:linear-gradient(180deg,#081c332a 0%,#0b223c40 53%,#0b223c 100%)}.consult-grid{min-height:0;display:block}.consult-copy{width:100%;padding:276px 0 65px}.consult-section h2{font-size:clamp(34px,6.5vw,48px);line-height:1.17}.consult-section p{font-size:14px;line-height:1.73;margin:18px 0 24px;max-width:590px}.consult-action{min-height:54px;font-size:14px}.consult-contact{flex-direction:column;gap:5px;margin-top:26px;font-size:12px}
}
@media(min-width:1101px){
 .uv-section{padding-top:104px;padding-bottom:104px}.uv-intro{margin-bottom:42px}
 .applications-design{padding-top:92px;padding-bottom:100px}.other-section{padding-top:94px;padding-bottom:100px}
}
@media(max-width:760px){
 .home-blog-section{padding:62px 0 70px}.journal-head{margin-bottom:25px}.journal-head h2{font-size:30px}.journal-head p{font-size:14px;margin-top:9px}.journal-feature-link{display:flex;flex-direction:column-reverse;min-height:0}.journal-feature-gallery{height:240px;padding:0;grid-template-columns:31% 40% 29%}.journal-sample-acrylic,.journal-sample-bottle{height:100%}.journal-feature-copy{padding:24px 22px 28px;min-height:247px}.journal-feature h3{font-size:27px}.journal-feature p{font-size:14px;margin:13px 0 20px}.journal-feature .journal-read{min-height:42px;font-size:13px}.journal-secondary{grid-template-columns:1fr;gap:14px;margin-top:14px}.journal-card{height:auto}.journal-card-model a,.journal-card-apparel a{display:flex;flex-direction:column-reverse}.journal-card-apparel a{flex-direction:column}.journal-card-media{height:220px}.journal-card-model .journal-card-media img{width:100%;height:100%;right:0;bottom:-8%;object-fit:contain}.journal-card-copy{min-height:205px;padding:23px 24px}.journal-card h3{font-size:22px}.journal-card p{font-size:13px;margin:10px 0 15px}.journal-card .journal-read{font-size:13px}.journal-footer{margin-top:25px}
 .process-intro { margin-bottom:26px; }
 .process-intro p { font-size:15px; margin-top:11px; }
 .process-stage { border-radius:7px; }
 .process-bays { grid-template-columns:1fr; }
 .process-bay { min-height:570px; display:flex; flex-direction:column; }
 .process-bay-j650 { border-left:0; border-top:1px solid #b8d9ed5a; }
 .process-bay::before { left:10%; right:6%; bottom:20px; height:58px; }
 .process-bay-copy { display:flex; flex-direction:column; align-items:flex-start; padding:28px 25px 0; }
 .process-bay h3 { font-size:43px; }
 .process-bay-type { font-size:17px; margin:6px 0 21px; }
 .process-bay ul { gap:8px 15px; margin-bottom:18px; }
 .process-bay li { font-size:13px; }
 .process-bay-link { margin-top:0; }
 .process-bay-image { flex:1; min-height:310px; }
 .process-bay-image img { width:100%; height:100%; transform:scale(.97); }
 .process-bay-j650 .process-bay-image img { width:110%; transform:scale(1.03); }
 .process-bay:hover .process-bay-image img,.process-bay:focus-within .process-bay-image img { transform:scale(1.03); }
 .process-bay-j650:hover .process-bay-image img,.process-bay-j650:focus-within .process-bay-image img { transform:scale(1.09); }
 .process-dtg { grid-template-columns:1fr; }
 .process-dtg-image { height:215px; }
 .process-dtg-copy { padding:27px 25px 30px; }
 .process-dtg h3 { font-size:25px; }
 .process-dtg p { font-size:13px; }
 .design-container{width:calc(100% - 40px)}.design-section{padding:62px 0 68px}.design-section h2,.uv-intro h2,.other-section h2{font-size:28px}
 .uv-intro{margin-bottom:28px}.uv-eyebrow{font-size:10px;margin-bottom:11px}.uv-intro p{font-size:15px;margin-top:8px}.uv-grid,.application-design-grid,.other-grid,.company-grid,.certificate-grid,.home-blog-grid{grid-template-columns:1fr}.uv-feature{display:flex;flex-direction:column;min-height:0;background-image:linear-gradient(180deg,#f8fbfeed 0%,#f8fbfedf 43%,#f8fbfe00 67%),url('/assets/uv-showroom-v25.webp');background-position:61% center}.uv-feature-copy{padding:27px 23px 0}.uv-feature h3{font-size:60px}.uv-feature-copy>p{font-size:14px;margin:4px 0 18px}.uv-feature-specs{width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.uv-feature-specs .uv-spec{min-width:0;grid-template-columns:1fr;gap:2px}.uv-feature-specs .uv-spec svg{grid-row:auto}.uv-feature-specs .uv-spec strong{grid-column:1;font-size:11px;white-space:normal}.uv-feature-specs .uv-spec span{font-size:10px}.uv-feature-action{margin-top:20px;min-height:42px;font-size:13px}.uv-feature-image{height:260px;padding:0 10px 12px}.uv-feature-image img{max-height:250px}.uv-grid{gap:12px;margin-top:12px}.uv-card{min-height:190px;grid-template-columns:42% 58%}.uv-card-image{height:100%;min-height:190px;padding:8px}.uv-card-image img{max-height:175px}.uv-card-content{padding:17px 10px 17px 0}.uv-card h3{font-size:23px;margin:0 0 10px}.uv-spec{min-height:32px;font-size:10px;grid-template-columns:14px minmax(45px,1fr) minmax(67px,1.1fr);gap:3px}.uv-spec svg{width:14px;height:14px}.uv-spec strong{white-space:normal}.uv-card-link{margin-top:12px;font-size:11px}.uv-compare{display:block;padding:22px 20px;margin-top:12px}.uv-compare h3{font-size:19px}.uv-compare p{font-size:12px}.uv-compare .design-pill{margin-top:16px;min-height:42px;font-size:12px;white-space:normal}.section-footnote{font-size:11px}.section-action{margin-top:25px}
 .section-heading-row{align-items:start;margin:0 0 29px}.section-heading-row p,.other-section>.design-container>.section-description{font-size:15px;margin-top:12px}.application-overview-link{font-size:12px;max-width:78px;text-align:right;line-height:1.4;margin-top:5px}.application-design-grid{display:grid;grid-template-columns:1fr;grid-template-rows:auto;gap:12px}.application-design-card,.application-design-card:first-child{grid-column:1;grid-row:auto;grid-template-columns:45% 55%;min-height:175px}.application-design-card:first-child{min-height:278px}.application-design-image{height:100%;aspect-ratio:auto}.application-design-card h3{font-size:19px;margin-top:9px}.application-design-card:first-child h3{font-size:23px}.application-design-copy,.application-design-card:first-child .application-design-copy{padding:16px 13px}.application-design-copy>span{font-size:8px}.application-design-copy>p,.application-design-card:first-child .application-design-copy>p{font-size:11px;line-height:1.5;margin-top:9px}.application-design-link,.application-design-card:first-child .application-design-link{font-size:11px;margin-top:12px}
 .other-grid{gap:16px}.other-card{grid-template-columns:1fr;min-height:0}.other-photo{height:230px}.other-photo img{height:210px}.other-copy{padding:19px 22px 24px}.other-card h3{font-size:21px}.other-card h3 em{font-size:30px}.other-card h3 span{display:inline;font-size:18px}.other-copy ul{margin:18px 0 0;gap:12px}.other-link{margin-top:25px}.dtg-strip{display:grid;grid-template-columns:53px 1fr;gap:12px;padding:17px}.dtg-icon{width:53px;height:53px}.dtg-strip>div{padding:0;border:0}.dtg-strip h3{font-size:19px}.dtg-strip p{font-size:13px}.dtg-strip .design-pill{grid-column:1/-1;justify-self:start}
 .company-story,.company-story-inner{min-height:0}.company-story-inner{gap:0;padding-bottom:40px}.company-copy{width:100%;padding:58px 0 24px}.company-copy h2{font-size:38px;margin:0 0 23px}.company-copy>p{font-size:14px;line-height:1.72}.company-actions{gap:10px;margin-top:23px}.company-actions .design-pill,.company-secondary{min-height:42px;font-size:12px;padding:8px 14px}.company-story-image{position:relative;inset:auto;width:100%;height:240px;border-radius:4px}.company-story-image::after{background:linear-gradient(0deg,#0b2b4560,#ffffff00 55%)}.company-story-image img{object-position:center 53%}.ability-grid{grid-template-columns:repeat(2,minmax(0,1fr));padding:10px;margin-top:-16px;gap:0 4px}.ability-card{min-height:78px;padding:9px 7px;border-right:0;border-bottom:1px solid #d2e1eb}.ability-card:nth-child(n+3){border-bottom:0}.ability-card svg{width:25px;height:25px}.ability-card strong{font-size:12px}.ability-card small{font-size:11px}.company-service{padding:57px 0 61px}.company-service-heading h3{font-size:29px}.company-service-heading p{font-size:14px;margin:10px 0 25px}.service-design-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.service-design-card{display:block;padding:11px 8px 13px 0}.service-design-card:not(:last-child)::after{display:none}.service-icon{width:42px;height:42px;margin-bottom:13px}.service-icon svg{width:22px;height:22px}.service-design-copy{padding-top:0}.service-design-card h4{font-size:15px}.service-design-card p{font-size:12px;line-height:1.55}.company-service-action{margin-top:23px}
 .center-heading{margin-bottom:29px}.center-heading h2{font-size:28px}.center-heading p{font-size:14px}.certificate-section{padding:56px 0 68px}.certificate-layout{display:block}.certificate-intro h2{font-size:31px}.certificate-intro p{font-size:14px;margin-top:12px}.certificate-gallery{margin-top:27px;padding:18px 0 22px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin}.certificate-grid{display:flex;width:max-content;gap:14px;padding:0 24px;margin:0}.certificate-card,.certificate-card:nth-child(2){flex:0 0 200px;height:265px;transform:none;scroll-snap-align:center}.certificate-card:hover{transform:translateY(-6px)}.certificate-image{height:100%}.certificate-image span{font-size:13px}.home-blog-feature{grid-template-columns:1fr}.home-blog-visual{height:230px;order:-1}.home-blog-copy{padding:22px;min-height:250px}.home-blog-copy h3{font-size:25px;margin-top:17px}.home-blog-copy p{margin-top:14px}.home-blog-side article{min-height:155px}.home-blog-side h3{font-size:17px}.home-blog-side article>div{padding:16px}.home-blog-side p{font-size:12px}
}
