
:root{
  --sgm-navy:#0b233f;
  --sgm-blue:#0f6fae;
  --sgm-cyan:#4bb8d8;
  --sgm-soft:#eef7fb;
  --sgm-soft-2:#f7fbfd;
  --sgm-text:#243447;
  --sgm-muted:#667789;
  --sgm-line:rgba(15,111,174,.14);
  --sgm-shadow:0 18px 50px rgba(8,35,63,.11);
  --sgm-shadow-sm:0 10px 30px rgba(8,35,63,.08);
  --sgm-radius:24px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body.sgm-rebuild{
  font-family:Inter,Roboto,Arial,sans-serif!important;
  color:var(--sgm-text)!important;
  background:linear-gradient(180deg,#f8fcfe 0%,#fff 42%,#f7fbfd 100%)!important;
  line-height:1.68;
  overflow-x:hidden;
}
body.sgm-rebuild a{color:var(--sgm-blue);text-decoration:none;transition:.2s ease}
body.sgm-rebuild a:hover{color:var(--sgm-navy)}
body.sgm-rebuild .container{max-width:1180px}
body.sgm-rebuild h1,body.sgm-rebuild h2,body.sgm-rebuild h3,body.sgm-rebuild h4,body.sgm-rebuild h5{
  color:var(--sgm-navy);letter-spacing:-.025em;font-weight:750;line-height:1.15;
}
body.sgm-rebuild h1{font-size:clamp(2.35rem,4.6vw,4.85rem)}
body.sgm-rebuild h2{font-size:clamp(1.75rem,3vw,2.85rem)}
body.sgm-rebuild p{color:var(--sgm-muted)}
body.sgm-rebuild strong{color:#172d46}

/* Navbar */
body.sgm-rebuild .navbar{
  background:rgba(255,255,255,.88)!important;
  border-bottom:1px solid rgba(15,111,174,.10);
  box-shadow:0 10px 30px rgba(8,35,63,.06)!important;
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
  padding-top:.7rem!important;padding-bottom:.7rem!important;
  z-index:1030;
}
body.sgm-rebuild .navbar-brand img,
body.sgm-rebuild #navbar-logo{max-height:58px!important;width:auto!important;object-fit:contain}
body.sgm-rebuild .navbar .nav-link{
  color:#31465b!important;font-weight:650;border-radius:999px;padding:.6rem .9rem!important;
}
body.sgm-rebuild .navbar .nav-link:hover,
body.sgm-rebuild .navbar .nav-link.active{background:var(--sgm-soft);color:var(--sgm-blue)!important}
body.sgm-rebuild .dropdown-menu{border:none;border-radius:18px;box-shadow:var(--sgm-shadow-sm);padding:.65rem}
body.sgm-rebuild .dropdown-item{border-radius:12px;padding:.7rem .9rem;color:#31465b}
body.sgm-rebuild .dropdown-item:hover{background:var(--sgm-soft);color:var(--sgm-blue)}
body.sgm-rebuild .btn,
body.sgm-rebuild button.btn,
body.sgm-rebuild a.btn{
  border-radius:999px!important;font-weight:750;letter-spacing:.01em;padding:.78rem 1.25rem;
  box-shadow:none;transition:transform .18s ease,box-shadow .18s ease,background .18s ease,border-color .18s ease;
}
body.sgm-rebuild .btn:hover{transform:translateY(-2px);box-shadow:0 14px 28px rgba(8,35,63,.12)}
body.sgm-rebuild .btn-primary,
body.sgm-rebuild .btn-success,
body.sgm-rebuild #long-button-blue{
  background:linear-gradient(135deg,var(--sgm-blue),var(--sgm-cyan))!important;border-color:transparent!important;color:#fff!important;
}
body.sgm-rebuild .btn-outline-dark,
body.sgm-rebuild .btn-outline-primary{
  color:var(--sgm-navy)!important;border:1px solid rgba(11,35,63,.24)!important;background:#fff!important;
}
body.sgm-rebuild .btn-outline-dark:hover,
body.sgm-rebuild .btn-outline-primary:hover{
  color:#fff!important;background:var(--sgm-navy)!important;border-color:var(--sgm-navy)!important;
}
body.sgm-rebuild .btn-outline-light{border-color:rgba(255,255,255,.72)!important;color:#fff!important;background:rgba(255,255,255,.07)!important}
body.sgm-rebuild .btn-outline-light:hover{background:#fff!important;color:var(--sgm-navy)!important}

/* Hero */
body.sgm-rebuild .hero,
body.sgm-rebuild #landing-section-1{
  position:relative;isolation:isolate;overflow:hidden;border-radius:0 0 46px 46px;
  min-height:clamp(520px,66vh,740px)!important;height:auto!important;background:var(--sgm-navy)!important;
  display:flex;align-items:center;
}
body.sgm-rebuild .hero .sgm-hero-video,
body.sgm-rebuild #landing-section-1 .sgm-hero-video{
  position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-3;opacity:.82;
}
body.sgm-rebuild .hero:before,
body.sgm-rebuild #landing-section-1:before{
  content:"";position:absolute;inset:0;z-index:-2;
  background:linear-gradient(90deg,rgba(4,20,37,.82) 0%,rgba(7,42,75,.50) 48%,rgba(15,111,174,.25) 100%);
}
body.sgm-rebuild .hero:after,
body.sgm-rebuild #landing-section-1:after{
  content:"";position:absolute;inset:auto -10% -35% -10%;height:55%;z-index:-1;
  background:radial-gradient(circle at 50% 0%,rgba(75,184,216,.55),transparent 62%);
  filter:blur(12px);
}
body.sgm-rebuild .hero-content{max-width:900px;text-align:left!important;align-items:flex-start!important;margin-left:0}
body.sgm-rebuild .hero h1,
body.sgm-rebuild .hero p,
body.sgm-rebuild #landing-section-1 h1,
body.sgm-rebuild #landing-section-1 h5,
body.sgm-rebuild #landing-section-1 p{color:#fff!important;text-shadow:0 5px 24px rgba(0,0,0,.28)}
body.sgm-rebuild .hero p{font-size:clamp(1.05rem,1.35vw,1.35rem);max-width:760px}

/* Sections, cards, images */
body.sgm-rebuild section{position:relative}
body.sgm-rebuild .bg-light{background:linear-gradient(180deg,var(--sgm-soft-2),#fff)!important}
body.sgm-rebuild .bg-white{background:#fff!important}
body.sgm-rebuild .card,
body.sgm-rebuild .service-card,
body.sgm-rebuild .contact-clean form,
body.sgm-rebuild .features-clean,
body.sgm-rebuild .table-responsive,
body.sgm-rebuild form[data-bss-recipient]{
  border:1px solid var(--sgm-line)!important;border-radius:var(--sgm-radius)!important;box-shadow:var(--sgm-shadow-sm)!important;background:rgba(255,255,255,.96)!important;overflow:hidden;
}
body.sgm-rebuild .card-body{padding:1.55rem!important}
body.sgm-rebuild .service-card{height:100%;transition:.24s ease}
body.sgm-rebuild .service-card:hover{transform:translateY(-8px);box-shadow:var(--sgm-shadow)!important}
body.sgm-rebuild .card img,
body.sgm-rebuild .service-card img{border-radius:18px;object-fit:cover}
body.sgm-rebuild img{max-width:100%;height:auto}
body.sgm-rebuild img:not([alt]){outline:0}
body.sgm-rebuild .partner-logo{max-height:98px;width:auto;object-fit:contain;filter:grayscale(100%);opacity:.72;transition:.2s}
body.sgm-rebuild .partner-logo:hover{filter:none;opacity:1;transform:translateY(-3px)}
body.sgm-rebuild #feature-img{max-width:190px;width:100%;height:90px;object-fit:contain;opacity:.72;filter:grayscale(100%)}
body.sgm-rebuild #contact,
body.sgm-rebuild .contact-clean,
body.sgm-rebuild .highlight-clean{background:linear-gradient(135deg,#f4fbff,#ffffff)!important}
body.sgm-rebuild .dr-suske{border-radius:28px!important;box-shadow:var(--sgm-shadow)!important;max-width:min(360px,70%)!important}

/* Product/order pages */
body.sgm-rebuild.page-pack h1:first-of-type,
body.sgm-rebuild.page-pflicht h1:first-of-type,
body.sgm-rebuild.page-about h1:first-of-type,
body.sgm-rebuild.page-legal h1:first-of-type{
  margin-top:1.5rem;
}
body.sgm-rebuild [style*="background: #212529"],
body.sgm-rebuild [style*="background:#212529"],
body.sgm-rebuild #landing-section-2,
body.sgm-rebuild #landing-section-4{
  background:linear-gradient(135deg,#071c31,#0b365d 62%,#0f6fae)!important;
}
body.sgm-rebuild [style*="color: var(--bs-gray-100)"],
body.sgm-rebuild [style*="color: rgb(255,255,255)"],
body.sgm-rebuild [style*="color: #ffffff"]{color:#fff!important}
body.sgm-rebuild .form-control,
body.sgm-rebuild .form-select,
body.sgm-rebuild select,
body.sgm-rebuild textarea{
  border-radius:14px!important;border:1px solid rgba(15,111,174,.18)!important;padding:.82rem 1rem;background:#fff!important;
}
body.sgm-rebuild .form-control:focus,
body.sgm-rebuild textarea:focus{box-shadow:0 0 0 .25rem rgba(15,111,174,.13)!important;border-color:var(--sgm-blue)!important}
body.sgm-rebuild .form-check-input{border-color:rgba(15,111,174,.35)}
body.sgm-rebuild .form-check-input:checked{background-color:var(--sgm-blue);border-color:var(--sgm-blue)}

/* Existing Bootstrap Studio utility cleanup */
body.sgm-rebuild .navigation-clean-button{min-height:auto!important}
body.sgm-rebuild .sgm-footer,
body.sgm-rebuild .footer{background:linear-gradient(135deg,#061729,#0b233f)!important;color:#fff!important;padding:3.6rem 0 2rem!important;margin-top:0!important}
body.sgm-rebuild .sgm-footer h3,
body.sgm-rebuild .sgm-footer h5,
body.sgm-rebuild .footer h5{color:#fff!important}
body.sgm-rebuild .sgm-footer p,
body.sgm-rebuild .footer p,
body.sgm-rebuild .sgm-footer a,
body.sgm-rebuild .footer a{color:rgba(255,255,255,.78)!important}
body.sgm-rebuild .sgm-footer a:hover,
body.sgm-rebuild .footer a:hover{color:#fff!important}
body.sgm-rebuild .copyright{border-top:1px solid rgba(255,255,255,.12);padding-top:1.3rem;margin-top:1.7rem;text-align:center;color:rgba(255,255,255,.62)!important}
body.sgm-rebuild ul{padding-left:1.15rem}
body.sgm-rebuild .modal-content{border:none!important;border-radius:28px!important;box-shadow:0 30px 100px rgba(2,12,24,.28)!important;overflow:hidden}
body.sgm-rebuild .modal-header{background:linear-gradient(135deg,#f6fbff,#ffffff);border-bottom:1px solid var(--sgm-line)!important;padding:1.3rem 1.55rem!important}
body.sgm-rebuild .modal-body{padding:1.7rem!important}
body.sgm-rebuild .modal-footer{border-top:1px solid var(--sgm-line)!important;padding:1.15rem 1.55rem!important}
body.sgm-rebuild .btn-close{background-color:rgba(15,111,174,.10);border-radius:999px;padding:.75rem}
body.sgm-rebuild .cookiealert{position:fixed;left:1rem;right:1rem;bottom:1rem;z-index:1080;border:none;border-radius:20px;box-shadow:var(--sgm-shadow);background:rgba(255,255,255,.96);backdrop-filter:blur(16px);display:none}
body.sgm-rebuild .cookiealert.show{display:block}
body.sgm-rebuild .cookiealert p{margin:0;color:var(--sgm-text)}
body.sgm-rebuild .social-icon{font-size:2.6rem;color:var(--sgm-blue)!important;transition:.2s}
body.sgm-rebuild .social-icon:hover{transform:translateY(-4px);color:var(--sgm-navy)!important}
body.sgm-rebuild .legal-content,
body.sgm-rebuild.page-legal main,
body.sgm-rebuild.page-legal article{max-width:960px;margin-inline:auto;background:#fff;border:1px solid var(--sgm-line);border-radius:28px;box-shadow:var(--sgm-shadow-sm);padding:clamp(1.2rem,3vw,3rem)}
body.sgm-rebuild.page-legal h1{font-size:clamp(2.1rem,4vw,3.8rem);margin-bottom:2rem}
body.sgm-rebuild.page-legal h2{font-size:clamp(1.35rem,2.1vw,2rem);margin-top:2rem}
body.sgm-rebuild table{border-radius:18px;overflow:hidden}
body.sgm-rebuild .table>:not(caption)>*>*{padding:1rem;border-color:var(--sgm-line)}

@media (max-width: 992px){
  body.sgm-rebuild .navbar-collapse{padding-top:1rem}
  body.sgm-rebuild .hero-content{text-align:center!important;align-items:center!important}
  body.sgm-rebuild .hero{border-radius:0 0 32px 32px}
}
@media (max-width: 768px){
  body.sgm-rebuild .hero{min-height:560px!important}
  body.sgm-rebuild .navbar-brand img,body.sgm-rebuild #navbar-logo{max-height:48px!important}
  body.sgm-rebuild .card-body{padding:1.2rem!important}
  body.sgm-rebuild .cookiealert{left:.65rem;right:.65rem;bottom:.65rem}
}
