/* Gromnii final production pass - image-led signature pages and restrained motion */
:root{
  --final-blue:#0b63f6;
  --final-royal:#004ee6;
  --final-ice:#eaf5ff;
  --final-navy:#071b41;
  --final-gold:#ffb800;
  --final-line:#d8e6f5;
  --final-ease:cubic-bezier(.2,.7,.2,1);
}

.final-production{background:#fff;color:var(--final-navy)}
.final-production main{overflow:clip}
.redirect-page{min-height:100vh;display:grid;place-items:center;padding:24px;font:500 18px/1.6 Inter,system-ui,sans-serif}
.redirect-page main{max-width:700px;padding:38px;border-left:4px solid var(--final-blue);background:#f4f9ff}
.redirect-page a{color:var(--final-blue);font-weight:800}
.final-production .site-header{border-bottom-color:rgba(9,61,125,.12)}
.final-production .nav-link[aria-current="page"],
.final-production .desktop-nav>a[aria-current="page"]{color:var(--final-blue)}
.final-production .nav-link[aria-current="page"]:after,
.final-production .desktop-nav>a[aria-current="page"]:after{
  content:"";display:block;height:2px;margin-top:7px;background:linear-gradient(90deg,var(--final-blue),var(--final-gold));
}
.final-production .mobile-nav a[aria-current="page"]{color:var(--final-blue);font-weight:800}

/* Signature media participates in the page composition instead of sitting in a card. */
.v17-signature-hero{position:relative;isolation:isolate;background:#fff}
.v17-signature-hero:before{
  content:"";position:absolute;z-index:-1;inset:8% -10% auto 42%;height:64%;
  background:radial-gradient(ellipse,rgba(80,177,255,.13),transparent 67%);pointer-events:none;
}
.v17-signature-hero .hero-grid{grid-template-columns:minmax(340px,.78fr) minmax(590px,1.22fr);gap:clamp(34px,5vw,84px);min-height:760px;align-items:center}
.v17-signature-hero .hero-copy{position:relative;z-index:3}
.v17-signature-hero .hero-copy h1{max-width:9.8ch;font-size:clamp(3.7rem,6.6vw,7.4rem);letter-spacing:-.065em;line-height:.94}
.v17-signature-hero .hero-copy .lead{max-width:49ch;color:#536b88;font-size:clamp(1.05rem,1.4vw,1.28rem)}
.v17-signature-media{
  position:relative;margin:0;height:clamp(570px,56vw,760px);overflow:hidden;
  background:linear-gradient(145deg,#f8fbff,#edf6ff);clip-path:polygon(6% 0,100% 0,100% 89%,82% 100%,0 96%,0 12%);
  box-shadow:0 34px 90px rgba(13,75,150,.13);
}
.v17-signature-media:before{
  content:"";position:absolute;z-index:2;inset:0;pointer-events:none;
  background:linear-gradient(90deg,rgba(255,255,255,.18),transparent 28%),linear-gradient(0deg,rgba(4,52,118,.11),transparent 36%);
}
.v17-signature-media picture,.v17-signature-media img{display:block;width:100%;height:100%}
.v17-signature-media img{object-fit:cover;transform:scale(1.012);transition:transform 900ms var(--final-ease),filter 500ms ease}
.v17-signature-media.is-visible img{transform:scale(1)}
.v17-signature-media figcaption{
  position:absolute;z-index:3;left:4%;right:4%;bottom:4%;display:flex;align-items:center;gap:clamp(12px,2vw,28px);flex-wrap:wrap;
  padding:15px 18px;border-left:3px solid var(--final-gold);background:rgba(255,255,255,.88);backdrop-filter:blur(16px);
  color:#315778;font-size:14px;line-height:1.4;
}
.v17-signature-media figcaption strong{color:var(--final-navy);font-family:Sora,sans-serif;font-size:15px}
.v17-signature-media figcaption span{position:relative;padding-left:18px}
.v17-signature-media figcaption span:before{content:"";position:absolute;left:0;top:.45em;width:7px;height:7px;border:2px solid var(--final-blue);border-radius:50%}

/* Each signature page gets a related, but not identical, composition. */
.category-ai .v17-signature-media{clip-path:ellipse(49% 48% at 51% 50%);height:690px}
.category-ai .v17-signature-media img{object-position:54% 50%}
.category-data .v17-signature-media{clip-path:polygon(0 7%,87% 0,100% 21%,95% 100%,10% 96%,0 76%)}
.category-data .v17-signature-media img{object-position:52% 50%}
.category-cloud .v17-signature-media{border-radius:48% 48% 10% 10%/22% 22% 12% 12%;clip-path:none}
.category-cloud .v17-signature-media img{object-position:48% 52%}
.category-security .v17-signature-media{clip-path:polygon(8% 0,100% 5%,95% 92%,70% 100%,0 91%,3% 16%)}
.category-security .v17-signature-media img{object-position:50% 48%}
.category-industrial .v17-signature-media{clip-path:polygon(0 0,94% 0,100% 15%,100% 100%,6% 94%,0 78%)}
.category-industrial .v17-signature-media img{object-position:48% 50%}

/* Delivery is a cinematic progression rather than another split-page hero. */
.page-delivery .v17-signature-hero .hero-grid{position:relative;display:block;max-width:none;padding:0;min-height:860px}
.page-delivery .v17-signature-hero .hero-copy{
  position:absolute;z-index:4;left:max(5vw,calc((100vw - 1320px)/2));top:clamp(72px,8vw,116px);max-width:680px;
  padding:clamp(28px,4vw,54px);background:rgba(255,255,255,.9);backdrop-filter:blur(18px);border-left:5px solid var(--final-blue);
}
.page-delivery .v17-signature-hero .hero-copy h1{max-width:10ch}
.page-delivery .v17-signature-media{height:860px;clip-path:none;box-shadow:none}
.page-delivery .v17-signature-media img{object-position:center 57%}
.page-delivery .v17-signature-media figcaption{left:auto;right:4%;max-width:720px}

/* About lets the disciplines visibly converge around the requirement. */
.page-about .v17-signature-hero .hero-grid{grid-template-columns:.72fr 1.28fr;min-height:790px}
.page-about .v17-signature-media{height:720px;clip-path:polygon(11% 0,100% 6%,96% 91%,78% 100%,0 95%,0 13%)}
.page-about .v17-signature-media img{object-position:51% 50%}
.page-about .v17-signature-media figcaption{justify-content:center}

/* Contact remains quiet: requirement, context, direction, conversation. */
.page-contact .v17-signature-hero{padding-top:20px}
.page-contact .v17-signature-hero .hero-grid{grid-template-columns:.72fr 1.28fr;min-height:690px}
.page-contact .v17-signature-hero .hero-copy h1{max-width:8ch}
.page-contact .v17-signature-media{height:610px;clip-path:polygon(0 0,100% 0,100% 90%,82% 100%,0 94%);box-shadow:none;background:#fff}
.page-contact .v17-signature-media img{object-position:55% 55%}
.page-contact .v17-signature-media:before{background:linear-gradient(90deg,rgba(255,255,255,.5),transparent 38%)}
.page-contact .v17-signature-media figcaption{left:9%;right:auto;max-width:540px}

/* A calmer page rhythm and fewer card-like containers. */
.final-production main>.section:nth-of-type(even):not(.wash):not(.final-cta){background:linear-gradient(180deg,#fff,#f8fbff)}
.final-production .section-head{align-items:end}
.final-production .section-head h2{letter-spacing:-.045em}
.final-production .section-head>p{color:#5b718a}
.final-production .eyebrow{letter-spacing:.03em;text-transform:none;font-size:14px}
.final-production .card-index,.final-production .family-no,.final-production .focus-card-index{font-variant-numeric:tabular-nums}
.final-production .card-grid,.final-production .consideration-grid,.final-production .outcome-grid,.final-production .related-grid{
  border-top-color:var(--final-line);
}
.final-production .card,.final-production .consideration-grid article,.final-production .outcome-grid article,.final-production .related-grid a{
  border-color:var(--final-line);
}
.final-production .card h3,.final-production .consideration-grid h3,.final-production .outcome-grid h3{letter-spacing:-.02em}
.final-production .final-cta .cta-box{background:linear-gradient(130deg,#edf7ff,#fff 66%,#fff8dd)}

/* Large visual chapter inserted before technical depth on signature category pages. */
.v17-visual-bridge{padding:0 0 clamp(70px,9vw,140px)}
.v17-visual-bridge .shell{display:grid;grid-template-columns:.72fr 1.28fr;gap:clamp(40px,8vw,120px);align-items:start}
.v17-visual-bridge h2{margin:0;max-width:12ch;font-size:clamp(2.5rem,5vw,5.2rem);letter-spacing:-.055em;line-height:.98}
.v17-visual-bridge p{max-width:53ch;margin:0;color:#526d88;font-size:clamp(1.05rem,1.4vw,1.28rem);line-height:1.72}
.v17-visual-bridge .v17-bridge-line{grid-column:1/-1;height:1px;background:linear-gradient(90deg,var(--final-blue),var(--final-gold) 34%,var(--final-line) 34%)}

/* Intentional reveal: visual hierarchy only, no universal upward animation. */
.final-js [data-final-reveal]{opacity:0;transition:opacity 700ms ease}
.final-js [data-final-reveal].is-visible{opacity:1}

@media(max-width:1120px){
  .v17-signature-hero .hero-grid{grid-template-columns:.82fr 1.18fr;min-height:690px}
  .v17-signature-hero .hero-copy h1{font-size:clamp(3.2rem,6.8vw,5.7rem)}
  .v17-signature-media,.category-ai .v17-signature-media{height:600px}
  .page-delivery .v17-signature-hero .hero-grid,.page-delivery .v17-signature-media{min-height:780px;height:780px}
}

@media(max-width:860px){
  .v17-signature-hero .hero-grid,
  .page-about .v17-signature-hero .hero-grid,
  .page-contact .v17-signature-hero .hero-grid{grid-template-columns:1fr;gap:34px;min-height:0;padding-top:56px;padding-bottom:70px}
  .v17-signature-hero .hero-copy{padding:0}
  .v17-signature-hero .hero-copy h1{font-size:clamp(3.25rem,12vw,5.8rem)}
  .v17-signature-media,.category-ai .v17-signature-media,.page-about .v17-signature-media,.page-contact .v17-signature-media{height:min(76vw,600px)}
  .page-delivery .v17-signature-hero .hero-grid{min-height:0;height:auto;padding:56px 0 0}
  .page-delivery .v17-signature-hero .hero-copy{position:relative;left:auto;top:auto;max-width:none;margin:0 24px -36px;padding:28px;border-left-width:4px}
  .page-delivery .v17-signature-media{height:min(80vw,620px);min-height:430px}
  .v17-visual-bridge .shell{grid-template-columns:1fr;gap:25px}
  .v17-visual-bridge .v17-bridge-line{grid-column:auto}
}

@media(max-width:560px){
  .v17-signature-hero .hero-grid,
  .page-about .v17-signature-hero .hero-grid,
  .page-contact .v17-signature-hero .hero-grid{padding-top:38px;padding-bottom:54px}
  .v17-signature-hero .hero-copy h1{font-size:clamp(3rem,15vw,4.8rem);letter-spacing:-.06em}
  .v17-signature-hero .hero-copy .lead{font-size:1rem;line-height:1.65}
  .v17-signature-media,.category-ai .v17-signature-media,.page-about .v17-signature-media,.page-contact .v17-signature-media{height:88vw;min-height:340px;max-height:480px;clip-path:polygon(0 0,100% 0,100% 93%,84% 100%,0 96%);border-radius:0}
  .category-data .v17-signature-media img{object-position:45% 50%}
  .category-security .v17-signature-media img{object-position:44% 50%}
  .category-industrial .v17-signature-media img{object-position:43% 50%}
  .page-contact .v17-signature-media img{object-position:62% 50%}
  .v17-signature-media figcaption{left:3%;right:3%;bottom:3%;gap:8px 14px;padding:12px 14px;font-size:14px}
  .v17-signature-media figcaption strong{width:100%;font-size:14px}
  .v17-signature-media figcaption span{padding-left:14px}
  .page-delivery .v17-signature-hero .hero-copy{margin:0 16px -24px;padding:24px}
  .page-delivery .v17-signature-media{height:95vw;min-height:390px}
  .page-delivery .v17-signature-media img{object-position:58% 56%}
  .page-delivery .v17-signature-media figcaption{right:3%;left:3%;max-width:none}
}

@media(prefers-reduced-motion:reduce){
  .v17-signature-media img,.final-js [data-final-reveal],.final-js .v17-signature-media[data-final-reveal]{transition:none!important;transform:none!important;opacity:1!important}
}

@media(forced-colors:active){
  .v17-signature-media figcaption{border:2px solid CanvasText;background:Canvas}
}
