/* Product-positioning additions; existing logo, fonts and cyan/teal identity retained. */
.product-home :is(a,button,input,textarea,select,summary):focus-visible { outline:3px solid #005f82; outline-offset:4px; }
.skip-link { position:fixed;top:12px;left:16px;z-index:10000;background:#fff;padding:16px;color:#1f2b38;clip-path:inset(50%);width:1px;height:1px;overflow:hidden;white-space:nowrap; }
.skip-link:focus { clip-path:none;width:auto;height:auto;overflow:visible; }
.product-home :is(section,div)[id] { scroll-margin-top:100px; }
.product-home .product-hero { height:auto!important;padding:156px 0 72px;background:linear-gradient(115deg,#78d4ef 0%,#67dacf 100%)!important; }
.product-home .product-hero div { height:auto; }
.product-home .hero-layout { display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:72px;align-items:center; }
.product-home .hero-copy { text-align:left; }
.product-home .banner-area .content h1 { font-size:clamp(36px,3.35vw,50px);line-height:1.14;letter-spacing:-.035em;color:#172b3a;margin:22px 0 24px;max-width:550px; }
.product-home .banner-area .content .eyebrow { font-size:12px;line-height:1.7;letter-spacing:.08em;font-weight:700;text-transform:uppercase;color:#172b3a;margin:0; }
.product-home .banner-area .content .hero-intro { font-size:18px;line-height:1.65;color:#243d4c;margin:0 0 30px;max-width:490px; }
.hero-actions { display:flex;flex-wrap:wrap;align-items:center;gap:16px 26px; }
.product-home .hero-actions .btn { background:#172b3a;border-color:#172b3a;color:#fff;min-height:54px;padding:16px 27px;margin:0; }
.product-home .hero-actions .btn:hover { background:#fff;border-color:#fff;color:#172b3a; }
.product-home .hero-secondary { color:#172b3a;font-size:15px;display:inline-flex;align-items:center;min-height:44px;gap:8px;border-bottom:1px solid #172b3a55; }
.product-home .banner-area .content .hero-direct { display:flex;align-items:center;flex-wrap:wrap;gap:8px 20px;font-size:14px;line-height:1.6;margin:20px 0 0;color:#243d4c; }
.hero-direct a { display:inline-flex;align-items:center;min-height:44px;color:#172b3a;text-decoration:underline; }
.product-home .banner-area .hero-proof { background:#fff;border:1px solid #ffffffaa;border-radius:14px;overflow:hidden;box-shadow:0 20px 48px #172b3a18;margin:0;transform:none;text-align:left; }
.hero-proof img { display:block;width:100%;height:auto; }
.hero-proof figcaption { padding:22px 26px;color:#1f2b38;border-top:1px solid #e8eef1; }
.hero-proof figcaption p { font-size:15px;line-height:1.6;margin:10px 0; }
.hero-proof figcaption a { color:#005f82;font-size:14px;font-weight:600;display:inline-flex;align-items:center;gap:8px;min-height:32px;text-decoration:underline; }
.hero-proof-label { display:block;font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase; }
.product-home nav.navbar .navbar-nav>li>a,.product-home nav.navbar .rt-nav-phone a { color:#172b3a!important; }
@media(min-width:1024px) {
 .product-home nav.no-background .navbar-brand img { filter:brightness(0); }
}
.collaboration-area { padding:88px 0;background:#f5f8fa; }
.collaboration-layout { display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:88px;align-items:center; }
.collaboration-copy h2 { font-size:clamp(30px,3vw,40px);line-height:1.2;letter-spacing:-.025em;margin:16px 0 24px; }
.collaboration-copy>p { font-size:16px;line-height:1.75;max-width:480px; }
.collaboration-copy .collaboration-terms { color:#364e5d;font-size:15px;border-left:3px solid #4ac4f3;padding-left:18px;margin:24px 0; }
.collaboration-link { color:#005f82;font-weight:600;display:inline-flex;align-items:center;min-height:44px;gap:12px;text-decoration:underline; }
.scenario-list { display:grid;gap:16px; }
.scenario-card { padding:24px 28px;background:#fff;border:1px solid #dce7ec;border-radius:10px; }
.scenario-card h3 { font-size:19px;line-height:1.4;margin:0 0 10px; }
.scenario-card p { font-size:15px;line-height:1.7;margin:0; }
.legacy-anchor { display:block;scroll-margin-top:100px; }
.eyebrow,.project-category { color:#006581;font-weight:700;font-size:13px;letter-spacing:.04em; }
.portfolio-heading { max-width:760px;margin-bottom:36px; }
.portfolio-heading h2 { font-size:clamp(28px,3vw,38px);line-height:1.25;margin:12px 0 20px; }
.project-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px; }
.project-card { border:1px solid #dce5e9;border-radius:12px;overflow:hidden;background:#fff;display:flex;flex-direction:column; }
.project-visual { display:block;background:#f1f5f7;overflow:hidden; }
.project-visual img { width:100%;height:auto;aspect-ratio:8/5;object-fit:contain;display:block; }
.project-copy { padding:24px;display:flex;flex:1;flex-direction:column; }
.project-copy h3 { font-size:24px;margin:8px 0 16px;line-height:1.3; }
.project-copy p { font-size:15px;line-height:1.7; }
.project-audience { color:#243b48;font-weight:600; }
.project-tags { list-style:none;display:flex;flex-wrap:wrap;gap:6px;padding:0;margin:8px 0 24px; }
.project-tags li { background:#eef8fc;color:#185064;padding:5px 9px;font-size:12px;border-radius:4px; }
.project-actions { margin-top:auto;display:grid;gap:12px; }
.project-actions a { font-size:14px;color:#005f82;text-decoration:underline;min-height:24px;line-height:1.5; }
.portfolio-note { margin-top:32px;font-size:13px;max-width:850px; }
.capability-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px; }
.capability-card { background:#fff;padding:28px;border:1px solid #e0e7ea;border-radius:8px; }
.capability-card h3 { font-size:20px;line-height:1.35;margin-bottom:16px; }
.capability-card a { color:#005f82;text-decoration:underline; }
.process-grid { display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:24px; }
.process-step h3 { font-size:18px;line-height:1.4;margin:16px 0; }
.process-number { color:#006581;font-size:14px;font-weight:700; }
.product-faq { max-width:850px;margin:0 auto; }
.product-faq details { border-bottom:1px solid #d7e2e7;padding:20px 0; }
.product-faq summary { cursor:pointer;font-weight:600;color:#232323;font-size:18px;line-height:1.5;padding:8px 4px; }
.product-faq details p { padding:16px 4px 0; }
.product-home #contact label { color:#232323;font-weight:600;font-size:14px; }
.product-home #contact .address-items h3 { font-size:20px;margin-bottom:20px; }
.product-home #contact input,.product-home #contact textarea,.product-home #contact select { font-size:16px; }
.product-home #contact textarea { min-height:160px; }
.product-home #contact .form-check-input { width:20px;height:20px; }
.product-home .form-help { font-size:13px;line-height:1.6;color:#55616b; }
.product-home .alert-msg { scroll-margin-top:110px; }
.product-home .alert-error { color:#a02424; }
.product-home .features-area .site-heading { margin-bottom:36px; }
.product-home #process { padding-top:80px; }
.home-blog-teaser { padding:72px 0;background:#fff; }
.home-blog-teaser .site-heading { margin-bottom:32px; }
.home-blog-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;max-width:1000px;margin:0 auto; }
.home-blog-card { border:1px solid #dce7ec;border-radius:10px;padding:28px;background:#f5f8fa; }
.home-blog-card h3 { font-size:20px;line-height:1.4;margin:0 0 16px; }
.home-blog-card h3 a { color:#172b3a; }
.home-blog-card p { font-size:15px;line-height:1.7;margin:0; }
.home-blog-card a:hover { color:#005f82;text-decoration:underline; }
.home-blog-actions { display:flex;justify-content:center;margin-top:28px; }
.home-blog-actions a { min-height:44px; }
.product-home .btn-theme,.product-home #submit { color:#172b3a; }
.product-home .btn-theme:hover,.product-home #submit:hover { color:#fff; }
.product-home .navbar-toggle { min-width:44px;min-height:44px; }
.product-home .cookie-inner { gap:16px; }
.product-home .cookie-text { flex:1;min-width:0; }
.product-home .cookie-actions { flex-shrink:0; }
.product-home .cookie-btn { min-height:44px;min-width:72px; }
.product-home .cookie-btn-primary { color:#172b3a; }
.product-home #cookie-accept { color:#172b3a!important; }
.product-home .contact-alt,.product-home .contact-alt a { color:#59636c; }
.product-home .social a { min-height:44px;min-width:44px;display:inline-flex;align-items:center;justify-content:center; }
.product-home .rt-whatsapp-fab { bottom:20px; }
.product-home:has(#cookie-banner:not([hidden])) .rt-whatsapp-fab { visibility:hidden; }
@media(max-width:1199px) {
 .process-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
 .product-home .rt-nav-phone-num { display:none; }
 .product-home .hero-layout { gap:40px; }
 .hero-actions { gap:12px 20px; }
 .collaboration-layout { gap:48px; }
}
@media(max-width:991px) {
 .product-home .product-hero { padding:60px 0 56px; }
 .product-home .hero-layout { grid-template-columns:1fr;gap:40px; }
 .product-home .hero-copy { max-width:650px; }
 .product-home .banner-area .hero-proof { max-width:650px; }
 .project-grid,.capability-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .collaboration-layout { gap:32px; }
}
@media(max-width:767px) {
 .product-home .banner-area .content h1 { font-size:36px;line-height:1.15; }
 .product-home .banner-area .content .hero-intro { font-size:16px; }
 .hero-actions { align-items:flex-start;flex-direction:column;gap:12px; }
 .hero-proof figcaption { padding:20px; }
 .home-blog-teaser { padding:56px 0; }
 .home-blog-grid { grid-template-columns:1fr; }
 .home-blog-card { padding:24px; }
 .collaboration-area { padding:64px 0; }
 .collaboration-layout { grid-template-columns:1fr;gap:32px; }
 .scenario-card { padding:22px; }
 .project-grid,.capability-grid,.process-grid { grid-template-columns:1fr; }
 .portfolio-area { padding:64px 0; }
 .project-copy { padding:20px; }
 .project-actions a { min-height:44px;display:flex;align-items:center; }
 .product-home #contact .address { margin-bottom:36px; }
 .product-home .cookie-inner { flex-direction:column;align-items:stretch; }
 .product-home .cookie-actions { display:flex;justify-content:flex-end; }
}
@media(prefers-reduced-motion:reduce) {
 .product-home *, .product-home *::before,.product-home *::after { scroll-behavior:auto!important;animation:none!important;transition:none!important; }
}
.product-home #contact .info a { color:#005f82; }
