/* Nutriovit 2026 — editorial private-label design system */
:root {
  --aqua:#25b8b2;
  --accent-rgb:37,184,178;
  --aqua-dark:#168d89;
  --aqua-soft:#e7f8f6;
  --ink:#182c34;
  --ink-soft:#38505a;
  --paper:#f8fbfa;
  --mist:#edf6f4;
  --ice:#edf4f6;
  --sage:#eef6ef;
  --sand:#f7f3e9;
  --line:#d5e5e2;
  --navy:var(--ink);
  --navy-d:#10242c;
  --navy-l:#294b55;
  --navy-p:#e9f3f2;
  --navy-p2:#cfdfdd;
  --green:var(--aqua);
  --green-d:var(--aqua-dark);
  --green-l:#52d4ce;
  --green-p:var(--aqua-soft);
  --off:var(--mist);
  --border:var(--line);
  --text:#20343c;
  --muted:#61777f;
  --light:#8ca0a6;
  --navy-grad:linear-gradient(140deg,#102b34 0%,#173b44 58%,#0e252d 100%);
  --navy-d-grad:linear-gradient(140deg,#0b2027 0%,#14343d 100%);
  --section-a:#f8fbfa;
  --section-b:#edf6f4;
  --radius:2px;
  --radius-lg:4px;
  --display:"Aptos Display","Helvetica Neue",Arial,sans-serif;
  --sans:"Aptos","Helvetica Neue",Arial,sans-serif;
}

html { scroll-padding-top:92px; }
body { background:#eef5f3; color:var(--text); font-family:var(--sans); font-size:16px; letter-spacing:.005em; }
html,body { max-width:100%; overflow-x:hidden; }
body::before { content:""; position:fixed; z-index:9999; inset:0; pointer-events:none; opacity:.025; background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.5'/%3E%3C/svg%3E"); }
::selection { background:var(--aqua); color:#fff; }
a,button { -webkit-tap-highlight-color:transparent; }
:focus-visible { outline:3px solid rgba(var(--accent-rgb),.35); outline-offset:4px; }

.container { max-width:1380px; padding-inline:clamp(1.25rem,4vw,5rem); }
.section { position:relative; padding:clamp(5.5rem,9vw,9rem) 0; }
.section-alt { background:linear-gradient(135deg,#edf7f5 0%,#e8f2f2 100%); }
.section-white { background:linear-gradient(180deg,#fbfdfc 0%,#f4f8f7 100%); }
.section-navy { background:radial-gradient(circle at 88% 15%,rgba(var(--accent-rgb),.18),transparent 24%),var(--navy-grad); }
.two-col { gap:clamp(3rem,8vw,8rem); }

/* Header */
.hdr { border:0; background:rgba(255,255,255,.9); backdrop-filter:blur(18px); -webkit-backdrop-filter:blur(18px); transition:box-shadow .3s ease,background .3s ease; }
.hdr-inner { max-width:1440px; height:92px; margin:auto; padding-inline:clamp(1.25rem,3.5vw,4rem); }
.logo { position:relative; z-index:3; min-width:185px; }
.logo-img { width:auto; max-width:205px; max-height:54px; object-fit:contain; }
.logo-box { width:42px; height:42px; border-radius:50%; background:var(--ink); }
.logo-name { color:var(--ink); font-size:23px; font-weight:500; letter-spacing:.06em; }
.logo-name span { color:var(--aqua); }
.nav { gap:clamp(0px,.3vw,6px); }
.nav a { position:relative; padding:10px clamp(7px,.8vw,15px); border-radius:0; color:var(--ink-soft); font-size:13px; font-weight:700; letter-spacing:.015em; }
.nav a::after { content:""; position:absolute; right:12px; bottom:4px; left:12px; height:2px; background:var(--aqua); transform:scaleX(0); transition:transform .25s ease; transform-origin:left; }
.nav a:hover,.nav a.on { color:var(--ink); background:transparent; }
.nav a:hover::after,.nav a.on::after { transform:scaleX(1); }
.nav a.ncta { margin-left:8px; padding:11px 18px; border:1px solid var(--aqua)!important; background:#fff!important; color:var(--ink)!important; box-shadow:0 0 24px rgba(var(--accent-rgb),.22); }
.nav a.ncta::after { display:none; }
.nav a.ncta:hover { background:var(--aqua)!important; color:#fff!important; transform:translateY(-2px); }
.lang-pill { margin-left:5px; border:1px solid var(--line); border-radius:0; background:#fff; }
.lb { border-radius:0; color:#7b8d92; }
.lb.on { background:var(--ink); color:#fff; box-shadow:none; }
.nav-lang-pill { display:none; }
.theme-preview-switcher { display:flex; align-items:center; gap:3px; padding:3px; border:1px solid var(--line); background:rgba(255,255,255,.88); }
.theme-preview-btn { display:grid; width:28px; height:28px; place-items:center; border:0; background:transparent; color:var(--muted); font-size:11px; font-weight:850; cursor:pointer; transition:background .2s,color .2s,box-shadow .2s; }
.theme-preview-btn:hover { background:var(--aqua-soft); color:var(--ink); }
.theme-preview-btn.active { background:var(--ink); color:#fff; box-shadow:inset 0 -2px 0 var(--aqua); }

/* Hero */
.hero-slider { min-height:calc(100vh - 92px); background:#eef6f5; }
.hs-track,.hs-slide { min-height:calc(100vh - 92px); }
.hs-bg-default { background:radial-gradient(circle at 75% 45%,rgba(var(--accent-rgb),.15),transparent 22%),linear-gradient(120deg,#fff 0%,#f4faf9 65%,#edf6f5 100%); }
.hs-bg-img { background-position:66% center; transform:scale(1.025); animation:nvHeroBreath 14s ease-in-out infinite alternate; }
.hs-bg-video { opacity:0; }
.hs-bg-video.is-ready { opacity:.82; filter:saturate(.82) brightness(1.07); }
.hs-overlay { background:linear-gradient(90deg,rgba(244,250,248,.97) 0%,rgba(237,247,244,.86) 38%,rgba(229,243,239,.28) 70%,rgba(24,44,52,.06) 100%); }
.hs-content { max-width:800px; padding-left:clamp(2rem,8vw,8rem); }
.hs-badge,.page-hero-badge { padding:0; border:0; border-radius:0; background:transparent; color:var(--aqua-dark); font-size:11px; font-weight:800; letter-spacing:.16em; }
.hs-badge { margin-bottom:2rem; }
.hs-badge .hs-dot { width:28px; height:2px; border-radius:0; background:var(--aqua); }
.hs-title { max-width:720px; margin-bottom:1.7rem; color:var(--ink); font-family:var(--display); font-size:clamp(42px,4.5vw,66px); font-weight:600; line-height:1.02; letter-spacing:-.04em; white-space:normal; text-wrap:balance; }
.hs-title em { color:var(--aqua); }
.hs-subtitle { max-width:560px; margin-bottom:2.25rem; color:var(--ink-soft); font-size:17px; line-height:1.75; }
.hs-controls { right:clamp(2rem,5vw,5rem); bottom:2.5rem; left:clamp(2rem,5vw,5rem); }
.hs-dots .hs-dot,.hs-dot-btn { width:28px; height:2px; border:0; border-radius:0; background:rgba(24,44,52,.2); }
.hs-dots .hs-dot.active,.hs-dot-btn.active { width:58px; border-radius:0; background:var(--aqua); }
.hs-arrow { width:48px; height:48px; border:1px solid rgba(24,44,52,.15); border-radius:50%; background:rgba(255,255,255,.8); color:var(--ink); }
.hs-arrow:hover { border-color:var(--aqua); background:#fff; color:var(--aqua-dark); }
@keyframes nvHeroBreath { to { transform:scale(1.07) translate3d(-.5%,.5%,0); } }

/* Inner page heroes */
.page-hero,.services-hero,.service-detail-hero,.production-hero { min-height:390px; display:flex; align-items:center; overflow:hidden; background:linear-gradient(115deg,#f8fbfa 0%,#eaf5f3 55%,#d9eeeb 100%)!important; }
.page-hero::before { content:""; position:absolute; width:520px; height:520px; right:-120px; top:-210px; border:1px solid rgba(var(--accent-rgb),.18); border-radius:50%; box-shadow:0 0 0 80px rgba(var(--accent-rgb),.035),0 0 0 160px rgba(var(--accent-rgb),.025); }
.page-hero.has-hero-image::after { content:""; position:absolute; inset:0; z-index:0; background-image:linear-gradient(90deg,rgba(248,251,250,.97) 0%,rgba(248,251,250,.86) 35%,rgba(238,247,245,.55) 58%,rgba(24,44,52,.08) 100%),var(--hero-image); background-position:center,center; background-size:cover; background-repeat:no-repeat; }
.page-hero.has-hero-image::before { z-index:1; opacity:.45; }
.page-hero .container { position:relative; z-index:2; width:100%; }
.page-hero-copy { max-width:780px; }
.page-hero-title { max-width:850px; color:var(--ink); font-family:var(--display); font-size:clamp(38px,4.15vw,58px); font-weight:600; line-height:1.06; letter-spacing:-.035em; white-space:normal; text-wrap:balance; }
.page-hero-title em { color:var(--aqua); }
.page-hero-desc,.services-hero .page-hero-desc,.service-detail-hero .page-hero-desc { max-width:700px; color:var(--ink-soft)!important; font-size:17px; line-height:1.75; }
.services-hero .container { max-width:1380px; text-align:left; }
.services-hero .page-hero-desc { margin:1.25rem 0 0; }
.service-hero-mark { border-color:rgba(var(--accent-rgb),.25); box-shadow:inset 0 0 0 34px rgba(var(--accent-rgb),.06),0 0 70px rgba(var(--accent-rgb),.12); }
.service-hero-mark span { color:rgba(var(--accent-rgb),.22); }
.service-breadcrumb { border:0; background:#fff; }

/* Type and buttons */
.section-title { color:var(--ink); font-family:var(--display); font-size:clamp(40px,4.7vw,68px); font-weight:600; line-height:1.02; letter-spacing:-.04em; text-wrap:balance; }
.section-title-white { color:#fff; }
.section-desc { max-width:690px; color:var(--muted); font-size:16px; line-height:1.85; }
.section-header { margin-bottom:clamp(3rem,6vw,5rem); }
.section-header-flex { margin-bottom:clamp(3rem,5vw,4.5rem); }
.chip { padding:0; border-radius:0; background:transparent; color:var(--aqua-dark); font-size:11px; letter-spacing:.16em; }
.chip-white { color:#71ded8; }
.divider-line { width:64px; height:2px; border-radius:0; background:var(--aqua); }
.btn-green,.btn-navy,.btn-ghost { display:inline-flex; min-height:52px; align-items:center; justify-content:center; padding:0 25px; border-radius:0; font-size:13px; font-weight:800; letter-spacing:.015em; transition:transform .25s,box-shadow .25s,background .25s,color .25s,border-color .25s; }
.btn-green { border:1px solid var(--aqua); background:#fff; color:var(--ink); box-shadow:0 0 25px rgba(var(--accent-rgb),.23); }
.btn-green:hover { background:var(--aqua); color:#fff; box-shadow:0 14px 32px rgba(var(--accent-rgb),.28); transform:translateY(-3px); }
.btn-navy { border:1px solid var(--ink); background:var(--ink); color:#fff; }
.btn-navy:hover { border-color:var(--aqua); background:var(--aqua); transform:translateY(-3px); }
.btn-ghost { border:1px solid rgba(255,255,255,.45); background:transparent; color:#fff; }
.btn-ghost:hover { border-color:#fff; background:#fff; color:var(--ink); transform:translateY(-3px); }
.hero-slider .btn-ghost { border-color:var(--ink); background:rgba(255,255,255,.72); color:var(--ink); }
.hero-slider .btn-ghost:hover { border-color:var(--ink); background:var(--ink); color:#fff; }
.page-hero .btn-ghost { border-color:var(--ink); background:rgba(255,255,255,.72); color:var(--ink); }
.page-hero .btn-ghost:hover { border-color:var(--ink); background:var(--ink); color:#fff; }

/* Balanced color rhythm */
.section:not(.section-alt):not(.section-white):not(.section-navy):not(.production-capacity) { background:linear-gradient(180deg,#f8fbfa 0%,#f1f7f5 100%); }
.section-alt { background-image:radial-gradient(circle at 8% 18%,rgba(37,184,178,.11),transparent 24%),radial-gradient(circle at 94% 82%,rgba(41,86,100,.08),transparent 26%),linear-gradient(135deg,#edf7f5,#e8f1f2); }
.section-white { background-image:radial-gradient(circle at 92% 12%,rgba(37,184,178,.065),transparent 22%),linear-gradient(180deg,#fbfdfc,#f4f8f7); }
.section-navy { overflow:hidden; }
.section-navy::after { content:""; position:absolute; right:-150px; bottom:-230px; width:520px; height:520px; pointer-events:none; border:1px solid rgba(var(--accent-rgb),.18); border-radius:50%; box-shadow:0 0 0 80px rgba(var(--accent-rgb),.035),0 0 0 160px rgba(var(--accent-rgb),.025); }
.section-navy>.container { position:relative; z-index:1; }
body.page-index>section:nth-of-type(5) { background:linear-gradient(135deg,#edf4f6,#e7f1ef); }
body.page-index>section:nth-of-type(6) { background:linear-gradient(135deg,#e8f5f2,#f2f7f4); }
body.page-index>section:nth-of-type(7) { background:linear-gradient(135deg,#f7f3e9,#eef6ef); }
.page-contact .section-alt { background:linear-gradient(135deg,#e9f4f2,#edf3f6); }

/* Temporary palette preview: 1 Premium, 2 Pharmaceutical, 3 Natural */
html[data-color-theme="1"] {
  --aqua:#b28a4a; --accent-rgb:178,138,74; --aqua-dark:#89652d; --aqua-soft:#f4ead8;
  --ink:#20383a; --ink-soft:#496063; --text:#2d4142; --muted:#687979; --light:#929b96;
  --line:#d8d4c6; --mist:#eef1e8; --navy-p:#edf0e7; --navy-p2:#d9ded1;
  --navy-grad:linear-gradient(140deg,#132a2c 0%,#244447 58%,#102527 100%);
  --theme-body:#e9ece4; --theme-alt-1:#f1f0e7; --theme-alt-2:#e8eee8;
  --theme-white-1:#fbfaf5; --theme-white-2:#f3f2eb; --theme-default-1:#f7f6f0; --theme-default-2:#eef1e9;
  --theme-ice-1:#eef1ec; --theme-ice-2:#e3ebe7; --theme-warm-1:#f6f0e4; --theme-warm-2:#ede5d6;
  --theme-contact-1:#edf1e9; --theme-contact-2:#e5ecea;
  --theme-card-1:#f8f2e7; --theme-card-2:#edf1ec; --theme-card-3:#f2eee2; --theme-image:#f0eee6;
  --theme-panel-1:#173135; --theme-panel-2:#31565a;
  --theme-orb-1:rgba(178,138,74,.13); --theme-orb-2:rgba(32,56,58,.08);
  --theme-hero-overlay:linear-gradient(90deg,rgba(250,248,242,.97),rgba(246,243,234,.86) 38%,rgba(235,234,224,.5) 62%,rgba(32,56,58,.08));
  --theme-home-overlay:linear-gradient(90deg,rgba(248,246,239,.97),rgba(240,240,230,.84) 40%,rgba(232,234,221,.24) 72%,rgba(32,56,58,.06));
  --theme-managed-overlay:linear-gradient(90deg,rgba(246,244,236,.93),rgba(231,235,225,.73));
}
html[data-color-theme="2"] {
  --aqua:#2d82cf; --accent-rgb:45,130,207; --aqua-dark:#1e66a5; --aqua-soft:#e4f1fb;
  --ink:#153959; --ink-soft:#3e5e78; --text:#263f55; --muted:#63798b; --light:#91a1ae;
  --line:#d3e0eb; --mist:#edf3f8; --navy-p:#e8f1f8; --navy-p2:#d2e1ed;
  --navy-grad:linear-gradient(140deg,#102d48 0%,#1b4d72 58%,#0d2941 100%);
  --theme-body:#e9f0f6; --theme-alt-1:#edf5fa; --theme-alt-2:#e8eef7;
  --theme-white-1:#fbfdff; --theme-white-2:#f2f6fa; --theme-default-1:#f7fafd; --theme-default-2:#edf3f8;
  --theme-ice-1:#edf4fb; --theme-ice-2:#ececf7; --theme-warm-1:#f2f1fa; --theme-warm-2:#e9e7f4;
  --theme-contact-1:#eaf3fa; --theme-contact-2:#ececf7;
  --theme-card-1:#eaf4fb; --theme-card-2:#eef1fa; --theme-card-3:#edf6f8; --theme-image:#eaf2f8;
  --theme-panel-1:#12344f; --theme-panel-2:#245b7c;
  --theme-orb-1:rgba(45,130,207,.13); --theme-orb-2:rgba(92,79,169,.08);
  --theme-hero-overlay:linear-gradient(90deg,rgba(247,251,254,.97),rgba(235,244,251,.86) 38%,rgba(224,236,248,.5) 62%,rgba(21,57,89,.08));
  --theme-home-overlay:linear-gradient(90deg,rgba(246,250,254,.97),rgba(231,241,250,.84) 40%,rgba(220,233,246,.24) 72%,rgba(21,57,89,.06));
  --theme-managed-overlay:linear-gradient(90deg,rgba(241,247,252,.93),rgba(226,237,247,.73));
}
html[data-color-theme="3"] {
  --aqua:#678e64; --accent-rgb:103,142,100; --aqua-dark:#4b714b; --aqua-soft:#e7f0e2;
  --ink:#294437; --ink-soft:#4e6759; --text:#334b3f; --muted:#6b7d70; --light:#96a094;
  --line:#d6dfcf; --mist:#f1f3e9; --navy-p:#e9efe4; --navy-p2:#d8e1d0;
  --navy-grad:linear-gradient(140deg,#203b31 0%,#365b43 58%,#1b342a 100%);
  --theme-body:#ecefe5; --theme-alt-1:#eff3e8; --theme-alt-2:#e8eee2;
  --theme-white-1:#fcfbf4; --theme-white-2:#f4f3e8; --theme-default-1:#f8f7ef; --theme-default-2:#edf1e7;
  --theme-ice-1:#edf2e8; --theme-ice-2:#e5ece0; --theme-warm-1:#f5eee4; --theme-warm-2:#ebddd0;
  --theme-contact-1:#edf2e7; --theme-contact-2:#eee7dc;
  --theme-card-1:#eaf2e5; --theme-card-2:#f1f2e8; --theme-card-3:#f5e9df; --theme-image:#eef0e5;
  --theme-panel-1:#233d32; --theme-panel-2:#47674d;
  --theme-orb-1:rgba(103,142,100,.14); --theme-orb-2:rgba(190,116,78,.09);
  --theme-hero-overlay:linear-gradient(90deg,rgba(250,249,242,.97),rgba(239,243,232,.86) 38%,rgba(228,236,221,.5) 62%,rgba(41,68,55,.08));
  --theme-home-overlay:linear-gradient(90deg,rgba(249,248,240,.97),rgba(235,241,227,.84) 40%,rgba(224,233,216,.24) 72%,rgba(41,68,55,.06));
  --theme-managed-overlay:linear-gradient(90deg,rgba(244,246,236,.93),rgba(229,235,220,.73));
}
html[data-color-theme] body { background:var(--theme-body); }
html[data-color-theme] .hdr { background:rgba(250,251,248,.92); }
html[data-color-theme] .section-alt { background-image:radial-gradient(circle at 8% 18%,var(--theme-orb-1),transparent 24%),radial-gradient(circle at 94% 82%,var(--theme-orb-2),transparent 26%),linear-gradient(135deg,var(--theme-alt-1),var(--theme-alt-2)); }
html[data-color-theme] .section-white { background-image:radial-gradient(circle at 92% 12%,var(--theme-orb-1),transparent 22%),linear-gradient(180deg,var(--theme-white-1),var(--theme-white-2)); }
html[data-color-theme] .section:not(.section-alt):not(.section-white):not(.section-navy):not(.production-capacity) { background:linear-gradient(180deg,var(--theme-default-1),var(--theme-default-2)); }
html[data-color-theme] body.page-index>section:nth-of-type(5) { background:linear-gradient(135deg,var(--theme-ice-1),var(--theme-ice-2)); }
html[data-color-theme] body.page-index>section:nth-of-type(6) { background:linear-gradient(135deg,var(--theme-alt-2),var(--theme-default-1)); }
html[data-color-theme] body.page-index>section:nth-of-type(7) { background:linear-gradient(135deg,var(--theme-warm-1),var(--theme-warm-2)); }
html[data-color-theme] .page-contact .section-alt { background:linear-gradient(135deg,var(--theme-contact-1),var(--theme-contact-2)); }
html[data-color-theme] .page-hero,html[data-color-theme] .services-hero,html[data-color-theme] .service-detail-hero,html[data-color-theme] .production-hero { background:linear-gradient(115deg,var(--theme-white-1),var(--theme-alt-1) 58%,var(--theme-alt-2))!important; }
html[data-color-theme] .page-hero.has-hero-image::after { background-image:var(--theme-hero-overlay),var(--hero-image); }
html[data-color-theme] .hs-overlay { background:var(--theme-home-overlay); }
html[data-color-theme] .info-card:nth-child(3n+1),html[data-color-theme] .service-card:nth-child(3n+1),html[data-color-theme] .quality-card:nth-child(3n+1) { background:linear-gradient(145deg,#fff,var(--theme-card-1)); }
html[data-color-theme] .info-card:nth-child(3n+2),html[data-color-theme] .service-card:nth-child(3n+2),html[data-color-theme] .quality-card:nth-child(3n+2) { background:linear-gradient(145deg,#fff,var(--theme-card-2)); }
html[data-color-theme] .info-card:nth-child(3n),html[data-color-theme] .service-card:nth-child(3n),html[data-color-theme] .quality-card:nth-child(3n) { background:linear-gradient(145deg,#fff,var(--theme-card-3)); }
html[data-color-theme] .page-about .value-card,html[data-color-theme] .page-production .format-card { background:linear-gradient(145deg,#fff,var(--theme-card-1)); }
html[data-color-theme] .page-about .value-card:nth-child(2),html[data-color-theme] .page-production .format-card:nth-child(3n+2) { background:linear-gradient(145deg,#fff,var(--theme-card-2)); }
html[data-color-theme] .page-about .value-card:nth-child(3),html[data-color-theme] .page-production .format-card:nth-child(3n) { background:linear-gradient(145deg,#fff,var(--theme-card-3)); }
html[data-color-theme] .page-products .product-card,html[data-color-theme] .page-index .home-products-grid .product-card { background:linear-gradient(180deg,#fff,var(--theme-default-1)); }
html[data-color-theme] .pcard-img { background:var(--theme-image); }
html[data-color-theme] .managed-section-bg::after { background:var(--theme-managed-overlay); }
html[data-color-theme] .counters-section { background:linear-gradient(90deg,var(--theme-alt-2),var(--theme-ice-1)); }
html[data-color-theme] .capacity-panel { background:radial-gradient(circle at 88% 15%,var(--theme-orb-1),transparent 28%),linear-gradient(130deg,var(--theme-panel-1),var(--theme-panel-2))!important; }
html[data-color-theme] .production-cta,html[data-color-theme] .form-card,html[data-color-theme] .contact-info { background:linear-gradient(120deg,var(--theme-alt-1),var(--theme-ice-1))!important; }
html[data-color-theme] .footer { background:linear-gradient(180deg,var(--theme-white-1),var(--theme-default-2)); }
html[data-color-theme] .footer-cta { background:linear-gradient(110deg,var(--theme-card-1),var(--theme-alt-1)); }

/* Cards */
.cards-3,.cards-4,.products-grid-4,.services-grid,.quality-grid,.format-grid,.spec-grid { gap:clamp(1.25rem,2.2vw,2.25rem); }
.info-card,.service-card,.value-card,.facility-card,.quality-card,.format-card,.spec-card,.vision-stat,.cert-badge,.prose-card { border:1px solid var(--line); border-radius:0; background:linear-gradient(145deg,rgba(255,255,255,.98),rgba(244,249,248,.96)); box-shadow:0 16px 45px rgba(24,44,52,.045); }
.info-card,.service-card,.value-card,.quality-card { padding:clamp(1.8rem,3vw,3rem); }
.info-card:hover,.service-card:hover,.value-card:hover,.facility-card:hover,.product-card:hover { border-color:rgba(var(--accent-rgb),.7); box-shadow:0 28px 65px rgba(24,44,52,.09); transform:translateY(-8px); }
.info-card-img,.facility-placeholder { border-radius:0; }
.info-card-icon-wrap,.value-icon,.ci-icon { border-radius:50%; background:var(--aqua-soft); color:var(--aqua-dark); }
.info-card-title,.service-card h2,.service-card h3,.value-title,.facility-name { color:var(--ink); font-family:var(--display); font-size:22px; font-weight:650; }
.info-card-body,.service-card p,.value-desc,.facility-desc { color:var(--muted); font-size:14px; line-height:1.8; }
.info-card-link,.service-card-link,.pcard-link { color:var(--aqua-dark); font-weight:800; }
.service-card-number { color:var(--aqua); font-size:11px; letter-spacing:.2em; }
.service-card { min-height:340px; }
.quality-card { position:relative; overflow:hidden; }
.info-card:nth-child(3n+1),.service-card:nth-child(3n+1),.quality-card:nth-child(3n+1) { background:linear-gradient(145deg,#fff,#e9f7f5); }
.info-card:nth-child(3n+2),.service-card:nth-child(3n+2),.quality-card:nth-child(3n+2) { background:linear-gradient(145deg,#fff,#edf3f5); }
.info-card:nth-child(3n),.service-card:nth-child(3n),.quality-card:nth-child(3n) { background:linear-gradient(145deg,#fff,#eef6ef); }
.info-card::before,.service-card::before,.quality-card::before { content:""; position:absolute; inset:0 0 auto; height:3px; background:linear-gradient(90deg,var(--aqua),#74d8c7); }
.service-feature,.service-process-step,.service-guide-card { border-radius:0; }
.service-feature span { background:var(--aqua-soft); color:var(--aqua-dark); }
.service-process-step { border-top:2px solid var(--aqua); background:#fff; }

/* Products */
.product-card { overflow:hidden; border:1px solid transparent; border-radius:0; background:transparent; }
.pcard-img { aspect-ratio:4/5; background:#eef5f4; }
.pcard-img img { transition:transform .65s cubic-bezier(.2,.7,.2,1),filter .4s; }
.product-card:hover .pcard-img img { transform:scale(1.045) translateY(-1.5%); }
.pcard-body { padding:1.4rem 0 0; }
.pcard-name { color:var(--ink); font-family:var(--display); font-size:21px; font-weight:650; }
.pcard-sub { min-height:0; color:var(--muted); line-height:1.7; }
.pcard-footer { border-color:var(--line); }
.pcard-price { color:var(--light); }
.pcard-concept-badge,.product-concept-badge { border-radius:0!important; background:transparent!important; color:var(--aqua-dark)!important; letter-spacing:.14em!important; }
.product-form-filters { gap:10px!important; margin-bottom:3.5rem!important; }
.product-form-filters a { border-radius:0!important; border-color:var(--line)!important; padding:11px 17px!important; background:#fff!important; }
.product-form-filters a:hover,.product-form-filters a.active { border-color:var(--ink)!important; background:var(--ink)!important; color:#fff!important; }
.product-detail-img { border:0!important; border-radius:0!important; background:linear-gradient(145deg,#f4f9f8,#e8f2f1)!important; }
.product-answer-box { border:0!important; border-left:2px solid var(--aqua)!important; border-radius:0!important; background:var(--aqua-soft)!important; box-shadow:none!important; }
.product-facts>div,.product-packaging-card { border-radius:0!important; background:#fff!important; }
.product-packaging-media { border-radius:0!important; background:var(--mist)!important; }
.product-quote-box { border-radius:0!important; background:var(--ink)!important; }
.product-journey-links a { border-radius:0!important; }

/* Product catalogue: denser grid with calmer, padded copy */
.page-products .products-grid-4 { grid-template-columns:repeat(5,minmax(0,1fr)); gap:1.25rem; }
.page-products .product-card { display:flex; min-width:0; flex-direction:column; border-color:var(--line); background:linear-gradient(180deg,#fff,#f7faf9); box-shadow:0 14px 35px rgba(24,44,52,.05); }
.page-products .pcard-img { aspect-ratio:1/1; }
.page-products .pcard-img img { object-fit:contain; padding:.7rem; }
.page-products .pcard-body { display:flex; flex:1; flex-direction:column; padding:1.15rem 1.15rem 1.25rem; }
.page-products .pcard-name { font-size:18px; line-height:1.25; }
.page-products .pcard-sub { margin-top:.55rem; font-size:13px; line-height:1.65; }
.page-products .pcard-footer { margin-top:auto; padding-top:1rem; }

/* Homepage featured products: five compact cards on desktop */
.page-index .home-products-grid { grid-template-columns:repeat(5,minmax(0,1fr)); gap:1.25rem; }
.page-index .home-products-grid .product-card { display:flex; min-width:0; flex-direction:column; border-color:var(--line); background:linear-gradient(180deg,#fff,#f7faf9); box-shadow:0 14px 35px rgba(24,44,52,.05); }
.page-index .home-products-grid .pcard-img { aspect-ratio:1/1; }
.page-index .home-products-grid .pcard-img img { object-fit:contain; padding:.7rem; }
.page-index .home-products-grid .pcard-body { display:flex; flex:1; flex-direction:column; padding:1.15rem 1.15rem 1.25rem; }
.page-index .home-products-grid .pcard-name { font-size:18px; line-height:1.25; }
.page-index .home-products-grid .pcard-sub { margin-top:.55rem; font-size:13px; line-height:1.65; }
.page-index .home-products-grid .pcard-footer { margin-top:auto; padding-top:1rem; }

/* About values */
.page-about .values-grid { gap:1.25rem; }
.page-about .value-card { position:relative; min-height:275px; overflow:hidden; padding:2.3rem 2rem; text-align:center; }
.page-about .value-card::before { content:""; position:absolute; inset:0 0 auto; height:4px; background:var(--aqua); }
.page-about .value-card:nth-child(1) { background:linear-gradient(145deg,#fff,#ecf9f7); }
.page-about .value-card:nth-child(2) { background:linear-gradient(145deg,#fff,#eef4f5); }
.page-about .value-card:nth-child(3) { background:linear-gradient(145deg,#fff,#f1f8f2); }
.page-about .value-card:nth-child(4) { background:linear-gradient(145deg,#fff,#f8f5ed); }
.page-about .value-card:nth-child(2)::before { background:#295664; }
.page-about .value-card:nth-child(3)::before { background:#68a879; }
.page-about .value-card:nth-child(4)::before { background:#c1a563; }
.page-about .value-icon { margin:0 auto 1.4rem; }
.page-about .value-title { font-size:23px; }
.page-about .value-desc { margin-inline:auto; }

/* Production format cards */
.page-production .format-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; }
.page-production .format-card { position:relative; display:grid; min-height:145px; place-items:center; align-content:center; gap:.75rem; overflow:hidden; padding:1.6rem; border-color:rgba(var(--accent-rgb),.2); background:linear-gradient(145deg,#fff,#edf8f7); text-align:center; transition:transform .25s,border-color .25s,box-shadow .25s; }
.page-production .format-card::after { content:""; position:absolute; right:-34px; bottom:-34px; width:90px; height:90px; border:1px solid rgba(var(--accent-rgb),.18); border-radius:50%; }
.page-production .format-card:nth-child(3n+2) { background:linear-gradient(145deg,#fff,#eef4f5); }
.page-production .format-card:nth-child(3n) { background:linear-gradient(145deg,#fff,#f2f8f3); }
.page-production .format-card:hover { border-color:var(--aqua); box-shadow:0 18px 38px rgba(24,44,52,.09); transform:translateY(-5px); }
.page-production .format-card span { width:38px; height:38px; background:var(--ink); color:#fff; }
.page-production .format-card strong { color:var(--ink); font-family:var(--display); font-size:17px; }

/* Admin-managed section backgrounds */
.managed-section-bg { position:relative; isolation:isolate; overflow:hidden; background:#f7fbfa!important; }
.managed-section-bg::before { content:""; position:absolute; inset:0; z-index:-2; background-image:var(--managed-bg); background-position:center; background-size:cover; background-repeat:no-repeat; }
.managed-section-bg::after { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(90deg,rgba(241,249,247,.92),rgba(231,242,240,.72)); }
.managed-section-bg>.container { position:relative; z-index:1; }
.managed-section-bg .service-guide-card,.managed-section-bg .product-journey-links a { border-color:rgba(var(--accent-rgb),.3); background:rgba(255,255,255,.9); backdrop-filter:blur(8px); }

/* Process, stats and media */
.counters-section { border-block:1px solid #cfe1de; background:linear-gradient(90deg,#e6f3f1,#edf4f6); }
.counter-cell { border-color:var(--line); padding:3.5rem 2rem; }
.counter-num,.asg-num,.vs-num { color:var(--ink); font-family:var(--display); font-weight:600; letter-spacing:-.04em; }
.counter-num em,.asg-num span,.vs-num span { color:var(--aqua); }
.vis-box { border-radius:0; background:linear-gradient(145deg,#112d35,#1d4650); box-shadow:35px 35px 0 var(--aqua-soft); }
.vis-ring-inner { background:var(--aqua); }
.video-wrap { border-radius:0; }
.vid-play-btn { background:var(--aqua); }
.timeline::before { background:var(--line); }
.tl-dot { border-color:var(--aqua); background:#fff; }
.tl-dot-green { background:var(--aqua); }
.proc-num { border-radius:50%; background:var(--aqua-soft); color:var(--aqua-dark); }
.capacity-panel,.production-cta { border-radius:0!important; }
.capacity-panel { background:radial-gradient(circle at 88% 15%,rgba(37,184,178,.25),transparent 28%),linear-gradient(130deg,#102d35,#1d4d55)!important; }
.production-cta { border-color:rgba(var(--accent-rgb),.28)!important; background:linear-gradient(120deg,#e5f6f3,#edf3f5)!important; box-shadow:0 22px 55px rgba(24,44,52,.08); }

/* Forms and configurator */
.form-card,.contact-info { border-radius:0; border-color:rgba(var(--accent-rgb),.22)!important; background:linear-gradient(145deg,#fff,#f3f8f7)!important; box-shadow:0 30px 80px rgba(24,44,52,.08); }
.fg input,.fg textarea,.fg select,.qfg input,.qfg textarea,.qfg select { border-radius:0!important; border-color:var(--line)!important; background:#fff!important; }
.fg input:focus,.fg textarea:focus,.fg select:focus,.qfg input:focus,.qfg textarea:focus,.qfg select:focus { border-color:var(--aqua)!important; box-shadow:0 0 0 4px rgba(var(--accent-rgb),.1)!important; }
.map-block { border-radius:0; }
.quote-page { background:linear-gradient(135deg,#0d252d,#173b44)!important; }
.quote-header { background:transparent!important; }
.quote-title { font-family:var(--display); font-weight:600!important; letter-spacing:-.04em!important; }
.quote-form-wrap,.qcard,.qp-summary { border-radius:0!important; }
.qcard { border-color:rgba(255,255,255,.14)!important; }
.qcard:hover,.qcard.selected { border-color:var(--aqua)!important; box-shadow:0 0 30px rgba(var(--accent-rgb),.16)!important; }
.qbtn { border-radius:0!important; }
.qbtn-next,.qbtn-submit { background:var(--aqua)!important; }
.qs-num { border-color:rgba(255,255,255,.28)!important; }
.qs-item.active .qs-num,.qs-item.completed .qs-num { border-color:var(--aqua)!important; background:var(--aqua)!important; }

/* FAQ */
.service-faq-list { gap:0; }
.service-faq-item { border-width:0 0 1px; border-radius:0; background:transparent; }
.service-faq-item summary { padding:24px 0; color:var(--ink); font-family:var(--display); font-size:18px; }
.service-faq-item p { padding:0 0 25px; }

/* Conversion blocks */
.conversion-cta::after { width:560px; height:560px; right:-120px; top:-270px; border:1px solid rgba(82,212,206,.2); background:transparent; box-shadow:0 0 0 90px rgba(82,212,206,.025),0 0 0 180px rgba(82,212,206,.018); }
.service-bottom-cta,.production-cta { overflow:hidden; }

/* Footer */
.footer { border-top:1px solid var(--line); background:#fff; color:var(--ink); }
.footer::before { background:radial-gradient(circle at 18% 10%,rgba(var(--accent-rgb),.09),transparent 28%); }
.footer-cta-wrap { max-width:1380px; padding-inline:clamp(1.25rem,4vw,5rem); }
.footer-cta { border:1px solid rgba(var(--accent-rgb),.35); border-radius:0; background:linear-gradient(110deg,#eefbf9,#dff6f3); box-shadow:0 0 45px rgba(var(--accent-rgb),.12); color:var(--ink); }
.footer-cta-kicker { color:var(--aqua-dark); }
.footer-cta h2 { color:var(--ink); font-family:var(--display); font-size:clamp(27px,3vw,42px); font-weight:600; letter-spacing:-.035em; }
.footer-cta p { color:var(--ink-soft); }
.footer-btn { border-radius:0; }
.footer-btn-primary { background:var(--ink); color:#fff; }
.footer-btn-secondary { border-color:var(--ink); color:var(--ink); }
.footer-btn-secondary:hover { background:var(--ink); color:#fff; }
.footer-shell { max-width:1380px; padding-inline:clamp(1.25rem,4vw,5rem); }
.fl-name { color:var(--ink); font-size:25px; font-weight:600; letter-spacing:.06em; }
.fl-name span { color:var(--aqua); }
.footer-desc,.footer-link-list a,.footer-contact-item p,.footer-contact-item a { color:var(--muted); }
.footer-col-title { color:var(--ink); }
.footer-link-list a:hover,.footer-contact-item a:hover { color:var(--aqua-dark); }
.footer-contact-icon { border-radius:50%; border-color:rgba(var(--accent-rgb),.2); background:var(--aqua-soft); color:var(--aqua-dark); }
.footer-contact-item div>span,.footer-trust-title,.footer-copy { color:var(--light); }
.footer-trust,.footer-bottom { border-color:var(--line); }
.footer-cert-badge { border-color:var(--line); background:var(--mist); color:var(--muted); }
.footer-legal a,.footer-legal button { color:var(--muted); }
.footer-languages { border-color:var(--line); border-radius:0; }
.footer-languages a { border-radius:0; color:var(--muted); }
.footer-languages a:hover,.footer-languages a.active { background:var(--ink); color:#fff; }
.fsob { border-color:var(--line)!important; color:var(--ink)!important; }

/* Motion */
.nv-reveal { opacity:0; transform:translate3d(0,34px,0); transition:opacity .72s ease,transform .72s cubic-bezier(.2,.7,.2,1); }
.nv-reveal.nv-visible { opacity:1; transform:none; }
.nv-reveal[data-nv-delay="1"] { transition-delay:.08s; }
.nv-reveal[data-nv-delay="2"] { transition-delay:.16s; }
.nv-reveal[data-nv-delay="3"] { transition-delay:.24s; }
.nv-scroll-line { position:fixed; z-index:110; top:0; left:0; width:0; height:2px; background:var(--aqua); box-shadow:0 0 12px rgba(var(--accent-rgb),.65); pointer-events:none; }

@media (max-width:1180px) {
  .hdr-inner { height:78px; }
  .nav a { padding-inline:7px; font-size:12px; }
  .logo-img { max-width:160px; }
  .lang-pill { display:none; }
  .hero-slider,.hs-track,.hs-slide { min-height:calc(100vh - 78px); }
}

@media (max-width:900px) {
  html { scroll-padding-top:74px; }
  .hdr-inner { height:74px; padding-inline:1.25rem; }
  .logo { min-width:0; }
  .logo-img { max-width:175px; }
  .hamburger { display:flex; padding:10px; }
  .hamburger span { width:26px; background:var(--ink); }
  .nav { position:absolute; top:74px; right:0; left:0; display:none; max-height:calc(100vh - 74px); overflow:auto; align-items:stretch; flex-direction:column; gap:0; padding:20px; border-top:1px solid var(--line); background:rgba(255,255,255,.98); box-shadow:0 30px 60px rgba(24,44,52,.14); }
  .nav.open { display:flex; }
  .nav a { padding:16px 8px; border-bottom:1px solid var(--line); font-size:16px; }
  .nav a::after { right:auto; bottom:-1px; left:8px; width:44px; }
  .nav a.ncta { margin:16px 0 0; text-align:center; }
  .nav .nav-lang-pill { display:flex; width:max-content; margin:18px 0 4px; }
  .nav .nav-lang-pill a { min-width:46px; padding:10px 12px; border:0; text-align:center; }
  .nav .nav-lang-pill a::after { display:none; }
  .hdr-right { margin-left:auto; }
  .theme-preview-switcher { margin-left:auto; }
  .hs-content { padding:4rem 1.5rem 8rem; }
  .hs-overlay { background:linear-gradient(90deg,rgba(241,249,247,.96),rgba(231,244,240,.73)); }
  .hs-title { font-size:clamp(38px,8vw,52px); }
  .page-hero { min-height:340px; }
  .page-hero::before { opacity:.6; }
  .page-hero-title { font-size:clamp(35px,7vw,48px); }
  .page-hero.has-hero-image::after { background-image:linear-gradient(90deg,rgba(244,250,248,.96),rgba(236,247,244,.84) 55%,rgba(226,241,237,.42)),var(--hero-image); }
  .page-products .products-grid-4 { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .page-index .home-products-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .section { padding:5rem 0; }
  .section-title { font-size:clamp(37px,8.5vw,54px); }
  .section-header-flex { align-items:flex-start; flex-direction:column; }
}

@media (max-width:620px) {
  body { font-size:15px; }
  .container { padding-inline:1.25rem; }
  .logo-img { max-width:145px; }
  .theme-preview-switcher { gap:1px; padding:2px; }
  .theme-preview-btn { width:23px; height:25px; font-size:10px; }
  .hero-slider,.hs-track,.hs-slide { min-height:calc(100svh - 74px); }
  .hs-bg-img { background-position:68% center; }
  .hs-overlay { background:linear-gradient(180deg,rgba(242,249,247,.96) 0%,rgba(234,246,242,.88) 55%,rgba(221,240,235,.44) 100%); }
  .hs-content { align-self:flex-start; padding-top:5rem; }
  .hs-title { font-size:clamp(34px,10.5vw,44px); }
  .hs-subtitle { font-size:15px; }
  .hs-btns { align-items:stretch; flex-direction:column; }
  .hs-btns a { width:100%; }
  .hs-controls { right:1.25rem; bottom:1.25rem; left:1.25rem; }
  .page-hero { min-height:310px; padding:4rem 0; }
  .page-hero-title { font-size:clamp(32px,9vw,39px); }
  .page-hero-desc { font-size:15px; }
  .page-hero.has-hero-image::after { background-image:linear-gradient(180deg,rgba(242,249,247,.95),rgba(230,244,240,.8)),var(--hero-image); opacity:.88; }
  .section { padding:4.5rem 0; }
  .section-title { font-size:38px; }
  .two-col { gap:3rem; }
  .product-card { border-bottom:1px solid var(--line); padding-bottom:1.25rem; }
  .page-products .products-grid-4 { grid-template-columns:repeat(2,minmax(0,1fr)); gap:.85rem; }
  .page-index .home-products-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:.85rem; }
  .page-products .product-card { padding-bottom:0; }
  .page-index .home-products-grid .product-card { padding-bottom:0; }
  .page-products .pcard-body { padding:.9rem; }
  .page-index .home-products-grid .pcard-body { padding:.9rem; }
  .page-products .pcard-name { font-size:16px; }
  .page-index .home-products-grid .pcard-name { font-size:16px; }
  .page-products .pcard-sub { font-size:12px; }
  .page-index .home-products-grid .pcard-sub { font-size:12px; }
  .page-production .format-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .page-production .format-card { min-height:125px; padding:1.2rem; }
  .vis-box { box-shadow:15px 15px 0 var(--aqua-soft); }
  .footer-cta { padding:1.5rem; }
  .footer-main { gap:2.5rem; }
  .cookie-banner { border-radius:0; background:var(--ink); }
}

@media (min-width:901px) and (max-width:1180px) {
  .page-products .products-grid-4 { grid-template-columns:repeat(4,minmax(0,1fr)); }
  .page-index .home-products-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
}

@media (max-width:400px) {
  .page-products .products-grid-4 { grid-template-columns:1fr; }
  .page-index .home-products-grid { grid-template-columns:1fr; }
  .page-production .format-grid { grid-template-columns:1fr; }
}

@media (prefers-reduced-motion:reduce) {
  *,*::before,*::after { scroll-behavior:auto!important; animation:none!important; transition-duration:.01ms!important; }
  .nv-reveal { opacity:1; transform:none; }
}
