
/* Site-local typography. Existing section styles and layout are retained. */
@font-face{font-family:"Manrope";src:url("../fonts/Inter-Regular.otf") format("opentype");font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:"Manrope";src:url("../fonts/Inter-Bold.otf") format("opentype");font-style:normal;font-weight:700 900;font-display:swap}
html{scroll-behavior:smooth;scroll-padding-top:95px}
body{overflow-x:clip}
section[id]{scroll-margin-top:95px}
img{max-width:100%}
.navbar-toggler{z-index:1053;position:relative;visibility:visible}
.navbar-collapse{z-index:1052}
.navbar-toggler:focus-visible,.nav-link:focus-visible,.btn:focus-visible,.footer3 a:focus-visible{outline:3px solid #137c94;outline-offset:3px}
.local-contact-visual{height:30rem;position:relative;overflow:hidden;background:#e9eff0;border-radius:2rem}
.local-contact-visual img{display:block;width:100%;height:100%;object-fit:cover;border-radius:2rem}
.local-contact-visual__caption{position:absolute;bottom:1.2rem;left:1.2rem;right:1.2rem;color:#fff;background:rgba(8,33,43,.83);border-radius:.9rem;padding:1rem 1.2rem;font-weight:700;font-size:1.05rem}
.demo-disclaimer{font-size:.75rem;opacity:.77;line-height:1.5;display:block;margin-top:1rem}
.form-send-note{font-size:.89rem;color:#355360;text-align:center;margin:1rem 0 0}
.company-legal{width:100%;margin:2.5rem auto 0;padding:2rem 0;border-top:1px solid rgba(255,255,255,.22);border-bottom:1px solid rgba(255,255,255,.15);color:#eef5f5}
.company-legal__heading{font-size:1.3rem;font-weight:700;text-align:center;color:inherit;margin:0 0 1.4rem}
.company-legal__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem 2rem;margin:0 auto;max-width:920px}
.company-legal__grid p{font-size:.95rem;line-height:1.55;margin:0;min-width:0;overflow-wrap:anywhere}
.company-legal__grid strong{display:block;font-size:.77rem;letter-spacing:.04em;text-transform:uppercase;color:#bcd3da;margin-bottom:.15rem}
.company-legal__grid span{display:block;color:#fff}
.company-legal__notice{font-size:.79rem;opacity:.75;text-align:center;max-width:920px;margin:1.5rem auto 0;line-height:1.65}
.legal-main{padding:9.5rem 1.2rem 5rem;min-height:65vh;background:#f8fbfa;color:#1f3136}
.legal-main__inner{max-width:940px;margin:auto;background:#fff;padding:clamp(1.3rem,4vw,3.7rem);border-radius:2rem;box-shadow:0 14px 40px rgba(2,28,34,.07)}
.legal-main h1{font-size:clamp(2rem,4vw,3.5rem);line-height:1.15;margin-bottom:.75em;word-wrap:break-word}
.legal-main h2{font-size:clamp(1.25rem,2.1vw,1.65rem);margin:2.2rem 0 .7rem}
.legal-main h3{font-size:1.12rem;margin:1.5rem 0 .6rem}
.legal-main p,.legal-main li{font-size:1rem;line-height:1.8;color:#34464e}
.legal-main p,.legal-main ul{margin:0 0 1rem}
.legal-main a{color:#14657e;text-decoration:underline;text-underline-offset:.15rem}
.legal-main .legal-intro{font-size:1.09rem;color:#36484e}
.legal-main .legal-updated{font-size:.9rem;opacity:.73;margin-bottom:1.5rem}
.legal-main .legal-return{display:inline-block;margin-top:2rem;padding:.8rem 1.4rem;background:#0d526a;color:#fff;text-decoration:none;border-radius:3rem;font-weight:700}
.legal-main .legal-return:hover,.legal-main .legal-return:focus-visible{background:#084053;color:#fff}
@media(max-width:991px){
  .menu .navbar-toggler{display:flex;align-items:center;justify-content:center;flex:none}
  .menu .navbar-collapse{max-height:calc(100dvh - 80px);overflow-y:auto;overscroll-behavior:contain;}
  .menu .navbar-collapse:not(.show){display:none!important}
  .menu .navbar-nav .nav-link{display:block;padding:1rem .5rem!important}
  .menu .navbar-buttons .btn{margin:.6rem 0 1rem!important}
  .menu .navbar-brand{min-width:0;max-width:calc(100% - 70px)}
  .menu .navbar-caption{overflow-wrap:anywhere;font-size:1rem!important}
  .menu .navbar-logo img{max-width:62px!important;height:auto!important}
  .company-legal__grid{grid-template-columns:1fr}
  .legal-main{padding-top:7rem}
}
@media(max-width:480px){
  .menu .navbar>.container{min-width:0}
  .menu .navbar-brand{gap:.25rem}
  .menu .navbar-logo img{max-width:48px!important}
  .menu .navbar-caption{font-size:.88rem!important}
  .local-contact-visual{height:19rem}
  .company-legal{padding:1.5rem .3rem}
  .legal-main{padding-left:.65rem;padding-right:.65rem}
  .legal-main__inner{border-radius:1.2rem}
}

@media(max-width:767px){html,body{max-width:100%;overflow-x:clip}.company-legal__notice{padding:0 .25rem}}

@media(max-width:767px){html,body{max-width:100%;overflow-x:clip}.company-legal__notice{padding:0 .25rem}}
