html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
.nav-bar{position:sticky;top:0;z-index:1030}
@media (max-width:991.98px){
.hh-hero .container.hh-inner,.pe-grid,.service .container,.faq-v2 .container,.footer .container{padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right))}
.back-to-top{width:44px!important;height:44px!important;min-width:44px;min-height:44px;right:max(16px,env(safe-area-inset-right))!important;bottom:max(16px,env(safe-area-inset-bottom))!important;z-index:98!important;display:flex;align-items:center;justify-content:center;min-height:44px}
.hh-btn,.hh-dot,.pe-card,.faq-v2 .accordion-button{-webkit-tap-highlight-color:transparent}
.hh-btn,.faq-v2 .accordion-button{min-height:40px}
.navbar-collapse{max-width:100%;overflow-x:hidden}
.navbar .dropdown-menu{max-width:calc(100vw - 32px);overflow:hidden}
.footer .mapouter,.footer .gmap_canvas{width:100%!important;max-width:100%}
.footer .gmap_iframe{width:100%!important;max-width:100%}
}
@media (max-width:767.98px){
.hh-hero{height:auto;min-height:520px;min-height:clamp(480px,76vh,640px);min-height:clamp(480px,76svh,640px);align-items:flex-end!important;padding-bottom:0;touch-action:pan-y}
.hh-hero .hh-slide-img{object-position:center 25%}
.hh-hero .hh-overlay{background:linear-gradient(to top,rgba(8,28,70,.78) 0%,rgba(8,28,70,.25) 55%,rgba(8,28,70,.08) 100%)}
.hh-hero .container.hh-inner{padding-top:20px;padding-bottom:56px;display:flex;align-items:flex-end;justify-content:center}
.hh-card{margin:0 16px;width:calc(100% - 32px);max-width:480px;padding:20px 20px 22px;border-radius:20px;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px) saturate(1.1)}
.hh-label{font-size:.7rem!important;letter-spacing:.16em!important}
.hh-title{font-size:clamp(1.35rem,6.2vw,1.75rem)!important;line-height:1.15!important}
.hh-card .hh-btn{width:auto!important;align-self:flex-start;display:inline-block!important;text-align:center;min-height:42px;padding:10px 24px!important;font-size:.85rem!important;margin:0!important}
.hh-dots{bottom:18px!important;gap:8px}
.hh-dot{width:10px!important;height:10px!important;padding:7px!important;background-clip:content-box!important;box-sizing:content-box!important}
.pe-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px!important}
.pe-grid>.pe-card{grid-column:auto!important;width:100%!important;max-width:100%!important}
.pe-grid>.pe-card:last-child:nth-child(odd){grid-column:1 / -1!important;justify-self:center;width:calc(50% - 12px)!important;max-width:calc(50% - 12px)!important}
.pe-card{aspect-ratio:4 / 3;min-height:220px;border-radius:18px}
.pe-card .pe-card-title-normal{font-size:1.05rem!important;bottom:0;left:0;right:0;padding:18px 20px}
.pe-card .pe-card-panel{padding:24px 22px 20px;overflow-y:auto;max-height:100%}
.pe-card .pe-card-panel-title{font-size:1.1rem!important}
.pe-card .pe-card-panel-sub{font-size:.85rem!important}
.pe-card .pe-card-panel-client{font-size:.78rem}
.faq-v2 .faq-section-title,.mp-sec-title{font-family:'Montserrat',sans-serif!important;font-weight:700!important;font-size:clamp(1.5rem,6.4vw,1.9rem)!important;line-height:1.2!important;text-align:center!important}
.mp-sec{padding:24px 0 8px!important}
.faq-v2 .accordion-item{margin-bottom:12px}
.footer .mapouter{height:260px!important}
.footer .gmap_canvas{height:260px!important}
.footer .gmap_iframe{height:260px!important}
}
@media (max-width:575.98px){
.pe-grid{grid-template-columns:minmax(0,1fr)!important;gap:16px!important}
.pe-grid>.pe-card{grid-column:auto!important;width:100%!important;max-width:100%!important}
.pe-grid>.pe-card:last-child:nth-child(odd){grid-column:auto!important;justify-self:stretch!important;width:100%!important;max-width:100%!important}
.hh-hero .hh-card{padding:20px 20px 22px}
.faq-v2 .accordion-button{font-size:.95rem!important;font-weight:600!important;padding:14px 16px!important}
.faq-v2 .accordion-button::after{width:18px!important;height:18px!important;background-size:18px!important}
.faq-v2 .accordion-item{margin-bottom:12px!important;width:100%;max-width:100%}
.faq-v2 .accordion-body{font-size:.95rem!important;line-height:1.65!important;padding:14px 16px!important}
.faq-v2 .container{padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right))}
}
@media (max-width:359.98px){
.hh-title{font-size:1.3rem!important}
.hh-label{font-size:.66rem!important}
.hh-card{padding:16px 16px 18px!important}
.pe-card .pe-card-panel{padding:20px 16px 16px}
}
@media (max-height:500px) and (orientation: landscape){
.hh-hero{min-height:420px!important;align-items:center!important}
.hh-hero .container.hh-inner{padding-top:14px;padding-bottom:32px;justify-content:flex-start}
.hh-card{max-width:420px!important;padding:14px 18px!important}
.hh-card .hh-title{font-size:1.3rem!important}
.hh-dots{bottom:10px!important}
}
@media (hover:none){
.pe-card::after{content:"+";position:absolute;top:12px;right:12px;width:30px;height:30px;border-radius:50%;background:rgba(255,255,255,.22);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#fff;font-size:18px;font-weight:700;line-height:30px;text-align:center;z-index:5;pointer-events:none;transition:transform .2s ease,background .2s ease}
.pe-card.active::after{content:"\00d7";background:rgba(255,255,255,.32);transform:rotate(90deg)}
}