
/* Final premium UI harmonisation — 2026-07-21 */
:root{--fp-ink:#082d40;--fp-muted:#587487;--fp-teal:#16c1bd;--fp-green:#12af91;--fp-dark:#074b5a;--fp-line:#d7e8ee;--fp-soft:#f3fafc;--fp-shadow:0 18px 48px rgba(8,45,64,.10)}
.shared-page-hero-v5,.detail-hero.shared-page-hero-v5,.media-hero.shared-page-hero-v5,.vw-hero.shared-page-hero-v5,.pc-hero.shared-page-hero-v5,.vf-hero.shared-page-hero-v5{min-height:0!important;padding:clamp(34px,5vw,68px) max(24px,calc((100vw - 1180px)/2))!important;margin:0!important;border-radius:0!important;background:linear-gradient(135deg,#f4fbfd 0%,#e9f7fa 100%)!important;color:var(--fp-ink)!important;gap:clamp(24px,4vw,54px)!important;align-items:center!important}
.shared-page-hero-v5 h1{font-size:clamp(2rem,4vw,3.7rem)!important;line-height:1.05!important;letter-spacing:-.045em!important;margin:.35rem 0 .85rem!important;max-width:900px!important}
.shared-page-hero-v5 p{font-size:clamp(.98rem,1.35vw,1.12rem)!important;line-height:1.7!important;max-width:780px!important;color:var(--fp-muted)!important}
.shared-page-hero-v5 img{max-height:300px!important;object-fit:cover!important;border-radius:22px!important;box-shadow:var(--fp-shadow)!important}
.shared-page-hero-v5 .hero-actions,.shared-page-hero-v5 .shared-hero-actions-v5{margin-top:20px!important;gap:10px!important;display:flex!important;flex-wrap:wrap!important}
.shared-page-hero-v5 .btn,.fp-btn{min-height:48px;display:inline-flex;align-items:center;justify-content:center;border-radius:14px;padding:0 22px;font-weight:800;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}
.shared-page-hero-v5 .btn:hover,.fp-btn:hover{transform:translateY(-2px)}
.gallery-filters-v2{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important;margin-top:20px!important}
.gallery-filter-v2{min-height:52px!important;border-radius:14px!important;padding:10px 14px!important;text-align:center!important;white-space:normal!important}
.gallery-filter-v2.is-active{box-shadow:0 10px 26px rgba(18,175,145,.20)!important}
.gallery-search-v3{border-radius:18px!important;box-shadow:0 12px 35px rgba(8,45,64,.08)!important}
.fp-gallery-intro{display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center;padding:24px 28px;margin:0 0 22px;border:1px solid var(--fp-line);border-radius:20px;background:linear-gradient(135deg,#fff,#f0fbfc);box-shadow:0 12px 36px rgba(8,45,64,.07)}
.fp-gallery-intro h2{margin:0 0 6px;font-size:clamp(1.35rem,2.5vw,2rem);color:var(--fp-ink)}.fp-gallery-intro p{margin:0;color:var(--fp-muted)}
.fp-ai-cta{margin:clamp(36px,6vw,76px) auto;padding:clamp(28px,5vw,56px);max-width:1180px;border-radius:26px;background:linear-gradient(135deg,#063f50,#075c69);color:#fff;box-shadow:0 24px 60px rgba(4,55,68,.18);position:relative;overflow:hidden}
.fp-ai-cta:after{content:"";position:absolute;width:280px;height:280px;border-radius:50%;right:-100px;top:-150px;background:rgba(35,220,205,.13)}
.fp-ai-cta__grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:34px;align-items:center;position:relative;z-index:1}.fp-ai-cta__eyebrow{font-size:.77rem;font-weight:900;letter-spacing:.14em;color:#73eee2;text-transform:uppercase}.fp-ai-cta h2{font-size:clamp(1.75rem,3.2vw,3rem);line-height:1.08;margin:10px 0 14px;color:#fff}.fp-ai-cta p{color:#d4edf1;line-height:1.75;margin:0}.fp-ai-cta__actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}.fp-ai-cta .fp-btn{background:linear-gradient(135deg,#22cbd0,#10b18f);color:#fff;box-shadow:0 12px 28px rgba(13,198,180,.22)}.fp-ai-cta .fp-btn--ghost{background:transparent;border:1px solid rgba(255,255,255,.35);box-shadow:none}.fp-ai-cta__facts{display:grid;gap:10px}.fp-ai-cta__fact{padding:15px 17px;border:1px solid rgba(255,255,255,.14);border-radius:15px;background:rgba(255,255,255,.07);backdrop-filter:blur(8px)}.fp-ai-cta__fact strong{display:block;font-size:.95rem}.fp-ai-cta__fact span{display:block;color:#c9e7eb;font-size:.86rem;margin-top:3px}
.service-gallery-cta{max-width:1180px;margin:34px auto;padding:28px;border:1px solid var(--fp-line);border-radius:24px;background:linear-gradient(135deg,#f9fdfe,#eaf8fa);display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center;box-shadow:var(--fp-shadow)}.service-gallery-cta h2{margin:0 0 8px;color:var(--fp-ink);font-size:clamp(1.45rem,2.5vw,2.15rem)}.service-gallery-cta p{margin:0;color:var(--fp-muted);line-height:1.65}.service-gallery-cta .fp-btn{background:linear-gradient(135deg,var(--fp-teal),var(--fp-green));color:#fff;white-space:nowrap}
.product-video-premium{border-radius:28px!important;overflow:hidden!important}.product-video-premium .fp-product-video-cta{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 24px;margin-top:22px;border:1px solid var(--fp-line);border-radius:18px;background:#fff;box-shadow:0 12px 32px rgba(8,45,64,.08)}.fp-product-video-cta strong{display:block;color:var(--fp-ink);font-size:1.12rem}.fp-product-video-cta span{display:block;color:var(--fp-muted);margin-top:4px}.fp-product-video-cta .fp-btn{background:linear-gradient(135deg,var(--fp-teal),var(--fp-green));color:#fff;white-space:nowrap}
@media(max-width:820px){.gallery-filters-v2{grid-template-columns:repeat(2,minmax(0,1fr))!important}.fp-ai-cta__grid,.service-gallery-cta,.fp-gallery-intro{grid-template-columns:1fr}.fp-product-video-cta{align-items:flex-start!important;flex-direction:column}.shared-page-hero-v5{grid-template-columns:1fr!important}.shared-page-hero-v5 img{width:100%!important;max-height:240px!important}.service-gallery-cta .fp-btn,.fp-gallery-intro .fp-btn{width:100%}}
@media(max-width:480px){.gallery-filters-v2{grid-template-columns:1fr!important}.shared-page-hero-v5{padding:28px 18px!important}.fp-ai-cta{border-radius:20px;padding:26px 20px}.service-gallery-cta{margin:24px 16px;padding:22px}.fp-gallery-intro{padding:20px}}

/* v20260721-02 — final hero contrast + service gallery CTA repair */
.shared-page-hero-v5,
.detail-hero.shared-page-hero-v5,
.media-hero.shared-page-hero-v5,
.vw-hero.shared-page-hero-v5,
.pc-hero.shared-page-hero-v5,
.vf-hero.shared-page-hero-v5{
  position:relative!important;
  isolation:isolate!important;
  overflow:hidden!important;
  min-height:0!important;
  padding:clamp(34px,4.5vw,58px) max(20px,calc((100vw - 1180px)/2))!important;
  background:radial-gradient(circle at 86% 8%,rgba(38,205,218,.23),transparent 30%),linear-gradient(135deg,#051e2d 0%,#073e52 57%,#09657a 100%)!important;
  color:#fff!important;
}
.shared-page-hero-v5:before{opacity:.85!important}
.shared-page-hero-v5:after{opacity:.65!important}
.shared-page-hero-v5 h1,
.shared-page-hero-v5 h2,
.shared-page-hero-v5 h3{color:#fff!important;text-shadow:0 2px 18px rgba(0,0,0,.16)!important}
.shared-page-hero-v5 p,
.shared-page-hero-v5 .shared-hero-lead-v5{color:#d9edf3!important}
.shared-page-hero-v5 .shared-hero-kicker-v5,
.shared-page-hero-v5 .kicker,
.shared-page-hero-v5 .eyebrow{color:#78e6ee!important}
.shared-page-hero-v5 .shared-hero-breadcrumb-v5,
.shared-page-hero-v5 .shared-hero-breadcrumb-v5 span{color:#bddde6!important}
.shared-page-hero-v5 .shared-hero-breadcrumb-v5 a{color:#fff!important}
.shared-page-hero-v5 .shared-hero-btn-v5--primary{color:#fff!important;background:linear-gradient(135deg,#20c3d2,#13ae86)!important;box-shadow:0 14px 34px rgba(13,174,134,.27)!important}
.shared-page-hero-v5 .shared-hero-btn-v5--ghost{color:#fff!important;border-color:rgba(255,255,255,.28)!important;background:rgba(255,255,255,.09)!important}
.shared-page-hero-v5 .shared-hero-chips-v5 span{color:#e4f5f8!important;border-color:rgba(255,255,255,.18)!important;background:rgba(255,255,255,.08)!important}

.service-gallery-cta{
  width:min(1180px,calc(100% - 40px));
  margin:clamp(28px,4vw,52px) auto!important;
  padding:clamp(24px,4vw,40px)!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:24px!important;
  align-items:center!important;
  border:1px solid #d7ebf0!important;
  border-radius:26px!important;
  background:radial-gradient(circle at 93% 0%,rgba(31,195,211,.15),transparent 34%),linear-gradient(135deg,#ffffff,#f1fafc)!important;
  box-shadow:0 20px 58px rgba(8,40,59,.09)!important;
}
.service-gallery-cta h2{margin:0 0 9px!important;color:#0a3045!important;font-size:clamp(25px,3vw,38px)!important;line-height:1.13!important;letter-spacing:-.025em!important}
.service-gallery-cta p{max-width:760px!important;margin:0!important;color:#587183!important;font-size:16px!important;line-height:1.7!important}
.service-gallery-cta .fp-btn{
  min-width:210px!important;
  min-height:52px!important;
  padding:0 22px!important;
  color:#fff!important;
  background:linear-gradient(135deg,#19bfd0,#12aa83)!important;
  box-shadow:0 14px 32px rgba(18,170,131,.23)!important;
  white-space:nowrap!important;
}
.service-gallery-cta .fp-btn:hover{box-shadow:0 18px 40px rgba(18,170,131,.3)!important}

@media(max-width:820px){
  .service-gallery-cta{grid-template-columns:1fr!important;width:calc(100% - 32px)!important;margin:26px 16px!important;padding:24px 20px!important;border-radius:22px!important}
  .service-gallery-cta .fp-btn{width:100%!important;min-width:0!important}
}
@media(max-width:480px){
  .shared-page-hero-v5{padding:28px 18px 32px!important}
  .shared-page-hero-v5 h1{font-size:clamp(32px,10vw,42px)!important}
  .shared-hero-actions-v5{display:grid!important;grid-template-columns:1fr!important}
  .shared-hero-btn-v5{width:100%!important}
}


/* v20260721-03 — compact responsive product video CTA */
.product-video-premium--v2{border-radius:0!important;overflow:visible!important;background:linear-gradient(180deg,#f4fafc 0%,#eef7fa 100%)!important}
.pv2-card{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(380px,.92fr);overflow:hidden;border:1px solid rgba(26,101,126,.16);border-radius:30px;background:#062f42;box-shadow:0 24px 65px rgba(5,44,62,.16)}
.pv2-media{position:relative;display:block;min-height:430px;overflow:hidden;background:#092c3c;text-decoration:none}
.pv2-media img{display:block;width:100%;height:100%;min-height:430px;object-fit:cover;transition:transform .55s ease}
.pv2-media:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(2,24,35,.03) 40%,rgba(2,24,35,.52) 100%)}
.pv2-media:hover img{transform:scale(1.025)}
.pv2-play{position:absolute;z-index:2;left:50%;top:50%;display:grid;place-items:center;width:84px;height:84px;border-radius:50%;background:rgba(255,255,255,.95);box-shadow:0 18px 45px rgba(0,0,0,.25);transform:translate(-50%,-50%);transition:transform .2s ease,box-shadow .2s ease}
.pv2-play span{margin-left:5px;color:#0b8bbb;font-size:1.8rem}
.pv2-media:hover .pv2-play,.pv2-media:focus-visible .pv2-play{transform:translate(-50%,-50%) scale(1.07);box-shadow:0 22px 55px rgba(0,0,0,.32)}
.pv2-media:focus-visible{outline:3px solid #47d9dc;outline-offset:-3px}
.pv2-media-label{position:absolute;z-index:2;left:24px;bottom:22px;padding:9px 13px;border:1px solid rgba(255,255,255,.24);border-radius:999px;background:rgba(4,34,48,.72);color:#fff;font-size:.76rem;font-weight:850;letter-spacing:.06em;text-transform:uppercase;backdrop-filter:blur(8px)}
.pv2-content{display:flex;flex-direction:column;justify-content:center;padding:clamp(32px,4.5vw,58px);color:#fff;background:radial-gradient(circle at 100% 0%,rgba(29,198,200,.17),transparent 35%),linear-gradient(145deg,#062f42,#07495a)}
.pv2-kicker{display:inline-flex;align-items:center;gap:10px;color:#6fe4e4;font-size:.75rem;font-weight:900;letter-spacing:.15em;text-transform:uppercase}
.pv2-kicker:before{content:"";width:28px;height:2px;background:#22c9d0}
.pv2-content h2{max-width:560px;margin:15px 0 14px;color:#fff;font-size:clamp(2rem,3.45vw,3.45rem);line-height:1.03;letter-spacing:-.045em}
.pv2-content>p{max-width:590px;margin:0;color:#c8e0e7;font-size:1rem;line-height:1.72}
.pv2-points{display:grid;gap:8px;margin:22px 0 24px;padding:0;list-style:none}
.pv2-points li{display:flex;align-items:center;gap:11px;color:#edf8fa;font-size:.91rem;font-weight:700}
.pv2-points li span{display:grid;place-items:center;flex:0 0 31px;height:31px;border:1px solid rgba(104,226,226,.28);border-radius:9px;background:rgba(255,255,255,.07);color:#70e4e4;font-size:.68rem;font-weight:900}
.pv2-actions{display:flex;flex-wrap:wrap;gap:10px}
.pv2-btn{min-height:50px;display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:0 20px;border-radius:14px;text-decoration:none;font-weight:850;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}
.pv2-btn:hover{transform:translateY(-2px)}
.pv2-btn--primary{background:linear-gradient(135deg,#25c8d3,#11ad87);color:#fff;box-shadow:0 13px 30px rgba(14,181,166,.25)}
.pv2-btn--secondary{border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.06);color:#fff}
.pv2-note{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:23px;padding-top:18px;border-top:1px solid rgba(255,255,255,.12);font-size:.83rem}
.pv2-note strong{color:#cce8ed}.pv2-note a{color:#72e6df;text-decoration:none;font-weight:850;white-space:nowrap}
@media(max-width:1020px){.pv2-card{grid-template-columns:1fr}.pv2-media,.pv2-media img{min-height:360px;max-height:470px}.pv2-content{padding:34px 30px 38px}.pv2-content h2{max-width:760px}.pv2-content>p{max-width:760px}.pv2-points{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.pv2-points li{align-items:flex-start;padding:12px;border:1px solid rgba(255,255,255,.1);border-radius:13px;background:rgba(255,255,255,.05)}}
@media(max-width:700px){.product-video-premium--v2 .vf-wrap{width:calc(100% - 24px)!important}.pv2-card{border-radius:24px}.pv2-media,.pv2-media img{min-height:260px;max-height:340px}.pv2-play{width:70px;height:70px}.pv2-play span{font-size:1.45rem}.pv2-media-label{left:16px;bottom:15px}.pv2-content{padding:28px 20px 24px}.pv2-content h2{font-size:clamp(2rem,10vw,2.7rem)}.pv2-points{grid-template-columns:1fr}.pv2-points li{padding:9px 0;border:0;border-radius:0;background:transparent}.pv2-actions{display:grid;grid-template-columns:1fr}.pv2-btn{width:100%}.pv2-note{align-items:flex-start;flex-direction:column;gap:6px}}
@media(max-width:380px){.pv2-media,.pv2-media img{min-height:230px}.pv2-content{padding:25px 17px 21px}.pv2-content h2{font-size:1.92rem}.pv2-btn{padding:0 14px;font-size:.9rem}}
@media(prefers-reduced-motion:reduce){.pv2-media img,.pv2-play,.pv2-btn{transition:none!important}}

/* FINAL BREADCRUMB SYSTEM — project-wide compact, consistent and responsive */
main > .seo-breadcrumb{
  box-sizing:border-box;
  width:100%;
  max-width:none;
  margin:0;
  padding:0;
  border-top:1px solid rgba(9,91,118,.10);
  border-bottom:1px solid #d8e8ee;
  background:linear-gradient(180deg,#f8fcfd 0%,#eef7fa 100%);
  color:#486273;
  font-size:13px;
  line-height:1.25;
  overflow:hidden;
}
main > .seo-breadcrumb ol{
  box-sizing:border-box;
  display:flex;
  align-items:center;
  gap:7px;
  width:min(1180px,calc(100% - 40px));
  min-width:0;
  margin:0 auto;
  padding:9px 0;
  list-style:none;
}
main > .seo-breadcrumb li{
  display:flex;
  align-items:center;
  min-width:0;
  margin:0;
  padding:0;
}
main > .seo-breadcrumb li::marker{content:"";font-size:0}
main > .seo-breadcrumb li+li::before{
  content:"›";
  flex:0 0 auto;
  margin-right:1px;
  color:#8aa7b5;
  font-size:17px;
  font-weight:600;
  line-height:1;
}
main > .seo-breadcrumb a,
main > .seo-breadcrumb [aria-current="page"]{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  max-width:100%;
  padding:5px 8px;
  border-radius:8px;
  white-space:nowrap;
  text-decoration:none;
}
main > .seo-breadcrumb a{
  color:#086f9d;
  font-weight:750;
  transition:color .18s ease,background-color .18s ease,box-shadow .18s ease;
}
main > .seo-breadcrumb a:hover{
  color:#064d70;
  background:#fff;
  box-shadow:0 3px 12px rgba(8,40,59,.06);
}
main > .seo-breadcrumb a:focus-visible{
  outline:2px solid #20c2d7;
  outline-offset:2px;
  background:#fff;
}
main > .seo-breadcrumb [aria-current="page"]{
  display:block;
  overflow:hidden;
  text-overflow:ellipsis;
  color:#38586a;
  font-weight:650;
}
main > .seo-breadcrumb + section{margin-top:0!important}
@media(max-width:700px){
  main > .seo-breadcrumb{overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:none}
  main > .seo-breadcrumb::-webkit-scrollbar{display:none}
  main > .seo-breadcrumb ol{width:max-content;max-width:none;margin:0;padding:7px 14px;gap:5px}
  main > .seo-breadcrumb a,main > .seo-breadcrumb [aria-current="page"]{min-height:28px;padding:4px 7px;font-size:12px}
  main > .seo-breadcrumb [aria-current="page"]{max-width:min(56vw,300px)}
}
@media(max-width:380px){main > .seo-breadcrumb [aria-current="page"]{max-width:50vw}}

/* v20260721-05 — compact product heroes + readable engineering note */
.product-premium-v3 .pc-hero-v3.shared-page-hero-v5{
  padding:clamp(28px,3.4vw,46px) max(18px,calc((100vw - 1180px)/2))!important;
}
.product-premium-v3 .pc-hero-v3.shared-page-hero-v5 .pc-hero-grid{
  gap:clamp(22px,3vw,38px)!important;
  align-items:center!important;
}
.product-premium-v3 .pc-hero-v3.shared-page-hero-v5 h1{
  margin-bottom:12px!important;
  font-size:clamp(34px,4.25vw,56px)!important;
  line-height:1.01!important;
}
.product-premium-v3 .pc-hero-v3.shared-page-hero-v5 .pc-lead{
  margin-bottom:16px!important;
  font-size:clamp(15px,1.35vw,18px)!important;
  line-height:1.62!important;
}
.product-premium-v3 .pc-hero-v3.shared-page-hero-v5 .pc-actions{
  margin:18px 0 16px!important;
}
.product-premium-v3 .pc-hero-v3.shared-page-hero-v5 .pc-btn{
  min-height:46px!important;
  padding:12px 18px!important;
}
.product-premium-v3 .pc-hero-v3.shared-page-hero-v5 .pc-stats{
  margin-top:16px!important;
  gap:10px!important;
}
.product-premium-v3 .pc-hero-v3.shared-page-hero-v5 .pc-stat{
  padding:13px 14px!important;
  border-radius:16px!important;
}
.product-premium-v3 .pc-hero-v3.shared-page-hero-v5 .pc-stat b{
  font-size:clamp(21px,2vw,26px)!important;
}
.product-premium-v3 .pc-hero-v3.shared-page-hero-v5 .pc-hero-points-v3{
  margin-top:14px!important;
  gap:9px!important;
}
.product-premium-v3 .pc-hero-v3.shared-page-hero-v5 .pc-hero-point-v3{
  padding:11px 12px!important;
  border-radius:14px!important;
}
.product-premium-v3 .pc-hero-v3.shared-page-hero-v5 .pc-muted-note{
  margin:14px 0 0!important;
  padding:12px 14px!important;
  border:1px solid rgba(117,226,234,.24)!important;
  border-radius:15px!important;
  background:linear-gradient(135deg,rgba(255,255,255,.09),rgba(255,255,255,.045))!important;
  color:#d8eef3!important;
  box-shadow:none!important;
  line-height:1.55!important;
  font-size:14px!important;
  backdrop-filter:blur(10px)!important;
}
.product-premium-v3 .pc-hero-v3.shared-page-hero-v5 .pc-visual{
  max-height:500px!important;
}
.product-premium-v3 .pc-hero-v3.shared-page-hero-v5 .pc-visual img{
  max-height:500px!important;
  object-fit:cover!important;
}
@media(max-width:1050px){
  .product-premium-v3 .pc-hero-v3.shared-page-hero-v5 .pc-hero-grid{grid-template-columns:1fr!important}
  .product-premium-v3 .pc-hero-v3.shared-page-hero-v5 .pc-visual{max-height:360px!important}
  .product-premium-v3 .pc-hero-v3.shared-page-hero-v5 .pc-visual img{height:360px!important;max-height:360px!important;aspect-ratio:auto!important}
}
@media(max-width:700px){
  .product-premium-v3 .pc-hero-v3.shared-page-hero-v5{padding:26px 16px 30px!important}
  .product-premium-v3 .pc-hero-v3.shared-page-hero-v5 h1{font-size:clamp(31px,10vw,40px)!important}
  .product-premium-v3 .pc-hero-v3.shared-page-hero-v5 .pc-actions{display:grid!important;grid-template-columns:1fr!important}
  .product-premium-v3 .pc-hero-v3.shared-page-hero-v5 .pc-stats,
  .product-premium-v3 .pc-hero-v3.shared-page-hero-v5 .pc-hero-points-v3{grid-template-columns:1fr!important}
  .product-premium-v3 .pc-hero-v3.shared-page-hero-v5 .pc-visual,
  .product-premium-v3 .pc-hero-v3.shared-page-hero-v5 .pc-visual img{height:260px!important;max-height:260px!important}
}
