/* ============================================================
   PRESTIGE — RESPONSIVE HARDENING
   280px → ultrawide, portrait/landscape, touch & safe areas
   ============================================================ */
html{max-width:100%;-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{width:100%;max-width:100%;min-width:0;overflow-x:clip}
main,section,article,header,footer,.container,.header-inner,.header-brand,.header-actions{min-width:0}
img{display:block;max-width:100%}
input,textarea,select,button{font:inherit}
input,textarea,select{min-width:0;max-width:100%}
h1,h2,h3,h4,h5,h6,p,li,a,span,blockquote{overflow-wrap:break-word}
pre,code{max-width:100%;white-space:pre-wrap;overflow-wrap:anywhere}
iframe,video,canvas{max-width:100%}
.container{width:100%}
a,button,.theme-toggle,.filter-btn,.faq-question{-webkit-tap-highlight-color:transparent;touch-action:manipulation}
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid rgba(99,102,241,.45);outline-offset:3px}
.header-brand,.header-brand>a{min-width:0}.logo-text{white-space:nowrap}#mobile-menu-btn,#mobile-menu-close{flex-shrink:0}
.mobile-menu{width:min(20rem,88vw)!important;max-width:100vw;overflow-y:auto;overscroll-behavior:contain;padding-top:max(1.5rem,env(safe-area-inset-top));padding-right:max(1.5rem,env(safe-area-inset-right));padding-bottom:max(1.5rem,env(safe-area-inset-bottom));padding-left:max(1.5rem,env(safe-area-inset-left))}
.mobile-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}
body.menu-open{overflow:hidden;overscroll-behavior:none}
.faq-question{gap:.75rem}.faq-question>span:first-child{min-width:0}.faq-answer{overflow-wrap:anywhere}
.portfolio-item,.project-card,.team-card{min-width:0}.portfolio-item img,.project-card img,.team-card img{width:100%}.form-input{width:100%}
.back-to-top{bottom:max(1rem,env(safe-area-inset-bottom))!important;left:max(1rem,env(safe-area-inset-left))!important}

@media(max-width:1023.98px){
 .header-inner{grid-template-columns:minmax(0,1fr) auto;gap:.75rem}.header-brand{justify-self:start}.header-actions{justify-self:end;gap:.5rem}
 #main-header{padding-top:.75rem!important;padding-bottom:.75rem!important}
 .home-hero{min-height:100svh!important}.home-hero>.container{padding-top:7rem!important;padding-bottom:5rem!important}
 .page-banner{padding-top:7rem!important;padding-bottom:4rem!important}
}

@media(max-width:767.98px){
 .py-24{padding-top:4rem!important;padding-bottom:4rem!important}.py-20{padding-top:3.5rem!important;padding-bottom:3.5rem!important}.py-16{padding-top:3rem!important;padding-bottom:3rem!important}.pt-20{padding-top:3.5rem!important}.pb-20{padding-bottom:3.5rem!important}
 .gap-16{gap:2.5rem!important}.gap-12{gap:2rem!important}.gap-8{gap:1.5rem!important}.space-y-24>:not([hidden])~:not([hidden]){margin-top:4rem!important}
 .p-8{padding:1.5rem!important}.p-6{padding:1.25rem!important}
 .text-5xl{font-size:clamp(2rem,8.5vw,3rem)!important;line-height:1.25!important}.text-4xl{font-size:clamp(1.8rem,7.5vw,2.25rem)!important;line-height:1.3!important}.text-3xl{font-size:clamp(1.55rem,6.5vw,1.9rem)!important;line-height:1.35!important}
 .home-hero>.container{padding-top:6.5rem!important;padding-bottom:4rem!important}.home-hero h1{font-size:clamp(2rem,9.5vw,2.8rem)!important;line-height:1.3!important}.home-hero p{font-size:1rem!important}
 .hero-actions{display:grid!important;grid-template-columns:minmax(0,1fr);gap:.75rem!important;margin-bottom:2rem!important}.hero-actions>a{width:100%;min-height:3.25rem;padding:.85rem 1rem!important;justify-content:center;text-align:center;font-size:1rem!important}
 .hero-stats{gap:.5rem!important}.hero-stats>div{min-width:0;text-align:center}.hero-stats .counter-number{font-size:clamp(1.35rem,6vw,1.7rem)!important}.hero-stats .text-sm{font-size:.72rem!important;line-height:1.45!important}
 .about-preview-media{padding-bottom:2rem}.about-experience-badge{left:0!important;bottom:0!important;padding:1rem!important}
 .article-meta{justify-content:center;row-gap:.5rem!important}.article-share-row{align-items:flex-start!important}
 .faq-question{padding:1rem!important;font-size:1rem!important;line-height:1.7}.faq-answer{padding-right:1rem!important;padding-left:1rem!important;padding-bottom:1rem!important}.faq-icon{width:2rem!important;height:2rem!important;margin-right:.25rem!important}
 .filter-btn{padding:.55rem .9rem!important}
 .page-about img[class*="h-[400px]"],.page-index img[class*="h-[450px]"],.page-services img.h-80,.page-team img.h-80,.page-blog-single img.h-96{height:clamp(15rem,72vw,21rem)!important}
 .page-index img.h-72,.page-portfolio img.h-72{height:clamp(14rem,68vw,19rem)!important}.page-index img.h-48,.page-blog img.h-48{height:clamp(12rem,56vw,15rem)!important}
 .page-about .max-w-3xl>.reveal.flex{gap:.75rem!important}.page-about .max-w-3xl>.reveal.flex>div:first-child{width:3.5rem!important;height:3.5rem!important;border-radius:.85rem!important;font-size:.85rem}
 footer .social-links{flex-wrap:wrap}
}
@media(min-width:480px) and (max-width:767.98px){.hero-actions{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:359.98px){
 .container{padding-right:.75rem!important;padding-left:.75rem!important}.mobile-menu{width:min(18rem,94vw)!important;padding-right:1rem;padding-left:1rem}.logo-text{font-size:1.05rem!important}.home-hero>.container{padding-top:6rem!important}.home-hero .badge-pulse{font-size:.75rem!important;padding-right:.75rem!important;padding-left:.75rem!important}.hero-stats{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:.35rem!important}.hero-stats .text-sm{font-size:.65rem!important}.filter-btn{font-size:.75rem!important}.faq-question{padding:.85rem!important}.back-to-top{width:2.75rem!important;height:2.75rem!important}
}
@media(max-width:1023.98px) and (max-height:540px) and (orientation:landscape){
 .home-hero{min-height:auto!important}.home-hero>.container{padding-top:5.5rem!important;padding-bottom:3rem!important}.page-banner{padding-top:5.5rem!important;padding-bottom:2.5rem!important}.mobile-menu{width:min(28rem,72vw)!important}.mobile-menu nav{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:.25rem .5rem!important}.mobile-menu nav a{padding:.55rem .75rem!important;font-size:.9rem}.mobile-menu .theme-toggle{margin-top:.75rem!important;padding:.6rem .75rem!important}.mobile-menu>a:last-child{margin-top:.75rem!important;padding-top:.65rem!important;padding-bottom:.65rem!important}
}
@media(hover:none),(pointer:coarse){.card-hover:hover{transform:none!important}.project-card>div.absolute,.portfolio-item>div.absolute,.team-card .relative>div.absolute{opacity:1!important}.project-card img,.portfolio-item img,.team-card img{transform:none!important}.btn-shine::after{display:none}}
@media(min-width:1536px){.container{max-width:1320px}.home-hero>.container{padding-top:9rem!important;padding-bottom:7rem!important}}
@media(prefers-reduced-motion:reduce){html,*{scroll-behavior:auto!important}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal,.reveal-left,.reveal-right,.reveal-scale{opacity:1!important;transform:none!important}}

/* Final document-level overflow guard: transformed reveal elements, off-canvas drawer
   and decorative blobs must never expose a horizontal scrollbar. */
html,
body {
  overflow-x: hidden;
}
