:root {
    --orange:#f47a00;
    --orange-dark:#cf6300;
    --ink:#191a1c;
    --charcoal:#25272a;
    --text:#52565b;
    --muted:#7d8288;
    --line:#e7e8e9;
    --soft:#f5f5f3;
    --paper:#fff;
    --radius:16px;
    --shadow:0 18px 55px rgba(19,21,23,.08)
}

* {
    box-sizing:border-box
}

html {
    scroll-behavior:smooth
}

body {
    margin:0;
    font-family:'Manrope',Arial,sans-serif;
    color:var(--ink);
    background:#fff;
    -webkit-font-smoothing:antialiased
}

a {
    color:inherit
}

.container {
    width:min(1220px,calc(100% - 44px));
    margin:auto
}

.sr-only {
    position:absolute;
    width:1px;
    height:1px;
    padding:0;
    margin:-1px;
    overflow:hidden;
    clip:rect(0,0,0,0);
    white-space:nowrap;
    border:0
}

.skip-link {
    position:fixed;
    left:15px;
    top:-60px;
    z-index:9999;
    background:#fff;
    padding:12px 16px
}

.skip-link:focus {
    top:15px
}

.topbar {
    background:var(--ink);
    color:#d9d9d9;
    font-size:12px
}

.topbar-inner {
    min-height:34px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px
}

.topbar-left,.topbar-right {
    display:flex;
    align-items:center
}

.topbar-left {
    color:#fff
}

.topbar-right {
    gap:10px
}

.topbar a {
    text-decoration:none
}

.topbar-contact {
    display:inline-flex;
    align-items:center;
    gap:7px;
    color:#fff;
    text-decoration:none;
    transition:color .2s ease
}

.topbar-contact:hover {
    color:var(--orange)
}

.topbar-icon {
    width:14px;
    height:14px;
    fill:currentColor;
    flex-shrink:0
}

.topbar-divider {
    opacity:.45;
    margin:0 4px
}

.site-header {
    position:relative;
    z-index:50;
    background:#fff;
    border-bottom:1px solid var(--line)
}

.site-header.is-sticky {
    position:sticky;
    top:0;
    box-shadow:0 10px 30px rgba(0,0,0,.06)
}

.header-main {
    height:78px;
    display:flex;
    align-items:center;
    gap:20px
}

.brand {
    display:flex;
    min-width:255px
}

.brand img {
    width:230px;
    height:auto;
    display:block
}

.menu-toggle {
    display:none;
    width:42px;
    height:42px;
    border:1px solid var(--line);
    background:#fff;
    border-radius:10px;
    padding:10px;
    cursor:pointer
}

.menu-toggle span:not(.sr-only) {
    display:block;
    height:2px;
    background:var(--ink);
    margin:4px 0
}

.header-search {
    height:42px;
    display:flex;
    flex:1;
    background:var(--soft);
    border:1px solid #ececeb;
    border-radius:11px;
    overflow:hidden
}

.header-search input {
    min-width:0;
    flex:1;
    border:0;
    background:transparent;
    padding:0 15px;
    outline:none
}

.header-search button {
    border:0;
    background:var(--charcoal);
    color:#fff;
    padding:0 21px;
    font-weight:700;
    cursor:pointer
}

.quote-btn,.btn {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:44px;
    padding:0 20px;
    border-radius:10px;
    background:var(--orange);
    color:#fff;
    text-decoration:none;
    font-weight:700;
    font-size:13px;
    border:0;
    cursor:pointer;
    transition:.25s
}

.quote-btn:hover,.btn:hover {
    background:var(--orange-dark);
    transform:translateY(-1px)
}

.btn-dark {
    background:var(--charcoal)
}

.btn-dark:hover {
    background:#101112
}

.primary-nav {
    background:#fff;
    border-top:1px solid #f1f1f1
}

.nav-inner {
    min-height:56px;
    display:grid;
    grid-template-columns:repeat(9,minmax(0,1fr));
    align-items:stretch;
    width:100%;
    column-gap:8px
}

.nav-item {
    position:relative;
    display:flex;
    align-items:stretch;
    justify-content:center;
    min-width:0
}

.nav-inner>a,.nav-item>.nav-link {
    display:flex;
    align-items:center;
    justify-content:center;
    gap:7px;
    min-height:56px;
    width:100%;
    padding:0 10px;
    text-decoration:none;
    font-size:14px;
    font-weight:700;
    white-space:nowrap;
    position:relative;
    color:var(--ink);
    transition:color .2s ease
}

.nav-inner>a:after,.nav-item>.nav-link:after {
    content:"";
    position:absolute;
    height:2px;
    background:var(--orange);
    left:16px;
    right:16px;
    bottom:7px;
    transform:scaleX(0);
    transform-origin:center;
    transition:transform .2s ease
}

.nav-inner>a:hover,.nav-item:hover>.nav-link {
    color:var(--orange)
}

.nav-inner>a.active,.nav-item>.nav-link.active {
    color:var(--ink)
}

.nav-inner>a:hover:after,.nav-inner>a.active:after,.nav-item:hover>.nav-link:after,.nav-item>.nav-link.active:after {
    transform:scaleX(1)
}

.nav-arrow {
    width:7px;
    height:7px;
    border-right:1.5px solid currentColor;
    border-bottom:1.5px solid currentColor;
    transform:rotate(45deg) translateY(-2px);
    transition:transform .2s ease
}

.nav-item:hover .nav-arrow {
    transform:rotate(225deg) translate(-1px,-1px)
}

.nav-dropdown {
    position:absolute;
    left:50%;
    top:calc(100% - 1px);
    min-width:190px;
    padding:8px;
    background:#fff;
    border:1px solid var(--line);
    border-radius:0 0 12px 12px;
    box-shadow:0 18px 40px rgba(19,21,23,.12);
    opacity:0;
    visibility:hidden;
    transform:translate(-50%,8px);
    transition:opacity .2s ease,transform .2s ease,visibility .2s;
    z-index:100
}

.nav-item:hover .nav-dropdown,.nav-item:focus-within .nav-dropdown {
    opacity:1;
    visibility:visible;
    transform:translate(-50%,0)
}

.nav-dropdown a {
    display:block!important;
    width:100%!important;
    min-height:auto!important;
    padding:11px 13px!important;
    border-radius:8px;
    text-decoration:none;
    font-size:13px!important;
    font-weight:600!important;
    color:var(--ink)!important;
    white-space:nowrap
}

.nav-dropdown a:after {
    display:none!important
}

.nav-dropdown a:hover,.nav-dropdown a.active {
    background:var(--soft);
    color:var(--orange)!important
}

.hero {
    position:relative;
    background:var(--soft);
    overflow:hidden
}

.hero-swiper {
    height:510px
}

.hero-slide {
    display:flex;
    align-items:center;
    position:relative
}

.hero-slide:before {
    content:"";
    position:absolute;
    inset:0;
    background:radial-gradient(circle at 80% 30%,#fff 0,transparent 34%),linear-gradient(105deg,#f4f4f1 0 56%,#e9eae7 56%)
}

.hero-grid {
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:1fr 1fr;
    align-items:center;
    height:100%;
    gap:30px
}

.eyebrow {
    text-transform:uppercase;
    letter-spacing:1.7px;
    color:var(--orange);
    font-size:12px;
    font-weight:800
}

.hero h1,.page-hero h1 {
    font-family:'Manrope',Arial,sans-serif;
    font-size:58px;
    line-height:1.02;
    max-width:650px;
    margin:12px 0 18px
}

.hero p {
    max-width:570px;
    color:var(--text);
    font-size:15px;
    line-height:1.75
}

.hero-actions {
    display:flex;
    gap:12px;
    margin-top:26px
}

.hero-stage {
    height:390px;
    position:relative
}

.hero-orbit {
    position:absolute;
    width:360px;
    height:360px;
    border:1px solid rgba(244,122,0,.23);
    border-radius:50%;
    right:3%;
    top:0
}

.hero-orbit:before,.hero-orbit:after {
    content:"";
    position:absolute;
    border:1px solid rgba(25,26,28,.08);
    border-radius:50%;
    inset:45px
}

.hero-orbit:after {
    inset:95px
}

.hero-machine {
    position:absolute;
    right:70px;
    bottom:15px;
    width:325px;
    height:270px;
    background:linear-gradient(135deg,#44484c,#1c1e20);
    border-radius:28px 28px 45px 45px;
    box-shadow:0 35px 50px rgba(0,0,0,.2);
    transform:rotate(-4deg)
}

.hero-machine:before {
    content:"";
    position:absolute;
    left:55px;
    top:35px;
    width:205px;
    height:72px;
    border-radius:50%;
    background:linear-gradient(#aaa,#e1e1df);
    box-shadow:inset 0 7px 18px rgba(0,0,0,.3)
}

.hero-controller {
    position:absolute;
    right:100px;
    bottom:40px;
    width:112px;
    height:185px;
    border-radius:10px;
    background:#101214;
    border:8px solid #2d3033;
    box-shadow:0 20px 35px rgba(0,0,0,.25)
}

.hero-controller:before {
    content:"PROCESS";
    position:absolute;
    top:25px;
    left:10px;
    right:10px;
    padding:12px 5px;
    border:1px solid #5c6266;
    color:#f3b16f;
    text-align:center;
    font-size:11px;
    letter-spacing:1px
}

.hero-slide:nth-child(2) .hero-machine {
    background:linear-gradient(135deg,#aeb6b8,#5f686b);
    width:365px
}

.hero-slide:nth-child(3) .hero-controller {
    right:250px;
    width:135px
}

.swiper-button-next,.swiper-button-prev {
    color:var(--ink)!important;
    width:43px!important;
    height:43px!important;
    background:#fff;
    border-radius:50%;
    box-shadow:0 8px 25px rgba(0,0,0,.08)
}

.swiper-button-next:after,.swiper-button-prev:after {
    font-size:15px!important;
    font-weight:800
}

.swiper-pagination-bullet-active {
    background:var(--orange)!important
}

.quick-strip {
    background:#fff;
    border-bottom:1px solid var(--line)
}

.quick-grid {
    display:grid;
    grid-template-columns:repeat(4,1fr)
}

.quick-item {
    padding:24px 18px;
    display:flex;
    align-items:center;
    gap:14px;
    border-right:1px solid var(--line)
}

.quick-item:last-child {
    border:0
}

.quick-icon {
    width:44px;
    height:44px;
    display:grid;
    place-items:center;
    border-radius:50%;
    background:#fff4e9;
    color:var(--orange);
    font-weight:800
}

.quick-item strong {
    font-size:13px
}

.quick-item span {
    display:block;
    color:var(--muted);
    font-size:11px;
    margin-top:4px
}

.section {
    padding:78px 0
}

.section.alt {
    background:var(--soft)
}

.section.dark {
    background:var(--charcoal);
    color:#fff
}

.section-head {
    text-align:center;
    margin:0 auto 38px;
    max-width:720px
}

.section-head h2,.content-copy h2 {
    font-family:'Manrope',Arial,sans-serif;
    font-size:40px;
    line-height:1.05;
    margin:9px 0 14px
}

.section-head p,.content-copy p {
    color:var(--text);
    line-height:1.75;
    font-size:14px
}

.dark .section-head p {
    color:#b9bdc1
}

.categories-grid {
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:18px
}

.category-card {
    min-height:210px;
    padding:26px;
    border:1px solid var(--line);
    background:#fff;
    border-radius:var(--radius);
    text-decoration:none;
    position:relative;
    overflow:hidden;
    box-shadow:0 8px 28px rgba(0,0,0,.035);
    transition:.3s
}

.category-card:hover {
    transform:translateY(-6px);
    box-shadow:var(--shadow)
}

.category-card:after {
    content:"";
    position:absolute;
    width:110px;
    height:110px;
    border:1px solid rgba(244,122,0,.22);
    border-radius:50%;
    right:-40px;
    bottom:-35px
}

.category-icon {
    font-size:25px;
    color:var(--orange)
}

.category-card h3 {
    font-size:17px;
    margin:25px 0 9px
}

.category-card p {
    font-size:12px;
    color:var(--muted);
    line-height:1.6
}

.category-card span {
    font-size:12px;
    font-weight:800;
    color:var(--orange)
}

.products-grid {
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:20px
}

.product-card {
    background:#fff;
    border:1px solid var(--line);
    border-radius:var(--radius);
    overflow:hidden;
    transition:.3s
}

.product-card:hover {
    transform:translateY(-5px);
    box-shadow:var(--shadow)
}

.product-visual {
    height:210px;
    background:linear-gradient(145deg,#f7f7f5,#e3e4e0);
    display:grid;
    place-items:center;
    position:relative;
    overflow:hidden
}

.product-tag {
    position:absolute;
    top:14px;
    left:14px;
    padding:6px 9px;
    border-radius:999px;
    background:#fff;
    font-size:10px;
    font-weight:800;
    color:var(--orange);
    z-index:2
}

.device-shape {
    width:105px;
    height:140px;
    border-radius:10px;
    background:linear-gradient(140deg,#25282a,#5f6366);
    box-shadow:18px 23px 35px rgba(0,0,0,.2);
    position:relative;
    transform:rotate(-3deg)
}

.device-shape:before {
    content:"";
    position:absolute;
    left:19px;
    right:19px;
    top:22px;
    height:39px;
    border:3px solid #7f8588;
    background:#191b1c;
    border-radius:4px
}

.visual-transmitter .device-shape,.visual-transmitter-alt .device-shape {
    width:70px;
    height:125px;
    border-radius:38px 38px 8px 8px;
    background:linear-gradient(#8c9698,#d8dcdb)
}

.visual-transmitter .device-shape:before,.visual-transmitter-alt .device-shape:before {
    left:-18px;
    right:-18px;
    top:15px;
    height:42px;
    border:7px solid #5d6567;
    border-radius:50%;
    background:#e3e6e4
}

.visual-panel .device-shape,.visual-panel-alt .device-shape {
    width:145px;
    height:125px;
    border-radius:6px
}

.visual-panel .device-shape:after,.visual-panel-alt .device-shape:after {
    content:"";
    position:absolute;
    inset:70px 18px 18px;
    background:repeating-linear-gradient(90deg,#aaa 0 10px,transparent 10px 18px)
}

.visual-meter .device-shape {
    width:150px;
    height:70px;
    border-radius:45px;
    border:16px solid #687376;
    background:transparent
}

.visual-meter .device-shape:before {
    display:none
}

.visual-hmi .device-shape {
    width:155px;
    height:105px;
    border-radius:5px
}

.visual-hmi .device-shape:before {
    inset:12px;
    height:auto;
    background:linear-gradient(135deg,#564f47,#b58f65);
    border:0
}

.product-content {
    padding:19px
}

.product-category {
    font-size:10px;
    text-transform:uppercase;
    letter-spacing:1.1px;
    color:var(--orange);
    font-weight:800
}

.product-content h3 {
    font-size:15px;
    margin:8px 0
}

.product-content h3 a {
    text-decoration:none
}

.product-content p {
    font-size:12px;
    line-height:1.6;
    color:var(--muted);
    min-height:58px
}

.product-meta {
    display:flex;
    justify-content:space-between;
    align-items:center;
    margin-top:13px;
    font-size:12px
}

.product-meta strong {
    font-size:13px
}

.product-meta a {
    color:var(--orange);
    font-weight:800;
    text-decoration:none
}

.services-grid {
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:18px
}

.service-card {
    padding:28px;
    border:1px solid var(--line);
    border-radius:var(--radius);
    background:#fff
}

.service-icon {
    font-size:26px;
    color:var(--orange)
}

.service-card h3 {
    margin:20px 0 8px;
    font-size:15px
}

.service-card p {
    font-size:12px;
    color:var(--muted);
    line-height:1.65
}

.split {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:55px;
    align-items:center
}

.industrial-art {
    height:390px;
    border-radius:22px;
    background:linear-gradient(135deg,#222527,#555b5e);
    position:relative;
    overflow:hidden
}

.industrial-art:before {
    content:"";
    position:absolute;
    width:390px;
    height:230px;
    left:45px;
    top:82px;
    background:linear-gradient(135deg,#798184,#d4d7d5);
    clip-path:polygon(0 20%,83% 0,100% 75%,18% 100%);
    box-shadow:20px 30px 35px rgba(0,0,0,.25)
}

.industrial-art:after {
    content:"PROCESS • ENGINEERING • AUTOMATION";
    position:absolute;
    left:32px;
    bottom:24px;
    color:#fff;
    font-weight:800;
    letter-spacing:1.2px;
    font-size:11px
}

.stats {
    display:flex;
    gap:40px;
    margin-top:28px
}

.stat strong {
    display:block;
    font-size:27px;
    color:var(--orange)
}

.stat span {
    font-size:11px;
    color:var(--muted)
}

.testimonials-grid {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:20px
}

.testimonial {
    border:1px solid var(--line);
    border-radius:var(--radius);
    padding:26px;
    background:#fff
}

.testimonial p {
    font-size:12px;
    line-height:1.75;
    color:var(--text)
}

.person {
    display:flex;
    align-items:center;
    gap:12px;
    margin-top:20px
}

.avatar {
    width:38px;
    height:38px;
    border-radius:50%;
    display:grid;
    place-items:center;
    background:#f0f0ed;
    font-size:11px;
    font-weight:800
}

.person strong {
    font-size:12px
}

.person span {
    display:block;
    font-size:10px;
    color:var(--muted);
    margin-top:3px
}

.page-hero {
    padding:78px 0;
    background:linear-gradient(115deg,#f4f4f1,#fff);
    border-bottom:1px solid var(--line)
}

.page-hero h1 {
    font-size:50px;
    margin-bottom:12px
}

.page-hero p {
    color:var(--text);
    max-width:680px;
    line-height:1.7
}

.contact-grid {
    display:grid;
    grid-template-columns:1.05fr .95fr;
    gap:35px
}

.contact-card,.form-card {
    border:1px solid var(--line);
    border-radius:var(--radius);
    padding:28px;
    background:#fff
}

.contact-card h3,.form-card h3 {
    margin-top:0
}

.contact-list {
    display:grid;
    gap:16px;
    margin-top:25px
}

.contact-row {
    padding-bottom:16px;
    border-bottom:1px solid var(--line)
}

.contact-row:last-child {
    border:0
}

.contact-row span {
    display:block;
    color:var(--muted);
    font-size:11px;
    margin-bottom:5px
}

.contact-row strong,.contact-row a {
    font-size:13px;
    text-decoration:none
}

.form-grid {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:14px
}

.form-grid .full {
    grid-column:1/-1
}

.form-control {
    width:100%;
    min-height:46px;
    border:1px solid var(--line);
    border-radius:10px;
    background:#fafafa;
    padding:12px 14px;
    font:inherit;
    outline:none
}

.form-control:focus {
    border-color:var(--orange);
    background:#fff
}

.textarea {
    min-height:130px;
    resize:vertical
}

.alert {
    padding:13px 15px;
    border-radius:10px;
    margin-bottom:18px;
    font-size:12px
}

.alert-success {
    background:#edf8ef;
    color:#296635;
    border:1px solid #d5eed9
}

.alert-error {
    background:#fff0ed;
    color:#8c2f20;
    border:1px solid #f4d7d1
}

.media-grid {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:18px
}

.media-card {
    min-height:250px;
    border-radius:var(--radius);
    background:linear-gradient(135deg,#222527,#5a6062);
    position:relative;
    overflow:hidden;
    color:#fff;
    padding:24px;
    display:flex;
    align-items:flex-end
}

.media-card:before {
    content:"";
    position:absolute;
    width:180px;
    height:180px;
    border:1px solid rgba(244,122,0,.45);
    border-radius:50%;
    right:-25px;
    top:-30px
}

.media-card>* {
    position:relative;
    z-index:1
}

.media-card h3 {
    margin:0 0 5px
}

.media-card p {
    margin:0;
    color:#d3d5d5;
    font-size:12px
}

.product-detail {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:50px;
    align-items:start
}

.product-detail .product-visual {
    height:470px;
    border-radius:var(--radius)
}

.product-info h1 {
    font-family:'Manrope',Arial,sans-serif;
    font-size:46px;
    line-height:1.05;
    margin:12px 0
}

.product-info .lead {
    color:var(--text);
    line-height:1.75
}

.detail-price {
    font-size:24px;
    font-weight:800;
    margin:20px 0
}

.specs {
    margin:28px 0;
    border-top:1px solid var(--line)
}

.spec-row {
    display:flex;
    justify-content:space-between;
    gap:25px;
    padding:13px 0;
    border-bottom:1px solid var(--line);
    font-size:12px
}

.spec-row span {
    color:var(--muted)
}

.search-results {
    max-width:900px;
    margin:auto
}

.search-item {
    padding:22px 0;
    border-bottom:1px solid var(--line)
}

.search-item a {
    text-decoration:none
}

.search-item h3 {
    margin:0 0 7px
}

.empty {
    text-align:center;
    padding:55px;
    border:1px dashed #d4d6d6;
    border-radius:var(--radius);
    color:var(--muted)
}

.site-footer {
    background:#17191b;
    color:#fff;
    padding:54px 0 0
}

.footer-grid {
    display:grid;
    grid-template-columns:1.55fr .72fr .72fr 1.18fr 1.2fr;
    gap:34px;
    align-items:start
}

.footer-brand img {
    width:220px;
    background:#fff;
    border-radius:7px;
    padding:8px 10px;
    display:block
}

.footer-brand p {
    max-width:365px;
    margin:15px 0 0!important;
    color:#aeb3b7!important;
    line-height:1.75!important;
    font-size:11.5px!important
}

.site-footer h3 {
    font-size:13px;
    margin:0 0 16px;
    font-weight:800;
    color:#fff;
    letter-spacing:.1px
}

.site-footer p,.site-footer a {
    display:block;
    color:#aeb3b7;
    font-size:11.5px;
    line-height:1.7;
    text-decoration:none;
    margin:5px 0
}

.site-footer a {
    transition:color .2s ease
}

.site-footer a:hover {
    color:#fff
}

.footer-links {
    display:grid;
    gap:3px
}

.footer-contact {
    display:grid;
    gap:10px
}

.footer-contact-link {
    display:flex!important;
    align-items:flex-start;
    gap:9px;
    margin:0!important
}

.footer-contact-icon {
    width:14px;
    height:14px;
    fill:var(--orange);
    flex:0 0 auto;
    margin-top:3px
}

.footer-contact-link span {
    line-height:1.55
}

.footer-address span {
    font-size:11.5px;
    line-height:1.55;
    color:#d7dadc
}

.footer-socials {
    display:flex;
    align-items:center;
    gap:8px;
    margin-top:17px
}

.footer-socials a {
    width:32px;
    height:32px;
    border:1px solid #34383c;
    border-radius:50%;
    display:grid!important;
    place-items:center;
    margin:0!important;
    color:#c7cbce;
    background:transparent;
    transition:border-color .2s ease,color .2s ease,background .2s ease
}

.footer-socials a:hover {
    border-color:#555b60;
    color:#fff;
    background:#212427
}

.footer-socials svg {
    width:13px;
    height:13px;
    fill:currentColor
}

.footer-newsletter-wrap p {
    margin:-1px 0 12px!important;
    max-width:250px;
    font-size:11.5px!important;
    line-height:1.65!important
}

.footer-newsletter {
    margin:0
}

.footer-newsletter-row {
    display:flex;
    align-items:stretch;
    border:1px solid #363a3e;
    border-radius:7px;
    overflow:hidden;
    background:#1d2022;
    transition:border-color .2s ease
}

.footer-newsletter-row:focus-within {
    border-color:#5a6065
}

.footer-newsletter input {
    min-width:0;
    flex:1;
    height:40px;
    border:0;
    outline:0;
    background:transparent;
    color:#fff;
    padding:0 11px;
    font:inherit;
    font-size:11px
}

.footer-newsletter input::placeholder {
    color:#70767b
}

.footer-newsletter button {
    height:40px;
    border:0;
    background:#fff;
    color:#191a1c;
    padding:0 12px;
    font:inherit;
    font-size:10.5px;
    font-weight:800;
    cursor:pointer;
    transition:background .2s ease,color .2s ease
}

.footer-newsletter button:hover {
    background:var(--orange);
    color:#fff
}

.footer-bottom {
    border-top:1px solid #303337;
    margin-top:34px;
    padding:15px 0;
    display:flex;
    align-items:center;
    justify-content:center;
    text-align:center;
    color:#7f858a;
    font-size:9.5px;
    line-height:1.5
}

.footer-bottom a {
    display:inline!important;
    color:#d6d9db;
    font-size:inherit!important;
    font-weight:700;
    margin:0!important
}

.footer-bottom a:hover {
    color:#fff
}

.footer-separator {
    margin:0 7px;
    color:#50555a
}

.contact-widget {
    position:fixed;
    right:18px;
    bottom:20px;
    z-index:80
}

.contact-widget summary {
    list-style:none
}

.contact-widget summary::-webkit-details-marker {
    display:none
}

.contact-widget-toggle {
    width:54px;
    height:54px;
    border-radius:50%;
    display:grid;
    place-items:center;
    position:relative;
    overflow:visible;
    background:linear-gradient(145deg,#ff8a00,#f36f00);
    color:#fff;
    border:2px solid #ffffff;
    outline:1px solid rgba(25,26,28,.16);
    box-shadow:0 10px 24px rgba(244,122,0,.28),0 4px 10px rgba(0,0,0,.12);
    cursor:pointer;
    transition:transform .28s ease,box-shadow .28s ease,filter .28s ease;
    animation:contactFloat 3.4s ease-in-out infinite;
}

.contact-widget-toggle:hover {
    transform:translateY(-3px) scale(1.045);
    box-shadow:0 16px 34px rgba(244,122,0,.38),0 6px 14px rgba(0,0,0,.16);
    filter:saturate(1.06);
}

.contact-widget-toggle svg {
    width:22px;
    height:22px;
    fill:currentColor;
    position:relative;
    z-index:3;
    transition:transform .28s ease,opacity .22s ease;
}

.contact-widget-toggle:before, .contact-widget-toggle:after {
    content:"";
    position:absolute;
    inset:-7px;
    border-radius:50%;
    border:1px solid rgba(244,122,0,.30);
    opacity:0;
    pointer-events:none;
    z-index:1;
}

.contact-widget-toggle:before {
    animation:contactPulse 2.8s ease-out infinite;
}

.contact-widget-toggle:after {
    animation:contactPulse 2.8s 1.35s ease-out infinite;
}

.contact-widget:hover .contact-widget-chat-icon {
    transform:translateY(-1px) rotate(-4deg) scale(1.06);
}

.contact-widget[open] .contact-widget-toggle {
    animation:none;
    transform:rotate(90deg);
    background:linear-gradient(145deg,#2c2f32,#17191b);
    box-shadow:0 12px 28px rgba(0,0,0,.22);
}

.contact-widget[open] .contact-widget-toggle:before, .contact-widget[open] .contact-widget-toggle:after {
    display:none;
}

.floating-back-top:hover {
    transform:translateY(-3px);
    background:#17191b;
    box-shadow:0 12px 26px rgba(0,0,0,.20);
}

@keyframes contactFloat {
    0%,100% {
        transform:translateY(0)
    }
    50% {
        transform:translateY(-4px)
    }
}

@keyframes contactPulse {
    0% {
        transform:scale(.90);
        opacity:0
    }
    18% {
        opacity:.38
    }
    70% {
        opacity:.08
    }
    100% {
        transform:scale(1.42);
        opacity:0
    }
}

@media (prefers-reduced-motion: reduce) {
    .contact-widget-toggle, .contact-widget-toggle:before, .contact-widget-toggle:after {
        animation:none!important;
    }
    .contact-widget-toggle, .floating-back-top {
        transition:none!important;
    }
}

.contact-widget-close-icon {
    display:none
}

.contact-widget[open] .contact-widget-chat-icon {
    display:none
}

.contact-widget[open] .contact-widget-close-icon {
    display:block
}

.contact-widget-panel {
    position:absolute;
    right:0;
    bottom:66px;
    width:320px;
    background:#fff;
    border:1px solid #e6e7e8;
    border-radius:14px;
    box-shadow:0 22px 55px rgba(17,19,21,.18);
    overflow:hidden;
    transform-origin:bottom right;
    animation:contactPanelIn .2s ease both
}

.contact-widget-panel:after {
    content:"";
    position:absolute;
    right:20px;
    bottom:-8px;
    width:16px;
    height:16px;
    background:#fff;
    border-right:1px solid #e6e7e8;
    border-bottom:1px solid #e6e7e8;
    transform:rotate(45deg)
}

.contact-widget-head {
    padding:18px 18px 15px;
    background:#fff;
    border-bottom:1px solid #eef0f1
}

.contact-widget-head strong {
    display:block;
    color:var(--ink);
    font-size:14px
}

.contact-widget-head span {
    display:block;
    color:var(--muted);
    font-size:10.5px;
    line-height:1.5;
    margin-top:4px
}

.contact-widget-options {
    padding:8px
}

.contact-option {
    display:flex!important;
    align-items:center;
    gap:12px;
    padding:11px 10px!important;
    margin:0!important;
    border-radius:9px;
    color:var(--ink)!important;
    text-decoration:none!important;
    transition:background .2s ease!important
}

.contact-option:hover {
    background:#f7f7f6!important;
    color:var(--ink)!important
}

.contact-option-icon {
    width:36px;
    height:36px;
    border-radius:50%;
    display:grid;
    place-items:center;
    flex:0 0 auto
}

.contact-option-icon svg {
    width:19px;
    height:19px;
    fill:#fff
}

.contact-option-wa {
    background:#21b967
}

.contact-option-call {
    background:var(--orange)
}

.contact-option-mail {
    background:#4b5157
}

.contact-option-copy {
    display:block;
    min-width:0
}

.contact-option-copy strong {
    display:block;
    font-size:12px;
    color:var(--ink);
    line-height:1.35
}

.contact-option-copy small {
    display:block;
    color:var(--muted);
    font-size:10.5px;
    line-height:1.45;
    margin-top:2px;
    white-space:normal;
    overflow-wrap:anywhere
}

.floating-back-top {
    position:fixed;
    right:23px;
    bottom:88px;
    width:42px;
    height:42px;
    border-radius:50%;
    display:grid;
    place-items:center;
    background:#232527;
    color:#fff;
    text-decoration:none;
    border:1px solid rgba(255,255,255,.08);
    box-shadow:0 8px 20px rgba(0,0,0,.15);
    z-index:70;
    transition:transform .25s ease,background .25s ease,box-shadow .25s ease;
}

@keyframes contactPanelIn {
    from {
        opacity:0;
        transform:translateY(12px) scale(.965);
        filter:blur(3px)
    }
    to {
        opacity:1;
        transform:translateY(0) scale(1);
        filter:blur(0)
    }
}

.reveal {
    will-change:transform,opacity
}

@media(max-width:1024px) {
    .header-main {
        height:auto;
        padding:14px 0;
        flex-wrap:wrap
    }
    .brand {
        min-width:auto;
        margin-right:auto
    }
    .menu-toggle {
        display:block;
        order:2
    }
    .quote-btn {
        order:3
    }
    .header-search {
        order:4;
        flex-basis:100%
    }
    .primary-nav {
        display:none
    }
    .primary-nav.open {
        display:block
    }
    .nav-inner {
        height:auto;
        display:grid;
        grid-template-columns:repeat(3,1fr);
        padding:10px 0 15px;
        align-items:start;
        column-gap:0
    }
    .nav-item {
        display:block
    }
    .nav-inner>a,.nav-item>.nav-link {
        min-height:46px;
        padding:12px;
        font-size:13px
    }
    .nav-dropdown {
        position:static;
        min-width:0;
        padding:0 8px 8px;
        border:0;
        border-radius:0;
        box-shadow:none;
        opacity:1;
        visibility:visible;
        transform:none;
        display:block;
        background:transparent
    }
    .nav-dropdown a {
        padding:8px 12px!important;
        font-size:12px!important
    }
    .nav-arrow {
        display:none
    }
    .hero-swiper {
        height:520px
    }
    .hero h1 {
        font-size:49px
    }
    .products-grid,.categories-grid,.services-grid {
        grid-template-columns:repeat(2,1fr)
    }
    .quick-grid {
        grid-template-columns:repeat(2,1fr)
    }
    .quick-item:nth-child(2) {
        border-right:0
    }
    .split,.contact-grid,.product-detail {
        grid-template-columns:1fr
    }
    .industrial-art {
        order:-1
    }
    .testimonials-grid,.media-grid {
        grid-template-columns:repeat(2,1fr)
    }
    .footer-grid {
        grid-template-columns:repeat(2,1fr);
        gap:30px
    }
}

@media(max-width:700px) {
    .container {
        width:min(100% - 30px,1220px)
    }
    .hide-sm {
        display:none
    }
    .topbar-inner {
        min-height:38px
    }
    .topbar-left {
        display:none
    }
    .topbar-right {
        width:100%;
        justify-content:center
    }
    .header-main {
        gap:10px
    }
    .brand img {
        width:190px
    }
    .quote-btn {
        display:none
    }
    .nav-inner {
        grid-template-columns:1fr 1fr
    }
    .hero-swiper {
        height:670px
    }
    .hero-grid {
        grid-template-columns:1fr;
        padding:52px 0
    }
    .hero h1 {
        font-size:42px
    }
    .hero-stage {
        height:250px
    }
    .hero-orbit {
        width:240px;
        height:240px;
        right:6%
    }
    .hero-machine {
        width:240px;
        height:190px;
        right:18px
    }
    .hero-controller {
        width:90px;
        height:145px;
        right:35px
    }
    .hero-controller:before {
        font-size:8px
    }
    .swiper-button-next,.swiper-button-prev {
        display:none!important
    }
    .quick-grid,.products-grid,.categories-grid,.services-grid,.testimonials-grid,.media-grid,.footer-grid {
        grid-template-columns:1fr
    }
    .quick-item {
        border-right:0;
        border-bottom:1px solid var(--line)
    }
    .section {
        padding:58px 0
    }
    .section-head h2,.content-copy h2 {
        font-size:34px
    }
    .split {
        gap:30px
    }
    .industrial-art {
        height:300px
    }
    .stats {
        gap:24px;
        flex-wrap:wrap
    }
    .form-grid {
        grid-template-columns:1fr
    }
    .form-grid .full {
        grid-column:auto
    }
    .page-hero {
        padding:58px 0
    }
    .page-hero h1,.product-info h1 {
        font-size:39px
    }
    .product-detail .product-visual {
        height:330px
    }
    .footer-bottom {
        gap:8px;
        flex-direction:column;
        padding:14px 0
    }
    .footer-separator {
        display:none
    }
    .footer-newsletter-wrap {
        grid-column:1/-1;
        max-width:480px
    }
    .footer-address span {
        font-size:11px
    }
    .contact-widget {
        right:12px
    }
    .floating-back-top {
        right:16px
    }
}

@media(max-width:480px) {
    .contact-widget-panel {
        width:min(310px,calc(100vw - 28px));
        right:0
    }
    .contact-widget {
        bottom:16px
    }
    .floating-back-top {
        bottom:78px
    }
}

/* ===== PROCESS Instruments commercial homepage ===== */ .home-hero .hero-swiper {
    height:540px
}

.home-hero .hero-slide:before {
    background:linear-gradient(102deg,#f7f7f5 0 58%,#eceeeb 58% 100%)
}

.home-hero .hero-copy {
    max-width:690px
}

.home-hero .hero h1 {
    font-size:56px;
    letter-spacing:-2.2px;
    line-height:1.04
}

.home-hero .hero p {
    font-size:14px;
    max-width:620px
}

.home-hero .hero-stage {
    height:380px
}

.home-hero .hero-machine {
    right:35px;
    bottom:37px;
    width:310px;
    height:230px;
    border-radius:14px;
    background:linear-gradient(150deg,#34383a,#17191b);
    transform:none
}

.home-hero .hero-machine:before {
    left:54px;
    top:38px;
    width:202px;
    height:64px;
    border-radius:6px;
    background:#e7e9e7;
    box-shadow:inset 0 0 0 8px #757c7e
}

.home-hero .hero-controller {
    right:92px;
    bottom:65px;
    width:118px;
    height:150px;
    border-radius:5px;
    border:6px solid #2e3234
}

.hero-spec-card {
    position:absolute;
    z-index:3;
    width:145px;
    padding:12px 13px;
    border:1px solid #dfe1df;
    background:rgba(255,255,255,.92);
    box-shadow:0 12px 30px rgba(19,21,23,.08);
    border-radius:8px
}

.hero-spec-card span {
    display:block;
    color:var(--orange);
    font-size:9px;
    font-weight:800;
    letter-spacing:1.1px
}

.hero-spec-card strong {
    display:block;
    font-size:11px;
    margin-top:4px
}

.hero-spec-card-a {
    top:28px;
    right:70px
}

.hero-spec-card-b {
    top:142px;
    right:344px
}

.hero-spec-card-c {
    bottom:10px;
    right:270px
}

.home-proof-strip {
    position:relative;
    background:#fff;
    border-top:1px solid #eceeed;
    border-bottom:1px solid var(--line)
}

.home-proof-grid {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    padding:0
}

.home-proof-item {
    position:relative;
    min-height:112px;
    padding:21px 24px 20px 26px;
    border-right:1px solid var(--line);
    display:flex;
    flex-direction:column;
    justify-content:center
}

.home-proof-item:last-child {
    border-right:0
}

.home-proof-item:before {
    content:"";
    position:absolute;
    left:26px;
    top:0;
    width:38px;
    height:2px;
    background:var(--orange)
}

.home-proof-label {
    display:block!important;
    margin:0 0 7px!important;
    color:var(--orange)!important;
    font-size:8.5px!important;
    font-weight:800;
    line-height:1.2;
    letter-spacing:1.25px;
    text-transform:uppercase
}

.home-proof-grid strong {
    display:block;
    font-size:18px;
    line-height:1.2;
    letter-spacing:-.35px;
    color:var(--ink)
}

.home-proof-copy {
    display:block!important;
    color:var(--muted)!important;
    font-size:10px!important;
    line-height:1.45;
    margin:5px 0 0!important
}

.home-proof-item:hover {
    background:#fafaf8
}

.section-intro-row {
    display:grid;
    grid-template-columns:1fr 420px;
    gap:50px;
    align-items:end;
    margin-bottom:34px
}

.section-intro-row h2,.faq-column>h2,.quote-panel-head h2,.testimonial-ready h2 {
    font-size:36px;
    line-height:1.13;
    letter-spacing:-1.2px;
    margin:8px 0 0
}

.section-intro-row>p {
    font-size:12.5px;
    line-height:1.75;
    color:var(--text);
    margin:0
}

.industry-grid {
    display:grid;
    grid-template-columns:repeat(4,1fr);
    border-top:1px solid var(--line);
    border-left:1px solid var(--line)
}

.industry-card {
    min-height:330px;
    padding:0;
    border-right:1px solid var(--line);
    border-bottom:1px solid var(--line);
    background:#fff;
    overflow:hidden
}

.industry-image {
    height:130px;
    overflow:hidden;
    background:#eceeeb
}

.industry-image img {
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
    filter:saturate(.72);
    transition:transform .45s ease,filter .3s ease
}

.industry-card:hover .industry-image img {
    transform:scale(1.035);
    filter:saturate(.9)
}

.industry-card-body {
    padding:21px 22px
}

.industry-code {
    font-size:11px;
    font-weight:800;
    color:var(--orange);
    letter-spacing:1px
}

.industry-card h3 {
    font-size:15.5px;
    margin:18px 0 8px
}

.industry-card p {
    font-size:11px;
    line-height:1.6;
    color:var(--muted);
    min-height:52px
}

.industry-card a {
    font-size:10.5px;
    font-weight:800;
    text-decoration:none
}

.industry-card a span {
    color:var(--orange)
}

.industry-card:hover {
    background:#fafaf8
}

.home-products-grid .product-card {
    border-radius:10px;
    box-shadow:none
}

.home-products-grid .product-visual {
    height:190px
}

.product-actions {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    margin-top:16px;
    padding-top:14px;
    border-top:1px solid var(--line)
}

.product-actions a {
    text-decoration:none;
    font-size:10.5px;
    font-weight:800
}

.product-detail-link {
    color:var(--text)
}

.product-quote-link {
    padding:8px 10px;
    border-radius:7px;
    background:var(--orange);
    color:#fff!important
}

.product-quote-link:hover {
    background:var(--orange-dark)
}

.section-actions {
    display:flex;
    justify-content:center;
    align-items:center;
    gap:20px;
    margin-top:30px
}

.text-link {
    font-size:11px;
    font-weight:800;
    text-decoration:none
}

.brand-band {
    padding:24px 0;
    background:#1b1d1f;
    color:#fff
}

.brand-band-label {
    font-size:9px;
    letter-spacing:1.3px;
    text-transform:uppercase;
    color:#777d81;
    margin-bottom:14px
}

.brand-list {
    display:flex;
    gap:9px;
    flex-wrap:wrap
}

.brand-list span {
    border:1px solid #34383c;
    border-radius:6px;
    padding:8px 11px;
    color:#d0d3d5;
    font-size:10px;
    font-weight:700
}

.clients-section {
    padding-bottom:62px
}

.section-head.compact {
    margin-bottom:28px
}

.client-marquee {
    overflow:hidden;
    border-top:1px solid var(--line);
    border-bottom:1px solid var(--line);
    background:#fafafa
}

.client-track {
    display:flex;
    width:max-content;
    animation:clientMarquee 28s linear infinite
}

.client-slot {
    width:190px;
    height:92px;
    display:grid;
    place-content:center;
    text-align:center;
    border-right:1px solid var(--line);
    background:#fff
}

.client-slot span {
    font-size:8px;
    color:#b0b4b7;
    letter-spacing:1.5px
}

.client-slot strong {
    font-size:12px;
    color:#8d9295;
    margin-top:4px
}

.client-marquee:hover .client-track {
    animation-play-state:paused
}

@keyframes clientMarquee {
    to {
        transform:translateX(-50%)
    }
}

.solution-grid {
    display:grid;
    grid-template-columns:1fr 1fr;
    border-top:1px solid var(--line)
}

.solution-row {
    display:grid;
    grid-template-columns:50px 1fr;
    gap:15px;
    padding:25px 20px 25px 0;
    border-bottom:1px solid var(--line)
}

.solution-row:nth-child(odd) {
    border-right:1px solid var(--line);
    padding-right:30px
}

.solution-row:nth-child(even) {
    padding-left:30px
}

.solution-num {
    font-size:10px;
    color:var(--orange);
    font-weight:800;
    padding-top:2px
}

.solution-row h3 {
    font-size:15px;
    margin:0 0 7px
}

.solution-row p {
    font-size:11.5px;
    line-height:1.65;
    color:var(--muted);
    margin:0
}

.service-process {
    display:grid;
    grid-template-columns:repeat(4,1fr);
    margin-top:34px;
    background:#fff;
    border:1px solid var(--line)
}

.service-process-step {
    padding:22px;
    display:flex;
    gap:12px;
    border-right:1px solid var(--line)
}

.service-process-step:last-child {
    border-right:0
}

.service-process-step>span {
    color:var(--orange);
    font-size:10px;
    font-weight:800
}

.service-process-step strong {
    display:block;
    font-size:11.5px
}

.service-process-step p {
    font-size:10.5px;
    line-height:1.55;
    color:var(--muted);
    margin:6px 0 0
}

.home-about-grid {
    display:grid;
    grid-template-columns:.9fr 1.1fr;
    gap:70px;
    align-items:center
}

.about-panel {
    min-height:400px;
    background:#1d2022;
    color:#fff;
    padding:44px;
    display:flex;
    flex-direction:column;
    justify-content:center
}

.about-panel span {
    font-size:10px;
    text-transform:uppercase;
    letter-spacing:1.2px;
    color:#8e9498
}

.about-panel strong {
    display:block;
    font-size:58px;
    letter-spacing:-3px;
    margin-top:4px
}

.about-year strong {
    color:#fff
}

.about-legacy {
    margin-top:28px
}

.about-legacy strong {
    color:var(--orange)
}

.about-line {
    height:1px;
    background:#34383c;
    margin:28px 0
}

.about-panel p {
    font-size:10.5px;
    line-height:1.7;
    color:#aeb3b7;
    max-width:300px
}

.home-about .content-copy h2 {
    font-size:38px;
    line-height:1.12;
    letter-spacing:-1.2px
}

.home-about .content-copy p {
    font-size:12.5px
}

.about-actions {
    display:flex;
    align-items:center;
    gap:18px;
    margin-top:24px
}

.testimonial-ready-section {
    padding-top:24px;
    padding-bottom:24px
}

.testimonial-ready {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:70px;
    align-items:center;
    border-top:1px solid var(--line);
    border-bottom:1px solid var(--line);
    padding-top:32px;
    padding-bottom:32px
}

.testimonial-ready h2 {
    font-size:26px
}

.testimonial-ready>p {
    color:var(--muted);
    font-size:11.5px;
    line-height:1.7;
    margin:0
}

.blog-grid {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:18px
}

.blog-card {
    min-height:235px;
    padding:26px;
    background:#fff;
    border:1px solid var(--line);
    border-radius:10px
}

.blog-category {
    font-size:9px;
    letter-spacing:1px;
    text-transform:uppercase;
    color:var(--orange);
    font-weight:800
}

.blog-card h3 {
    font-size:17px;
    line-height:1.35;
    margin:26px 0 10px
}

.blog-card p {
    font-size:11.5px;
    line-height:1.65;
    color:var(--muted)
}

.blog-status {
    display:block;
    margin-top:24px;
    font-size:9.5px;
    color:#9a9fa2
}

.faq-quote-section {
    background:#fff
}

.faq-quote-grid {
    display:grid;
    grid-template-columns:.92fr 1.08fr;
    gap:65px;
    align-items:start
}

.faq-column>h2 {
    margin-bottom:25px
}

.faq-list {
    border-top:1px solid var(--line)
}

.faq-item {
    border-bottom:1px solid var(--line)
}

.faq-item summary {
    list-style:none;
    cursor:pointer;
    padding:17px 0;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    font-size:12px;
    font-weight:700
}

.faq-item summary::-webkit-details-marker {
    display:none
}

.faq-item summary b {
    font-size:17px;
    font-weight:400;
    color:var(--orange);
    transition:transform .2s
}

.faq-item[open] summary b {
    transform:rotate(45deg)
}

.faq-item p {
    font-size:11.5px;
    line-height:1.7;
    color:var(--muted);
    margin:0;
    padding:0 35px 18px 0
}

.quote-panel {
    background:#f6f6f4;
    border:1px solid #ececea;
    padding:32px;
    border-radius:12px
}

.quote-panel-head h2 {
    font-size:30px
}

.quote-panel-head p {
    font-size:11.5px;
    line-height:1.65;
    color:var(--muted);
    margin:10px 0 24px
}

.quote-form-grid {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:13px
}

.quote-form-grid label {
    display:block
}

.quote-form-grid label>span {
    display:block;
    font-size:9.5px;
    font-weight:800;
    margin-bottom:6px;
    color:#555a5e
}

.quote-form-grid .full {
    grid-column:1/-1
}

.quote-form .form-control {
    background:#fff;
    border-radius:7px;
    min-height:43px;
    font-size:11.5px
}

.quote-form .textarea {
    min-height:110px
}

.quote-consent {
    display:flex!important;
    align-items:flex-start;
    gap:8px
}

.quote-consent input {
    margin-top:2px
}

.quote-consent span {
    font-weight:500!important;
    color:var(--muted)!important;
    line-height:1.5
}

.quote-submit-row {
    display:flex;
    align-items:center;
    gap:14px
}

.quote-submit-row>span {
    font-size:9.5px!important;
    color:var(--muted)!important;
    margin:0!important
}

.quote-submit-row a {
    font-weight:800;
    color:var(--ink)
}

@media(max-width:1024px) {
    .home-hero .hero h1 {
        font-size:46px
    }
    .home-proof-grid {
        grid-template-columns:repeat(2,1fr)
    }
    .section-intro-row {
        grid-template-columns:1fr;
        gap:14px
    }
    .section-intro-row>p {
        max-width:680px
    }
    .industry-grid {
        grid-template-columns:repeat(2,1fr)
    }
    .solution-grid {
        grid-template-columns:1fr
    }
    .solution-row:nth-child(odd) {
        border-right:0;
        padding-right:0
    }
    .solution-row:nth-child(even) {
        padding-left:0
    }
    .service-process {
        grid-template-columns:repeat(2,1fr)
    }
    .service-process-step:nth-child(2) {
        border-right:0
    }
    .service-process-step:nth-child(-n+2) {
        border-bottom:1px solid var(--line)
    }
    .home-about-grid,.faq-quote-grid {
        grid-template-columns:1fr;
        gap:38px
    }
    .about-panel {
        min-height:330px
    }
    .blog-grid {
        grid-template-columns:1fr 1fr
    }
    .testimonial-ready {
        grid-template-columns:1fr;
        gap:15px
    }
}

@media(max-width:700px) {
    .home-hero .hero-swiper {
        height:690px
    }
    .home-hero .hero h1 {
        font-size:38px;
        letter-spacing:-1.3px
    }
    .home-hero .hero-stage {
        height:240px
    }
    .hero-spec-card {
        display:none
    }
    .home-hero .hero-machine {
        width:220px;
        height:165px;
        right:20px
    }
    .home-hero .hero-controller {
        width:86px;
        height:112px;
        right:55px;
        bottom:52px
    }
    .home-proof-grid {
        grid-template-columns:1fr 1fr
    }
    .home-proof-grid>div {
        padding:16px 12px
    }
    .industry-grid {
        grid-template-columns:1fr
    }
    .industry-card {
        min-height:auto
    }
    .section-intro-row h2,.faq-column>h2 {
        font-size:30px
    }
    .home-products-grid {
        grid-template-columns:1fr
    }
    .section-actions {
        flex-direction:column
    }
    .brand-list {
        flex-wrap:nowrap;
        overflow-x:auto;
        padding-bottom:5px
    }
    .brand-list span {
        white-space:nowrap
    }
    .client-slot {
        width:150px;
        height:78px
    }
    .service-process {
        grid-template-columns:1fr
    }
    .service-process-step {
        border-right:0;
        border-bottom:1px solid var(--line)!important
    }
    .service-process-step:last-child {
        border-bottom:0!important
    }
    .home-about-grid {
        gap:26px
    }
    .about-panel {
        min-height:300px;
        padding:30px
    }
    .about-panel strong {
        font-size:48px
    }
    .home-about .content-copy h2 {
        font-size:31px
    }
    .testimonial-ready {
        padding-top:24px;
        padding-bottom:24px
    }
    .blog-grid {
        grid-template-columns:1fr
    }
    .quote-panel {
        padding:22px
    }
    .quote-form-grid {
        grid-template-columns:1fr
    }
    .quote-form-grid .full {
        grid-column:auto
    }
    .quote-submit-row {
        align-items:flex-start;
        flex-direction:column
    }
    .faq-quote-grid {
        gap:30px
    }
}

.footer-newsletter-note {
    font-size:9px;
    margin-top:7px
}

.footer-newsletter-note.success {
    color:#9fd4aa
}

.footer-newsletter-note.error {
    color:#efaaa0
}

/* ===== Our Clients: two-row premium continuous logo marquee ===== */ .clients-section {
    padding:72px 0 68px;
    background:#fff;
    overflow:hidden
}

.clients-section .section-head.compact {
    max-width:760px;
    margin-bottom:34px
}

.clients-section .section-head.compact p {
    max-width:610px;
    margin-left:auto;
    margin-right:auto
}

.clients-marquee-wrap {
    display:grid;
    gap:12px;
    overflow:hidden;
    position:relative
}

.clients-marquee-wrap:before,.clients-marquee-wrap:after {
    content:"";
    position:absolute;
    top:0;
    bottom:0;
    width:min(9vw,120px);
    z-index:4;
    pointer-events:none
}

.clients-marquee-wrap:before {
    left:0;
    background:linear-gradient(90deg,#fff 0%,rgba(255,255,255,.94) 24%,rgba(255,255,255,0) 100%)
}

.clients-marquee-wrap:after {
    right:0;
    background:linear-gradient(270deg,#fff 0%,rgba(255,255,255,.94) 24%,rgba(255,255,255,0) 100%)
}

.client-marquee {
    width:100%;
    overflow:hidden;
    border-top:1px solid #eceeed;
    border-bottom:1px solid #eceeed;
    background:#fbfbfa
}

.client-track {
    display:flex;
    width:max-content;
    animation:clientMarqueeForward 48s linear infinite;
    will-change:transform
}

.client-marquee-reverse .client-track {
    animation-name:clientMarqueeReverse;
    animation-duration:54s
}

.client-sequence {
    display:flex;
    flex:none
}

.client-logo-item {
    width:210px;
    height:108px;
    display:flex;
    align-items:center;
    justify-content:center;
    flex:none;
    padding:18px 26px;
    border-right:1px solid #eceeed;
    background:#fff
}

.client-logo-item img {
    display:block;
    width:100%;
    height:100%;
    object-fit:contain;
    object-position:center;
    filter:saturate(.96);
    opacity:.9;
    transition:transform .3s ease,opacity .3s ease,filter .3s ease
}

.client-logo-item:hover img {
    transform:scale(1.045);
    opacity:1;
    filter:saturate(1)
}

.clients-marquee-wrap:hover .client-track {
    animation-play-state:paused
}

@keyframes clientMarqueeForward {
    from {
        transform:translate3d(0,0,0)
    }
    to {
        transform:translate3d(-50%,0,0)
    }
}

@keyframes clientMarqueeReverse {
    from {
        transform:translate3d(-50%,0,0)
    }
    to {
        transform:translate3d(0,0,0)
    }
}

@media(max-width:1024px) {
    .client-logo-item {
        width:180px;
        height:96px;
        padding:16px 22px
    }
    .client-track {
        animation-duration:43s
    }
    .client-marquee-reverse .client-track {
        animation-duration:49s
    }
}

@media(max-width:700px) {
    .clients-section {
        padding:58px 0 54px
    }
    .clients-marquee-wrap {
        gap:9px
    }
    .clients-marquee-wrap:before,.clients-marquee-wrap:after {
        width:34px
    }
    .client-logo-item {
        width:150px;
        height:82px;
        padding:13px 18px
    }
    .client-track {
        animation-duration:38s
    }
    .client-marquee-reverse .client-track {
        animation-duration:43s
    }
}

@media(prefers-reduced-motion:reduce) {
    .clients-marquee-wrap {
        overflow-x:auto
    }
    .client-track,.client-marquee-reverse .client-track {
        animation:none!important
    }
    .client-sequence[aria-hidden="true"] {
        display:none
    }
}

/* ===== Authorized Partnerships / Certificates ===== */ .home-certifications {
    border-top:1px solid var(--line)
}

.certificate-grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:18px
}

.certificate-card {
    display:block;
    background:#fff;
    border:1px solid var(--line);
    border-radius:12px;
    overflow:hidden;
    text-decoration:none;
    box-shadow:0 8px 26px rgba(19,21,23,.035);
    transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease
}

.certificate-card:hover {
    transform:translateY(-4px);
    box-shadow:0 18px 42px rgba(19,21,23,.09);
    border-color:#d9dbdc
}

.certificate-preview {
    height:210px;
    padding:16px;
    background:#f4f5f3;
    border-bottom:1px solid var(--line);
    display:flex;
    align-items:center;
    justify-content:center;
    overflow:hidden
}

.certificate-preview img {
    display:block;
    width:100%;
    height:100%;
    object-fit:contain;
    object-position:center;
    transition:transform .35s ease
}

.certificate-card:hover .certificate-preview img {
    transform:scale(1.018)
}

.certificate-card-body {
    padding:20px
}

.certificate-brand {
    font-size:9.5px;
    font-weight:800;
    letter-spacing:1.15px;
    text-transform:uppercase;
    color:var(--orange)
}

.certificate-card h3 {
    font-size:16px;
    line-height:1.35;
    margin:8px 0 7px;
    color:var(--ink)
}

.certificate-card p {
    font-size:11px;
    line-height:1.6;
    color:var(--muted);
    margin:0;
    min-height:35px
}

.certificate-meta {
    margin-top:17px;
    padding-top:14px;
    border-top:1px solid var(--line);
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px
}

.certificate-meta span {
    font-size:9.5px;
    color:#8c9195
}

.certificate-meta strong {
    font-size:9.5px;
    color:var(--ink)
}

.certificate-card:hover .certificate-meta strong {
    color:var(--orange)
}

.certificate-grid-home .certificate-preview {
    height:185px
}

/* ===== About Us commercial layout ===== */ .about-story-grid {
    display:grid;
    grid-template-columns:.88fr 1.12fr;
    gap:70px;
    align-items:center
}

.about-story-panel {
    min-height:420px;
    padding:46px;
    background:#1d2022;
    color:#fff;
    display:flex;
    flex-direction:column;
    justify-content:center
}

.about-story-number span {
    display:block;
    font-size:9.5px;
    text-transform:uppercase;
    letter-spacing:1.25px;
    color:#969ca0
}

.about-story-number strong {
    display:block;
    font-size:62px;
    line-height:1;
    letter-spacing:-3px;
    margin-top:7px
}

.about-story-number:first-child strong {
    color:var(--orange)
}

.about-story-divider {
    height:1px;
    background:#34383c;
    margin:30px 0
}

.about-story-panel p {
    font-size:10.5px;
    line-height:1.7;
    color:#aeb3b7;
    max-width:330px;
    margin:30px 0 0
}

.about-capability-grid {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    border-top:1px solid var(--line);
    border-left:1px solid var(--line)
}

.about-capability {
    background:#fff;
    padding:28px 24px;
    border-right:1px solid var(--line);
    border-bottom:1px solid var(--line);
    min-height:220px
}

.about-capability>span {
    font-size:10px;
    color:var(--orange);
    font-weight:800
}

.about-capability h3 {
    font-size:15px;
    line-height:1.35;
    margin:28px 0 9px
}

.about-capability p {
    font-size:11px;
    line-height:1.65;
    color:var(--muted);
    margin:0
}

.about-proof-section {
    padding-top:28px;
    padding-bottom:28px
}

.about-proof-grid {
    display:grid;
    grid-template-columns:repeat(4,1fr);
    border:1px solid var(--line);
    background:#fff
}

.about-proof-grid>div {
    padding:24px;
    border-right:1px solid var(--line)
}

.about-proof-grid>div:last-child {
    border-right:0
}

.about-proof-grid strong {
    display:block;
    font-size:16px
}

.about-proof-grid span {
    display:block;
    font-size:10.5px;
    color:var(--muted);
    margin-top:4px
}

@media(max-width:1024px) {
    .certificate-grid {
        grid-template-columns:repeat(2,minmax(0,1fr))
    }
    .about-story-grid {
        grid-template-columns:1fr;
        gap:36px
    }
    .about-story-panel {
        min-height:330px
    }
    .about-capability-grid {
        grid-template-columns:repeat(2,minmax(0,1fr))
    }
    .about-proof-grid {
        grid-template-columns:repeat(2,1fr)
    }
    .about-proof-grid>div:nth-child(2) {
        border-right:0
    }
    .about-proof-grid>div:nth-child(-n+2) {
        border-bottom:1px solid var(--line)
    }
}

@media(max-width:700px) {
    .certificate-grid {
        grid-template-columns:1fr
    }
    .certificate-preview,.certificate-grid-home .certificate-preview {
        height:220px
    }
    .certificate-card p {
        min-height:0
    }
    .about-story-panel {
        min-height:300px;
        padding:30px
    }
    .about-story-number strong {
        font-size:50px
    }
    .about-capability-grid {
        grid-template-columns:1fr
    }
    .about-capability {
        min-height:auto
    }
    .about-proof-grid {
        grid-template-columns:1fr
    }
    .about-proof-grid>div {
        border-right:0!important;
        border-bottom:1px solid var(--line)
    }
    .about-proof-grid>div:last-child {
        border-bottom:0
    }
    .certificate-meta {
        align-items:flex-start;
        flex-direction:column;
        gap:5px
    }
}

/* ===== Certificate preview fix =====
   Append this at the END of assets/css/main.css
*/ .certificate-preview {
    height:210px;
    padding:0!important;
    background:#f3f4f2;
    overflow:hidden;
}

.certificate-preview img {
    width:100%;
    height:100%;
    object-fit:cover!important;
    object-position:center;
    display:block;
}

.certificate-grid-home .certificate-preview {
    height:210px;
}

@media(max-width:700px) {
    .certificate-preview, .certificate-grid-home .certificate-preview {
        height:220px;
    }
}

/* ===== Our Associates: premium static brand showcase ===== */ .associates-section {
    background:#fff;
    border-top:1px solid var(--line);
    border-bottom:1px solid var(--line);
    overflow:hidden;
}

.associates-intro {
    display:grid;
    grid-template-columns:minmax(0,1fr) 430px;
    gap:60px;
    align-items:end;
    margin-bottom:38px;
}

.associates-intro h2 {
    max-width:680px;
    margin:8px 0 0;
    font-size:38px;
    line-height:1.1;
    letter-spacing:-1.35px;
}

.associates-intro-copy p {
    margin:0 0 13px;
    max-width:430px;
    color:var(--text);
    font-size:12.5px;
    line-height:1.75;
}

.associates-grid {
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
    border-top:1px solid var(--line);
    border-left:1px solid var(--line);
    background:#fff;
}

.associate-logo-card {
    position:relative;
    flex:0 0 16.666666%;
    min-width:0;
    height:154px;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:25px 22px 32px;
    border-right:1px solid var(--line);
    border-bottom:1px solid var(--line);
    background:#fff;
    overflow:hidden;
    transition:background .25s ease;
}

.associate-logo-card:before {
    content:"";
    position:absolute;
    left:0;
    right:0;
    bottom:0;
    height:2px;
    background:var(--orange);
    transform:scaleX(0);
    transform-origin:center;
    transition:transform .25s ease;
}

.associate-logo-card img {
    display:block;
    width:100%;
    height:78px;
    object-fit:contain;
    object-position:center;
    filter:saturate(.94);
    opacity:.9;
    transition:transform .28s ease,opacity .28s ease,filter .28s ease;
}

.associate-logo-card span {
    position:absolute;
    left:14px;
    right:14px;
    bottom:10px;
    text-align:center;
    color:#979c9f;
    font-size:8px;
    line-height:1.2;
    font-weight:700;
    letter-spacing:.7px;
    text-transform:uppercase;
    opacity:0;
    transform:translateY(4px);
    transition:opacity .22s ease,transform .22s ease;
}

.associate-logo-card:hover {
    background:#fafaf8;
}

.associate-logo-card:hover:before {
    transform:scaleX(1);
}

.associate-logo-card:hover img {
    transform:translateY(-3px) scale(1.035);
    opacity:1;
    filter:saturate(1);
}

.associate-logo-card:hover span {
    opacity:1;
    transform:translateY(0);
}

@media(max-width:1024px) {
    .associates-intro {
        grid-template-columns:1fr;
        gap:14px;
    }
    .associates-intro-copy p {
        max-width:680px;
    }
    .associate-logo-card {
        flex-basis:25%;
        height:145px;
    }
}

@media(max-width:700px) {
    .associates-intro {
        margin-bottom:28px;
    }
    .associates-intro h2 {
        font-size:30px;
        letter-spacing:-.8px;
    }
    .associate-logo-card {
        flex-basis:50%;
        height:125px;
        padding:20px 18px 27px;
    }
    .associate-logo-card img {
        height:62px;
    }
    .associate-logo-card span {
        opacity:1;
        transform:none;
        font-size:7.5px;
    }
}

/* ===== Associates row alignment fix ===== */ @media (min-width:1025px) {
    .associates-grid {
        display:grid;
        grid-template-columns:repeat(30,minmax(0,1fr));
        justify-content:stretch;
    }
    .associate-logo-card {
        flex:none;
        width:auto;
        grid-column:span 5;
    }
    .associate-logo-card:nth-child(n+7) {
        grid-column:span 6;
    }
}

@media (min-width:701px) and (max-width:1024px) {
    .associates-grid {
        display:grid;
        grid-template-columns:repeat(4,minmax(0,1fr));
    }
    .associate-logo-card {
        flex:none;
        width:auto;
    }
}

@media (max-width:700px) {
    .associates-grid {
        display:grid;
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
    .associate-logo-card {
        flex:none;
        width:auto;
    }
}

/* ===== Associates missing divider fix: Flowtronics / LAPP only ===== */ @media (min-width:1025px) {
    .associate-logo-card:nth-child(7) {
        border-right:1px solid var(--line) !important;
    }
    /* Draw the divider at the actual boundary between item 7 and item 8. */ .associate-logo-card:nth-child(8) {
        border-left:1px solid var(--line) !important;
    }
}

/* ===== Industries We Serve — editorial industrial redesign ===== */ .home-industries {
    background:#fff;
    overflow:hidden
}

.home-industries .section-intro-row {
    margin-bottom:38px
}

.industry-showcase {
    display:grid;
    grid-template-columns:repeat(12,minmax(0,1fr));
    gap:18px;
}

.industry-showcase-card {
    grid-column:span 3;
    min-width:0;
    background:#fff;
    border:1px solid var(--line);
    border-radius:14px;
    overflow:hidden;
    box-shadow:0 10px 32px rgba(19,21,23,.045);
    transition:transform .32s ease,box-shadow .32s ease,border-color .32s ease;
}

.industry-showcase-card:nth-child(n+5) {
    grid-column:span 4
}

.industry-showcase-card:hover {
    transform:translateY(-5px);
    border-color:#dddeda;
    box-shadow:0 20px 48px rgba(19,21,23,.09);
}

.industry-showcase-media {
    height:218px;
    position:relative;
    overflow:hidden;
    background:#eceeeb;
}

.industry-showcase-media:after {
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(180deg,rgba(12,14,15,.02) 40%,rgba(12,14,15,.52) 100%);
    pointer-events:none;
}

.industry-showcase-media img {
    width:100%;
    height:100%;
    display:block;
    object-fit:cover;
    transform:scale(1.002);
    filter:saturate(.88) contrast(1.02);
    transition:transform .55s cubic-bezier(.2,.7,.2,1),filter .35s ease;
}

.industry-showcase-card:hover .industry-showcase-media img {
    transform:scale(1.045);
    filter:saturate(1) contrast(1.03);
}

.industry-showcase-index {
    position:absolute;
    z-index:2;
    top:18px;
    left:18px;
    font-size:34px;
    line-height:1;
    letter-spacing:-1.5px;
    font-weight:800;
    color:#fff;
    text-shadow:0 2px 18px rgba(0,0,0,.2);
}

.industry-showcase-code {
    position:absolute;
    z-index:2;
    left:18px;
    bottom:16px;
    display:inline-flex;
    align-items:center;
    min-height:28px;
    padding:0 10px;
    border-radius:6px;
    background:var(--orange);
    color:#fff;
    font-size:9px;
    font-weight:800;
    letter-spacing:1.3px;
}

.industry-showcase-body {
    min-height:190px;
    display:flex;
    flex-direction:column;
    padding:22px 22px 20px;
}

.industry-showcase-body h3 {
    margin:0 0 9px;
    font-size:16px;
    line-height:1.35;
    letter-spacing:-.2px;
}

.industry-showcase-body p {
    margin:0;
    color:var(--muted);
    font-size:11px;
    line-height:1.65;
}

.industry-showcase-body a {
    display:inline-flex;
    align-items:center;
    gap:7px;
    width:max-content;
    margin-top:auto;
    padding-top:20px;
    color:var(--ink);
    text-decoration:none;
    font-size:10.5px;
    font-weight:800;
    transition:color .2s ease,gap .2s ease;
}

.industry-showcase-body a span {
    color:var(--orange);
    font-size:14px
}

.industry-showcase-body a:hover {
    color:var(--orange);
    gap:10px
}

@media(max-width:1024px) {
    .industry-showcase {
        grid-template-columns:repeat(2,minmax(0,1fr))
    }
    .industry-showcase-card, .industry-showcase-card:nth-child(n+5) {
        grid-column:auto
    }
    .industry-showcase-card:last-child {
        grid-column:1/-1
    }
    .industry-showcase-card:last-child .industry-showcase-media {
        height:270px
    }
}

@media(max-width:700px) {
    .home-industries .section-intro-row {
        margin-bottom:26px
    }
    .industry-showcase {
        grid-template-columns:1fr;
        gap:14px
    }
    .industry-showcase-card, .industry-showcase-card:nth-child(n+5), .industry-showcase-card:last-child {
        grid-column:auto
    }
    .industry-showcase-media, .industry-showcase-card:last-child .industry-showcase-media {
        height:210px
    }
    .industry-showcase-body {
        min-height:auto;
        padding:19px 18px 18px
    }
    .industry-showcase-body a {
        margin-top:18px;
        padding-top:0
    }
    .industry-showcase-index {
        font-size:30px;
        top:15px;
        left:15px
    }
    .industry-showcase-code {
        left:15px;
        bottom:14px
    }
}

/* ===== Homepage Featured Products — current-layout update ===== */ .home-products-section {
    background:#f7f7f5
}

.home-products-intro {
    align-items:end
}

.home-products-intro-copy {
    max-width:430px
}

.home-products-intro-copy p {
    margin:0 0 18px;
    color:var(--text);
    font-size:12px;
    line-height:1.7
}

.home-product-showcase {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:16px
}

.home-product-card {
    min-width:0;
    overflow:hidden;
    background:#fff;
    border:1px solid var(--line);
    border-radius:12px;
    box-shadow:0 10px 30px rgba(18,20,22,.045);
    transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease
}

.home-product-card:hover {
    transform:translateY(-4px);
    border-color:#dadbd8;
    box-shadow:0 18px 42px rgba(18,20,22,.08)
}

.home-product-media {
    position:relative;
    display:block;
    height:218px;
    padding:18px;
    overflow:hidden;
    background:#fff;
    border-bottom:1px solid var(--line)
}

.home-product-media:after {
    content:"";
    position:absolute;
    left:-15%;
    right:-15%;
    bottom:17px;
    height:46px;
    opacity:.65;
    background:repeating-linear-gradient(166deg,transparent 0 8px,rgba(244,122,0,.08) 8px 9px);
    pointer-events:none
}

.home-product-media img {
    position:relative;
    z-index:1;
    display:block;
    width:100%;
    height:100%;
    object-fit:contain;
    transition:transform .35s ease
}

.home-product-card:hover .home-product-media img {
    transform:scale(1.035)
}

.home-product-no {
    position:absolute;
    z-index:2;
    top:14px;
    right:15px;
    color:#d9dcde;
    font-size:27px;
    line-height:1;
    font-weight:800;
    letter-spacing:-1px
}

.home-product-tag {
    position:absolute;
    z-index:2;
    left:15px;
    top:15px;
    padding:5px 8px;
    border:1px solid rgba(244,122,0,.28);
    border-radius:999px;
    background:rgba(255,255,255,.92);
    color:var(--orange);
    font-size:8px;
    line-height:1;
    font-weight:800;
    letter-spacing:.8px;
    text-transform:uppercase
}

.home-product-body {
    display:flex;
    flex-direction:column;
    min-height:230px;
    padding:19px 18px 17px
}

.home-product-category {
    margin-bottom:7px;
    color:var(--orange);
    font-size:8.5px;
    font-weight:800;
    letter-spacing:1px;
    text-transform:uppercase
}

.home-product-body h3 {
    margin:0 0 8px;
    color:var(--ink);
    font-size:16px;
    line-height:1.32;
    letter-spacing:-.25px
}

.home-product-body p {
    margin:0;
    color:var(--muted);
    font-size:10.5px;
    line-height:1.62
}

.home-product-actions {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px;
    margin-top:auto;
    padding-top:18px
}

.home-product-actions a {
    min-height:38px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:6px;
    text-decoration:none;
    font-size:9.5px;
    font-weight:800;
    transition:all .2s ease
}

.home-product-actions .product-detail-link {
    border:1px solid #d9dcde;
    color:var(--ink);
    background:#fff;
    padding:0
}

.home-product-actions .product-detail-link:hover {
    border-color:var(--ink);
    background:var(--ink);
    color:#fff
}

.home-product-actions .product-quote-link {
    gap:6px;
    border:1px solid var(--orange);
    color:#fff!important;
    background:var(--orange);
    padding:0
}

.home-product-actions .product-quote-link span {
    font-size:13px
}

.home-product-actions .product-quote-link:hover {
    background:var(--orange-dark);
    border-color:var(--orange-dark)
}

@media(max-width:1100px) {
    .home-product-showcase {
        grid-template-columns:repeat(2,minmax(0,1fr))
    }
}

@media(max-width:700px) {
    .home-products-intro-copy {
        max-width:none
    }
    .home-product-showcase {
        grid-template-columns:1fr
    }
    .home-product-media {
        height:235px
    }
    .home-product-body {
        min-height:auto
    }
    .home-product-actions {
        margin-top:18px;
        padding-top:0
    }
}

/* Product image size correction — append at END of main.css */ .home-product-media {
    padding:8px!important;
}

.home-product-media img {
    width:100%!important;
    height:100%!important;
    object-fit:contain!important;
    object-position:center!important;
    transform:scale(1.08);
}

.home-product-card:hover .home-product-media img {
    transform:scale(1.12);
}

/* ===== Solutions & Services — B2B commercial layout FIX ===== */ .commercial-solutions {
    background:#f5f5f3;
    border-top:1px solid var(--line);
    border-bottom:1px solid var(--line);
}

.commercial-solutions .section-intro-row {
    margin-bottom:34px;
}

.commercial-solutions-layout {
    display:grid;
    grid-template-columns:minmax(0,1.65fr) minmax(340px,.78fr);
    gap:24px;
    align-items:start;
}

.commercial-capabilities, .commercial-support {
    min-width:0;
    background:#fff;
    border:1px solid var(--line);
}

.commercial-block-head {
    padding:22px 24px;
    border-bottom:1px solid var(--line);
    background:#fff;
}

.commercial-block-head>span {
    display:block;
    color:var(--ink);
    font-size:13px;
    line-height:1.4;
    font-weight:800;
}

.commercial-block-head p {
    margin:7px 0 0;
    max-width:620px;
    color:var(--muted);
    font-size:10.8px;
    line-height:1.65;
}

.commercial-capability-list {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
}

.commercial-capability {
    min-height:178px;
    padding:23px 24px;
    display:grid;
    grid-template-columns:32px minmax(0,1fr);
    grid-template-rows:1fr auto;
    column-gap:12px;
    background:#fff;
    border-bottom:1px solid var(--line);
}

.commercial-capability:nth-child(odd) {
    border-right:1px solid var(--line);
}

.commercial-capability:nth-last-child(-n+2) {
    border-bottom:0;
}

.commercial-capability-num {
    grid-row:1/3;
    padding-top:1px;
    color:var(--orange);
    font-size:9.5px;
    line-height:1.5;
    font-weight:800;
}

.commercial-capability-copy h3 {
    margin:0 0 8px;
    color:var(--ink);
    font-size:14px;
    line-height:1.4;
    letter-spacing:-.1px;
}

.commercial-capability-copy p {
    margin:0;
    color:var(--muted);
    font-size:10.6px;
    line-height:1.65;
}

.commercial-capability>a {
    align-self:end;
    width:max-content;
    margin-top:18px;
    color:var(--ink);
    font-size:9.8px;
    font-weight:800;
    text-decoration:none;
    transition:color .2s ease;
}

.commercial-capability>a span {
    margin-left:4px;
    color:var(--orange);
}

.commercial-capability>a:hover {
    color:var(--orange);
}

.commercial-support {
    position:relative;
}

.commercial-support-list {
    padding:0 24px;
}

.commercial-support-step {
    display:grid;
    grid-template-columns:30px minmax(0,1fr);
    gap:10px;
    padding:19px 0;
    border-bottom:1px solid var(--line);
}

.commercial-support-step>span {
    padding-top:2px;
    color:var(--orange);
    font-size:9.5px;
    font-weight:800;
}

.commercial-support-step strong {
    display:block;
    color:var(--ink);
    font-size:11.5px;
    line-height:1.45;
}

.commercial-support-step p {
    margin:5px 0 0;
    color:var(--muted);
    font-size:10.2px;
    line-height:1.6;
}

.commercial-support-cta {
    padding:21px 24px 23px;
    background:#fafaf8;
}

.commercial-support-cta p {
    margin:0 0 14px;
    color:var(--muted);
    font-size:10.3px;
    line-height:1.6;
}

.commercial-support-cta p strong {
    color:var(--ink);
    font-size:11.5px;
}

.commercial-support-cta .btn {
    min-height:39px;
    padding:0 16px;
    border-radius:7px;
    font-size:10.5px;
}

/* No fancy card lift/scale here — intentionally corporate/B2B. */ .commercial-capability, .commercial-support-step {
    transition:background .2s ease;
}

.commercial-capability:hover, .commercial-support-step:hover {
    background:#fafaf8;
}

@media(max-width:1024px) {
    .commercial-solutions-layout {
        grid-template-columns:1fr;
    }
    .commercial-support {
        display:grid;
        grid-template-columns:1fr 1fr;
    }
    .commercial-support>.commercial-block-head {
        grid-column:1/-1;
    }
    .commercial-support-list {
        border-right:1px solid var(--line);
    }
    .commercial-support-cta {
        display:flex;
        flex-direction:column;
        justify-content:center;
    }
}

@media(max-width:700px) {
    .commercial-solutions .section-intro-row {
        margin-bottom:26px;
    }
    .commercial-capability-list {
        grid-template-columns:1fr;
    }
    .commercial-capability {
        min-height:auto;
        padding:20px 18px;
    }
    .commercial-capability:nth-child(odd) {
        border-right:0;
    }
    .commercial-capability:nth-last-child(2) {
        border-bottom:1px solid var(--line);
    }
    .commercial-block-head {
        padding:19px 18px;
    }
    .commercial-support {
        display:block;
    }
    .commercial-support-list {
        padding:0 18px;
        border-right:0;
    }
    .commercial-support-cta {
        padding:19px 18px 21px;
    }
}

/* ===== Homepage About — commercial B2B layout ===== */ .home-about-commercial {
    background:#fff;
    padding:86px 0;
    border-top:1px solid var(--line);
    border-bottom:1px solid var(--line);
}

.home-about-shell {
    display:grid;
    grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);
    align-items:stretch;
    border:1px solid var(--line);
    background:#fff;
    min-height:540px;
}

.home-about-visual {
    position:relative;
    min-height:540px;
    overflow:hidden;
    background:#ececea;
    border-right:1px solid var(--line);
}

.home-about-visual img {
    width:100%;
    height:100%;
    display:block;
    object-fit:cover;
    object-position:center;
    transition:transform .55s ease;
}

.home-about-visual:hover img {
    transform:scale(1.018)
}

.home-about-visual:after {
    content:"";
    position:absolute;
    inset:auto 0 0;
    height:34%;
    background:linear-gradient(to top,rgba(18,20,22,.68),rgba(18,20,22,0));
    pointer-events:none;
}

.home-about-visual-label {
    position:absolute;
    z-index:2;
    left:28px;
    right:28px;
    bottom:25px;
    color:#fff;
}

.home-about-visual-label span {
    display:block;
    margin-bottom:5px;
    color:#ff9a36;
    font-size:10px;
    font-weight:800;
    letter-spacing:1.35px;
    text-transform:uppercase;
}

.home-about-visual-label strong {
    display:block;
    max-width:460px;
    font-size:12px;
    line-height:1.55;
    font-weight:700;
}

.home-about-content {
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding:48px 50px;
}

.home-about-content h2 {
    max-width:570px;
    margin:10px 0 18px;
    font-size:40px;
    line-height:1.08;
    letter-spacing:-1.35px;
}

.home-about-content>p {
    max-width:590px;
    margin:0 0 14px;
    color:var(--text);
    font-size:13px;
    line-height:1.78;
}

.home-about-content .home-about-lead {
    color:#34373a;
    font-size:14px;
}

.home-about-facts {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    margin:22px 0 0;
    border-top:1px solid var(--line);
    border-left:1px solid var(--line);
}

.home-about-fact {
    min-height:92px;
    padding:17px 18px;
    border-right:1px solid var(--line);
    border-bottom:1px solid var(--line);
}

.home-about-fact strong {
    display:block;
    margin-bottom:5px;
    color:var(--ink);
    font-size:19px;
    line-height:1.15;
    font-weight:800;
}

.home-about-fact:first-child strong, .home-about-fact:nth-child(2) strong {
    color:var(--orange)
}

.home-about-fact span {
    display:block;
    color:var(--muted);
    font-size:10.5px;
    line-height:1.5;
}

.home-about-actions {
    display:flex;
    align-items:center;
    gap:22px;
    margin-top:25px;
}

.home-about-actions .text-link {
    display:inline-flex;
    align-items:center;
    gap:6px;
    color:var(--ink);
    font-size:11.5px;
    font-weight:800;
    text-decoration:none;
}

.home-about-actions .text-link span {
    color:var(--orange);
    transition:transform .2s ease;
}

.home-about-actions .text-link:hover span {
    transform:translateX(3px)
}

@media(max-width:1024px) {
    .home-about-shell {
        grid-template-columns:1fr
    }
    .home-about-visual {
        min-height:460px;
        border-right:0;
        border-bottom:1px solid var(--line);
    }
    .home-about-content {
        padding:42px
    }
}

@media(max-width:700px) {
    .home-about-commercial {
        padding:58px 0
    }
    .home-about-shell {
        min-height:0
    }
    .home-about-visual {
        min-height:330px
    }
    .home-about-visual-label {
        left:20px;
        right:20px;
        bottom:18px
    }
    .home-about-content {
        padding:30px 24px
    }
    .home-about-content h2 {
        font-size:32px;
        letter-spacing:-.8px
    }
    .home-about-facts {
        grid-template-columns:1fr 1fr
    }
    .home-about-fact {
        padding:15px;
        min-height:86px
    }
    .home-about-actions {
        align-items:flex-start;
        flex-direction:column;
        gap:15px
    }
}

@media(max-width:480px) {
    .home-about-visual {
        min-height:275px
    }
    .home-about-facts {
        grid-template-columns:1fr
    }
}

/* ===== Homepage Customer Voice / Testimonials ===== */ .home-testimonials-section {
    background:#fff;
    border-top:1px solid var(--line);
    border-bottom:1px solid var(--line);
}

.home-testimonials-intro {
    align-items:end;
    margin-bottom:34px
}

.home-testimonials-grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    border-top:1px solid var(--line);
    border-left:1px solid var(--line);
}

.home-testimonial-card {
    min-height:330px;
    padding:28px 26px 24px;
    display:flex;
    flex-direction:column;
    background:#fff;
    border-right:1px solid var(--line);
    border-bottom:1px solid var(--line);
}

.home-testimonial-topline {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
}

.home-testimonial-industry {
    color:var(--orange);
    font-size:9px;
    line-height:1.3;
    font-weight:800;
    letter-spacing:1.15px;
    text-transform:uppercase;
}

.home-testimonial-no {
    color:#d8dbdd;
    font-size:20px;
    line-height:1;
    font-weight:800;
}

.home-testimonial-quote-mark {
    margin-top:24px;
    color:var(--orange);
    font-family:Georgia,serif;
    font-size:42px;
    line-height:.8;
}

.home-testimonial-card blockquote {
    margin:13px 0 0;
    color:#3d4144;
    font-size:13px;
    line-height:1.8;
    font-weight:500;
}

.home-testimonial-person {
    display:flex;
    align-items:center;
    gap:11px;
    margin-top:auto;
    padding-top:26px;
    border-top:1px solid var(--line);
}

.home-testimonial-avatar {
    width:36px;
    height:36px;
    flex:0 0 auto;
    display:grid;
    place-items:center;
    border-radius:50%;
    background:#f0f1ef;
    color:var(--ink);
    font-size:10px;
    font-weight:800;
}

.home-testimonial-person strong {
    display:block;
    color:var(--ink);
    font-size:11.5px;
    line-height:1.4;
}

.home-testimonial-person span {
    display:block;
    margin-top:3px;
    color:var(--muted);
    font-size:9.8px;
    line-height:1.45;
}

.home-testimonials-note {
    margin-top:18px;
    display:flex;
    align-items:flex-start;
    gap:10px;
    color:var(--muted);
}

.home-testimonials-note>span {
    padding:4px 7px;
    border:1px solid var(--line);
    border-radius:999px;
    color:#7b8084;
    font-size:8px;
    font-weight:800;
    letter-spacing:.7px;
    text-transform:uppercase;
}

.home-testimonials-note p {
    margin:2px 0 0;
    max-width:760px;
    font-size:9.5px;
    line-height:1.55;
}

@media(max-width:1024px) {
    .home-testimonials-grid {
        grid-template-columns:1fr 1fr
    }
    .home-testimonial-card:last-child {
        grid-column:1/-1
    }
}

@media(max-width:700px) {
    .home-testimonials-grid {
        grid-template-columns:1fr
    }
    .home-testimonial-card, .home-testimonial-card:last-child {
        grid-column:auto;
        min-height:0
    }
    .home-testimonials-note {
        flex-direction:column;
        gap:7px
    }
}

/* ===== Homepage Hero — product-led commercial redesign ===== */ .home-hero-products {
    background:#f5f5f3;
    border-bottom:1px solid var(--line);
}

.home-hero-products .hero-swiper {
    height:560px;
}

.home-hero-products .hero-slide {
    background:#f5f5f3;
}

.home-hero-products .hero-slide:before {
    content:"";
    position:absolute;
    inset:0;
    background: linear-gradient(100deg,#f7f7f5 0 54%,#eceeeb 54% 100%);
}

.hero-product-grid {
    position:relative;
    z-index:2;
    height:100%;
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(500px,.92fr);
    gap:54px;
    align-items:center;
}

.hero-product-copy {
    max-width:660px;
    padding:42px 0;
}

.hero-product-copy h1 {
    max-width:660px;
    margin:11px 0 18px;
    color:var(--ink);
    font-size:55px;
    line-height:1.025;
    letter-spacing:-2.2px;
}

.hero-product-copy>p {
    max-width:600px;
    margin:0;
    color:var(--text);
    font-size:14px;
    line-height:1.78;
}

.hero-product-copy .hero-actions {
    margin-top:27px;
}

.hero-product-proof {
    display:flex;
    flex-wrap:wrap;
    gap:9px 19px;
    margin-top:27px;
    padding-top:19px;
    border-top:1px solid #dedfdd;
}

.hero-product-proof span {
    position:relative;
    padding-left:12px;
    color:#73787c;
    font-size:9.5px;
    line-height:1.45;
    font-weight:650;
}

.hero-product-proof span:before {
    content:"";
    position:absolute;
    left:0;
    top:5px;
    width:4px;
    height:4px;
    border-radius:50%;
    background:var(--orange);
}

.hero-product-stage {
    position:relative;
    min-height:420px;
    display:grid;
    grid-template-columns:minmax(0,1fr) 175px;
    gap:12px;
    align-items:center;
}

.hero-product-main {
    position:relative;
    height:366px;
    display:flex;
    flex-direction:column;
    background:#fff;
    border:1px solid #dcdfdd;
    box-shadow:0 18px 42px rgba(19,21,23,.075);
    overflow:hidden;
}

.hero-product-main-head {
    min-height:48px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:15px;
    padding:0 17px;
    border-bottom:1px solid var(--line);
}

.hero-product-main-head span {
    color:var(--orange);
    font-size:9px;
    font-weight:800;
    letter-spacing:1px;
    text-transform:uppercase;
}

.hero-product-main-head small {
    color:#9a9fa2;
    font-size:8.5px;
    font-weight:700;
}

.hero-product-main-image {
    flex:1;
    min-height:0;
    padding:15px 20px 8px;
    display:flex;
    align-items:center;
    justify-content:center;
}

.hero-product-main-image img {
    display:block;
    width:100%;
    height:100%;
    object-fit:contain;
    object-position:center;
    transform:scale(1.07);
    transition:transform .5s ease;
}

.swiper-slide-active .hero-product-main-image img {
    transform:scale(1.11);
}

.hero-product-main-name {
    min-height:46px;
    padding:12px 17px;
    border-top:1px solid var(--line);
    color:var(--ink);
    font-size:12px;
    font-weight:800;
}

.hero-product-side-list {
    display:grid;
    gap:12px;
}

.hero-product-side {
    min-height:145px;
    padding:12px;
    background:rgba(255,255,255,.92);
    border:1px solid #dfe1df;
    display:flex;
    flex-direction:column;
}

.hero-product-side-image {
    height:84px;
    display:flex;
    align-items:center;
    justify-content:center;
    overflow:hidden;
}

.hero-product-side-image img {
    display:block;
    width:100%;
    height:100%;
    object-fit:contain;
}

.hero-product-side>div:last-child {
    margin-top:auto;
    padding-top:7px;
    border-top:1px solid #eceeeb;
}

.hero-product-side span {
    display:block;
    color:var(--orange);
    font-size:7.5px;
    line-height:1.2;
    font-weight:800;
    letter-spacing:.8px;
    text-transform:uppercase;
}

.hero-product-side strong {
    display:block;
    margin-top:3px;
    color:var(--ink);
    font-size:9px;
    line-height:1.35;
}

.hero-stage-caption {
    position:absolute;
    right:0;
    bottom:-2px;
    color:#8e9396;
    font-size:8px;
    line-height:1.4;
    font-weight:700;
    letter-spacing:.7px;
    text-transform:uppercase;
}

.home-hero-products .swiper-button-prev, .home-hero-products .swiper-button-next {
    width:44px!important;
    height:44px!important;
    background:#fff;
    border:1px solid #e5e6e4;
    box-shadow:0 8px 24px rgba(19,21,23,.07);
}

.home-hero-products .swiper-pagination {
    bottom:13px!important;
}

.home-hero-products .swiper-pagination-bullet {
    width:7px;
    height:7px;
}

.home-hero-products .swiper-pagination-bullet-active {
    width:20px;
    border-radius:999px;
}

@media(max-width:1100px) {
    .home-hero-products .hero-swiper {
        height:620px
    }
    .hero-product-grid {
        grid-template-columns:minmax(0,1fr) minmax(390px,.85fr);
        gap:32px;
    }
    .hero-product-copy h1 {
        font-size:47px
    }
    .hero-product-stage {
        grid-template-columns:1fr 135px;
        min-height:390px;
    }
    .hero-product-main {
        height:340px
    }
    .hero-product-side {
        min-height:132px
    }
}

@media(max-width:800px) {
    .home-hero-products .hero-swiper {
        height:820px
    }
    .home-hero-products .hero-slide:before {
        background:linear-gradient(180deg,#f7f7f5 0 53%,#eceeeb 53% 100%);
    }
    .hero-product-grid {
        grid-template-columns:1fr;
        gap:15px;
        padding-top:42px;
        padding-bottom:44px;
        align-content:center;
    }
    .hero-product-copy {
        padding:0;
    }
    .hero-product-copy h1 {
        max-width:640px;
        font-size:40px;
        letter-spacing:-1.35px;
    }
    .hero-product-proof {
        margin-top:20px;
        padding-top:15px;
    }
    .hero-product-stage {
        min-height:330px;
        grid-template-columns:1fr 150px;
    }
    .hero-product-main {
        height:320px
    }
}

@media(max-width:560px) {
    .home-hero-products .hero-swiper {
        height:900px
    }
    .hero-product-grid {
        width:min(100% - 30px,1220px);
        padding-top:34px;
        padding-bottom:48px;
    }
    .hero-product-copy h1 {
        font-size:35px;
        line-height:1.05;
    }
    .hero-product-copy>p {
        font-size:12.5px;
    }
    .hero-product-copy .hero-actions {
        display:grid;
        grid-template-columns:1fr 1fr;
        gap:8px;
    }
    .hero-product-copy .hero-actions .btn {
        padding:0 12px;
        font-size:11px;
    }
    .hero-product-proof {
        display:grid;
        grid-template-columns:1fr;
        gap:6px;
    }
    .hero-product-stage {
        grid-template-columns:1fr;
        min-height:auto;
    }
    .hero-product-main {
        height:285px;
    }
    .hero-product-side-list {
        grid-template-columns:1fr 1fr;
    }
    .hero-product-side {
        min-height:118px;
    }
    .hero-product-side-image {
        height:66px;
    }
    .hero-stage-caption {
        display:none
    }
}

/* ===== Refined homepage proof strip ===== */ @media(max-width:1024px) {
    .home-proof-grid {
        grid-template-columns:repeat(2,1fr)
    }
    .home-proof-item:nth-child(2) {
        border-right:0
    }
    .home-proof-item:nth-child(-n+2) {
        border-bottom:1px solid var(--line)
    }
}

@media(max-width:700px) {
    .home-proof-grid {
        grid-template-columns:1fr 1fr
    }
    .home-proof-item {
        min-height:96px;
        padding:18px 16px
    }
    .home-proof-item:before {
        left:16px;
        width:30px
    }
    .home-proof-grid strong {
        font-size:16px
    }
    .home-proof-label {
        font-size:8px!important
    }
    .home-proof-copy {
        font-size:9.5px!important
    }
}

@media(max-width:480px) {
    .home-proof-grid {
        grid-template-columns:1fr
    }
    .home-proof-item {
        border-right:0;
        border-bottom:1px solid var(--line)
    }
    .home-proof-item:last-child {
        border-bottom:0
    }
}

/* ===== Homepage Hero — editorial industrial redesign ===== */ .home-hero-editorial {
    position:relative;
    background:#f6f6f3;
    border-bottom:1px solid var(--line);
    overflow:hidden;
}

.home-hero-editorial .hero-swiper {
    height:575px
}

.home-hero-editorial .hero-slide {
    position:relative;
    background:#f6f6f3;
}

.home-hero-editorial .hero-slide:before {
    content:"";
    position:absolute;
    inset:0;
    background: linear-gradient(90deg,rgba(255,255,255,.76) 0 49%,rgba(236,238,235,.92) 49% 100%);
}

.home-hero-editorial .hero-slide:after {
    content:"";
    position:absolute;
    top:0;
    bottom:0;
    left:49%;
    width:1px;
    background:rgba(25,26,28,.07);
}

.hero-editorial-grid {
    position:relative;
    z-index:2;
    height:100%;
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(500px,.92fr);
    gap:60px;
    align-items:center;
}

.hero-editorial-copy {
    max-width:650px;
    padding:44px 0 50px;
}

.hero-editorial-kicker {
    display:flex;
    align-items:center;
    gap:16px;
    margin-bottom:14px;
}

.hero-editorial-index {
    padding-left:16px;
    border-left:1px solid #d4d6d4;
    color:#94999c;
    font-size:8px;
    line-height:1.2;
    font-weight:800;
    letter-spacing:1.05px;
    text-transform:uppercase;
}

.hero-editorial-copy h1 {
    margin:0;
    max-width:640px;
    color:var(--ink);
    font-size:58px;
    line-height:1.015;
    letter-spacing:-2.45px;
}

.hero-editorial-copy>p {
    max-width:585px;
    margin:22px 0 0;
    color:var(--text);
    font-size:14px;
    line-height:1.8;
}

.hero-editorial-copy .hero-actions {
    display:flex;
    align-items:center;
    gap:20px;
    margin-top:29px;
}

.hero-inline-link {
    display:inline-flex;
    align-items:center;
    gap:7px;
    color:var(--ink);
    font-size:11.5px;
    line-height:1;
    font-weight:800;
    text-decoration:none;
}

.hero-inline-link span {
    color:var(--orange);
    font-size:15px;
    transition:transform .2s ease;
}

.hero-inline-link:hover span {
    transform:translateX(3px)
}

.hero-editorial-proof {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    margin-top:34px;
    padding-top:18px;
    border-top:1px solid #dbdddb;
}

.hero-editorial-proof>div {
    padding-right:18px;
    border-right:1px solid #e0e2df;
}

.hero-editorial-proof>div:last-child {
    padding-right:0;
    padding-left:18px;
    border-right:0;
}

.hero-editorial-proof>div:nth-child(2) {
    padding-left:18px
}

.hero-editorial-proof strong {
    display:block;
    color:var(--orange);
    font-size:9px;
    line-height:1.2;
    font-weight:800;
    letter-spacing:.8px;
}

.hero-editorial-proof span {
    display:block;
    margin-top:5px;
    color:#777c80;
    font-size:9.5px;
    line-height:1.4;
    font-weight:650;
}

.hero-editorial-stage {
    position:relative;
    min-height:430px;
    display:flex;
    flex-direction:column;
    justify-content:center;
}

.hero-editorial-product {
    position:relative;
    min-height:390px;
}

.hero-editorial-product-bg {
    position:absolute;
    width:365px;
    height:365px;
    right:48px;
    top:8px;
    border-radius:50%;
    background: radial-gradient(circle at 42% 40%,rgba(255,255,255,.95) 0 32%,rgba(255,255,255,.34) 32% 54%,rgba(221,224,220,.38) 54% 100%);
    border:1px solid rgba(25,26,28,.06);
}

.hero-editorial-product-bg:before, .hero-editorial-product-bg:after {
    content:"";
    position:absolute;
    border-radius:50%;
    border:1px solid rgba(244,122,0,.18);
}

.hero-editorial-product-bg:before {
    inset:38px
}

.hero-editorial-product-bg:after {
    inset:92px;
    border-color:rgba(25,26,28,.08);
}

.hero-editorial-main-image {
    position:absolute;
    z-index:3;
    right:84px;
    top:34px;
    width:320px;
    height:330px;
    object-fit:contain;
    filter:drop-shadow(0 24px 24px rgba(17,19,21,.14));
    transform:translateY(0) scale(1.03);
    transition:transform .6s ease;
}

.swiper-slide-active .hero-editorial-main-image {
    transform:translateY(-3px) scale(1.06);
}

.hero-editorial-main-label {
    position:absolute;
    z-index:4;
    right:57px;
    bottom:3px;
    width:260px;
    padding:11px 0 0;
    border-top:1px solid rgba(25,26,28,.14);
}

.hero-editorial-main-label span {
    display:block;
    color:var(--orange);
    font-size:8px;
    font-weight:800;
    letter-spacing:1px;
    text-transform:uppercase;
}

.hero-editorial-main-label strong {
    display:block;
    margin-top:4px;
    color:var(--ink);
    font-size:13px;
    line-height:1.4;
}

.hero-callout {
    position:absolute;
    z-index:5;
    width:155px;
    padding:10px 0 10px 12px;
    border-left:2px solid var(--orange);
    background:rgba(246,246,243,.84);
    backdrop-filter:blur(4px);
}

.hero-callout span {
    display:block;
    color:var(--orange);
    font-size:7.5px;
    line-height:1.2;
    font-weight:800;
    letter-spacing:.9px;
    text-transform:uppercase;
}

.hero-callout strong {
    display:block;
    margin-top:4px;
    color:var(--ink);
    font-size:9px;
    line-height:1.4;
}

.hero-callout-top {
    left:8px;
    top:95px;
}

.hero-callout-bottom {
    left:42px;
    bottom:76px;
}

.hero-editorial-line {
    position:absolute;
    z-index:2;
    height:1px;
    background:#cfd2cf;
    transform-origin:left center;
}

.hero-editorial-line:after {
    content:"";
    position:absolute;
    right:-2px;
    top:-2px;
    width:5px;
    height:5px;
    border-radius:50%;
    background:var(--orange);
}

.hero-editorial-line-a {
    left:150px;
    top:120px;
    width:110px;
    transform:rotate(-7deg);
}

.hero-editorial-line-b {
    left:182px;
    bottom:114px;
    width:82px;
    transform:rotate(8deg);
}

.hero-editorial-meta {
    display:flex;
    justify-content:flex-end;
    gap:16px;
    margin-top:12px;
    padding-right:54px;
}

.hero-editorial-meta span {
    color:#94999c;
    font-size:7.5px;
    line-height:1.2;
    font-weight:800;
    letter-spacing:.8px;
    text-transform:uppercase;
}

.home-hero-editorial .swiper-button-prev, .home-hero-editorial .swiper-button-next {
    width:42px!important;
    height:42px!important;
    border:1px solid #e1e3e0;
    background:#fff;
    box-shadow:0 8px 20px rgba(19,21,23,.06);
}

.home-hero-editorial .swiper-pagination {
    bottom:14px!important;
}

.home-hero-editorial .swiper-pagination-bullet {
    width:6px;
    height:6px;
    opacity:.35;
}

.home-hero-editorial .swiper-pagination-bullet-active {
    width:18px;
    border-radius:999px;
    opacity:1;
}

@media(max-width:1100px) {
    .home-hero-editorial .hero-swiper {
        height:610px
    }
    .hero-editorial-grid {
        grid-template-columns:minmax(0,1fr) minmax(420px,.88fr);
        gap:32px;
    }
    .hero-editorial-copy h1 {
        font-size:49px
    }
    .hero-editorial-main-image {
        right:58px;
        width:290px;
        height:310px;
    }
    .hero-editorial-product-bg {
        right:30px;
        width:335px;
        height:335px;
    }
}

@media(max-width:820px) {
    .home-hero-editorial .hero-swiper {
        height:860px
    }
    .home-hero-editorial .hero-slide:before {
        background:linear-gradient(180deg,#f7f7f5 0 52%,#eceeeb 52% 100%);
    }
    .home-hero-editorial .hero-slide:after {
        left:0;
        right:0;
        top:52%;
        width:auto;
        height:1px;
        bottom:auto;
    }
    .hero-editorial-grid {
        grid-template-columns:1fr;
        gap:12px;
        align-content:center;
    }
    .hero-editorial-copy {
        padding:28px 0 6px;
    }
    .hero-editorial-copy h1 {
        max-width:690px;
        font-size:42px;
    }
    .hero-editorial-stage {
        min-height:330px;
    }
    .hero-editorial-product {
        min-height:310px;
    }
    .hero-editorial-product-bg {
        left:50%;
        right:auto;
        transform:translateX(-50%);
        width:300px;
        height:300px;
    }
    .hero-editorial-main-image {
        left:50%;
        right:auto;
        top:18px;
        transform:translateX(-50%) scale(1.02);
        width:280px;
        height:280px;
    }
    .swiper-slide-active .hero-editorial-main-image {
        transform:translateX(-50%) translateY(-2px) scale(1.05);
    }
    .hero-editorial-main-label {
        left:50%;
        right:auto;
        transform:translateX(-50%);
        bottom:-2px;
        width:260px;
    }
    .hero-callout-top {
        left:8%;
        top:70px
    }
    .hero-callout-bottom {
        left:auto;
        right:7%;
        bottom:60px
    }
    .hero-editorial-line-a {
        left:24%;
        top:95px
    }
    .hero-editorial-line-b {
        left:auto;
        right:24%;
        bottom:96px
    }
    .hero-editorial-meta {
        justify-content:center;
        padding-right:0;
    }
}

@media(max-width:560px) {
    .home-hero-editorial .hero-swiper {
        height:900px
    }
    .hero-editorial-kicker {
        align-items:flex-start;
        flex-direction:column;
        gap:7px;
    }
    .hero-editorial-index {
        padding-left:0;
        border-left:0;
    }
    .hero-editorial-copy h1 {
        font-size:36px;
        letter-spacing:-1.25px;
    }
    .hero-editorial-copy>p {
        font-size:12.5px;
    }
    .hero-editorial-copy .hero-actions {
        align-items:flex-start;
        flex-direction:column;
        gap:14px;
    }
    .hero-editorial-proof {
        grid-template-columns:1fr;
        gap:9px;
    }
    .hero-editorial-proof>div, .hero-editorial-proof>div:nth-child(2), .hero-editorial-proof>div:last-child {
        padding:0;
        border-right:0;
    }
    .hero-callout {
        width:132px
    }
    .hero-callout-top {
        left:0
    }
    .hero-callout-bottom {
        right:0
    }
    .hero-editorial-line-a, .hero-editorial-line-b {
        display:none
    }
    .hero-editorial-meta {
        gap:9px;
        flex-wrap:wrap;
    }
}

/* ===== FINAL HERO COMPOSITE IMAGE PLACEMENT ===== */
/* Keeps the complete 3:2 artwork visible, large, and aligned with the hero without cropping. */ @media (min-width:821px) {
    .home-hero-editorial .hero-slide:before {
        background:linear-gradient(90deg,rgba(255,255,255,.76) 0 48%,rgba(236,238,235,.92) 48% 100%);
    }
    .home-hero-editorial .hero-slide:after {
        left:48%;
    }
    .home-hero-editorial .hero-editorial-grid {
        grid-template-columns:minmax(0,.94fr) minmax(0,1.06fr);
        gap:22px;
    }
    .home-hero-editorial .hero-image-stage {
        min-width:0;
        min-height:0;
        height:100%;
        align-self:stretch;
        display:flex;
        align-items:center;
        justify-content:flex-end;
        overflow:visible;
    }
    .home-hero-editorial .hero-image-frame {
        width:calc(100% + max(0px, (100vw - min(1220px, calc(100vw - 44px))) / 2));
        max-width:760px;
        aspect-ratio:3 / 2;
        margin-right:calc(-1 * max(0px, (100vw - min(1220px, calc(100vw - 44px))) / 2));
        display:flex;
        align-items:center;
        justify-content:center;
        overflow:hidden;
        background:transparent;
    }
    .home-hero-editorial .hero-composite-image {
        display:block;
        width:100%;
        height:100%;
        max-width:none;
        max-height:none;
        object-fit:contain;
        object-position:center;
        margin:0;
    }
}

@media (min-width:821px) and (max-width:1100px) {
    .home-hero-editorial .hero-editorial-grid {
        grid-template-columns:minmax(0,.98fr) minmax(0,1.02fr);
        gap:18px;
    }
    .home-hero-editorial .hero-image-frame {
        max-width:650px;
    }
}

@media (max-width:820px) {
    .home-hero-editorial .hero-image-stage {
        min-height:0;
        height:auto;
        display:flex;
        align-items:center;
        justify-content:center;
        overflow:hidden;
    }
    .home-hero-editorial .hero-image-frame {
        width:100%;
        max-width:720px;
        aspect-ratio:3 / 2;
        margin:0 auto;
        display:flex;
        align-items:center;
        justify-content:center;
        overflow:hidden;
    }
    .home-hero-editorial .hero-composite-image {
        display:block;
        width:100%;
        height:100%;
        object-fit:contain;
        object-position:center;
        margin:0;
    }
}

/* ===== HERO HEIGHT-ONLY REFINEMENT =====
   Width rules above are intentionally untouched.
   Match the desktop hero's vertical canvas to the already-correct 3:2 artwork,
   removing the excess top/bottom breathing room without cropping or stretching. */ @media (min-width:1101px) {
    .home-hero-editorial .hero-swiper {
        height:540px;
    }
    .home-hero-editorial .hero-image-stage {
        height:100%;
        align-items:center;
    }
    .home-hero-editorial .hero-image-frame {
        /* width stays controlled by the existing final width rule */ height:auto;
        aspect-ratio:3 / 2;
    }
    .home-hero-editorial .hero-composite-image {
        width:100%;
        height:auto;
        aspect-ratio:3 / 2;
        object-fit:contain;
        object-position:center center;
    }
}

@media (min-width:821px) and (max-width:1100px) {
    .home-hero-editorial .hero-swiper {
        height:560px;
    }
    .home-hero-editorial .hero-image-stage {
        height:100%;
        align-items:center;
    }
    .home-hero-editorial .hero-composite-image {
        width:100%;
        height:auto;
        aspect-ratio:3 / 2;
        object-fit:contain;
        object-position:center center;
    }
}

/* ===== FINAL HERO IMAGE: HEIGHT PULLED UPWARD ONLY =====
   Keep the approved width exactly as-is. The artwork remains bottom-anchored
   and its vertical canvas is extended upward to fill the hero stage. */ @media (min-width:1101px) {
    .home-hero-editorial .hero-image-stage {
        height:100%;
        align-items:flex-end;
    }
    .home-hero-editorial .hero-image-frame {
        height:100%;
        aspect-ratio:auto;
        align-self:flex-end;
    }
    .home-hero-editorial .hero-composite-image {
        width:100%;
        height:100%;
        aspect-ratio:auto;
        object-fit:fill;
        object-position:center bottom;
    }
}

/* ===== Industries We Serve — serial number visibility refinement only ===== */ .industry-showcase-index {
    top:16px;
    left:16px;
    min-width:58px;
    height:48px;
    padding:0 12px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border-radius:9px;
    background:rgba(17,19,21,.72);
    border:1px solid rgba(255,255,255,.28);
    box-shadow:0 8px 22px rgba(0,0,0,.18);
    backdrop-filter:blur(5px);
    -webkit-backdrop-filter:blur(5px);
    color:#fff;
    font-size:30px;
    line-height:1;
    letter-spacing:-1px;
    font-weight:800;
    text-shadow:0 1px 3px rgba(0,0,0,.25);
}

@media(max-width:700px) {
    .industry-showcase-index {
        top:14px;
        left:14px;
        min-width:52px;
        height:43px;
        padding:0 10px;
        border-radius:8px;
        font-size:27px;
    }
}

/* ===== Home Insights / Blog — commercial B2B redesign ===== */ .home-insights {
    background:#f5f5f3;
    border-top:1px solid var(--line);
    border-bottom:1px solid var(--line);
}

.home-insights-head {
    display:grid;
    grid-template-columns:minmax(0,1fr) 420px;
    gap:52px;
    align-items:end;
    margin-bottom:32px;
}

.home-insights-title h2 {
    max-width:680px;
    margin:8px 0 0;
    font-size:36px;
    line-height:1.13;
    letter-spacing:-1.2px;
}

.home-insights-head-copy {
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    gap:14px;
}

.home-insights-head-copy p {
    max-width:420px;
    margin:0;
    color:var(--text);
    font-size:12.5px;
    line-height:1.75;
}

.home-insights-all {
    display:inline-flex;
    align-items:center;
    gap:7px;
}

.home-insights-all span, .home-insight-read span {
    color:var(--orange);
    transition:transform .2s ease;
}

.home-insights-all:hover span, .home-insight-read:hover span {
    transform:translateX(3px);
}

.home-insights-grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:18px;
}

.home-insight-card {
    min-width:0;
    background:#fff;
    border:1px solid var(--line);
    border-radius:12px;
    overflow:hidden;
    box-shadow:0 8px 28px rgba(19,21,23,.035);
    transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease;
}

.home-insight-card:hover {
    transform:translateY(-4px);
    border-color:#dadcdd;
    box-shadow:0 18px 42px rgba(19,21,23,.08);
}

.home-insight-media {
    position:relative;
    display:block;
    height:205px;
    overflow:hidden;
    background:#f0f1ef;
    border-bottom:1px solid var(--line);
}

.home-insight-media img {
    display:block;
    width:100%;
    height:100%;
    object-fit:contain;
    object-position:center;
    padding:18px;
    filter:saturate(.96);
    transition:transform .35s ease,filter .35s ease;
}

.home-insight-card:hover .home-insight-media img {
    transform:scale(1.025);
    filter:saturate(1);
}

.home-insight-category {
    position:absolute;
    left:16px;
    top:16px;
    display:inline-flex;
    align-items:center;
    min-height:24px;
    padding:0 9px;
    border-radius:999px;
    background:#fff;
    border:1px solid rgba(244,122,0,.28);
    color:var(--orange);
    font-size:8.5px;
    line-height:1;
    font-weight:800;
    letter-spacing:.9px;
    text-transform:uppercase;
}

.home-insight-body {
    padding:20px 20px 21px;
}

.home-insight-meta {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    margin-bottom:13px;
    color:#92979a;
    font-size:9px;
    line-height:1.3;
}

.home-insight-card h3 {
    margin:0;
    min-height:52px;
    font-size:16px;
    line-height:1.38;
    letter-spacing:-.25px;
}

.home-insight-card h3 a {
    color:var(--ink);
    text-decoration:none;
}

.home-insight-card p {
    min-height:58px;
    margin:10px 0 0;
    color:var(--muted);
    font-size:11px;
    line-height:1.65;
}

.home-insight-read {
    display:inline-flex;
    align-items:center;
    gap:7px;
    margin-top:17px;
    padding-top:14px;
    border-top:1px solid var(--line);
    width:100%;
    color:var(--ink);
    text-decoration:none;
    font-size:10.5px;
    font-weight:800;
}

@media(max-width:1024px) {
    .home-insights-head {
        grid-template-columns:1fr;
        gap:14px;
    }
    .home-insights-head-copy p {
        max-width:680px;
    }
    .home-insights-grid {
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}

@media(max-width:700px) {
    .home-insights-title h2 {
        font-size:30px;
    }
    .home-insights-grid {
        grid-template-columns:1fr;
    }
    .home-insight-media {
        height:220px;
    }
    .home-insight-card h3, .home-insight-card p {
        min-height:0;
    }
}

/* ===== Home Insights image fit refinement ===== */ .home-insight-media {
    height:220px;
    padding:0;
    background:#f1f2f0;
}

.home-insight-media img {
    width:100%;
    height:100%;
    padding:0;
    object-fit:cover;
    object-position:center;
    display:block;
}

.home-insight-card:hover .home-insight-media img {
    transform:scale(1.018);
}

@media(max-width:700px) {
    .home-insight-media {
        height:230px;
    }
}

/* ===== FAQ + Quote — final commercial B2B refinement ===== */ .faq-quote-commercial {
    background:#fff;
    border-top:1px solid var(--line);
}

.faq-quote-intro {
    display:grid;
    grid-template-columns:minmax(0,1fr) 430px;
    gap:58px;
    align-items:end;
    margin-bottom:34px;
}

.faq-quote-intro h2 {
    max-width:720px;
    margin:8px 0 0;
    font-size:36px;
    line-height:1.12;
    letter-spacing:-1.2px;
}

.faq-quote-intro>p {
    max-width:430px;
    margin:0;
    color:var(--text);
    font-size:12.5px;
    line-height:1.75;
}

.faq-quote-commercial .faq-quote-grid {
    display:grid;
    grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);
    gap:34px;
    align-items:stretch;
}

.faq-quote-commercial .faq-column {
    min-width:0;
    padding:30px 32px 26px;
    border:1px solid var(--line);
    background:#fff;
}

.faq-column-head {
    padding-bottom:20px;
    border-bottom:1px solid var(--line);
}

.faq-column-label {
    display:block;
    color:var(--orange);
    font-size:9px;
    font-weight:800;
    line-height:1.2;
    letter-spacing:1.2px;
    text-transform:uppercase;
}

.faq-column-head h3 {
    margin:8px 0 0;
    font-size:27px;
    line-height:1.16;
    letter-spacing:-.7px;
}

.faq-quote-commercial .faq-list {
    border-top:0;
}

.faq-quote-commercial .faq-item {
    border-bottom:1px solid var(--line);
}

.faq-quote-commercial .faq-item summary {
    min-height:66px;
    padding:18px 0;
    font-size:12px;
    line-height:1.5;
}

.faq-question {
    padding-right:18px;
}

.faq-quote-commercial .faq-item summary b {
    width:24px;
    height:24px;
    flex:0 0 auto;
    display:grid;
    place-items:center;
    border:1px solid #e4e5e6;
    border-radius:4px;
    color:var(--orange);
    font-size:15px;
    line-height:1;
    background:#fafafa;
}

.faq-quote-commercial .faq-item[open] summary b {
    transform:rotate(45deg);
    border-color:rgba(244,122,0,.28);
    background:#fff8f1;
}

.faq-quote-commercial .faq-item p {
    margin:0;
    padding:0 42px 19px 0;
    color:var(--muted);
    font-size:11.5px;
    line-height:1.72;
}

.faq-contact-prompt {
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:22px;
    margin-top:26px;
    padding-top:20px;
    border-top:2px solid var(--ink);
}

.faq-contact-prompt span, .faq-contact-prompt strong {
    display:block;
}

.faq-contact-prompt>div>span {
    color:var(--muted);
    font-size:9.5px;
}

.faq-contact-prompt>div>strong {
    margin-top:4px;
    color:var(--ink);
    font-size:12px;
}

.faq-contact-prompt>a {
    flex:0 0 auto;
    color:var(--ink);
    text-decoration:none;
    font-size:10.5px;
    font-weight:800;
}

.faq-contact-prompt>a span {
    display:inline;
    color:var(--orange);
}

.faq-quote-commercial .quote-panel {
    position:relative;
    height:100%;
    padding:31px 32px 28px;
    border:1px solid #dedfdf;
    border-radius:8px;
    background:#f5f5f3;
    overflow:hidden;
}

.quote-panel-accent {
    position:absolute;
    left:0;
    right:0;
    top:0;
    height:3px;
    background:var(--orange);
}

.faq-quote-commercial .quote-panel-head {
    padding-bottom:17px;
    border-bottom:1px solid #dedfdf;
}

.faq-quote-commercial .quote-panel-head h2 {
    margin:8px 0 0;
    font-size:30px;
    line-height:1.12;
    letter-spacing:-.9px;
}

.faq-quote-commercial .quote-panel-head p {
    max-width:600px;
    margin:10px 0 0;
    color:var(--text);
    font-size:11.5px;
    line-height:1.68;
}

.quote-response-note {
    display:flex;
    align-items:center;
    gap:14px;
    padding:13px 0 15px;
    border-bottom:1px solid #dedfdf;
}

.quote-response-note span {
    flex:0 0 auto;
    color:var(--orange);
    font-size:8.5px;
    font-weight:800;
    letter-spacing:1px;
    text-transform:uppercase;
}

.quote-response-note strong {
    color:#6b7074;
    font-size:9.5px;
    line-height:1.5;
    font-weight:600;
}

.quote-form-section {
    padding-top:18px;
}

.quote-form-section + .quote-form-section {
    margin-top:3px;
    padding-top:19px;
    border-top:1px solid #dedfdf;
}

.quote-form-section-title {
    display:flex;
    align-items:center;
    gap:9px;
    margin-bottom:13px;
}

.quote-form-section-title>span {
    color:var(--orange);
    font-size:9px;
    font-weight:800;
}

.quote-form-section-title>strong {
    color:var(--ink);
    font-size:11px;
    letter-spacing:.05px;
}

.faq-quote-commercial .quote-form-grid {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:12px 13px;
}

.faq-quote-commercial .quote-form-grid label>span {
    margin-bottom:6px;
    color:#555a5e;
    font-size:9px;
    font-weight:800;
}

.faq-quote-commercial .quote-form .form-control {
    min-height:43px;
    padding:10px 12px;
    border:1px solid #dcdede;
    border-radius:6px;
    background:#fff;
    font-size:11.5px;
    transition:border-color .2s ease,box-shadow .2s ease,background .2s ease;
}

.faq-quote-commercial .quote-form .form-control:focus {
    border-color:#c7cacc;
    box-shadow:0 0 0 3px rgba(244,122,0,.08);
    background:#fff;
}

.faq-quote-commercial .quote-form .textarea {
    min-height:116px;
}

.faq-quote-commercial .quote-consent {
    padding-top:1px;
}

.faq-quote-commercial .quote-consent span {
    margin:0!important;
    font-size:9px!important;
    line-height:1.55;
}

.quote-submit-commercial {
    margin-top:20px;
    padding-top:18px;
    border-top:1px solid #dedfdf;
}

.quote-submit-commercial .btn {
    min-width:168px;
}

.quote-submit-commercial>span {
    font-size:9.5px!important;
}

@media(max-width:1024px) {
    .faq-quote-intro {
        grid-template-columns:1fr;
        gap:14px;
    }
    .faq-quote-intro>p {
        max-width:700px;
    }
    .faq-quote-commercial .faq-quote-grid {
        grid-template-columns:1fr;
    }
    .faq-quote-commercial .faq-column, .faq-quote-commercial .quote-panel {
        padding-left:28px;
        padding-right:28px;
    }
}

@media(max-width:700px) {
    .faq-quote-intro h2 {
        font-size:30px;
    }
    .faq-quote-commercial .faq-column, .faq-quote-commercial .quote-panel {
        padding:24px 20px;
    }
    .faq-column-head h3 {
        font-size:24px;
    }
    .faq-contact-prompt {
        align-items:flex-start;
        flex-direction:column;
        gap:12px;
    }
    .quote-response-note {
        align-items:flex-start;
        flex-direction:column;
        gap:5px;
    }
    .faq-quote-commercial .quote-form-grid {
        grid-template-columns:1fr;
    }
    .faq-quote-commercial .quote-form-grid .full {
        grid-column:auto;
    }
    .quote-submit-commercial {
        align-items:flex-start;
        flex-direction:column;
    }
}

/* ===== FINAL HOMEPAGE REFINEMENT — commercial consistency layer ===== */
/* Hero and Industries We Serve artwork/layout are intentionally left untouched. */
/* Shared rhythm */ .home-products-section, .associates-section, .clients-section, .commercial-solutions, .home-about-commercial, .home-certifications, .home-testimonials-section, .home-insights, .faq-quote-commercial {
    scroll-margin-top:118px;
}

.home-products-section, .associates-section, .commercial-solutions, .home-about-commercial, .home-certifications, .home-testimonials-section, .home-insights, .faq-quote-commercial {
    padding-top:72px;
    padding-bottom:72px;
}

/* Unify section intros without making them look templated */ .home-products-intro, .associates-intro, .commercial-solutions .section-intro-row, .home-certifications .section-intro-row, .home-testimonials-intro, .home-insights-head, .faq-quote-intro {
    margin-bottom:30px;
}

.home-products-intro h2, .associates-intro h2, .commercial-solutions .section-intro-row h2, .home-about-content h2, .home-certifications .section-intro-row h2, .home-testimonials-intro h2, .home-insights-title h2, .faq-quote-intro h2 {
    text-wrap:balance;
}

/* Buttons and text links: one restrained B2B language */ .home-products-section .btn, .commercial-solutions .btn, .home-about-commercial .btn, .home-certifications .btn, .faq-quote-commercial .btn {
    border-radius:7px;
    min-height:43px;
    box-shadow:none;
}

.text-link, .home-product-actions a, .commercial-capability>a, .home-insight-read, .faq-contact-prompt>a {
    text-underline-offset:3px;
}

/* Featured Products */ .home-product-showcase {
    align-items:stretch;
}

.home-product-card {
    height:100%;
    border-radius:10px;
    box-shadow:0 8px 24px rgba(19,21,23,.035);
    transition:transform .24s ease,border-color .24s ease,box-shadow .24s ease;
}

.home-product-card:hover {
    transform:translateY(-3px);
    border-color:#d8dadb;
    box-shadow:0 16px 34px rgba(19,21,23,.07);
}

.home-product-body {
    display:flex;
    flex-direction:column;
}

.home-product-body p {
    flex:1 1 auto;
}

.home-product-actions {
    margin-top:auto;
}

/* Associates: keep static, brand-first, less card-like */ .associates-section {
    border-top:1px solid var(--line);
    border-bottom:1px solid var(--line);
}

.associate-logo-card {
    transition:background .2s ease,border-color .2s ease;
}

.associate-logo-card:hover {
    transform:none;
    box-shadow:none;
    background:#fafaf8;
    border-color:#dfe1e1;
}

.associate-logo-card img {
    transition:opacity .2s ease,transform .2s ease;
}

.associate-logo-card:hover img {
    transform:scale(1.018);
}

/* Client strip: quieter and more corporate */ .clients-section {
    padding-top:58px;
    padding-bottom:58px;
    overflow:hidden;
}

.clients-section .section-head.compact {
    margin-bottom:25px;
}

.clients-section .section-head.compact h2 {
    letter-spacing:-1px;
}

.client-logo-item {
    background:#fff;
}

/* Solutions & Services */ .commercial-solutions-layout {
    gap:22px;
}

.commercial-capabilities, .commercial-support {
    border-radius:8px;
}

.commercial-capability {
    transition:background .2s ease;
}

.commercial-capability:hover {
    background:#fafaf8;
}

.commercial-capability>a span {
    transition:transform .2s ease;
}

.commercial-capability>a:hover span {
    display:inline-block;
    transform:translateX(3px);
}

/* About */ .home-about-shell {
    align-items:stretch;
}

.home-about-visual, .home-about-content {
    min-height:100%;
}

.home-about-visual {
    border-radius:8px;
    overflow:hidden;
}

.home-about-visual img {
    transition:transform .45s ease;
}

.home-about-visual:hover img {
    transform:scale(1.012);
}

.home-about-facts {
    border-top:1px solid var(--line);
    border-bottom:1px solid var(--line);
}

/* Certifications */ .certificate-grid-home {
    gap:16px;
}

.certificate-card {
    border-radius:9px;
    box-shadow:0 7px 20px rgba(19,21,23,.03);
    transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease;
}

.certificate-card:hover {
    transform:translateY(-2px);
    border-color:#d8dadb;
    box-shadow:0 14px 30px rgba(19,21,23,.065);
}

.certificate-preview img {
    transition:transform .25s ease;
}

.certificate-card:hover .certificate-preview img {
    transform:scale(1.015);
}

/* Testimonials */ .home-testimonials-grid {
    align-items:stretch;
}

.home-testimonial-card {
    height:100%;
    border-radius:9px;
    box-shadow:none;
    transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease;
}

.home-testimonial-card:hover {
    transform:translateY(-2px);
    border-color:#d8dadb;
    box-shadow:0 13px 28px rgba(19,21,23,.055);
}

.home-testimonial-quote-mark {
    color:rgba(244,122,0,.2);
}

/* Insights */ .home-insight-card {
    border-radius:9px;
}

.home-insight-media {
    background:#f3f4f2;
}

.home-insight-meta {
    letter-spacing:.05px;
}

/* FAQ + Quote */ .faq-quote-commercial .faq-column, .faq-quote-commercial .quote-panel {
    box-shadow:none;
}

.faq-quote-commercial .faq-column {
    border-radius:8px;
}

.faq-quote-commercial .faq-item summary {
    cursor:pointer;
}

.faq-quote-commercial .faq-item summary:hover .faq-question {
    color:#000;
}

.faq-quote-commercial .quote-panel {
    box-shadow:0 10px 30px rgba(19,21,23,.035);
}

/* Better keyboard focus across homepage */ .home-products-section a:focus-visible, .associates-section a:focus-visible, .commercial-solutions a:focus-visible, .home-about-commercial a:focus-visible, .home-certifications a:focus-visible, .home-testimonials-section a:focus-visible, .home-insights a:focus-visible, .faq-quote-commercial a:focus-visible, .faq-quote-commercial button:focus-visible, .faq-quote-commercial input:focus-visible, .faq-quote-commercial textarea:focus-visible, .faq-quote-commercial summary:focus-visible {
    outline:2px solid rgba(244,122,0,.55);
    outline-offset:3px;
}

@media(max-width:1024px) {
    .home-products-section, .associates-section, .commercial-solutions, .home-about-commercial, .home-certifications, .home-testimonials-section, .home-insights, .faq-quote-commercial {
        padding-top:64px;
        padding-bottom:64px;
    }
    .clients-section {
        padding-top:50px;
        padding-bottom:50px;
    }
}

@media(max-width:700px) {
    .home-products-section, .associates-section, .commercial-solutions, .home-about-commercial, .home-certifications, .home-testimonials-section, .home-insights, .faq-quote-commercial {
        padding-top:52px;
        padding-bottom:52px;
    }
    .clients-section {
        padding-top:44px;
        padding-bottom:44px;
    }
    .home-products-intro, .associates-intro, .commercial-solutions .section-intro-row, .home-certifications .section-intro-row, .home-testimonials-intro, .home-insights-head, .faq-quote-intro {
        margin-bottom:24px;
    }
    .home-product-card:hover, .certificate-card:hover, .home-testimonial-card:hover {
        transform:none;
    }
}

/* ==========================================================================\n   FINAL HERO — Prototype 2 / clean commercial composition\n   2026-09 refinement: image-led right side, quiet copy area, exact spacing\n   ========================================================================== */ .home-hero-editorial {
    background:#fbfbfa;
    border-bottom:1px solid #ececea
}

.home-hero-editorial .hero-swiper {
    height:500px
}

.home-hero-editorial .hero-slide {
    background:#fbfbfa;
    overflow:hidden
}

.home-hero-editorial .hero-slide:before, .home-hero-editorial .hero-slide:after {
    display:none!important
}

.home-hero-editorial .hero-editorial-grid {
    width:100%;
    max-width:none;
    height:100%;
    margin:0;
    padding:0;
    display:grid;
    grid-template-columns:minmax(520px,48%) minmax(0,52%);
    gap:0;
    align-items:stretch
}

.home-hero-editorial .hero-editorial-copy {
    width:min(610px,calc(100% - 70px));
    max-width:none;
    margin-left:max(44px,calc((100vw - 1220px)/2));
    padding:54px 38px 38px 0;
    align-self:center
}

.home-hero-editorial .hero-editorial-kicker {
    gap:14px;
    margin:0 0 14px
}

.home-hero-editorial .eyebrow {
    font-size:10px;
    letter-spacing:1.45px
}

.home-hero-editorial .hero-editorial-index {
    font-size:7.5px;
    letter-spacing:.9px;
    padding-left:14px
}

.home-hero-editorial .hero-editorial-copy h1 {
    max-width:575px;
    margin:0;
    font-size:50px;
    line-height:1.035;
    letter-spacing:-2.25px;
    font-weight:800
}

.home-hero-editorial .hero-editorial-copy>p {
    max-width:545px;
    margin:17px 0 0;
    font-size:12.5px;
    line-height:1.72;
    color:#62676b
}

.home-hero-editorial .hero-editorial-copy .hero-actions {
    gap:20px;
    margin-top:24px
}

.home-hero-editorial .hero-editorial-copy .btn {
    min-height:42px;
    padding:0 18px;
    border-radius:7px;
    font-size:11.5px
}

.home-hero-editorial .hero-inline-link {
    font-size:10.5px
}

.home-hero-editorial .hero-editorial-proof {
    max-width:555px;
    margin-top:27px;
    padding-top:15px
}

.home-hero-editorial .hero-editorial-proof>div {
    padding-right:15px
}

.home-hero-editorial .hero-editorial-proof>div:nth-child(2), .home-hero-editorial .hero-editorial-proof>div:last-child {
    padding-left:15px
}

.home-hero-editorial .hero-editorial-proof strong {
    font-size:8px
}

.home-hero-editorial .hero-editorial-proof span {
    font-size:8.7px;
    margin-top:4px
}

.home-hero-editorial .hero-image-stage {
    height:100%;
    min-height:0;
    display:block;
    overflow:hidden;
    background:#f5f6f6
}

.home-hero-editorial .hero-image-frame {
    width:100%;
    height:100%;
    max-width:none;
    aspect-ratio:auto;
    margin:0;
    overflow:hidden;
    background:#f5f6f6
}

.home-hero-editorial .hero-composite-image {
    display:block;
    width:100%;
    height:100%;
    max-width:none;
    object-fit:cover;
    object-position:center center;
    margin:0;
    transform:scale(1.002);
    transition:transform 6.4s cubic-bezier(.2,.65,.25,1)
}

.home-hero-editorial .swiper-slide-active .hero-composite-image {
    transform:scale(1.025)
}

.home-hero-editorial .swiper-button-prev, .home-hero-editorial .swiper-button-next {
    width:36px!important;
    height:36px!important;
    margin-top:-18px!important;
    border:1px solid #e4e5e3!important;
    background:rgba(255,255,255,.94)!important;
    box-shadow:0 6px 18px rgba(19,21,23,.07)!important;
    color:#242628!important
}

.home-hero-editorial .swiper-button-prev {
    left:12px!important
}

.home-hero-editorial .swiper-button-next {
    right:12px!important
}

.home-hero-editorial .swiper-button-prev:after, .home-hero-editorial .swiper-button-next:after {
    font-size:12px!important
}

.home-hero-editorial .swiper-pagination {
    bottom:12px!important;
    left:48%!important;
    width:52%!important;
    text-align:left;
    padding-left:22px
}

.home-hero-editorial .swiper-pagination-bullet {
    width:5px;
    height:5px;
    margin:0 4px!important;
    background:#8d9194!important;
    opacity:.55
}

.home-hero-editorial .swiper-pagination-bullet-active {
    width:17px!important;
    border-radius:999px;
    background:var(--orange)!important;
    opacity:1
}

@media (max-width:1100px) {
    .home-hero-editorial .hero-swiper {
        height:510px
    }
    .home-hero-editorial .hero-editorial-grid {
        grid-template-columns:48% 52%
    }
    .home-hero-editorial .hero-editorial-copy {
        width:calc(100% - 40px);
        margin-left:28px;
        padding-right:22px
    }
    .home-hero-editorial .hero-editorial-copy h1 {
        font-size:43px;
        letter-spacing:-1.7px
    }
}

@media (max-width:820px) {
    .home-hero-editorial .hero-swiper {
        height:auto;
        min-height:760px
    }
    .home-hero-editorial .hero-slide {
        height:auto
    }
    .home-hero-editorial .hero-editorial-grid {
        grid-template-columns:1fr;
        grid-template-rows:auto 360px
    }
    .home-hero-editorial .hero-editorial-copy {
        width:min(100% - 44px,720px);
        margin:0 auto;
        padding:42px 0 30px
    }
    .home-hero-editorial .hero-editorial-copy h1 {
        font-size:43px;
        max-width:650px
    }
    .home-hero-editorial .hero-image-stage,.home-hero-editorial .hero-image-frame {
        height:360px
    }
    .home-hero-editorial .hero-composite-image {
        object-position:center center
    }
    .home-hero-editorial .swiper-pagination {
        left:0!important;
        width:100%!important;
        padding:0;
        text-align:center;
        bottom:10px!important
    }
}

@media (max-width:560px) {
    .home-hero-editorial .hero-swiper {
        min-height:700px
    }
    .home-hero-editorial .hero-editorial-grid {
        grid-template-rows:auto 270px
    }
    .home-hero-editorial .hero-editorial-copy {
        width:calc(100% - 30px);
        padding:32px 0 24px
    }
    .home-hero-editorial .hero-editorial-kicker {
        display:block;
        margin-bottom:11px
    }
    .home-hero-editorial .hero-editorial-index {
        display:none
    }
    .home-hero-editorial .hero-editorial-copy h1 {
        font-size:35px;
        line-height:1.06;
        letter-spacing:-1.35px
    }
    .home-hero-editorial .hero-editorial-copy>p {
        font-size:12px;
        line-height:1.65;
        margin-top:14px
    }
    .home-hero-editorial .hero-editorial-copy .hero-actions {
        flex-direction:row;
        align-items:center;
        gap:16px;
        margin-top:20px
    }
    .home-hero-editorial .hero-editorial-proof {
        grid-template-columns:repeat(3,1fr);
        gap:0;
        margin-top:22px;
        padding-top:13px
    }
    .home-hero-editorial .hero-editorial-proof>div, .home-hero-editorial .hero-editorial-proof>div:nth-child(2), .home-hero-editorial .hero-editorial-proof>div:last-child {
        padding:0 8px;
        border-right:1px solid #e0e2df
    }
    .home-hero-editorial .hero-editorial-proof>div:first-child {
        padding-left:0
    }
    .home-hero-editorial .hero-editorial-proof>div:last-child {
        border-right:0;
        padding-right:0
    }
    .home-hero-editorial .hero-editorial-proof span {
        font-size:7.8px
    }
    .home-hero-editorial .hero-image-stage,.home-hero-editorial .hero-image-frame {
        height:270px
    }
}

@media (max-width:390px) {
    .home-hero-editorial .hero-editorial-copy h1 {
        font-size:32px
    }
    .home-hero-editorial .hero-editorial-copy .hero-actions {
        gap:12px
    }
    .home-hero-editorial .hero-inline-link {
        font-size:9.5px
    }
}

/* ===== FINAL OVERRIDE: full-width generated hero artwork ===== */ .home-hero-editorial .hero-swiper {
    height:500px
}

.home-hero-editorial .hero-slide {
    position:relative;
    isolation:isolate;
    background:#f8f8f6
}

.home-hero-editorial .hero-slide-art {
    position:absolute;
    inset:0;
    z-index:0;
    overflow:hidden;
    background:#f8f8f6
}

.home-hero-editorial .hero-slide-art:after {
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    background:linear-gradient(90deg,rgba(255,255,255,.12) 0%,rgba(255,255,255,.04) 39%,rgba(255,255,255,0) 55%)
}

.home-hero-editorial .hero-slide-art .hero-composite-image {
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center center;
    transform:scale(1.001);
    transition:transform 7s cubic-bezier(.2,.65,.25,1)
}

.home-hero-editorial .swiper-slide-active .hero-slide-art .hero-composite-image {
    transform:scale(1.018)
}

.home-hero-editorial .hero-editorial-grid {
    position:relative;
    z-index:2;
    width:min(1220px,calc(100% - 44px));
    height:100%;
    margin:auto;
    padding:0;
    display:flex;
    align-items:center
}

.home-hero-editorial .hero-editorial-copy {
    width:46%;
    max-width:570px;
    margin:0;
    padding:0 24px 0 0
}

.home-hero-editorial .hero-editorial-copy h1 {
    font-size:48px;
    line-height:1.025;
    letter-spacing:-2.15px;
    max-width:555px
}

.home-hero-editorial .hero-editorial-copy>p {
    max-width:520px
}

.home-hero-editorial .hero-editorial-proof {
    max-width:520px
}

.home-hero-editorial .swiper-pagination {
    left:0!important;
    width:100%!important;
    text-align:center!important;
    padding-left:0!important
}

@media(max-width:1100px) {
    .home-hero-editorial .hero-swiper {
        height:470px
    }
    .home-hero-editorial .hero-editorial-copy {
        width:48%;
        max-width:510px
    }
    .home-hero-editorial .hero-editorial-copy h1 {
        font-size:42px
    }
}

@media(max-width:820px) {
    .home-hero-editorial .hero-swiper {
        height:690px;
        min-height:0
    }
    .home-hero-editorial .hero-slide-art {
        top:auto;
        height:300px
    }
    .home-hero-editorial .hero-slide-art:after {
        background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,0))
    }
    .home-hero-editorial .hero-slide-art .hero-composite-image {
        object-position:center center
    }
    .home-hero-editorial .hero-editorial-grid {
        width:min(100% - 44px,720px);
        height:390px;
        margin:0 auto auto;
        align-items:center
    }
    .home-hero-editorial .hero-editorial-copy {
        width:100%;
        max-width:650px;
        padding:0
    }
    .home-hero-editorial .hero-editorial-copy h1 {
        font-size:42px
    }
}

@media(max-width:560px) {
    .home-hero-editorial .hero-swiper {
        height:630px;
        min-height:0
    }
    .home-hero-editorial .hero-slide-art {
        height:235px
    }
    .home-hero-editorial .hero-editorial-grid {
        width:calc(100% - 30px);
        height:395px
    }
    .home-hero-editorial .hero-editorial-copy h1 {
        font-size:34px
    }
}

/* ===== FINAL: Journey / Assurance highlight strip ===== */ .home-proof-assurance {
    position:relative;
    padding:16px 0 20px;
    background:#fff;
    border:0;
    overflow:hidden;
}

.home-proof-assurance .container {
    position:relative
}

.home-proof-assurance-shell {
    position:relative;
    min-height:126px;
    display:grid;
    grid-template-columns:280px minmax(0,1fr);
    align-items:stretch;
    overflow:hidden;
    border:1px solid #dde3e7;
    background:linear-gradient(108deg,#f8fafb 0%,#fff 46%,#f5f8fa 100%);
    box-shadow:0 15px 38px rgba(18,28,35,.07);
}

.home-proof-intro {
    position:relative;
    z-index:2;
    min-width:0;
    padding:24px 50px 22px 30px;
    display:flex;
    flex-direction:column;
    justify-content:center;
    color:#fff;
    background: radial-gradient(circle at 84% 28%,rgba(244,122,0,.13),transparent 30%), linear-gradient(128deg,#142736 0%,#0c1d2a 72%,#102533 100%);
    clip-path:polygon(0 0,89% 0,100% 100%,0 100%);
}

.home-proof-intro:before {
    content:"";
    position:absolute;
    inset:0;
    opacity:.18;
    background: linear-gradient(90deg,transparent 0 12%,rgba(255,255,255,.08) 12.2% 12.5%,transparent 12.7% 100%), linear-gradient(0deg,transparent 0 66%,rgba(255,255,255,.07) 66.2% 66.5%,transparent 66.7% 100%);
    pointer-events:none;
}

.home-proof-intro-kicker {
    position:relative;
    z-index:1;
    margin-bottom:8px;
    color:#f4f7f8;
    font-size:8px;
    line-height:1.2;
    font-weight:800;
    letter-spacing:1.45px;
    text-transform:uppercase;
}

.home-proof-intro strong {
    position:relative;
    z-index:1;
    font-size:20px;
    line-height:1.12;
    letter-spacing:-.55px;
}

.home-proof-intro i {
    position:relative;
    z-index:1;
    width:30px;
    height:2px;
    margin-top:13px;
    background:var(--orange);
}

.home-proof-assurance .home-proof-grid {
    min-width:0;
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    padding:0 34px 0 12px;
    align-items:stretch;
}

.home-proof-assurance .home-proof-item {
    min-width:0;
    min-height:124px;
    padding:20px 18px;
    border:0;
    display:flex;
    flex-direction:row;
    align-items:center;
    justify-content:flex-start;
    gap:13px;
    background:transparent;
}

.home-proof-assurance .home-proof-item:before {
    display:none
}

.home-proof-assurance .home-proof-item + .home-proof-item:after {
    content:"";
    position:absolute;
    left:0;
    top:29px;
    bottom:29px;
    width:1px;
    background:#e2e6e8;
}

.home-proof-icon {
    width:39px;
    height:39px;
    flex:0 0 39px;
    display:grid;
    place-items:center;
    border-radius:50%;
    color:var(--orange);
    background:#fff5ec;
    box-shadow:inset 0 0 0 1px rgba(244,122,0,.08);
}

.home-proof-icon svg {
    width:18px;
    height:18px;
    fill:none;
    stroke:currentColor;
    stroke-width:1.7;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.home-proof-content {
    min-width:0
}

.home-proof-assurance .home-proof-label {
    display:block!important;
    margin:0 0 6px!important;
    color:var(--orange)!important;
    font-size:7.5px!important;
    font-weight:800;
    line-height:1.2;
    letter-spacing:1.05px;
    text-transform:uppercase;
    white-space:nowrap;
}

.home-proof-assurance .home-proof-grid strong {
    display:block;
    color:var(--ink);
    font-size:15px;
    line-height:1.2;
    letter-spacing:-.28px;
    white-space:nowrap;
}

.home-proof-edge {
    position:absolute;
    z-index:4;
    top:-1px;
    right:-1px;
    bottom:-1px;
    width:28px;
    overflow:hidden;
    pointer-events:none;
}

.home-proof-edge:before, .home-proof-edge:after {
    content:"";
    position:absolute;
    top:-8px;
    bottom:-8px;
    transform:skewX(-19deg);
}

.home-proof-edge:before {
    width:15px;
    right:10px;
    background:var(--orange);
}

.home-proof-edge:after {
    width:12px;
    right:-3px;
    background:#173247;
}

@media(max-width:1100px) {
    .home-proof-assurance-shell {
        grid-template-columns:235px minmax(0,1fr)
    }
    .home-proof-assurance .home-proof-grid {
        padding-left:6px;
        padding-right:28px
    }
    .home-proof-assurance .home-proof-item {
        padding:18px 10px;
        gap:9px
    }
    .home-proof-icon {
        width:34px;
        height:34px;
        flex-basis:34px
    }
    .home-proof-assurance .home-proof-grid strong {
        font-size:13px
    }
    .home-proof-assurance .home-proof-label {
        font-size:6.8px!important;
        letter-spacing:.75px
    }
}

@media(max-width:900px) {
    .home-proof-assurance-shell {
        grid-template-columns:210px minmax(0,1fr)
    }
    .home-proof-assurance .home-proof-grid {
        grid-template-columns:repeat(2,minmax(0,1fr));
        padding:0 26px 0 8px
    }
    .home-proof-assurance .home-proof-item {
        min-height:62px;
        padding:10px 14px
    }
    .home-proof-assurance .home-proof-item + .home-proof-item:after {
        top:12px;
        bottom:12px
    }
    .home-proof-assurance .home-proof-item:nth-child(3):after {
        display:none
    }
}

@media(max-width:700px) {
    .home-proof-assurance {
        padding:12px 0 16px
    }
    .home-proof-assurance-shell {
        display:block;
        overflow:hidden
    }
    .home-proof-intro {
        min-height:105px;
        padding:20px 28px;
        clip-path:polygon(0 0,100% 0,94% 100%,0 100%);
    }
    .home-proof-assurance .home-proof-grid {
        grid-template-columns:1fr 1fr;
        padding:6px 18px 10px;
    }
    .home-proof-assurance .home-proof-item {
        min-height:76px;
        padding:12px 8px;
        border-bottom:1px solid #e8ebed;
    }
    .home-proof-assurance .home-proof-item:nth-child(odd) {
        border-right:1px solid #e8ebed
    }
    .home-proof-assurance .home-proof-item:nth-child(n+3) {
        border-bottom:0
    }
    .home-proof-assurance .home-proof-item:after {
        display:none!important
    }
    .home-proof-edge {
        width:20px
    }
    .home-proof-edge:before {
        width:10px;
        right:7px
    }
    .home-proof-edge:after {
        width:9px
    }
}

@media(max-width:480px) {
    .home-proof-intro strong {
        font-size:18px
    }
    .home-proof-assurance .home-proof-grid {
        grid-template-columns:1fr;
        padding:5px 20px 10px 14px
    }
    .home-proof-assurance .home-proof-item {
        min-height:67px;
        border-right:0!important;
        border-bottom:1px solid #e8ebed!important;
    }
    .home-proof-assurance .home-proof-item:last-child {
        border-bottom:0!important
    }
    .home-proof-assurance .home-proof-grid strong {
        font-size:14px
    }
}

/* =========================================================
   FINAL — HOME KEY HIGHLIGHTS / ASSURANCE STRIP
   True edge-to-edge layout; no desktop side gaps.
   ========================================================= */ .home-proof-strip.home-proof-assurance {
    width:100%;
    margin:0;
    padding:0;
    overflow:hidden;
    background:#f8fafb;
    border-top:1px solid #e8ecef;
    border-bottom:1px solid #dce2e6;
}

.home-proof-assurance .home-proof-assurance-shell {
    position:relative;
    width:100%;
    max-width:none;
    min-height:124px;
    margin:0;
    display:grid;
    grid-template-columns:minmax(280px,25.5vw) minmax(0,1fr) 30px;
    align-items:stretch;
    background:linear-gradient(90deg,#ffffff 0%,#fbfcfd 52%,#f6f8fa 100%);
    box-shadow:none;
    border:0;
}

.home-proof-assurance .home-proof-intro {
    position:relative;
    min-width:0;
    padding:25px clamp(32px,5vw,92px);
    padding-right:clamp(54px,6vw,110px);
    display:flex;
    flex-direction:column;
    justify-content:center;
    color:#fff;
    background:linear-gradient(118deg,#0c2638 0%,#112b3d 72%,#20282d 100%);
    overflow:visible;
    isolation:isolate;
}

.home-proof-assurance .home-proof-intro::after {
    content:"";
    position:absolute;
    z-index:-1;
    top:0;
    right:-36px;
    width:74px;
    height:100%;
    background:#20282d;
    transform:skewX(14deg);
    transform-origin:bottom;
}

.home-proof-assurance .home-proof-intro-kicker {
    display:block;
    margin:0 0 7px;
    color:#fff;
    font-size:9px;
    line-height:1;
    font-weight:800;
    letter-spacing:1.55px;
    text-transform:uppercase;
}

.home-proof-assurance .home-proof-intro strong {
    display:block;
    margin:0;
    color:#fff;
    font-size:19px;
    line-height:1.08;
    font-weight:800;
    letter-spacing:-.55px;
}

.home-proof-assurance .home-proof-intro i {
    display:block;
    width:31px;
    height:3px;
    margin-top:14px;
    background:var(--orange);
    border-radius:99px;
}

.home-proof-assurance .home-proof-grid {
    min-width:0;
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    align-items:stretch;
    padding:0 10px 0 42px;
}

.home-proof-assurance .home-proof-item {
    min-width:0;
    min-height:124px;
    padding:20px clamp(15px,2.1vw,34px);
    display:flex;
    flex-direction:row;
    align-items:center;
    justify-content:flex-start;
    gap:14px;
    border:0;
    background:transparent;
}

.home-proof-assurance .home-proof-item + .home-proof-item {
    position:relative;
}

.home-proof-assurance .home-proof-item + .home-proof-item::after {
    content:"";
    position:absolute;
    left:0;
    top:29px;
    bottom:29px;
    width:1px;
    background:#dce2e6;
}

.home-proof-assurance .home-proof-item::before {
    display:none;
}

.home-proof-assurance .home-proof-icon {
    width:40px;
    height:40px;
    flex:0 0 40px;
    display:grid;
    place-items:center;
    border-radius:50%;
    color:var(--orange);
    background:#fff6ed;
    border:1px solid #ffe0c3;
}

.home-proof-assurance .home-proof-icon svg {
    width:17px;
    height:17px;
    fill:none;
    stroke:currentColor;
    stroke-width:1.55;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.home-proof-assurance .home-proof-content {
    min-width:0;
}

.home-proof-assurance .home-proof-label {
    display:block;
    margin-bottom:5px;
    color:var(--orange);
    font-size:8px;
    line-height:1.15;
    font-weight:800;
    letter-spacing:1.05px;
    text-transform:uppercase;
    white-space:nowrap;
}

.home-proof-assurance .home-proof-content strong {
    display:block;
    color:#111417;
    font-size:15px;
    line-height:1.2;
    font-weight:800;
    letter-spacing:-.25px;
    white-space:nowrap;
}

.home-proof-assurance .home-proof-edge {
    position:relative;
    min-width:30px;
    height:100%;
    overflow:hidden;
    background:#0c2638;
    clip-path:polygon(55% 0,100% 0,100% 100%,0 100%);
}

.home-proof-assurance .home-proof-edge::before {
    content:"";
    position:absolute;
    inset:0 auto 0 0;
    width:12px;
    background:var(--orange);
    transform:skewX(-16deg) translateX(4px);
    transform-origin:top;
}

@media (max-width:1100px) {
    .home-proof-assurance .home-proof-assurance-shell {
        grid-template-columns:245px minmax(0,1fr) 24px;
    }
    .home-proof-assurance .home-proof-intro {
        padding-left:32px;
        padding-right:52px;
    }
    .home-proof-assurance .home-proof-grid {
        padding-left:34px;
    }
    .home-proof-assurance .home-proof-item {
        padding-left:14px;
        padding-right:14px;
        gap:10px;
    }
    .home-proof-assurance .home-proof-icon {
        width:36px;
        height:36px;
        flex-basis:36px;
    }
    .home-proof-assurance .home-proof-content strong {
        font-size:13px;
    }
}

@media (max-width:860px) {
    .home-proof-assurance .home-proof-assurance-shell {
        grid-template-columns:1fr;
    }
    .home-proof-assurance .home-proof-intro {
        padding:23px 30px;
    }
    .home-proof-assurance .home-proof-intro::after {
        display:none;
    }
    .home-proof-assurance .home-proof-grid {
        grid-template-columns:repeat(2,minmax(0,1fr));
        padding:0;
    }
    .home-proof-assurance .home-proof-item {
        min-height:92px;
        padding:18px 24px;
        border-bottom:1px solid #e4e8eb;
    }
    .home-proof-assurance .home-proof-item + .home-proof-item::after {
        display:none;
    }
    .home-proof-assurance .home-proof-item:nth-child(odd) {
        border-right:1px solid #e4e8eb;
    }
    .home-proof-assurance .home-proof-edge {
        display:none;
    }
}

@media (max-width:520px) {
    .home-proof-assurance .home-proof-intro {
        padding:22px 20px;
    }
    .home-proof-assurance .home-proof-grid {
        grid-template-columns:1fr;
    }
    .home-proof-assurance .home-proof-item {
        min-height:78px;
        padding:16px 20px;
        border-right:0!important;
    }
    .home-proof-assurance .home-proof-item:last-child {
        border-bottom:0;
    }
}

/* ===== FINAL REFINEMENT — Journey / Assurance strip ===== */ .home-proof-strip.home-proof-assurance {
    position:relative;
    isolation:isolate;
    background:#f7f9fa;
    border-top:1px solid #e6eaed;
    border-bottom:1px solid #dce2e6;
    box-shadow:0 10px 28px rgba(12,38,56,.035);
}

.home-proof-assurance .home-proof-assurance-shell {
    min-height:116px;
    background:linear-gradient(90deg,#fff 0%,#fbfcfd 58%,#f5f8fa 100%);
}

.home-proof-assurance .home-proof-intro {
    background:linear-gradient(120deg,#09283b 0%,#0d3148 70%,#172e3c 100%);
    padding-top:22px;
    padding-bottom:22px;
}

.home-proof-assurance .home-proof-intro:before {
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    background:linear-gradient(115deg,transparent 0 63%,rgba(255,255,255,.045) 63% 100%);
}

.home-proof-assurance .home-proof-intro-kicker, .home-proof-assurance .home-proof-intro strong, .home-proof-assurance .home-proof-intro i {
    position:relative;
    z-index:2
}

.home-proof-assurance .home-proof-intro-kicker {
    font-size:8px;
    letter-spacing:1.7px;
    margin-bottom:7px
}

.home-proof-assurance .home-proof-intro strong {
    font-size:20px;
    line-height:1.08;
    letter-spacing:-.65px
}

.home-proof-assurance .home-proof-intro i {
    width:31px;
    height:3px;
    margin-top:13px
}

.home-proof-assurance .home-proof-grid {
    align-items:center
}

.home-proof-assurance .home-proof-item {
    min-height:116px;
    padding-top:18px;
    padding-bottom:18px;
    transition:background .22s ease;
}

.home-proof-assurance .home-proof-item:hover {
    background:rgba(255,255,255,.72)
}

.home-proof-assurance .home-proof-item + .home-proof-item::after {
    top:26px;
    bottom:26px;
    background:#dfe4e7
}

.home-proof-assurance .home-proof-icon {
    width:42px;
    height:42px;
    flex-basis:42px;
    background:#fff7ef;
    border:1px solid #ffdfc0;
    box-shadow:0 5px 15px rgba(244,122,0,.07),inset 0 0 0 4px rgba(255,255,255,.55);
    transition:transform .22s ease,background .22s ease,border-color .22s ease;
}

.home-proof-assurance .home-proof-item:hover .home-proof-icon {
    transform:translateY(-2px);
    background:#fff3e6;
    border-color:#ffd0a2;
}

.home-proof-assurance .home-proof-icon svg {
    width:17px;
    height:17px;
    stroke-width:1.65
}

.home-proof-assurance .home-proof-label {
    font-size:7.5px!important;
    letter-spacing:1.15px!important;
    margin-bottom:6px!important
}

.home-proof-assurance .home-proof-content strong {
    font-size:15px;
    letter-spacing:-.32px
}

.home-proof-assurance .home-proof-edge {
    background:#0b2b40
}

.home-proof-assurance .home-proof-edge::before {
    background:linear-gradient(180deg,#ff8b13,#f47a00)
}

@media(max-width:1100px) {
    .home-proof-assurance .home-proof-assurance-shell {
        min-height:108px
    }
    .home-proof-assurance .home-proof-item {
        min-height:108px
    }
}

@media(max-width:860px) {
    .home-proof-strip.home-proof-assurance {
        box-shadow:none
    }
    .home-proof-assurance .home-proof-assurance-shell {
        min-height:0
    }
    .home-proof-assurance .home-proof-intro {
        padding:22px 28px;
        background:linear-gradient(115deg,#09283b,#12364c)
    }
    .home-proof-assurance .home-proof-grid {
        background:#fff
    }
    .home-proof-assurance .home-proof-item {
        min-height:88px
    }
}

@media(max-width:520px) {
    .home-proof-assurance .home-proof-intro strong {
        font-size:19px
    }
    .home-proof-assurance .home-proof-item {
        min-height:76px;
        gap:12px
    }
    .home-proof-assurance .home-proof-icon {
        width:38px;
        height:38px;
        flex-basis:38px
    }
    .home-proof-assurance .home-proof-content strong {
        font-size:14px
    }
}

/* ===== Homepage transition after Key Highlights strip removal ===== */ .home-hero {
    margin-bottom:0;
}

.home-hero + .home-industries {
    margin-top:0;
    border-top:0;
}

.home-hero + .home-industries.section {
    padding-top:72px;
}

@media (max-width:700px) {
    .home-hero + .home-industries.section {
        padding-top:54px;
    }
}

/* ===== Industries We Serve — Borderless Editorial Final ===== */ .home-industries {
    background:#fff;
    overflow:hidden;
}

.home-industries .section-intro-row {
    margin-bottom:32px;
}

.industry-showcase {
    display:grid;
    grid-template-columns:repeat(12,minmax(0,1fr));
    column-gap:22px;
    row-gap:34px;
}

.industry-showcase-card, .industry-showcase-card:nth-child(n+5) {
    grid-column:span 3;
    min-width:0;
    background:transparent;
    border:0;
    border-radius:0;
    overflow:visible;
    box-shadow:none;
    transition:none;
}

.industry-showcase-card:hover {
    transform:none;
    border-color:transparent;
    box-shadow:none;
}

.industry-showcase-media {
    height:188px;
    position:relative;
    overflow:hidden;
    border-radius:10px;
    background:#eceeeb;
}

.industry-showcase-media:after {
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(180deg,rgba(10,15,18,.12) 0%,transparent 38%,rgba(10,15,18,.08) 100%);
    pointer-events:none;
}

.industry-showcase-media img {
    width:100%;
    height:100%;
    display:block;
    object-fit:cover;
    filter:saturate(.92) contrast(1.02);
    transform:scale(1.002);
    transition:transform .5s cubic-bezier(.2,.7,.2,1),filter .3s ease;
}

.industry-showcase-card:hover .industry-showcase-media img {
    transform:scale(1.035);
    filter:saturate(1) contrast(1.03);
}

.industry-showcase-index {
    position:absolute;
    z-index:2;
    top:14px;
    left:15px;
    padding:0;
    background:transparent;
    border:0;
    border-radius:0;
    box-shadow:none;
    color:#fff;
    font-size:25px;
    line-height:1;
    font-weight:800;
    letter-spacing:-1px;
    text-shadow:0 2px 14px rgba(0,0,0,.28);
}

.industry-showcase-index:after {
    content:"/";
    margin-left:7px;
    color:var(--orange);
    font-size:17px;
    font-weight:700;
}

.industry-showcase-code {
    display:none!important
}

.industry-showcase-body {
    min-height:0;
    display:block;
    padding:13px 5px 0;
}

.industry-showcase-title-row {
    display:flex;
    align-items:center;
    gap:10px;
}

.industry-showcase-body h3 {
    margin:0;
    color:var(--ink);
    font-size:15px;
    line-height:1.35;
    letter-spacing:-.2px;
}

.industry-showcase-arrow {
    flex:0 0 auto;
    display:inline-flex!important;
    align-items:center;
    justify-content:center;
    margin:0!important;
    padding:0!important;
    color:var(--orange)!important;
    text-decoration:none;
    font-size:17px!important;
    line-height:1;
    font-weight:700!important;
    transition:transform .2s ease!important;
}

.industry-showcase-arrow:hover {
    transform:translateX(3px)
}

.industry-showcase-body p {
    margin:7px 0 0;
    max-width:95%;
    color:var(--muted);
    font-size:10.5px;
    line-height:1.6;
}

@media(min-width:1025px) {
    .industry-showcase-card:nth-child(-n+3) {
        grid-column:span 4
    }
    .industry-showcase-card:nth-child(n+4) {
        grid-column:span 3
    }
}

@media(max-width:1024px) {
    .industry-showcase {
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:28px 18px
    }
    .industry-showcase-card, .industry-showcase-card:nth-child(n+5), .industry-showcase-card:last-child {
        grid-column:auto
    }
    .industry-showcase-card:last-child .industry-showcase-media, .industry-showcase-media {
        height:205px
    }
}

@media(max-width:700px) {
    .home-industries .section-intro-row {
        margin-bottom:24px
    }
    .industry-showcase {
        grid-template-columns:1fr;
        gap:27px
    }
    .industry-showcase-card, .industry-showcase-card:nth-child(n+5), .industry-showcase-card:last-child {
        grid-column:auto
    }
    .industry-showcase-media, .industry-showcase-card:last-child .industry-showcase-media {
        height:215px
    }
    .industry-showcase-body {
        padding:12px 2px 0
    }
    .industry-showcase-index {
        top:13px;
        left:14px;
        font-size:24px
    }
    .industry-showcase-body h3 {
        font-size:15.5px
    }
    .industry-showcase-body p {
        max-width:none;
        font-size:10.8px
    }
}

/* ===== Featured Products — balanced content & action spacing ===== */ .home-product-body {
    min-height:210px;
    padding:19px 18px 17px;
}

.home-product-body p {
    flex:0 0 auto;
    margin-bottom:0;
}

.home-product-actions {
    margin-top:auto;
    padding-top:22px;
}

@media(max-width:700px) {
    .home-product-body {
        min-height:auto;
    }
    .home-product-actions {
        margin-top:20px;
        padding-top:0;
    }
}

/* ===== Homepage credentials: text-first brand presentation ===== */ .home-certifications {
    border-top:1px solid var(--line);
    background:#f5f5f3
}

.credential-brand-grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:16px;
    margin-top:34px
}

.credential-brand-card {
    position:relative;
    min-height:220px;
    padding:22px 22px 18px;
    background:#fff;
    border:1px solid #e2e4e5;
    border-radius:12px;
    text-decoration:none;
    display:flex;
    flex-direction:column;
    overflow:hidden;
    transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease
}

.credential-brand-card:before {
    content:"";
    position:absolute;
    left:0;
    top:0;
    width:3px;
    height:0;
    background:var(--orange);
    transition:height .28s ease
}

.credential-brand-card:hover {
    transform:translateY(-3px);
    border-color:#d5d8da;
    box-shadow:0 16px 36px rgba(19,21,23,.07)
}

.credential-brand-card:hover:before {
    height:100%
}

.credential-brand-top {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px
}

.credential-brand-no {
    font-size:10px;
    font-weight:800;
    letter-spacing:1.1px;
    color:#b3b7ba
}

.credential-status {
    display:inline-flex;
    align-items:center;
    gap:6px;
    padding:5px 8px;
    border:1px solid #f3dcc5;
    border-radius:999px;
    color:#a95200;
    background:#fffaf5;
    font-size:8px;
    font-weight:800;
    letter-spacing:.8px;
    text-transform:uppercase
}

.credential-status i {
    width:5px;
    height:5px;
    border-radius:50%;
    background:var(--orange)
}

.credential-brand-main {
    padding:30px 0 26px
}

.credential-brand-label {
    display:block;
    color:var(--orange);
    font-size:8.5px;
    font-weight:800;
    letter-spacing:1.2px;
    text-transform:uppercase;
    margin-bottom:7px
}

.credential-brand-main h3 {
    margin:0;
    color:var(--ink);
    font-size:23px;
    line-height:1.15;
    letter-spacing:-.55px
}

.credential-brand-main p {
    margin:9px 0 0;
    color:var(--muted);
    font-size:10.5px;
    line-height:1.6;
    min-height:0
}

.credential-brand-footer {
    margin-top:auto;
    padding-top:14px;
    border-top:1px solid var(--line);
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px
}

.credential-brand-footer span {
    color:#959a9e;
    font-size:9px
}

.credential-brand-footer strong {
    color:var(--ink);
    font-size:9.5px;
    font-weight:800;
    white-space:nowrap;
    transition:color .2s ease
}

.credential-brand-footer b {
    color:var(--orange);
    font-size:11px;
    margin-left:3px
}

.credential-brand-card:hover .credential-brand-footer strong {
    color:var(--orange)
}

.home-certifications .section-actions {
    margin-top:28px;
    text-align:center
}

@media(max-width:1024px) {
    .credential-brand-grid {
        grid-template-columns:repeat(2,minmax(0,1fr))
    }
}

@media(max-width:700px) {
    .credential-brand-grid {
        grid-template-columns:1fr;
        gap:12px
    }
    .credential-brand-card {
        min-height:195px
    }
    .credential-brand-main {
        padding:24px 0 22px
    }
    .credential-brand-main h3 {
        font-size:21px
    }
    .credential-brand-footer {
        align-items:flex-start;
        flex-direction:column;
        gap:5px
    }
}
/* =========================================================
   REFINED AUTHORIZED PARTNERSHIPS / CREDENTIAL BRAND CARDS
   ========================================================= */

.home-certifications{
    padding-top:64px;
    padding-bottom:64px;
}

.home-certifications .section-intro-row{
    margin-bottom:30px;
}

.credential-brand-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:16px;
}

.credential-brand-card{
    position:relative;
    min-height:164px;
    display:flex;
    flex-direction:column;
    padding:20px 22px 17px;
    background:#fff;
    border:1px solid #e3e5e6;
    border-radius:12px;
    text-decoration:none;
    color:var(--ink);
    overflow:hidden;
    box-shadow:0 5px 18px rgba(19,21,23,.035);
    transition:
        transform .25s ease,
        box-shadow .25s ease,
        border-color .25s ease;
}

.credential-brand-card::before{
    content:"";
    position:absolute;
    left:0;
    top:20px;
    bottom:20px;
    width:3px;
    border-radius:0 4px 4px 0;
    background:var(--orange);
    transform:scaleY(0);
    transform-origin:center;
    transition:transform .25s ease;
}

.credential-brand-card:hover{
    transform:translateY(-3px);
    border-color:#d9dcde;
    box-shadow:0 14px 34px rgba(19,21,23,.075);
}

.credential-brand-card:hover::before{
    transform:scaleY(1);
}

.credential-brand-top{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    margin-bottom:13px;
}

.credential-brand-no{
    color:#a9afb4;
    font-size:10px;
    line-height:1;
    font-weight:800;
    letter-spacing:.9px;
}

.credential-status{
    display:inline-flex;
    align-items:center;
    gap:6px;
    padding:5px 9px;
    border:1px solid rgba(244,122,0,.28);
    border-radius:999px;
    background:#fffaf5;
    color:#b95800;
    font-size:8px;
    line-height:1;
    font-weight:800;
    letter-spacing:.8px;
    text-transform:uppercase;
}

.credential-status i{
    width:5px;
    height:5px;
    flex:0 0 5px;
    border-radius:50%;
    background:var(--orange);
}

.credential-brand-main{
    min-width:0;
}

.credential-brand-label{
    display:none;
}

.credential-brand-main h3{
    margin:0 0 5px;
    font-size:20px;
    line-height:1.2;
    letter-spacing:-.45px;
    font-weight:700;
    color:var(--ink);
}

.credential-brand-main p{
    margin:0;
    color:#858b90;
    font-size:10.5px;
    line-height:1.5;
}

.credential-brand-footer{
    margin-top:auto;
    padding-top:13px;
    border-top:1px solid #eceeef;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
}

.credential-brand-footer > span{
    color:#9aa0a5;
    font-size:9px;
    line-height:1.35;
}

.credential-brand-footer strong{
    display:inline-flex;
    align-items:center;
    gap:5px;
    color:#34373a;
    font-size:9px;
    line-height:1;
    font-weight:700;
    white-space:nowrap;
}

.credential-brand-footer b{
    color:var(--orange);
    font-size:10px;
    transition:transform .2s ease;
}

.credential-brand-card:hover .credential-brand-footer b{
    transform:translate(2px,-2px);
}

.home-certifications .section-actions{
    margin-top:26px;
}

@media (max-width:900px){
    .credential-brand-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}

@media (max-width:600px){
    .home-certifications{
        padding-top:50px;
        padding-bottom:50px;
    }

    .credential-brand-grid{
        grid-template-columns:1fr;
        gap:12px;
    }

    .credential-brand-card{
        min-height:154px;
        padding:18px;
    }

    .credential-brand-main h3{
        font-size:19px;
    }
}


/* === PROCESS Instruments: portrait testimonial carousel === */
.home-testimonials-section{background:#fff;padding:82px 0 92px;overflow:hidden}
.home-testimonials-intro{margin-bottom:64px}
.customer-voice-swiper{overflow:hidden;padding:7px 4px 26px;margin:-7px -4px -26px}
.customer-voice-swiper .swiper-wrapper{align-items:stretch}
.customer-voice-slide{height:auto;padding-top:43px;display:flex}
.customer-voice-card{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;width:100%;min-height:315px;padding:63px 27px 27px;background:#f3f3f2;border:1px solid #ecebea;border-radius:3px;transition:background .3s,box-shadow .3s,transform .3s}
.customer-voice-slide.swiper-slide-active .customer-voice-card{background:#fff;box-shadow:0 12px 36px rgba(20,26,30,.11);transform:translateY(-3px)}
.customer-voice-portrait{position:absolute;top:-43px;left:50%;transform:translateX(-50%);width:86px;height:86px;display:grid;place-items:center;border:5px solid #fff;border-radius:50%;background:#e7eaed;box-shadow:0 4px 14px rgba(20,26,30,.09);overflow:hidden;color:#31404a;font-size:30px;font-weight:800}
.customer-voice-portrait img{width:100%;height:100%;object-fit:cover;display:block}
.customer-voice-quote{font-family:Georgia,serif;font-size:38px;color:var(--orange);line-height:.7;height:22px}
.customer-voice-card blockquote{font-family:'Manrope',Arial,sans-serif;font-size:12.5px;line-height:1.85;font-weight:500;color:#414448;margin:12px 0 0;flex:1}
.customer-voice-quote-end{align-self:flex-end;height:18px;margin:0 12px 6px 0}
.customer-voice-person{padding-top:12px;display:flex;flex-direction:column;align-items:center;gap:3px}
.customer-voice-person strong{font-size:13px;font-weight:800;color:var(--orange)}
.customer-voice-person span{font-size:11px;font-weight:600;color:#42464a}
.customer-voice-person small{font-size:10px;color:#898e92}
.customer-voice-controls{display:flex;align-items:center;justify-content:center;gap:18px;margin-top:25px}
.customer-voice-prev,.customer-voice-next{width:34px;height:34px;border-radius:50%;border:1px solid #dedede;background:#fff;color:#222;font-size:17px;cursor:pointer;transition:.2s}
.customer-voice-prev:hover,.customer-voice-next:hover{background:var(--orange);border-color:var(--orange);color:#fff}
.customer-voice-pagination{display:flex;align-items:center;gap:6px;width:auto!important}
.customer-voice-pagination .swiper-pagination-bullet{margin:0!important;width:7px;height:7px;opacity:1;background:#d6d8da}
.customer-voice-pagination .swiper-pagination-bullet-active{width:22px;border-radius:8px;background:var(--orange)}
@media(max-width:767px){.home-testimonials-section{padding:62px 0 70px}.home-testimonials-intro{margin-bottom:42px}.customer-voice-card{min-height:310px;padding-left:24px;padding-right:24px}.customer-voice-slide.swiper-slide-active .customer-voice-card{transform:none}}
@media(prefers-reduced-motion:reduce){.customer-voice-card{transition:none}}


/* Testimonial carousel: 3-up desktop, 2-up tablet, 1-up mobile */
.home-testimonials-section{padding:78px 0 82px;background:#fff;overflow:hidden}
.home-testimonials-intro{margin-bottom:52px}
.customer-voice-swiper{width:100%;overflow:hidden;padding:48px 3px 8px;margin:0;box-sizing:border-box}
.customer-voice-swiper .swiper-wrapper{display:flex;align-items:stretch}
.customer-voice-swiper .customer-voice-slide{box-sizing:border-box;flex-shrink:0;width:calc((100% - 44px)/3);height:auto;padding-top:0;display:flex}
.customer-voice-card{position:relative;width:100%;min-height:310px;padding:57px 24px 26px;background:#f5f5f4;border:1px solid #ededeb;border-radius:5px;display:flex;flex-direction:column;align-items:center;text-align:center;box-shadow:none;transform:none!important;transition:background .35s,box-shadow .35s}
.customer-voice-slide.swiper-slide-active .customer-voice-card{background:#f5f5f4;box-shadow:none;transform:none}
.customer-voice-portrait{position:absolute;top:-41px;left:50%;transform:translateX(-50%);width:82px;height:82px;border:5px solid white;border-radius:50%;background:#e7eaed;box-shadow:0 5px 20px rgba(0,0,0,.08);display:grid;place-items:center;font-size:29px;font-weight:800;color:#34404a}
.customer-voice-card blockquote{font-size:12.5px;line-height:1.85;color:#414448;margin:13px 0 10px;flex:1}
.customer-voice-quote{font:40px Georgia,serif;color:var(--orange);line-height:1;height:24px}
.customer-voice-quote-end{align-self:flex-end;margin:0 8px 0 0;height:18px}
.customer-voice-person{display:flex;align-items:center;flex-direction:column;gap:4px;padding-top:13px}
.customer-voice-person strong{color:var(--orange);font-size:13px;font-weight:800}
.customer-voice-person span{font-size:11px;color:#444}
.customer-voice-person small{font-size:10px;color:#888}
.customer-voice-controls{display:flex;justify-content:center;align-items:center;gap:16px;margin:25px 0 0}
.customer-voice-prev,.customer-voice-next{width:36px;height:36px;cursor:pointer;border-radius:50%;border:1px solid #ddd;background:#fff;color:#222}
.customer-voice-pagination{display:flex;gap:6px;align-items:center;width:auto!important}
.customer-voice-pagination .swiper-pagination-bullet{width:7px;height:7px;margin:0!important;background:#d4d4d4;opacity:1}
.customer-voice-pagination .swiper-pagination-bullet-active{width:23px;border-radius:9px;background:var(--orange)!important}
.customer-voice-disclaimer{text-align:center;color:#92979b;font-size:10px;margin:16px 0 0}
@media(max-width:991px){.customer-voice-swiper .customer-voice-slide{width:calc((100% - 18px)/2)}}
@media(max-width:600px){.customer-voice-swiper .customer-voice-slide{width:100%}.customer-voice-card{min-height:305px}.home-testimonials-section{padding:60px 0}.home-testimonials-intro{margin-bottom:40px}}

/* ==========================================
   CUSTOMER VOICE - FINAL PREMIUM DESIGN
   ========================================== */

.home-testimonials-section {
  background: #fff !important;
  padding: 80px 0 85px !important;
  overflow: hidden;
}

.home-testimonials-section .container {
  width: min(1220px, calc(100% - 44px));
}

.home-testimonials-intro {
  display: grid !important;
  grid-template-columns: 1.2fr 0.8fr;
  align-items: center;
  gap: 50px;
  margin-bottom: 55px !important;
}

.home-testimonials-intro h2 {
  font-family: 'Manrope', sans-serif;
  font-size: clamp(29px, 3.1vw, 42px);
  font-weight: 800;
  line-height: 1.18;
  letter-spacing: -1.6px;
  color: #202429;
  margin: 12px 0 0;
}

.tv-dot {
  color: #f47a00;
}

.tv-intro-right {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 18px;
}

.tv-intro-right p {
  max-width: 390px;
  margin: 0;
  font-size: 13px;
  line-height: 1.8;
  color: #67717b;
}

.tv-arrows {
  display: flex;
  gap: 12px;
}

.tv-arrows button {
  position: static !important;
  width: 43px;
  height: 43px;
  border: 1px solid #dfe2e4;
  border-radius: 50%;
  background: #fff;
  color: #293038;
  font-size: 22px;
  display: grid;
  place-items: center;
  cursor: pointer;
  transition: all .3s ease;
}

.tv-arrows button:hover {
  border-color: #f47a00;
  color: #f47a00;
  transform: translateY(-2px);
}

.tv-arrows .customer-voice-next {
  border-color: #f47a00;
  color: #f47a00;
}

.tv-arrows button:disabled {
  opacity: .35;
  cursor: not-allowed;
}

/* Swiper */

.home-testimonials-section .customer-voice-swiper {
  width: 100%;
  overflow: hidden;
  margin: 0 !important;
  padding: 8px 3px 34px !important;
}

.customer-voice-swiper .swiper-wrapper {
  align-items: stretch;
}

.home-testimonials-section .customer-voice-slide {
  height: auto !important;
  display: flex !important;
  padding-top: 54px !important;
  box-sizing: border-box;
}

/* Cards */

.home-testimonials-section .customer-voice-card {
  position: relative;
  width: 100%;
  min-height: 340px;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  text-align: left;
  background: #f6f6f6;
  border: 1px solid #f0f0f0;
  border-radius: 10px;
  padding: 0 !important;
  margin: 0;
  box-shadow: none;
  transform: none !important;
  transition:
    background .35s ease,
    box-shadow .35s ease,
    border-color .35s ease;
}

.home-testimonials-section .customer-voice-card:hover {
  background: #fff;
  border-color: #f8c391;
  box-shadow: 0 15px 35px rgba(20, 26, 30, .08);
}

.home-testimonials-section
.customer-voice-slide.swiper-slide-active
.customer-voice-card {
  background: #fff;
  border-top: 3px solid #f47a00;
  box-shadow: 0 12px 30px rgba(20, 26, 30, .075);
}

/* Circular testimonial portrait - individual image files */

.home-testimonials-section .customer-voice-portrait {
  position: absolute;
  z-index: 3;
  top: -54px;
  left: 50%;
  transform: translateX(-50%);
  width: 112px;
  height: 112px;
  border-radius: 50%;
  border: 5px solid #fff;
  background: #e9ecee;
  overflow: hidden;
  box-shadow: 0 5px 18px rgba(0, 0, 0, .09);
}

.home-testimonials-section .customer-voice-portrait img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 18%;
}

/* Inner content */

.home-testimonials-section .tv-card-inner {
  display: flex;
  flex-direction: column;
  width: 100%;
  flex: 1;
  padding: 80px 25px 26px;
}

.home-testimonials-section .customer-voice-quote {
  display: block;
  color: #f47a00;
  font-family: Georgia, serif;
  font-size: 58px;
  line-height: .7;
  font-weight: 700;
  margin: 0 0 15px;
}

.home-testimonials-section .customer-voice-card blockquote {
  margin: 0;
  padding: 0;
  border: 0;
  color: #53606d;
  font-size: 13px;
  line-height: 1.85;
  font-weight: 500;
  flex: 1;
}

.home-testimonials-section .customer-voice-quote-end {
  align-self: flex-end;
  font-size: 43px;
  line-height: 1;
  margin: 6px 0 0;
}

.home-testimonials-section .customer-voice-person {
  width: 100%;
  margin-top: 8px;
  padding-top: 17px;
  border-top: 1px solid #e1e3e5;
  text-align: left;
}

.home-testimonials-section .customer-voice-person strong {
  display: block;
  color: #f47a00;
  font-size: 16px;
  font-weight: 800;
  margin-bottom: 4px;
}

.home-testimonials-section .customer-voice-person span {
  display: block;
  color: #697480;
  font-size: 11px;
  line-height: 1.6;
}

.customer-voice-person i {
  font-style: normal;
  color: #aab0b5;
  margin: 0 5px;
}

/* Pagination */

.home-testimonials-section .customer-voice-pagination {
  position: relative !important;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin: 10px auto 0;
  min-height: 18px;
  transform: none !important;
  left: auto !important;
  bottom: auto !important;
  width: 100%;
}

.home-testimonials-section
.customer-voice-pagination .swiper-pagination-bullet {
  width: 9px;
  height: 9px;
  margin: 0 !important;
  background: #c9cdd0;
  opacity: 1;
  border-radius: 50%;
  transition: all .3s ease;
}

.home-testimonials-section
.customer-voice-pagination .swiper-pagination-bullet-active {
  width: 25px;
  border-radius: 10px;
  background: #f47a00 !important;
}

.customer-voice-disclaimer {
  text-align: center;
  margin: 18px 0 0;
  color: #92999f;
  font-size: 10px;
}

/* Responsive */

@media (max-width: 991px) {
  .home-testimonials-intro {
    grid-template-columns: 1fr;
    gap: 20px;
  }

  .tv-intro-right {
    align-items: flex-start;
  }

  .tv-intro-right p {
    max-width: 100%;
  }

  .home-testimonials-section .customer-voice-card {
    min-height: 360px;
  }
}

@media (max-width: 639px) {
  .home-testimonials-section {
    padding: 60px 0 !important;
  }

  .home-testimonials-intro {
    margin-bottom: 38px !important;
  }

  .home-testimonials-intro h2 {
    font-size: 29px;
    letter-spacing: -1px;
  }

  .home-testimonials-section .customer-voice-card {
    min-height: 325px;
  }

  .home-testimonials-section .tv-card-inner {
    padding: 77px 22px 23px;
  }

  .home-testimonials-section .customer-voice-slide {
    padding-top: 55px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .home-testimonials-section *,
  .home-testimonials-section *::before,
  .home-testimonials-section *::after {
    transition-duration: .01ms !important;
    animation-duration: .01ms !important;
  }
}
