@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--navy:#142a3b;--blue:#7097b0;--paper:#f7f8f6;--muted:#61717b}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--navy);font-family:'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}header{height:105px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #dde2e2}.brand{display:flex;align-items:center;gap:13px;font-size:31px;font-weight:700;line-height:1}.brand img{width:49px;height:49px;object-fit:contain}.brand-sub{display:block;font-size:9px;letter-spacing:2px;margin-top:8px}nav{display:flex;gap:35px;align-items:center;font-size:13px}.contact{border:1px solid #aab6bc;padding:13px 20px;border-radius:30px}.contact span{margin-left:20px}.intro{padding:55px 5% 48px}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:600}.intro .eyebrow{display:flex;align-items:center;gap:10px}.eyebrow span{width:6px;height:6px;background:var(--blue);border-radius:50%}.intro-grid{display:grid;grid-template-columns:1.15fr 1fr;align-items:end;gap:10%}h1,h2,h3,p{margin:0}h1{font-family:Manrope,Arial,sans-serif;font-size:clamp(58px,6.5vw,105px);line-height:1.04;letter-spacing:-5px;font-weight:500;margin-top:25px}em{font-style:normal;color:var(--blue)}.intro-right{padding-bottom:5px}.intro-right>p:first-child{font-size:23px;line-height:1.45}.sub{font-size:14px;line-height:1.65;color:var(--muted);max-width:430px;margin-top:18px}.text-link{display:inline-block;font-size:12px;font-weight:600;border-bottom:1px solid #a8b6be;padding-bottom:9px;margin-top:25px}.text-link span{margin-left:50px}.journey{display:grid;grid-template-columns:repeat(4,1fr);height:440px;margin:0 2%;gap:3px}.stage{position:relative;overflow:hidden;background:#dbe5e9}.stage>img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.stage:hover>img{transform:scale(1.04)}.factory>img{object-position:46% center}.process>img{object-position:40% center}.stage:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 30%,rgba(10,28,37,.85))}.stage-content{position:absolute;bottom:27px;left:25px;right:14px;z-index:1;color:white}.step{font-size:8px;letter-spacing:1.8px}.stage h2{font-size:31px;font-weight:500;line-height:1.15;letter-spacing:-1px;margin:17px 0 12px}.stage p{font-size:10px;opacity:.8}.pellets:after{background:linear-gradient(transparent 20%,#d8e4e9 88%)}.pellets .stage-content,.cable .stage-content{color:var(--navy)}.cable{background:#e5ecee}.cable>img{height:65%;object-fit:contain;padding:20px 5px}.cable:after{display:none}.journey-foot{padding:19px 5%;display:flex;justify-content:space-between;font-size:9px;letter-spacing:1.7px;border-bottom:1px solid #dde2e2}.journey-foot span:last-child{letter-spacing:.5px;color:var(--muted)}.expertise{padding:90px 8%}.section-top{display:grid;grid-template-columns:1fr 1.5fr;gap:40px}.section-top h2{font-size:43px;font-weight:500;letter-spacing:-1.5px;line-height:1.18}.section-top .eyebrow{padding-top:10px}.expertise-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;margin-top:65px}.expertise-grid article{border-top:1px solid #b9c6cd;padding-top:20px}.number{font-size:11px;color:var(--blue)}h3{font-size:26px;font-weight:500;margin-top:25px}.expertise-grid p{color:var(--muted);line-height:1.8;font-size:14px;max-width:470px;margin-top:17px}.geneva{background:#e9eff1;padding:45px 5% 22px}.geneva-main{position:relative;height:430px;overflow:hidden}.geneva-main>img{width:100%;height:100%;object-fit:cover}.geneva-main:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,30,43,.8),transparent 85%)}.geneva-main>div{position:absolute;top:45px;left:45px;z-index:1;color:white}.geneva-main h2{font-size:55px;font-weight:500;line-height:1.06;letter-spacing:-2px;margin-top:28px}.geneva-main em{color:#c7dbe6}.geneva-main p{font-size:13px;max-width:300px;line-height:1.7;margin-top:22px}.landmarks{display:grid;grid-template-columns:1fr 1fr 1fr;gap:25px;margin-top:25px}figure{margin:0}figure img{width:100%;height:165px;object-fit:cover}figcaption{font-size:9px;letter-spacing:1px;margin-top:10px}.geneva-note{padding:15px 20px}.geneva-note>span{font-size:9px;letter-spacing:2px;color:var(--muted)}.geneva-note p{font-size:24px;line-height:1.3;margin-top:22px}.credit{font-size:9px;color:#697b85;line-height:1.6;margin-top:25px}.credit a{text-decoration:underline}.closing{position:relative;background:var(--navy);color:white;padding:70px 8%}.closing h2{font-size:58px;font-weight:500;letter-spacing:-2px;line-height:1.1;margin-top:25px}.round-link{position:absolute;right:10%;top:45%;width:90px;height:90px;border:1px solid #8299a7;border-radius:50%;display:grid;place-items:center;font-size:40px}footer{padding:35px 5%;display:flex;justify-content:space-between;align-items:center;font-size:10px;line-height:1.7;color:var(--muted)}a:hover{color:var(--blue)}@media(min-width:1600px){.journey{height:540px}}@media(max-width:700px){header{height:85px;padding:0 6%}nav>a:not(.contact){display:none}nav{gap:0}.intro{padding:35px 6%}.intro-grid{grid-template-columns:1fr;gap:28px}h1{font-size:65px;letter-spacing:-3px}.intro-right>p:first-child{font-size:20px}.journey{grid-template-columns:1fr 1fr;height:auto;gap:4px;margin:0 3%}.stage{height:330px}.stage-content{left:18px;bottom:23px}.stage h2{font-size:25px}.stage p{font-size:10px;line-height:1.5}.step{font-size:7px;letter-spacing:1px}.journey-foot{gap:15px;font-size:8px;line-height:1.6}.expertise{padding:50px 6%}.section-top{grid-template-columns:1fr;gap:20px}.section-top h2{font-size:33px}.expertise-grid{grid-template-columns:1fr;gap:35px;margin-top:35px}.geneva{padding:20px 4%}.geneva-main{height:460px}.geneva-main>div{left:25px;top:35px}.geneva-main h2{font-size:47px}.landmarks{grid-template-columns:1fr 1fr;gap:15px}figure img{height:130px}.geneva-note{grid-column:1/-1;padding:15px 5px}.closing{padding:50px 6%}.closing h2{font-size:43px}.round-link{position:static;width:65px;height:65px;margin-top:30px;font-size:30px}footer{align-items:start;gap:20px;flex-direction:column}}

@media(max-width:700px){h1{font-size:clamp(42px,13vw,65px);letter-spacing:-2px}.intro .eyebrow{font-size:8px;line-height:1.7}.stage h2{font-size:clamp(19px,5.8vw,25px)}.stage-content{left:12px;right:8px}.brand{font-size:25px}.brand img{width:42px;height:42px}.contact{padding:11px 15px}.contact span{margin-left:8px}}

h1{font-size:clamp(42px,4.6vw,74px);letter-spacing:-2.5px}@media(max-width:700px){h1{font-size:clamp(32px,9vw,48px);letter-spacing:-1.3px)}}

.stage.pellets {
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) minmax(0, 1fr);
  gap: 3px;
  background: #dbe5e9;
}
.stage.pellets::after { display: none; }
.pellets .compound-heading {
  position: static;
  min-width: 0;
  padding: 18px 14px 14px;
  color: var(--navy);
}
.stage.pellets .compound-heading h2 {
  font-size: clamp(15px, 1.35vw, 20px);
  line-height: 1.25;
  letter-spacing: -.35px;
  margin: 10px 0 0;
}
.compound-kind {
  display: grid;
  grid-template-rows: minmax(0, 1fr) auto;
  min-height: 0;
  overflow: hidden;
  margin: 0;
  background: #e5ecee;
  color: var(--navy);
}
.compound-kind img {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 0;
  object-fit: cover;
}
.compound-kind figcaption {
  min-height: 40px;
  padding: 8px 12px;
  margin: 0;
  font-size: clamp(10px, .9vw, 13px);
  font-weight: 600;
  line-height: 1.3;
  letter-spacing: .01em;
}
.compound-kind--semiconductor { background: var(--navy); color: #fff; }
@media (max-width: 700px) {
  .journey .pellets, .journey .manufacturing { height: 440px; }
}

@media(min-width:701px){.journey{grid-template-columns:repeat(5,minmax(0,1fr))}.stage h2{font-size:clamp(22px,2.1vw,31px)}}.manufacturing img{object-position:50% center}@media(max-width:700px){.journey .cable{grid-column:1/-1}.journey .cable>img{height:65%;max-width:65%;margin-left:30%}.journey .cable .stage-content{max-width:45%}}

.contracts{padding:65px 8% 80px;border-top:1px solid #dde2e2}.contracts>h2{font-size:clamp(30px,3.3vw,46px);font-weight:500;letter-spacing:-1.3px;line-height:1.2;max-width:800px;margin-top:22px}.contracts-intro{font-size:15px;line-height:1.7;color:var(--muted);margin-top:22px;max-width:650px}.contracts-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-top:40px}.contracts-grid article{padding:27px;background:#e9eff1;border-top:2px solid var(--blue)}.contracts-grid h3{margin-top:22px}.contracts-grid p{font-size:14px;line-height:1.7;color:var(--muted);margin-top:16px}.contracts-grid .contract-subtitle{margin-top:6px;font-size:12px}@media(max-width:700px){.contracts{padding:45px 6%}.contracts-grid{grid-template-columns:1fr;gap:15px}}

/* Interactive map beside the office address */
.contact-location {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.5fr);
  align-items: center;
  gap: 32px;
}
.contact-location-details { min-width: 0; }
.contact-map {
  display: block;
  width: 100%;
  height: 360px;
  min-width: 0;
  border: 0;
  background: #dbe5e9;
}
@media (max-width: 700px) {
  .contact-location { grid-template-columns: 1fr; gap: 28px; }
  .contact-map { height: 320px; }
}

/* Geneva contact page */
.contact-page .geneva-main{height:480px}.contact-page .geneva-main h1{font-size:clamp(40px,5vw,72px);line-height:1.08;letter-spacing:-2px;max-width:700px;margin-top:28px}.contact-page .geneva-main p{max-width:390px}.contact-details{padding:65px 8% 80px;scroll-margin-top:25px}.contact-details>h2{font-size:44px;font-weight:500;letter-spacing:-1.5px;margin-top:22px}.contact-intro{font-size:15px;line-height:1.7;color:var(--muted);max-width:650px;margin-top:20px}.contact-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:35px}.contact-card{padding:30px;background:#e9eff1;border-top:2px solid var(--blue)}.contact-card-wide{grid-column:1/-1}.card-index{font-size:11px;color:var(--blue)}.contact-card h3{margin:20px 0 16px}.contact-link{font-size:clamp(16px,1.7vw,23px);overflow-wrap:anywhere}.contact-address{font-size:15px;line-height:1.8;color:var(--muted)}@media(max-width:700px){.contact-page .geneva-main{height:440px}.contact-page .geneva-main>div{left:24px;right:24px}.contact-page .geneva-main h1{font-size:40px;letter-spacing:-1.5px}.contact-details{padding:45px 6%}.contact-grid{grid-template-columns:1fr;gap:15px}.contact-details>h2{font-size:36px}}
