/* V140 — FINAL BRAND / PAGE-FIT LAYER
   Surgical patch: logo alignment + consistent responsive rails.
   No auth, DB, payment, inventory or business logic changes.
*/
html,body{width:100%;max-width:100%;overflow-x:hidden}
*,*:before,*:after{box-sizing:border-box}
img,svg,video,iframe{max-width:100%}

/* Brand: preserve the supplied 3D logo's natural aspect ratio. */
.sv113-header{width:100%!important;display:flex!important;align-items:center!important;min-height:72px!important;height:auto!important}
.sv113-header .brand{display:flex!important;align-items:center!important;gap:9px!important;min-width:0!important;height:58px!important;flex:0 1 auto!important}
.sv113-header .brand-logo-3d{display:block!important;width:auto!important;height:50px!important;max-width:92px!important;max-height:50px!important;min-width:0!important;object-fit:contain!important;object-position:center!important;flex:0 0 auto!important}
.sv113-header .brand-name{display:block!important;line-height:1.05!important;white-space:nowrap!important;flex:0 0 auto!important}
.sv113-header .brand-name small{white-space:nowrap!important}

/* Shared page rail: no floating side gaps on large screens, safe gutters on small screens. */
.quick-intent,.trust-row,.program-tabs,.offer-banner,.service-strip,.block,.source-note,.ecosystem,.tools-showcase,.faculty,.commercial,.trust-note,.final-cta,.faq{max-width:1280px!important;width:calc(100% - 32px)!important;margin-left:auto!important;margin-right:auto!important;min-width:0!important}
.hero-shell{width:100%!important;max-width:none!important;margin:0!important;padding-left:0!important;padding-right:0!important;min-width:0!important}
.hero-viewport{width:100%!important;max-width:none!important;margin:0!important;min-width:0!important}
.hero-slide{width:100%!important;min-width:100%!important}

/* Footer follows the same rail. */
.site-footer{width:100%!important;max-width:none!important}
.site-footer-inner,.footer-bottom{max-width:1280px!important;width:calc(100% - 32px)!important;margin-left:auto!important;margin-right:auto!important}

/* Only intentional horizontal rails can scroll. */
.hero-viewport,.program-tabs{overflow-x:auto!important;overflow-y:hidden!important;scrollbar-width:none!important}
.hero-viewport::-webkit-scrollbar,.program-tabs::-webkit-scrollbar{display:none}

@media(max-width:700px){
 .sv113-header{min-height:62px!important;padding-left:10px!important;padding-right:10px!important}
 .sv113-header .brand{height:50px!important;gap:7px!important}
 .sv113-header .brand-logo-3d{height:44px!important;max-height:44px!important;max-width:78px!important}
 .sv113-header .brand-name{font-size:17px!important}
 .sv113-header .brand-name small{display:none!important}
 .quick-intent,.trust-row,.program-tabs,.offer-banner,.service-strip,.block,.source-note,.ecosystem,.tools-showcase,.faculty,.commercial,.trust-note,.final-cta,.faq,.site-footer-inner,.footer-bottom{width:calc(100% - 20px)!important}
}
@media(max-width:430px){
 .sv113-header .brand-logo-3d{height:40px!important;max-height:40px!important;max-width:70px!important}
 .sv113-header .brand-name{font-size:15px!important}
 .quick-intent,.trust-row,.program-tabs,.offer-banner,.service-strip,.block,.source-note,.ecosystem,.tools-showcase,.faculty,.commercial,.trust-note,.final-cta,.faq,.site-footer-inner,.footer-bottom{width:calc(100% - 14px)!important}
}
