:root {
--primary: #0f4f68;
--primary-dark: #143342;
--secondary: #0f8a9d;
--secondary-soft: rgba(15, 138, 157, 0.12);
--accent: #b7864d;
--cotton: #f4efe6;
--background: #f5f6f4;
--background-alt: #ecefed;
--light: #ffffff;
--text: #2f3e4d;
--muted: #6e7a84;
--border: #dbe4ea;
--shadow: 0 18px 42px rgba(34, 48, 57, 0.08);
--radius: 10px;
}

* {
margin: 0;
padding: 0;
box-sizing: border-box;
}

html {
scroll-behavior: smooth;
}

body.compensate-for-scrollbar{overflow:hidden}.fancybox-active{height:auto}.fancybox-is-hidden{left:-9999px;margin:0;position:absolute!important;top:-9999px;visibility:hidden}.fancybox-container{-webkit-backface-visibility:hidden;height:100%;left:0;outline:none;position:fixed;-webkit-tap-highlight-color:transparent;top:0;-ms-touch-action:manipulation;touch-action:manipulation;transform:translateZ(0);width:100%;z-index:99992}.fancybox-container *{box-sizing:border-box}.fancybox-bg,.fancybox-inner,.fancybox-outer,.fancybox-stage{bottom:0;left:0;position:absolute;right:0;top:0}.fancybox-outer{-webkit-overflow-scrolling:touch;overflow-y:auto}.fancybox-bg{background:#1e1e1e;opacity:0;transition-duration:inherit;transition-property:opacity;transition-timing-function:cubic-bezier(.47,0,.74,.71)}.fancybox-is-open .fancybox-bg{opacity:.9;transition-timing-function:cubic-bezier(.22,.61,.36,1)}.fancybox-caption,.fancybox-infobar,.fancybox-navigation .fancybox-button,.fancybox-toolbar{direction:ltr;opacity:0;position:absolute;transition:opacity .25s ease,visibility 0s ease .25s;visibility:hidden;z-index:99997}.fancybox-show-caption .fancybox-caption,.fancybox-show-infobar .fancybox-infobar,.fancybox-show-nav .fancybox-navigation .fancybox-button,.fancybox-show-toolbar .fancybox-toolbar{opacity:1;transition:opacity .25s ease 0s,visibility 0s ease 0s;visibility:visible}.fancybox-infobar{color:#ccc;font-size:13px;-webkit-font-smoothing:subpixel-antialiased;height:44px;left:0;line-height:44px;min-width:44px;mix-blend-mode:difference;padding:0 10px;pointer-events:none;top:0;-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.fancybox-toolbar{right:0;top:0}.fancybox-stage{direction:ltr;overflow:visible;transform:translateZ(0);z-index:99994}.fancybox-is-open .fancybox-stage{overflow:hidden}.fancybox-slide{-webkit-backface-visibility:hidden;display:none;height:100%;left:0;outline:none;overflow:auto;-webkit-overflow-scrolling:touch;padding:44px;position:absolute;text-align:center;top:0;transition-property:transform,opacity;white-space:normal;width:100%;z-index:99994}.fancybox-slide:before{content:"";display:inline-block;font-size:0;height:100%;vertical-align:middle;width:0}.fancybox-is-sliding .fancybox-slide,.fancybox-slide--current,.fancybox-slide--next,.fancybox-slide--previous{display:block}.fancybox-slide--image{overflow:hidden;padding:44px 0}.fancybox-slide--image:before{display:none}.fancybox-slide--html{padding:6px}.fancybox-content{background:#fff;display:inline-block;margin:0;max-width:100%;overflow:auto;-webkit-overflow-scrolling:touch;padding:44px;position:relative;text-align:left;vertical-align:middle}.fancybox-slide--image .fancybox-content{animation-timing-function:cubic-bezier(.5,0,.14,1);-webkit-backface-visibility:hidden;background:transparent;background-repeat:no-repeat;background-size:100% 100%;left:0;max-width:none;overflow:visible;padding:0;position:absolute;top:0;transform-origin:top left;transition-property:transform,opacity;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;z-index:99995}.fancybox-can-zoomOut .fancybox-content{cursor:zoom-out}.fancybox-can-zoomIn .fancybox-content{cursor:zoom-in}.fancybox-can-pan .fancybox-content,.fancybox-can-swipe .fancybox-content{cursor:grab}.fancybox-is-grabbing .fancybox-content{cursor:grabbing}.fancybox-container [data-selectable=true]{cursor:text}.fancybox-image,.fancybox-spaceball{background:transparent;border:0;height:100%;left:0;margin:0;max-height:none;max-width:none;padding:0;position:absolute;top:0;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;width:100%}.fancybox-spaceball{z-index:1}.fancybox-slide--iframe .fancybox-content,.fancybox-slide--map .fancybox-content,.fancybox-slide--pdf .fancybox-content,.fancybox-slide--video .fancybox-content{height:100%;overflow:visible;padding:0;width:100%}.fancybox-slide--video .fancybox-content{background:#000}.fancybox-slide--map .fancybox-content{background:#e5e3df}.fancybox-slide--iframe .fancybox-content{background:#fff}.fancybox-iframe,.fancybox-video{background:transparent;border:0;display:block;height:100%;margin:0;overflow:hidden;padding:0;width:100%}.fancybox-iframe{left:0;position:absolute;top:0}.fancybox-error{background:#fff;cursor:default;max-width:400px;padding:40px;width:100%}.fancybox-error p{color:#444;font-size:16px;line-height:20px;margin:0;padding:0}.fancybox-button{background:rgba(30,30,30,.6);border:0;border-radius:0;box-shadow:none;cursor:pointer;display:inline-block;height:44px;margin:0;padding:10px;position:relative;transition:color .2s;vertical-align:top;visibility:inherit;width:44px}.fancybox-button,.fancybox-button:link,.fancybox-button:visited{color:#ccc}.fancybox-button:hover{color:#fff}.fancybox-button:focus{outline:none}.fancybox-button.fancybox-focus{outline:1px dotted}.fancybox-button[disabled],.fancybox-button[disabled]:hover{color:#888;cursor:default;outline:none}.fancybox-button div{height:100%}.fancybox-button svg{display:block;height:100%;overflow:visible;position:relative;width:100%}.fancybox-button svg path{fill:currentColor;stroke-width:0}.fancybox-button--fsenter svg:nth-child(2),.fancybox-button--fsexit svg:first-child,.fancybox-button--pause svg:first-child,.fancybox-button--play svg:nth-child(2){display:none}.fancybox-progress{background:#ff5268;height:2px;left:0;position:absolute;right:0;top:0;transform:scaleX(0);transform-origin:0;transition-property:transform;transition-timing-function:linear;z-index:99998}.fancybox-close-small{background:transparent;border:0;border-radius:0;color:#ccc;cursor:pointer;opacity:.8;padding:8px;position:absolute;right:-12px;top:-44px;z-index:401}.fancybox-close-small:hover{color:#fff;opacity:1}.fancybox-slide--html .fancybox-close-small{color:currentColor;padding:10px;right:0;top:0}.fancybox-slide--image.fancybox-is-scaling .fancybox-content{overflow:hidden}.fancybox-is-scaling .fancybox-close-small,.fancybox-is-zoomable.fancybox-can-pan .fancybox-close-small{display:none}.fancybox-navigation .fancybox-button{background-clip:content-box;height:100px;opacity:0;position:absolute;top:calc(50% - 50px);width:70px}.fancybox-navigation .fancybox-button div{padding:7px}.fancybox-navigation .fancybox-button--arrow_left{left:0;left:env(safe-area-inset-left);padding:31px 26px 31px 6px}.fancybox-navigation .fancybox-button--arrow_right{padding:31px 6px 31px 26px;right:0;right:env(safe-area-inset-right)}.fancybox-caption{background:linear-gradient(0deg,rgba(0,0,0,.85) 0,rgba(0,0,0,.3) 50%,rgba(0,0,0,.15) 65%,rgba(0,0,0,.075) 75.5%,rgba(0,0,0,.037) 82.85%,rgba(0,0,0,.019) 88%,transparent);bottom:0;color:#eee;font-size:14px;font-weight:400;left:0;line-height:1.5;padding:75px 44px 25px;pointer-events:none;right:0;text-align:center;z-index:99996}@supports (padding:max(0px)){.fancybox-caption{padding:75px max(44px,env(safe-area-inset-right)) max(25px,env(safe-area-inset-bottom)) max(44px,env(safe-area-inset-left))}}.fancybox-caption--separate{margin-top:-50px}.fancybox-caption__body{max-height:50vh;overflow:auto;pointer-events:all}.fancybox-caption a,.fancybox-caption a:link,.fancybox-caption a:visited{color:#ccc;text-decoration:none}.fancybox-caption a:hover{color:#fff;text-decoration:underline}.fancybox-loading{animation:a 1s linear infinite;background:transparent;border:4px solid #888;border-bottom-color:#fff;border-radius:50%;height:50px;left:50%;margin:-25px 0 0 -25px;opacity:.7;padding:0;position:absolute;top:50%;width:50px;z-index:99999}@keyframes a{to{transform:rotate(1turn)}}.fancybox-animated{transition-timing-function:cubic-bezier(0,0,.25,1)}.fancybox-fx-slide.fancybox-slide--previous{opacity:0;transform:translate3d(-100%,0,0)}.fancybox-fx-slide.fancybox-slide--next{opacity:0;transform:translate3d(100%,0,0)}.fancybox-fx-slide.fancybox-slide--current{opacity:1;transform:translateZ(0)}.fancybox-fx-fade.fancybox-slide--next,.fancybox-fx-fade.fancybox-slide--previous{opacity:0;transition-timing-function:cubic-bezier(.19,1,.22,1)}.fancybox-fx-fade.fancybox-slide--current{opacity:1}.fancybox-fx-zoom-in-out.fancybox-slide--previous{opacity:0;transform:scale3d(1.5,1.5,1.5)}.fancybox-fx-zoom-in-out.fancybox-slide--next{opacity:0;transform:scale3d(.5,.5,.5)}.fancybox-fx-zoom-in-out.fancybox-slide--current{opacity:1;transform:scaleX(1)}.fancybox-fx-rotate.fancybox-slide--previous{opacity:0;transform:rotate(-1turn)}.fancybox-fx-rotate.fancybox-slide--next{opacity:0;transform:rotate(1turn)}.fancybox-fx-rotate.fancybox-slide--current{opacity:1;transform:rotate(0deg)}.fancybox-fx-circular.fancybox-slide--previous{opacity:0;transform:scale3d(0,0,0) translate3d(-100%,0,0)}.fancybox-fx-circular.fancybox-slide--next{opacity:0;transform:scale3d(0,0,0) translate3d(100%,0,0)}.fancybox-fx-circular.fancybox-slide--current{opacity:1;transform:scaleX(1) translateZ(0)}.fancybox-fx-tube.fancybox-slide--previous{transform:translate3d(-100%,0,0) scale(.1) skew(-10deg)}.fancybox-fx-tube.fancybox-slide--next{transform:translate3d(100%,0,0) scale(.1) skew(10deg)}.fancybox-fx-tube.fancybox-slide--current{transform:translateZ(0) scale(1)}@media (max-height:576px){.fancybox-slide{padding-left:6px;padding-right:6px}.fancybox-slide--image{padding:6px 0}.fancybox-close-small{right:-6px}.fancybox-slide--image .fancybox-close-small{background:#4e4e4e;color:#f2f4f6;height:36px;opacity:1;padding:6px;right:0;top:0;width:36px}.fancybox-caption{padding-left:12px;padding-right:12px}@supports (padding:max(0px)){.fancybox-caption{padding-left:max(12px,env(safe-area-inset-left));padding-right:max(12px,env(safe-area-inset-right))}}}.fancybox-share{background:#f4f4f4;border-radius:3px;max-width:90%;padding:30px;text-align:center}.fancybox-share h1{color:#222;font-size:35px;font-weight:700;margin:0 0 20px}.fancybox-share p{margin:0;padding:0}.fancybox-share__button{border:0;border-radius:3px;display:inline-block;font-size:14px;font-weight:700;line-height:40px;margin:0 5px 10px;min-width:130px;padding:0 15px;text-decoration:none;transition:all .2s;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;white-space:nowrap}.fancybox-share__button:link,.fancybox-share__button:visited{color:#fff}.fancybox-share__button:hover{text-decoration:none}.fancybox-share__button--fb{background:#3b5998}.fancybox-share__button--fb:hover{background:#344e86}.fancybox-share__button--pt{background:#bd081d}.fancybox-share__button--pt:hover{background:#aa0719}.fancybox-share__button--tw{background:#1da1f2}.fancybox-share__button--tw:hover{background:#0d95e8}.fancybox-share__button svg{height:25px;margin-right:7px;position:relative;top:-1px;vertical-align:middle;width:25px}.fancybox-share__button svg path{fill:#fff}.fancybox-share__input{background:transparent;border:0;border-bottom:1px solid #d7d7d7;border-radius:0;color:#5d5b5b;font-size:14px;margin:10px 0 0;outline:none;padding:10px 15px;width:100%}.fancybox-thumbs{background:#ddd;bottom:0;display:none;margin:0;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar;padding:2px 2px 4px;position:absolute;right:0;-webkit-tap-highlight-color:rgba(0,0,0,0);top:0;width:212px;z-index:99995}.fancybox-thumbs-x{overflow-x:auto;overflow-y:hidden}.fancybox-show-thumbs .fancybox-thumbs{display:block}.fancybox-show-thumbs .fancybox-inner{right:212px}.fancybox-thumbs__list{font-size:0;height:100%;list-style:none;margin:0;overflow-x:hidden;overflow-y:auto;padding:0;position:absolute;position:relative;white-space:nowrap;width:100%}.fancybox-thumbs-x .fancybox-thumbs__list{overflow:hidden}.fancybox-thumbs-y .fancybox-thumbs__list::-webkit-scrollbar{width:7px}.fancybox-thumbs-y .fancybox-thumbs__list::-webkit-scrollbar-track{background:#fff;border-radius:10px;box-shadow:inset 0 0 6px rgba(0,0,0,.3)}.fancybox-thumbs-y .fancybox-thumbs__list::-webkit-scrollbar-thumb{background:#2a2a2a;border-radius:10px}.fancybox-thumbs__list a{-webkit-backface-visibility:hidden;backface-visibility:hidden;background-color:rgba(0,0,0,.1);background-position:50%;background-repeat:no-repeat;background-size:cover;cursor:pointer;float:left;height:75px;margin:2px;max-height:calc(100% - 8px);max-width:calc(50% - 4px);outline:none;overflow:hidden;padding:0;position:relative;-webkit-tap-highlight-color:transparent;width:100px}.fancybox-thumbs__list a:before{border:6px solid #ff5268;bottom:0;content:"";left:0;opacity:0;position:absolute;right:0;top:0;transition:all .2s cubic-bezier(.25,.46,.45,.94);z-index:99991}.fancybox-thumbs__list a:focus:before{opacity:.5}.fancybox-thumbs__list a.fancybox-thumbs-active:before{opacity:1}@media (max-width:576px){.fancybox-thumbs{width:110px}.fancybox-show-thumbs .fancybox-inner{right:110px}.fancybox-thumbs__list a{max-width:calc(100% - 10px)}}


body {
font-family: "Helvetica Neue", Arial, sans-serif;
line-height: 1.6;
color: var(--text);
background:
  linear-gradient(90deg, rgba(20, 51, 66, 0.035) 1px, transparent 1px),
  linear-gradient(180deg, #faf9f5 0%, #f5f6f4 100%);
background-size: 72px 72px, auto;
}

a {
color: var(--primary);
text-decoration: none;
transition: color 0.25s ease, border-color 0.25s ease, background-color 0.25s ease;
}

a:hover {
color: var(--secondary);
}

header {
background: rgba(250, 249, 245, 0.92);
border-bottom: 1px solid rgba(200, 207, 207, 0.85);
position: sticky;
top: 0;
z-index: 1000;
backdrop-filter: blur(12px);
box-shadow: 0 8px 24px rgba(0, 46, 77, 0.04);
}

.header-inner {
max-width: 1240px;
margin: 0 auto;
padding: 0.9rem 1rem;
display: flex;
align-items: center;
justify-content: space-between;
gap: 2rem;
}

.logo-wrapper {
display: flex;
align-items: center;
flex: 0 0 auto;
}

.logo-wrapper img {
height: 42px;
width: auto;
display: block;
}

nav ul {
list-style: none;
display: flex;
gap: 1.15rem;
font-size: 0.9rem;
font-weight: 600;
flex-wrap: wrap;
justify-content: flex-end;
}

nav a {
padding: 0.35rem 0;
border-bottom: 2px solid transparent;
}

nav a:hover,
nav a:focus {
border-color: var(--secondary);
color: var(--secondary);
}

.hero {
position: relative;
min-height: 650px;
display: flex;
align-items: center;

color: var(--light);
padding: 5rem 1rem;
overflow: hidden;
}

.hero::before {
content: "";
position: absolute;
inset: 0;
background:
  linear-gradient(rgba(255, 255, 255, 0.06) 1px, transparent 1px),
  linear-gradient(90deg, rgba(255, 255, 255, 0.06) 1px, transparent 1px);
background-size: 64px 64px;
-webkit-mask-image: linear-gradient(90deg, black 0%, transparent 78%);
mask-image: linear-gradient(90deg, black 0%, transparent 78%);
pointer-events: none;
}

.hero-inner {
width: 100%;
max-width: 1240px;
margin: 0 auto;
position: relative;
z-index: 1;
}

.hero-content {
max-width: 760px;
}

.hero-eyebrow {
display: inline-flex;
align-items: center;
gap: 0.5rem;
margin-bottom: 1rem;
padding: 0.4rem 0.85rem;
border-left: 3px solid var(--accent);
background: rgba(255, 255, 255, 0.1);
font-size: 0.8rem;
font-weight: 700;
letter-spacing: 0.12em;
text-transform: uppercase;
color: rgba(255, 255, 255, 0.9);
}

.hero h1 {
font-size: clamp(2.65rem, 4.5vw + 1rem, 5rem);
line-height: 1.03;
font-weight: 800;
margin-bottom: 1.2rem;
max-width: 640px;
}

.hero p {
font-size: 1.12rem;
max-width: 610px;
margin-bottom: 2rem;
color: rgba(255, 255, 255, 0.94);
}

.hero-actions {
display: flex;
flex-wrap: wrap;
gap: 0.9rem;
}

.hero-proof {
display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
max-width: 680px;
margin-top: 3rem;
border-top: 1px solid rgba(255, 255, 255, 0.26);
border-bottom: 1px solid rgba(255, 255, 255, 0.2);
}

.hero-proof div {
padding: 1rem 1.1rem 1rem 0;
}

.hero-proof strong {
display: block;
color: var(--light);
font-size: 1.45rem;
line-height: 1.1;
}

.hero-proof span {
display: block;
margin-top: 0.35rem;
color: rgba(255, 255, 255, 0.78);
font-size: 0.84rem;
line-height: 1.35;
}

.hero .cta,
.hero .ghost-btn {
display: inline-block;
padding: 0.9rem 1.55rem;
border-radius: 10px;
font-weight: 700;
text-transform: uppercase;
letter-spacing: 0.04em;
}

.hero .cta {
background-color: var(--light);
color: var(--primary);
box-shadow: var(--shadow);
}

.hero .cta:hover {
background-color: var(--secondary);
color: var(--light);
}

.hero .ghost-btn {
color: var(--light);
border: 1px solid rgba(255, 255, 255, 0.3);
background: rgba(255, 255, 255, 0.06);
}

.hero .ghost-btn:hover {
background: rgba(255, 255, 255, 0.14);
}

section {
padding: 4.5rem 1rem;
}

.container {
max-width: 1240px;
margin: 0 auto;
}

.section-head {
display: flex;
flex-direction: column;
align-items: flex-start;
text-align: left;
gap: 0.75rem;
margin-bottom: 2.4rem;
}

.eyebrow {
display: inline-flex;
align-items: center;
gap: 0.45rem;
padding: 0.35rem 0.8rem;
border-radius: 0;
border-left: 3px solid var(--accent);
background: transparent;
color: var(--primary);
font-size: 0.78rem;
font-weight: 700;
letter-spacing: 0.08em;
text-transform: uppercase;
}

h1.section-title ,
h2.section-title {
font-size: clamp(2rem, 1.1rem + 1.8vw, 2.7rem);
color: var(--primary);
font-weight: 800;
line-height: 1.15;
}

.section-subtitle {
max-width: 720px;
color: var(--muted);
}

.section-head.centered {
align-items: center;
text-align: center;
}

.intro-media {
display: grid;
grid-template-columns: 0.95fr 1.05fr;
gap: 2rem;
align-items: stretch;
}

.intro-copy {
background: var(--light);
border-top: 4px solid var(--primary);
padding: 2.2rem;
position: relative;
overflow: hidden;
}

.intro-copy h2 {
color: var(--primary);
font-size: clamp(1.7rem, 1rem + 1.4vw, 2.35rem);
line-height: 1.2;
margin-bottom: 1rem;
}

.intro-copy p {
color: var(--text);
margin-bottom: 1rem;
}

.intro-highlights {
margin-top: 1.5rem;
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 0.85rem;
}

.intro-pill {
display: flex;
align-items: center;
gap: 0.55rem;
padding: 0.8rem 0.95rem;
background: var(--cotton);
border: 1px solid var(--border);
color: var(--primary-dark);
font-size: 0.95rem;
font-weight: 600;
}

.intro-pill::before {
content: "";
width: 10px;
height: 10px;
border-radius: 50%;
background: linear-gradient(180deg, var(--secondary), var(--primary));
flex: 0 0 10px;
}

.intro-visual {
position: relative;
overflow: hidden;
border-radius: var(--radius);
border: 1px solid var(--border);
box-shadow: var(--shadow);
}

.intro-visual img {
width: 100%;
height: 100%;
min-height: 360px;
object-fit: cover;
display: block;
}

.intro-badge {
position: absolute;
left: 1.2rem;
bottom: 1.2rem;
display: inline-flex;
flex-direction: column;
gap: 0.25rem;
background: rgba(255, 255, 255, 0.92);
border: 1px solid rgba(219, 228, 234, 0.95);
padding: 0.95rem 1rem;
border-radius: var(--radius);
box-shadow: 0 10px 26px rgba(0, 46, 77, 0.12);
}

.intro-badge strong {
color: var(--primary);
font-size: 1.1rem;
}

.intro-badge span {
color: var(--muted);
font-size: 0.92rem;
}

.products-grid {
display: grid;
grid-template-columns: 1.15fr 1fr;
gap: 0;
background: var(--light);
border: 1px solid var(--border);
box-shadow: var(--shadow);
}

.product {
position: relative;
background: var(--light);
padding: 1.5rem;
border-right: 1px solid var(--border);
border-bottom: 1px solid var(--border);
overflow: hidden;
}

.product:nth-child(3) {
grid-column: 1 / -1;
}

.product:hover {
background: #fbfaf6;
}

.product::before {
content: none;
}

.product-header {
position: relative;
display: flex;
align-items: center;
justify-content: space-between;
gap: 0.75rem;
min-height: 44px;
margin-bottom: 1rem;
}

.product-title-wrap {
min-width: 0;
}

.product h3 {
font-size: 1.22rem;
color: var(--primary);
line-height: 1.2;
}

.product-icon {
width: 42px;
height: 42px;
border-radius: 4px;
display: flex;
align-items: center;
justify-content: center;
color: var(--light);
background: var(--primary-dark);
font-size: 1.05rem;
flex: 0 0 42px;
}

.product ul {
list-style: none;
padding-left: 0;
position: relative;
z-index: 1;
}

.product li {
display: flex;
align-items: flex-start;
gap: 0.7rem;
margin-bottom: 0.55rem;
color: var(--text);
line-height: 1.45;
}

.product li::before {
content: "";
flex: 0 0 7px;
width: 7px;
height: 7px;
margin-top: 0.55rem;
background: var(--accent);
}

.product-meta {
display: flex;
flex-wrap: wrap;
gap: 0.5rem;
margin-top: 1rem;
}

.product-meta span {
padding: 0.28rem 0.55rem;
background: var(--background-alt);
border: 1px solid var(--border);
color: var(--primary-dark);
font-size: 0.74rem;
font-weight: 700;
text-transform: uppercase;
letter-spacing: 0.05em;
}

.solutions-section {
background: #ffffff;
border-top: 1px solid var(--border);
border-bottom: 1px solid var(--border);
}

.solutions-list {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 0;
border: 1px solid var(--border);
background: var(--light);
}

.solution-item {
display: grid;
gap: 0.8rem;
padding: 1.3rem;
border-right: 1px solid var(--border);
}

.solution-item:last-child {
border-right: 0;
}

.solution-item:hover {
background: #fbfaf6;
}

.solution-item span {
font-weight: 600;
}

.solution-item p {
color: var(--muted);
font-size: 0.9rem;
line-height: 1.5;
}

.solution-icon {
color: var(--accent);
background: transparent;
font-size: 0.88rem;
width: auto;
height: auto;
border-radius: 0;
display: inline-flex;
align-items: center;
justify-content: flex-start;
font-weight: 800;
letter-spacing: 0.08em;
}

.certificates-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
gap: 0;
border: 1px solid var(--border);
background: var(--light);
box-shadow: var(--shadow);
}

.certificate-card {
background-color: var(--light);
border-right: 1px solid var(--border);
border-bottom: 1px solid var(--border);
padding: 1.35rem;
text-align: left;
display: grid;
grid-template-columns: 72px 1fr;
gap: 1rem;
align-items: start;
}

.certificate-card:nth-child(4n) {
border-right: 0;
}

.certificate-card:hover {
background: #fbfaf6;
}

.certificate-card img {
max-width: 72px;
height: auto;
margin: 0;
}

.certificate-label {
display: inline-block;
margin-bottom: 0.8rem;
padding: 0;
border-radius: 0;
background: transparent;
color: var(--primary);
font-size: 0.76rem;
font-weight: 700;
text-transform: uppercase;
letter-spacing: 0.08em;
}

.certificate-card p {
font-size: 0.92rem;
color: var(--text);
margin-bottom: 0.5rem;
}

.integrity-copy a.download,
.certificate-card a.download {
display: inline-flex;
align-items: center;
gap: 0.4rem;
margin-top: 0.55rem;
padding: 0.55rem 0.9rem;
font-size: 0.82rem;
font-weight: 700;
color: var(--primary);
border: 1px solid rgba(0, 76, 109, 0.16);
background: transparent;
}
.integrity-copy a.download:hover,
.certificate-card a.download:hover {
color: var(--light);
background: var(--primary);
border-color: var(--primary);
}

.integrity-section {

border-top: 1px solid var(--border);
border-bottom: 1px solid var(--border);
}

.integrity-copy {
max-width: 900px;
margin: 0 auto;
text-align: left;
background: rgba(255, 255, 255, 0.84);
border: 1px solid rgba(219, 228, 234, 0.95);
padding: 2rem;
box-shadow: var(--shadow);
}

.integrity-copy p {
margin-bottom: 1rem;
}

.gallery-grid {
display: grid;
grid-template-columns: 1.2fr 0.8fr 0.8fr;
gap: 0.9rem;
}

.gallery-item {
position: relative;
overflow: hidden;
border-radius: var(--radius);
border: 1px solid var(--border);
background: var(--light);
box-shadow: 0 12px 30px rgba(0, 46, 77, 0.08);
height: 235px;

}

.gallery-grid img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
transition: transform 0.35s ease;
}

.gallery-item:first-child {
grid-row: span 2;
height: 484px;
}

.gallery-item:first-child img {
height: 100%;
/*min-height: 484px;*/
}

.gallery-item:hover img {
transform: scale(1.04);
}

/*.gallery-item::after {*/
.gallery-item span {
/*content: "Factory view";*/
position: absolute;
left: 0.9rem;
bottom: 0.9rem;
padding: 0.38rem 0.7rem;
border-radius: 999px;
background: rgba(255, 255, 255, 0.88);
color: var(--primary-dark);
font-size: 0.74rem;
font-weight: 700;
letter-spacing: 0.05em;
text-transform: uppercase;
}

.contact-section {
background: linear-gradient(180deg, #ffffff 0%, #f5f6f4 100%);
border-top: 1px solid var(--border);
}

.contact-shell {
background: var(--light);
border: 1px solid var(--border);
box-shadow: var(--shadow);
padding: 2rem;
}

.contact-grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 2rem;
}

.contact-info {
padding-right: 1rem;
}

.contact-info h3 {
color: var(--primary);
margin-bottom: 1rem;
font-size: 1.4rem;
}

.contact-card {
display: flex;
gap: 0.85rem;
align-items: flex-start;
padding: 0.95rem 1rem;
margin-bottom: 0.9rem;
border: 1px solid var(--border);
background: var(--background-alt);
}

.contact-icon {
width: 36px;
height: 36px;
border-radius: 4px;
background: var(--primary-dark);
color: var(--light);
display: inline-flex;
align-items: center;
justify-content: center;
font-weight: 700;
flex: 0 0 36px;
}

.contact-card strong {
display: block;
color: var(--primary);
margin-bottom: 0.2rem;
}

.contact-info p,
.contact-info a {
font-size: 0.95rem;
color: var(--text);
}

.contact-form {
background: #fbfaf6;
border: 1px solid var(--border);
padding: 1.35rem;
}

.contact-form p {
margin-bottom: 1rem;
color: var(--muted);
}

.contact-form form {
display: grid;
gap: 0.75rem;
}
.contact-form textarea{
	height: 101px;
}
.contact-form input,
.contact-form textarea {
padding: 0.85rem 0.95rem;
border: 1px solid var(--border);
border-radius: 4px;
font-size: 0.92rem;
width: 100%;
background: var(--light);
transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.contact-form input:focus,
.contact-form textarea:focus {
outline: none;
border-color: rgba(0, 153, 176, 0.55);
box-shadow: 0 0 0 4px rgba(0, 153, 176, 0.1);
}

.contact-form button {
background: var(--primary);
color: var(--light);
border: none;
padding: 0.92rem 1.5rem;
font-size: 0.92rem;
font-weight: 700;
border-radius: 4px;
cursor: pointer;
transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.contact-form button:hover {
transform: translateY(-1px);
box-shadow: 0 14px 28px rgba(0, 76, 109, 0.18);
}

footer {
background-color: var(--primary-dark);
color: var(--light);
text-align: center;
padding: 1rem;
font-size: 0.82rem;
}

@media (max-width: 900px) {
.intro-highlights {
  grid-template-columns: 1fr;
}

.products-grid,
.solutions-list {
  grid-template-columns: 1fr 1fr;
}

.gallery-grid {
  grid-template-columns: 1fr 1fr;
}

.gallery-item:first-child {
  grid-row: auto;
}

.gallery-item:first-child img {
  min-height: 0;
  /*height: 235px;*/
}
}

@media (min-width: 769px) {
	.hamburger{
		display: none;
	}
}
@media (max-width: 768px) {
.header-inner {
  align-items: flex-start;
  flex-direction: column;
  gap: 0.75rem;
}

nav ul {
  justify-content: flex-start;
}
header nav {
	width: 100%;
	display: none;
}
header nav ul li{
	margin-bottom: 10px;
}
header nav ul{
	display: block;
	text-align: center;
}

.hero {
  min-height: 540px;
  background-position: center!important;
}

.intro-media,
.contact-grid {
  grid-template-columns: 1fr;
}

.hero-proof,
.products-grid,
.solutions-list,
.gallery-grid {
  grid-template-columns: 1fr;
}

.product:nth-child(3) {
  grid-column: auto;
}

.intro-visual img {
  min-height: 280px;
}

.contact-info {
  padding-right: 0;
}

.certificate-card {
  grid-template-columns: 60px 1fr;
}
}


.hamburger {
    font: inherit;
    overflow: visible;
    margin: 0;
    padding: 0px;
    position: absolute;
    top: 24px;
    right: 15px;
    cursor: pointer;
    transition-timing-function: linear;
    transition-duration: .15s;
    transition-property: opacity,-webkit-filter;
    transition-property: opacity,filter;
    transition-property: opacity,filter,-webkit-filter;
    text-transform: none;
    color: inherit;
    border: 0;
    background-color: transparent;   
}

.hamburger-box {
    position: relative;
    display: inline-block;
    width: 30px;
    height: 24px;
}

.hamburger .hamburger-inner, 
.hamburger .hamburger-inner:after, 
.hamburger .hamburger-inner:before {
    background-color: #0f4f68;
    position: absolute;
    width: 30px;
    height: 2px;
    transition-timing-function: ease;
    transition-duration: .15s;
    transition-property: -webkit-transform;
    transition-property: transform;
    transition-property: transform,-webkit-transform;
}

.hamburger--spin .hamburger-inner {
    transition-timing-function: cubic-bezier(.55,.055,.675,.19);
    transition-duration: .3s;
}

.hamburger-inner, .hamburger-inner:after, .hamburger-inner:before {
    position: absolute;
    width: 30px;
    height: 2px;
    transition-timing-function: ease;
    transition-duration: .15s;
    transition-property: -webkit-transform;
    transition-property: transform;
    transition-property: transform,-webkit-transform;
}

.hamburger-inner {
    top: 50%;
    display: block;
    margin-top: -2px;
}

.hamburger--spin .hamburger-inner:before {
    transition: top .1s .34s ease-in,opacity .1s ease-in;
}

.hamburger-inner:before {
    top: -10px;
}

.hamburger-inner:after {
    bottom: -10px;
}

.hamburger-inner:after, .hamburger-inner:before {
    display: block;
    content: '';
}
.hamburger--spin.is-active .hamburger-inner {
    transition-delay: .14s;
    transition-timing-function: cubic-bezier(.215,.61,.355,1);
    -webkit-transform: rotate(225deg);
    transform: rotate(225deg);
}

.hamburger--spin.is-active .hamburger-inner:before {
    top: 0;
    transition: top .1s ease-out,opacity .1s .14s ease-out;
    opacity: 0;
}

.hamburger--spin.is-active .hamburger-inner:after {
    bottom: 0;
    transition: bottom .1s ease-out,-webkit-transform .3s .14s cubic-bezier(.215,.61,.355,1);
    transition: bottom .1s ease-out,transform .3s .14s cubic-bezier(.215,.61,.355,1);
    transition: bottom .1s ease-out,transform .3s .14s cubic-bezier(.215,.61,.355,1),-webkit-transform .3s .14s cubic-bezier(.215,.61,.355,1);
    -webkit-transform: rotate(-90deg);
    transform: rotate(-90deg);
}

.language-switcher {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.2rem;
    border: 1px solid var(--border);
    background: rgba(255, 255, 255, 0.58);
  }

  .language-switcher a {
    padding: 0.28rem 0.45rem;
    color: var(--muted);
    font-size: 0.78rem;
    font-weight: 700;
    line-height: 1;
    text-transform: uppercase;
    border-bottom: 0;
  }

  .language-switcher a:hover,
  .language-switcher a:focus {
    color: var(--primary);
  }

  .language-switcher a.active {
    color: var(--light);
    background: var(--primary);
  }

  @media (max-width: 768px) {
  	.language-switcher{
	    position: absolute;
	    top: 22px;
	    left: 50%;
	    transform: translateX(-50%);
  	}
  }