/* Homepage lower sections. Shared gutters keep these aligned with the catalogue. */
.home-process{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);
  align-items:center;
  gap:clamp(36px,6vw,100px);
  padding:64px var(--gutter);
  color:#edf5fa;
  background:linear-gradient(120deg,#102c41,#0c2133);
  border-block:1px solid #304f65;
}
.home-process .eyebrow{color:#a7c7db;letter-spacing:.14em}
.home-process h2{
  margin:0 0 22px;
  font:500 clamp(38px,3.7vw,59px)/1.02 var(--display);
  letter-spacing:-.015em;
}
.home-process h2 span{color:#9bd3ef}
.home-process-story>p:not(.eyebrow){
  margin:0 0 25px;
  color:#c2d4e0;
  font:400 15px/1.8 var(--body);
  max-width:57ch;
  white-space:normal;
}
.home-section-link{
  display:inline-flex;
  align-items:center;
  gap:26px;
  padding:10px 0;
  border-bottom:1px solid currentColor;
  font:600 13px/1.5 var(--body);
  transition:color .2s ease;
}
.home-section-link svg{width:22px;height:22px;flex-shrink:0}
.home-process .home-section-link{color:#b8e3fc}
.home-process .home-section-link:hover{color:#fff}
.home-process-steps{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:0 26px;
}
.home-process-step{
  position:relative;
  padding:22px 26px 25px 0;
  border-top:1px solid #426078;
  transition:border-color .2s,color .2s;
}
.home-process-step-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
.home-process-step-top>span{font:500 12px/1 var(--body);color:#a6c4d8;letter-spacing:.1em}
.home-process-step-top svg{width:27px;height:27px;color:#8bc8ed}
.home-process-step h3{margin:0 0 9px;font:600 27px/1.1 var(--display)}
.home-process-step p{margin:0;color:#bed1df;font:400 14px/1.65 var(--body);max-width:30ch}
.home-process-step-arrow{position:absolute;right:0;bottom:25px;color:#94bed9}
.home-process-step-arrow svg{width:18px;height:18px}
.home-process-step:hover{border-color:#79b9df;color:#b8e3fc}
.home-infrastructure{
  display:grid;
  grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);
  gap:clamp(32px,4vw,64px);
  padding:64px var(--gutter);
  background:radial-gradient(ellipse at 100% 0,#16354a,transparent 70%),#081a29;
  color:#f0f6fa;
}
.home-infrastructure-photo{
  position:relative;
  overflow:hidden;
  min-height:420px;
  border:1px solid #46667c;
  border-radius:4px;
}
.home-infrastructure-photo>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:48% center}
.home-infrastructure-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#041523e8,transparent 50%)}
.home-infrastructure-caption{position:absolute;bottom:28px;left:28px;right:28px;z-index:1;border-left:2px solid #ce3152;padding-left:18px}
.home-infrastructure-caption span{display:block;color:#b1d0e3;font:500 10px/1.5 var(--body);letter-spacing:.12em;margin-bottom:8px}
.home-infrastructure-caption strong{font:500 32px/1.1 var(--display)}
.home-infrastructure .eyebrow{font-size:10px;letter-spacing:.1em;color:#99bdd4;margin-bottom:16px}
.home-infrastructure h2{font:500 clamp(36px,3.3vw,52px)/1.05 var(--display);margin:0 0 16px;letter-spacing:-.01em}
.home-infrastructure h2 span{color:#9bd3ef}
.home-infrastructure-content>p:not(.eyebrow){font:400 15px/1.7 var(--body);color:#b3cad9;max-width:57ch;white-space:normal;margin:0 0 24px}
.home-machine-list{border-top:1px solid #34546b;margin-bottom:16px}
.home-machine-row{display:grid;grid-template-columns:90px minmax(0,1fr) 20px;gap:18px;align-items:center;padding:13px 0;border-bottom:1px solid #34546b;transition:background .2s}
.home-machine-row>img{width:90px;height:69px;object-fit:cover;border-radius:2px}
.home-machine-row h3{font:500 23px/1.15 var(--display);margin:0 0 5px;white-space:normal}
.home-machine-row p{font:400 13px/1.5 var(--body);color:#adc4d4;margin:0;white-space:normal}
.home-machine-row>svg{width:20px;height:20px;color:#87b9d7}
.home-machine-row:hover{background:#24516c33}
.home-infrastructure .home-section-link{color:#b8e3fc}
.home-infrastructure .home-section-link:hover{color:white}
@media(max-width:1100px){
  .home-process{gap:32px}
  .home-process-steps{column-gap:18px}
  .home-process-step h3{font-size:25px}
  .home-machine-row{grid-template-columns:74px minmax(0,1fr) 18px;gap:12px}
  .home-machine-row>img{width:74px;height:66px}
}
@media(max-width:900px){
  .home-process,.home-infrastructure{grid-template-columns:1fr;gap:32px;padding-block:44px}
  .home-process-story>p:not(.eyebrow){max-width:none}
  .home-process-story h2 br{display:none}
  .home-process-story h2 span:before{content:" "}
  .home-infrastructure-photo{min-height:0;aspect-ratio:2/1}
  .home-infrastructure h2{font-size:42px}
}
@media(max-width:600px){
  .home-process,.home-infrastructure{padding-block:36px;gap:26px}
  .home-process h2{font-size:38px}
  .home-process-step{padding:18px 14px 22px 0}
  .home-process-step h3{font-size:24px}
  .home-process-step p{font-size:13px;line-height:1.6}
  .home-process-step-arrow{display:none}
  .home-infrastructure-photo{aspect-ratio:4/3}
  .home-infrastructure-caption{left:20px;right:20px;bottom:22px}
  .home-infrastructure-caption strong{font-size:29px}
  .home-infrastructure h2{font-size:38px}
  .home-infrastructure .eyebrow{font-size:9px;letter-spacing:.03em;gap:10px}
  .home-infrastructure .accent-line{width:27px;flex-shrink:0}
  .home-machine-row{grid-template-columns:70px minmax(0,1fr) 16px;gap:12px}
  .home-machine-row>img{width:70px;height:64px}
  .home-machine-row h3{font-size:22px}
}
@media(prefers-reduced-motion:reduce){
  .home-section-link,.home-process-step,.home-machine-row{transition:none}
}
