:root {
  --navy: #1F3864;
  --navy-deep: #102541;
  --navy-black: #0B182B;
  --blue: #3B6AA0;
  --blue-soft: #6E8FB6;
  --gold: #C9A227;
  --gold-light: #E0C969;
  --pale: #DDE1E8;
  --mist: #F3F5F8;
  --mist-blue: #EDF2F7;
  --body: #2E3440;
  --muted: #697180;
  --white: #FFFFFF;
  --line: rgba(31, 56, 100, .12);
  --shadow: 0 22px 70px rgba(19, 34, 60, .12);
  --shadow-soft: 0 12px 36px rgba(19, 34, 60, .08);
  --radius: 18px;
  --max: 1160px;
}
* { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; scroll-padding-top: 92px; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
body { background:var(--white);color:var(--body);font-family:Inter,"Segoe UI",Calibri,Arial,sans-serif;font-size:18px;line-height:1.72;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility; }
a { color:var(--navy); } a:focus-visible{outline:3px solid var(--gold);outline-offset:4px}.wrap{width:min(var(--max),calc(100% - 56px));margin:0 auto}
header{position:sticky;top:0;z-index:30;background:rgba(255,255,255,.93);border-bottom:1px solid rgba(31,56,100,.10);box-shadow:0 8px 28px rgba(19,34,60,.045);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}header::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:linear-gradient(90deg,transparent 0%,var(--gold) 24%,var(--gold-light) 50%,var(--gold) 76%,transparent 100%);opacity:.75}header .wrap{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{color:var(--navy-deep);font-family:Montserrat,"Segoe UI",sans-serif;font-size:15px;font-weight:750;letter-spacing:.12em;text-decoration:none;white-space:nowrap}nav{display:flex;align-items:center;gap:34px}nav a{position:relative;color:var(--navy);font-size:15px;font-weight:650;letter-spacing:.025em;text-decoration:none;padding:29px 0 27px}nav a::after{content:"";position:absolute;left:0;right:100%;bottom:20px;height:2px;background:var(--gold);transition:right .25s ease}nav a:hover::after{right:0}
.hero{position:relative;isolation:isolate;overflow:hidden;min-height:680px;display:flex;align-items:center;padding:96px 0 110px;background:radial-gradient(circle at 12% 24%,rgba(201,162,39,.14),transparent 28%),radial-gradient(circle at 86% 18%,rgba(59,106,160,.16),transparent 31%),linear-gradient(180deg,#FBFCFE 0%,#F3F6FA 54%,#FFF 100%)}.hero::before,.hero::after{content:"";position:absolute;z-index:-1;border:1px solid rgba(31,56,100,.08);border-radius:50%}.hero::before{width:560px;height:560px;right:-240px;top:-220px}.hero::after{width:420px;height:420px;left:-210px;bottom:-250px;border-color:rgba(201,162,39,.16)}.hero .wrap{text-align:center;position:relative}.hero img{width:214px;max-width:58%;height:auto;margin-bottom:28px;filter:drop-shadow(0 16px 20px rgba(19,34,60,.08))}.hero .values{display:flex;flex-wrap:wrap;justify-content:center;gap:0 5px;margin:0 auto 22px;color:var(--blue);font-size:14px;font-weight:750;letter-spacing:.16em;text-transform:uppercase}.values .dot{color:var(--gold);margin:0 12px}h1,h2,h3{font-family:Montserrat,"Segoe UI",sans-serif}h1{max-width:930px;margin:0 auto;color:var(--navy-deep);font-size:clamp(42px,5.4vw,66px);line-height:1.04;font-weight:750;letter-spacing:-.035em}.hero p{max-width:620px;margin:28px auto 0;color:#3D4655;font-size:clamp(19px,2vw,23px);line-height:1.55}.hero-rule{width:104px;height:3px;margin:34px auto 0;background:linear-gradient(90deg,transparent,var(--gold),transparent)}
section{position:relative;padding:124px 0;border-top:1px solid var(--line)}section:nth-of-type(even){background:var(--mist)}section .wrap{display:grid;grid-template-columns:minmax(260px,340px) minmax(0,1fr);gap:clamp(54px,7vw,98px);align-items:start}section .col-head{grid-column:1;position:sticky;top:124px}section .col-body{grid-column:2;min-width:0}.eyebrow{display:inline-flex;align-items:center;gap:12px;margin-bottom:18px;color:var(--blue);font-size:12px;font-weight:800;letter-spacing:.18em;text-transform:uppercase}.eyebrow::before{content:"";width:24px;height:2px;background:var(--gold)}h2{color:var(--navy-deep);font-size:clamp(34px,4vw,48px);line-height:1.08;font-weight:750;letter-spacing:-.025em}h2::after{content:"";display:block;width:68px;height:3px;margin-top:24px;background:linear-gradient(90deg,var(--gold),var(--gold-light))}.lead{max-width:690px;color:#394252}.lead p{font-size:19px}.lead p+p{margin-top:22px}.lead p:first-child{line-height:1.62;color:var(--body)}
#innovation{color:var(--body);background:#1F3864;border-top:0}#innovation .eyebrow{color:#D8E2F0}#innovation h2{color:#FFF}#innovation h2::after{background:linear-gradient(90deg,var(--gold),var(--gold-light))}.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.step{min-height:285px;padding:30px 28px 32px;background:#FFF;border:1px solid rgba(255,255,255,.22);border-top:3px solid var(--gold);border-radius:0 0 14px 14px;box-shadow:0 16px 38px rgba(9,17,29,.20)}.step .num{color:var(--gold);font-family:Montserrat,sans-serif;font-size:22px;line-height:1;font-weight:800;letter-spacing:.12em}.step h3{margin:34px 0 14px;color:#13223C;font-size:24px;line-height:1.15;letter-spacing:-.015em}.step p{color:#4C5667;font-size:16.5px;line-height:1.68}
#products{background:var(--white)}.product{position:relative;overflow:hidden;display:grid;grid-template-columns:180px minmax(0,1fr);gap:42px;align-items:center;max-width:840px;margin-top:42px;padding:44px 46px;background:linear-gradient(145deg,#FFF 0%,#F8FAFC 100%);border:1px solid rgba(31,56,100,.12);border-radius:var(--radius);box-shadow:var(--shadow)}.product::before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:linear-gradient(180deg,var(--gold),var(--gold-light))}.product::after{content:"";position:absolute;right:-70px;top:-70px;width:210px;height:210px;border-radius:50%;border:1px solid rgba(59,106,160,.10)}.product .mark{position:relative;z-index:1;width:165px;height:auto;filter:drop-shadow(0 12px 18px rgba(19,34,60,.10))}.mark-text{display:flex;align-items:center;justify-content:center;min-height:110px;color:var(--navy-deep);font-family:Montserrat,"Segoe UI",sans-serif;font-size:34px;font-weight:800;letter-spacing:-.04em}.tag{display:inline-block;margin-bottom:18px;padding:7px 12px 6px;color:var(--navy);background:rgba(201,162,39,.10);border:1px solid rgba(201,162,39,.56);border-radius:999px;font-size:11px;font-weight:800;letter-spacing:.13em}.product h3{margin-bottom:14px;color:var(--navy-deep);font-size:clamp(25px,3vw,32px);line-height:1.16;letter-spacing:-.02em}.product p{color:#4C5565}.product .tease{margin-top:22px;padding-left:16px;color:var(--blue);border-left:3px solid var(--gold);font-size:16px;font-style:italic}
#roots{background:#F7F9FB}#roots .lead{padding:34px 36px;background:rgba(255,255,255,.88);border:1px solid rgba(31,56,100,.10);border-radius:16px;box-shadow:var(--shadow-soft);backdrop-filter:blur(6px)}#contact{background:linear-gradient(135deg,#F6F8FB 0%,#EDF2F7 100%)}#contact .lead{max-width:720px}.contacts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:34px;font-size:17px}.contacts p{padding:20px 22px;background:var(--white);border:1px solid rgba(31,56,100,.10);border-radius:12px;box-shadow:0 8px 24px rgba(19,34,60,.055)}.contacts a{display:block;width:fit-content;margin-top:4px;color:var(--navy);font-weight:650;text-decoration:none;border-bottom:1px solid rgba(201,162,39,.85)}
footer{position:relative;overflow:hidden;padding:74px 0 64px;text-align:center;color:rgba(255,255,255,.72);background:linear-gradient(150deg,#0A1729 0%,#13243D 100%);border-top:3px solid var(--gold)}footer .wrap{position:relative}footer img{width:176px;height:auto;padding:10px;background:rgba(255,255,255,.96);border-radius:12px;box-shadow:0 14px 32px rgba(0,0,0,.18)}footer .name{display:block;margin-top:26px;color:var(--white);font-family:Montserrat,sans-serif;font-size:15px;font-weight:750;letter-spacing:.13em}footer .strap{margin-top:8px;color:#B5C4D6}footer .addr{margin-top:24px;color:rgba(255,255,255,.58);font-size:14px}footer .copy{margin-top:7px;color:rgba(255,255,255,.45);font-size:14px}
@media(max-width:980px){section{padding:96px 0}section .wrap{display:block}section .col-head{position:static;max-width:650px}section .col-body{margin-top:42px}.steps{gap:14px}.product{max-width:none}}@media(max-width:760px){body{font-size:17px}.wrap{width:min(100% - 34px,var(--max))}header .wrap{min-height:70px;justify-content:center}.brand{display:none}nav{gap:18px;flex-wrap:wrap;justify-content:center}nav a{padding:23px 0 21px;font-size:13px}.hero{min-height:0;padding:74px 0 82px}.hero img{width:180px}.hero .values{font-size:11px;line-height:1.8}.values .dot{margin:0 6px}h1{font-size:clamp(38px,11vw,52px)}.hero p{font-size:18px}section{padding:76px 0}section .col-body{margin-top:34px}h2{font-size:clamp(32px,9vw,41px)}.lead p,.lead p:first-child{font-size:17.5px}.steps{grid-template-columns:1fr}.step{min-height:0}.product{grid-template-columns:1fr;gap:24px;padding:34px 28px 34px 32px}.product .mark{width:145px}.mark-text{font-size:30px;min-height:auto}#roots .lead{padding:28px 24px}.contacts{grid-template-columns:1fr}footer{padding:62px 0 54px}}@media(max-width:480px){nav{gap:14px}nav a{font-size:12px}.hero .values .dot{display:none}.hero .values{gap:4px 12px}}

/* Keep all five navigation links comfortable on tablets and narrow phones. */
@media (min-width:761px) and (max-width:980px) { header .wrap { justify-content:center; } .brand { display:none; } }
@media (max-width:480px) { nav { row-gap:0; } nav a { padding:12px 0; } nav a::after { bottom:6px; } html { scroll-padding-top:110px; } }
@media (max-width:760px) { .contacts p { min-width:0; } .contacts a { max-width:100%; overflow-wrap:anywhere; } }
