html{font-size:16px;-webkit-text-size-adjust:100%}body{min-height:100vh;font-family:Inter,ui-sans-serif,system-ui,Segoe UI,Roboto,Helvetica,Arial,sans-serif;color:rgb(15 23 42);background-color:#ffffff;line-height:1.6}img,video{max-width:100%;height:auto;display:block;object-fit:cover}a{color:inherit;text-decoration:none}button,input,textarea,select{font-family:inherit}:focus{outline:transparent}:focus-visible{box-shadow:0 0 0 4px rgba(14,165,233,0.18);border-radius:8px}.container{max-width:1200px;margin-left:auto;margin-right:auto}header a:focus-visible,nav a:focus-visible{box-shadow:0 0 0 4px rgba(99,102,241,0.14);border-radius:8px}button{cursor:pointer}button[disabled],button:disabled{opacity:.6;cursor:not-allowed}input[type="text"],input[type="email"],input[type="tel"],textarea{min-height:44px;font-size:16px}h1,h2,h3,h4,h5{color:rgb(15 23 42)}h1{font-size:2rem}h2{font-size:1.75rem}h3{font-size:1.25rem}p,li{font-size:1rem;color:rgb(71 85 105)}ul{padding-left:1.25rem}.grid-card{transition:transform .25s cubic-bezier(.2,.9,.2,1),box-shadow .25s;will-change:transform}grid-card:hover{transform:translateY(-6px)}.iconify{vertical-align:middle;display:inline-block}footer a:hover{color:rgb(7 89 133)}/***** Mobile menu and overlay *****/#mobile-menu{display:none}body.menu-open{overflow:hidden;height:100%}#mobile-overlay{transition:opacity .3s ease}#mobile-menu.show{display:block}#mobile-menu .animate-beam{animation:beam .6s cubic-bezier(.2,.9,.2,1) both}@keyframes beam{0%{transform:translateY(12px);opacity:0}100%{transform:translateY(0);opacity:1}}/***** Cookie consent *****/#cookie-consent{max-width:22rem;width:100%;min-width:18rem;box-shadow:0 10px 30px rgba(2,6,23,0.08)}@media (max-width:640px){#cookie-consent{right:1rem;left:1rem;bottom:1rem;width:auto;max-width:none}}/***** Forms status *****/#form-status{min-height:1.25rem}#form-status.success{color:rgb(16 185 129)}#form-status.error{color:rgb(239 68 68)}/***** Focusable elements keyboard order visual aid *****/a,button,input,textarea,select{transition:box-shadow .18s ease,transform .12s ease}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{box-shadow:0 0 0 4px rgba(14,165,233,0.22);border-radius:8px}svg[role="img"]{max-width:100%;height:auto}/* Ensure interactive text contrast */button, .inline-btn{color:#0f172a}a.inline-white{color:#ffffff}/* Small utilities to ensure no overflow */*{box-sizing:border-box}section{word-wrap:break-word}blockquote,pre{overflow:auto}/* Ensure images are contained in rounded parents */.rounded-2xl img, .rounded-xl img{border-radius:1rem;display:block}/* Disable text selection for decorative icons */.icon-decorative{user-select:none}/* Decorative motion reduced for users who prefer reduced motion */@media (prefers-reduced-motion:reduce){*{animation-duration:0.001ms!important;animation-iteration-count:1!important;transition-duration:0.001ms!important}}