/* Shared spacious layout and aligned contact panels. */
.solution-page.support-overview{padding:32px 0!important}
.support-heading{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:24px}
.support-heading h1{margin:0 0 10px}
.support-heading p{margin:0;color:#496175}
.support-heading .kicker{margin-bottom:10px}
.support-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.support-panel{padding:26px;background:#fff;border:1px solid #dce5ed;border-radius:12px;min-width:0}
.support-panel h2{font-size:25px;letter-spacing:-.7px;line-height:1.2;margin:0 0 16px}
.support-panel p,.support-panel li{font-size:14px;line-height:1.7;color:#496175}
.support-panel ul,.support-panel ol{padding-left:20px;margin:18px 0}
.support-panel li{margin-bottom:9px}
.support-panel>a:not(.button){font-weight:700;color:#b82030;overflow-wrap:anywhere}
.support-remote{background:#eaf1f7}
.support-panel .support-note{font-size:12px;margin:14px 0 0}
@media(max-width:760px){.support-heading{display:block}.support-heading>.button{margin-top:20px}.support-grid{grid-template-columns:1fr}.support-panel{padding:24px}}
.web-guide .content-page-title{margin:0 0 22px;max-width:900px}
.web-lead{max-width:880px;font-size:18px;line-height:1.8;color:#496175}
.web-guide-nav{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.web-guide-nav a{padding:10px 16px;border:1px solid #ccd9e3;border-radius:8px;font-size:13px;font-weight:700;background:#fff}
.web-guide-nav a:hover{border-color:#de2636;color:#bd2031}
.web-section-heading{max-width:850px;margin-bottom:30px}
.web-section-heading h2{font-size:clamp(28px,3vw,40px);line-height:1.15;letter-spacing:-1px;margin:0 0 18px}
.web-section-heading p,.web-guide article p,.web-steps p,.web-detail p,.web-request p{color:#496175;line-height:1.8}
#proces{margin-top:56px}
.web-steps{list-style:none;counter-reset:web-step;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:0;padding:0}
.web-steps>li{counter-increment:web-step;border:1px solid #dce5ed;padding:28px;border-radius:12px;background:#fff}
.web-steps>li::before{content:counter(web-step,decimal-leading-zero);display:block;margin-bottom:20px;font-weight:800;color:#de2636}
.web-guide h3{font-size:23px;letter-spacing:-.6px;line-height:1.2;margin:0 0 14px}
.web-steps p,.web-guide article p{margin:0;font-size:15px}
.web-tech-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.web-tech-grid article{background:#fff;border:1px solid #dce5ed;border-radius:12px;padding:28px}
.web-explainer{background:#f3f6f9}
.web-detail{padding:22px 24px;border:1px solid #dce5ed;border-radius:10px;margin-top:16px;background:white}
.web-detail summary{font-weight:800;cursor:pointer;line-height:1.6}
.web-detail li{padding:6px 0;color:#496175;line-height:1.8}
.web-detail p{margin-bottom:0}
.web-sources{font-size:13px;color:#496175;margin-top:22px}
.web-sources a{text-decoration:underline;text-underline-offset:3px}
.web-request{padding:32px;background:#edf3f8;border-left:4px solid #de2636;border-radius:0 12px 12px 0;margin-top:32px}
.web-guide a:focus-visible,.web-detail summary:focus-visible{outline:3px solid #de2636;outline-offset:4px}
@media(max-width:900px){.web-tech-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.web-steps,.web-tech-grid{grid-template-columns:1fr}.web-lead{font-size:16px}.web-steps>li,.web-tech-grid article,.web-request{padding:24px}.web-detail{padding:20px}.web-detail ol{padding-left:20px}}
.about-page .content-page-title{margin:0 0 32px}
.about-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:48px;align-items:start}
.about-copy p{margin:0 0 24px;font-size:16px;line-height:1.85;color:#496175}
.about-copy strong{color:#102840}
.about-services{padding:30px;background:#fff;border:1px solid #dce5ed;border-radius:14px}
.about-services h2{margin:0 0 22px;font-size:28px;letter-spacing:-1px}
.about-services ul{margin:0;padding-left:20px;color:#496175}
.about-services li{padding-left:5px;margin-bottom:12px;line-height:1.6}
.about-services li:last-child{margin-bottom:0}
.about-services li::marker{color:#de2636}
.about-closing{margin-top:36px;padding:26px 30px;background:#eaf0f5;border-left:4px solid #de2636;border-radius:0 12px 12px 0;color:#29465f}
.about-closing p{margin:0 0 14px;line-height:1.8}
.about-closing p:last-child{margin:0}
@media(max-width:760px){.about-layout{grid-template-columns:1fr;gap:12px}.about-services,.about-closing{padding:24px}.about-closing{margin-top:24px}}
html{scroll-padding-top:100px}
.hero,.hero-content{min-height:0!important}
.hero-content{padding-block:64px;gap:56px}
.hero-copy{padding:0!important}
.hero-copy h1{font-size:clamp(42px,4.7vw,68px)!important;line-height:1.06;letter-spacing:-2.5px}
.hero-art{height:360px!important;min-height:0!important;transform:none!important;margin:0!important}
.hero-art .hero-showcase{max-width:470px}
.hero-showcase img{height:360px;object-fit:cover;aspect-ratio:auto}
.hero-content>.page-mobis-logo{display:none}
.hero-proof{margin-top:32px;flex-wrap:wrap}
.hero-proof strong{font-size:19px}
.section,.solution-page,.fiskal-page,.contact-page,.references,body:has(.hero) .services,body:has(.hero) .pantheon-band{padding:64px 0!important}
.section-top{gap:40px;margin-bottom:32px}
.section-top h2,.solution-intro h2,.references-heading h2,.content-page-title{font-size:clamp(30px,3.4vw,44px);line-height:1.12;letter-spacing:-1.5px}
.solution-intro{max-width:780px;margin:0 0 36px;text-align:left}
.solution-intro p{line-height:1.8}
.solution-grid,.product-grid,.service-grid{gap:22px!important}
.solution-card,.product-card,body:has(.hero) .services .service-card{padding:30px!important;border-radius:12px;box-shadow:0 8px 28px #10284008}
.solution-card h3{margin:28px 0 14px}
body:has(.hero) .services .service-card{min-height:285px;padding-bottom:46px!important}
body:has(.hero) .services .service-icon{margin:28px 0 20px}
.product-group{margin-bottom:44px}
.product-group-head{gap:28px}
.solution-note{margin-top:32px;border-radius:0 10px 10px 0}
.pantheon-wrap{gap:56px!important}
.pantheon-wrap h2{font-size:clamp(36px,4vw,52px)!important;letter-spacing:-1.5px!important}
.quick-contact-inner,body:has(.hero) .cta-wrap,.cta-wrap{min-height:0!important;padding:42px 0;gap:32px}
.quick-contact h2,.cta h2{font-size:clamp(28px,3vw,40px)}
.site-footer{padding-top:40px}
.footer-grid{padding-bottom:30px}
.references-heading{margin-bottom:28px}
.contact-page{background:#f3f6f9}
.contact-layout{width:min(1440px,calc(100% - 48px));grid-template-columns:minmax(0,.9fr) minmax(0,1.15fr) minmax(0,1fr);gap:22px;align-items:stretch}
.contact-info,.contact-box{padding:28px;border-radius:14px;min-width:0}
.contact-info{background:linear-gradient(145deg,#071b34,#174d76)}
.contact-info h2,.contact-box h2,.contact-info .content-page-title{font-size:32px;line-height:1.15;letter-spacing:-1px;margin:0 0 16px}
.contact-info>p,.contact-box>p{line-height:1.75}
.contact-info-list{margin-top:28px}
.contact-info-list div{padding:15px 0;overflow-wrap:anywhere}
.contact-info-list span{font-size:10px;letter-spacing:1.4px}
.contact-info-list b,.contact-info-list a{font-size:15px}
.contact-box{box-shadow:0 10px 35px #10284006}
.field input,.field textarea{border-radius:7px;padding:13px 14px}
.field textarea{min-height:145px}
.contact-map{display:flex;flex-direction:column;grid-column:auto;margin:0;border-radius:14px;overflow:hidden;min-width:0;box-shadow:0 10px 35px #10284006}
.contact-map-heading{padding:28px;align-items:flex-start;flex-direction:column;gap:20px}
.contact-map-heading h2{font-size:30px;line-height:1.15;letter-spacing:-1px}
.contact-map-heading .kicker{margin-bottom:10px}
.contact-map .map-frame{flex:1;min-height:320px;height:auto}
.contact-box .field{min-width:0}
@media(min-width:761px) and (max-width:1100px){
  .contact-layout{gap:16px;width:calc(100% - 32px)}
  .contact-info,.contact-box,.contact-map-heading{padding:20px}
  .contact-box .form-grid{grid-template-columns:minmax(0,1fr)}
  .contact-info .content-page-title,.contact-box h2,.contact-map-heading h2{font-size:26px}
}
@media(max-width:900px){
  .hero-content{gap:28px}
  .contact-info,.contact-box{padding:26px}
}
@media(max-width:760px){
  .hero-content{grid-template-columns:1fr;padding-block:40px;gap:30px}
  .hero-copy h1{font-size:42px!important}
  .hero-art{height:240px!important}
  .hero-showcase img{height:240px}
  .hero-actions{flex-wrap:wrap;gap:18px}
  .section,.solution-page,.fiskal-page,.contact-page,.references,body:has(.hero) .services,body:has(.hero) .pantheon-band{padding:38px 0!important}
  .section-top{margin-bottom:26px}
  .solution-grid,.product-grid,.service-grid{gap:18px!important}
  body:has(.hero) .services .service-grid{grid-template-columns:1fr}
  body:has(.hero) .services .service-card{min-height:250px}
  .contact-layout{grid-template-columns:minmax(0,1fr);gap:20px}
  .contact-info,.contact-box{padding:26px}
  .contact-map-heading{display:flex;flex-wrap:wrap;padding:24px;gap:18px}
  .contact-map-heading .button{margin-top:0}
  .contact-map-heading h2{font-size:26px}
  .contact-map .map-frame{flex:none;min-height:0;height:300px}
  .quick-contact-inner,.cta-wrap{padding-block:34px}
  .reference-marquee .reference-logo{flex-basis:200px}
}
.reference-controls{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-bottom:12px}
.reference-controls>span{margin-right:auto;font-size:13px;color:#52677c}
.reference-controls button{min-width:44px;min-height:44px;padding:8px 14px;border:1px solid #cbd7e2;border-radius:6px;background:#fff;color:#102840;font:700 15px Manrope,Arial,sans-serif;cursor:pointer}
.reference-controls button:hover{background:#102840;color:white}
.reference-controls button:focus-visible,.reference-logo:focus-visible{outline:3px solid #de2636;outline-offset:-3px}
.reference-marquee{max-width:1000px;margin-inline:auto}
.reference-marquee::before,.reference-marquee::after{width:24px}
.reference-marquee .reference-track{animation:none!important;flex-wrap:nowrap!important;width:max-content!important;justify-content:flex-start!important}
.reference-marquee .reference-logo{display:flex!important;flex-basis:250px;height:110px;padding:20px 30px}
.reference-logo img{height:65px}
@media(max-width:760px){.reference-marquee .reference-logo{flex-basis:200px}}
