/* Shared responsive adjustments for the homepage and contact page. */
.mobile-site-header{display:none;}
@media(max-width:1100px) and (min-width:810px){
 .homepage-section-links{gap:20px;}
 .homepage-section-links a{font-size:16px;}
 footer.framer-zDHEC .framer-ke6xv5{column-gap:28px;grid-template-columns:minmax(230px,1fr) max-content minmax(180px,260px);}
}
@media(max-width:809.98px){
 html,body{width:100%;min-width:0;margin:0;overflow-x:clip;}
 *,*::before,*::after{box-sizing:border-box;}
 #main{width:100%;min-width:0;}
 img{max-width:100%;}
 .framer-1vlsjdq-container{display:none!important;}
 .mobile-site-header{position:sticky;top:0;z-index:1000;display:flex;align-items:center;justify-content:space-between;width:100%;height:68px;padding:10px 20px;background:white;color:#0a0a0a;}
 .mobile-brand{display:block;position:relative;width:98px;height:40px;overflow:hidden;clip-path:inset(0 0 6% 0);flex-shrink:0;}
 .mobile-brand img{position:absolute;width:125.2%;max-width:none;height:auto;left:-13.25%;top:-20.9%;}
 .mobile-menu-toggle{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:44px;height:44px;padding:10px;border:1px solid #e4e4e4;border-radius:50%;background:#fff;cursor:pointer;}
 .mobile-menu-toggle span{display:block;width:20px;height:2px;background:#004eef;transition:transform .2s,opacity .2s;}
 .mobile-menu-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg);}
 .mobile-menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0;}
 .mobile-menu-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}
 .mobile-section-menu{position:absolute;top:100%;left:0;right:0;display:flex;flex-direction:column;gap:4px;padding:12px 20px 20px;background:white;box-shadow:0 12px 20px #00000012;max-height:calc(100dvh - 68px);overflow-y:auto;}
 .mobile-section-menu[hidden]{display:none!important;}
 .mobile-section-menu a{display:block;padding:12px 14px;min-height:44px;font:500 18px/1.3 Urbanist,sans-serif;color:#0a0a0a;text-decoration:none;border-radius:12px;}
 .mobile-section-menu a:hover,.mobile-section-menu a:focus-visible{background:#f3efe8;color:#004eef;}
 .mobile-section-menu a:last-child{background:#004eef;color:white;text-align:center;margin-top:8px;}
 :is(#home,#services,#work,#about,#blog,#project-inquiry){scroll-margin-top:84px;}
 .framer-Tn8e5 .framer-ot6bbe{padding:40px 20px 32px!important;}
 .framer-Tn8e5 .framer-1p6shs5 .framer-text{font-size:clamp(17px,4.5vw,24px)!important;line-height:1.2!important;}
 .framer-Iuq6g.framer-1dmz5bl{padding-top:80px!important;}
 .framer-5mfEL,.framer-Iuq6g,section.framer-WLxm3,section.framer-aGX4w{max-width:100%!important;}
 .framer-K4tom .framer-wz062j{padding:24px!important;height:auto!important;min-height:480px;}
 .framer-K4tom .framer-wz062j .framer-text{font-size:18px!important;line-height:1.5!important;}
 .framer-tQ9MY form.framer-7rfox{width:100%!important;min-width:0;overflow:visible!important;}
 .framer-tQ9MY .framer-8h6o9n{display:flex!important;flex-direction:column!important;width:100%!important;gap:20px!important;}
 .framer-tQ9MY .framer-8h6o9n>label{width:100%!important;flex:none!important;}
 .framer-tQ9MY form.framer-7rfox label{min-width:0;}
 .framer-tQ9MY form.framer-7rfox input,.framer-tQ9MY form.framer-7rfox select,.framer-tQ9MY form.framer-7rfox textarea{font-size:16px!important;max-width:100%;}
 .framer-tQ9MY .framer-1otyopx{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-auto-rows:1fr;gap:16px!important;}
 .framer-tQ9MY [data-framer-name="Contact Card"]{height:100%!important;min-height:280px;padding:24px 18px!important;gap:28px!important;}
 .framer-tQ9MY [data-framer-name="Contact Card"] .framer-text{overflow-wrap:anywhere;}
 footer.framer-zDHEC{padding-left:20px!important;padding-right:20px!important;}
 footer.framer-zDHEC .framer-ke6xv5{display:grid!important;grid-template-columns:1fr 1fr!important;gap:36px 24px!important;width:100%!important;}
 footer .framer-1njhgww{grid-column:1/-1;width:100%!important;}
 .homepage-footer-links{width:100%;grid-template-columns:1fr 1fr;column-gap:24px!important;}
 footer .framer-f4yfls,footer .framer-1x8xml9{width:100%!important;min-width:0;}
 footer .framer-1x8xml9 .framer-text{overflow-wrap:anywhere;}
 footer .framer-1guqbqy::after{font-size:10vw!important;}
}
@media(max-width:479px){
 .framer-tQ9MY .framer-1otyopx{grid-template-columns:1fr!important;}
 .framer-tQ9MY [data-framer-name="Contact Card"]{min-height:260px;}
 footer.framer-zDHEC .framer-ke6xv5{grid-template-columns:1fr!important;}
}
@media(prefers-reduced-motion:reduce){.mobile-menu-toggle span{transition:none;}}
