/* V138 — GLOBAL PAGE-FIT / RESPONSIVE CONSISTENCY
   Surgical visual layer on top of V137.
   No database, auth, API, route or content logic changes.
*/
html,body{width:100%;max-width:100%;min-width:0;overflow-x:hidden}
body{margin-left:0;margin-right:0}
main{width:100%;max-width:100%;min-width:0;margin-left:0;margin-right:0}
*,*:before,*:after{box-sizing:border-box}
img,video,iframe,svg,canvas{max-width:100%;height:auto}
table{max-width:100%}

/* Brand: height-driven sizing preserves the supplied logo's exact aspect ratio. */
.brand-logo-3d,.portalBrand img,.p-brand img,.footer-logo img{
 display:block!important;object-fit:contain!important;width:auto!important;height:auto!important;max-width:100%!important;aspect-ratio:auto!important;
}
.brand-logo-3d{height:50px!important;max-height:50px!important}
.portalBrand img{height:52px!important;max-height:52px!important}
.p-brand img{height:50px!important;max-height:50px!important}
.footer-logo img{height:48px!important;max-height:48px!important}

/* Shared content rail: same left/right alignment across desktop and mobile. */
.wrap,.page-wrap,.page-container,.container,.content-wrap,.site-container,.main-wrap,
.sv-wrap,.svContainer,.portalWrap,.portal-shell,.workspace,.dashboard-shell,
.section,.infoSection,.adminSection,.adminShell,.adminWrap{
 max-width:1280px;width:calc(100% - 32px);margin-left:auto;margin-right:auto;min-width:0;
}
.grid,.cards,.rail,.section-grid,.card-grid,.svGrid,.sv-grid,.items,.list,.row-list{max-width:100%;min-width:0}
.card,.panel,.svCard,.svTrustCard,.notice,.infoSection,.adminSection{min-width:0;max-width:100%}
.card,.panel,.svCard,.svTrustCard,.notice,.row,.item,.tag,.pill,.btn,.svBtn,.primaryBtn,
.primary,.simpleLink,.meta,.muted,.section-head,.section-kicker,.eyebrow,input,select,textarea,button{overflow-wrap:anywhere}

/* Header is full viewport width; its contents use the same 1280px alignment rail. */
.sv113-header{width:100%!important;max-width:none!important;margin:0!important;min-width:0!important;box-sizing:border-box!important;
 padding-left:max(14px,calc((100% - 1280px)/2))!important;padding-right:max(14px,calc((100% - 1280px)/2))!important}
.sv113-header .brand{min-width:0!important;flex:0 1 auto!important}

/* HERO: edge-to-edge available page width, with no artificial left/right gap. */
.hero-shell{width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important;padding-left:0!important;padding-right:0!important;min-width:0!important;box-sizing:border-box!important}
.hero-viewport{width:100%!important;max-width:none!important;min-width:0!important;margin-left:0!important;margin-right:0!important}
.hero-track{min-width:0!important;width:100%!important}
.hero-slide{min-width:100%!important;width:100%!important}
.hero-image img{width:100%;height:100%;object-fit:cover}

/* Main homepage rails. */
.quick-intent,.trust-row,.program-tabs,.offer-banner,.service-strip,
.trending.block,.content.block,.lists.block,.toolkit.block,.metrics.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;
}

/* Professional highlight cards below the tabs. */
.trust-row{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px!important;padding:0!important;margin-top:12px!important;margin-bottom:12px!important}
.trust-row>div{min-width:0!important;display:flex!important;align-items:center!important;gap:10px!important;padding:12px 14px!important;border:1px solid #e3e8f3!important;border-radius:13px!important;background:#fff!important;box-shadow:0 5px 18px rgba(31,42,92,.055)!important}
.trust-row>div:nth-child(1){border-top:3px solid #3154e8!important;background:linear-gradient(180deg,#f5f8ff,#fff)!important}
.trust-row>div:nth-child(2){border-top:3px solid #7b4ce8!important;background:linear-gradient(180deg,#faf7ff,#fff)!important}
.trust-row>div:nth-child(3){border-top:3px solid #16a36a!important;background:linear-gradient(180deg,#f3fbf7,#fff)!important}
.trust-row>div:nth-child(4){border-top:3px solid #ed7a22!important;background:linear-gradient(180deg,#fff8f1,#fff)!important}
.trust-row .trust-icon{flex:0 0 32px;width:32px!important;height:32px!important;border-radius:10px!important;display:grid!important;place-items:center!important;font-weight:900!important}
.trust-row .trust-icon.blue{background:#eaf0ff!important;color:#3154e8!important}.trust-row .trust-icon.gold{background:#fff2df!important;color:#d97706!important}.trust-row .trust-icon.green{background:#e8f8ef!important;color:#15965f!important}.trust-row .trust-icon.purple{background:#f0eaff!important;color:#7042e8!important}
.trust-row b{display:block!important;font-size:12px!important;line-height:1.2!important;color:#17213b!important}.trust-row small{display:block!important;font-size:9.5px!important;line-height:1.35!important;color:#6c768b!important;margin-top:3px!important}

/* Only these intentional rails may scroll horizontally. */
.program-tabs{overflow-x:auto!important;overflow-y:hidden!important;scrollbar-width:none!important}
.program-tabs::-webkit-scrollbar{display:none}.program-tabs a{flex:0 0 auto!important;white-space:nowrap!important}
.hero-viewport{overflow-x:auto!important;overflow-y:hidden!important;scrollbar-width:none!important}.hero-viewport::-webkit-scrollbar{display:none}

.site-footer{width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important}
.site-footer-inner,.footer-bottom{max-width:1280px!important;width:calc(100% - 32px)!important;margin-left:auto!important;margin-right:auto!important;min-width:0!important}

@media(max-width:900px){.trust-row{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){
 .wrap,.page-wrap,.page-container,.container,.content-wrap,.site-container,.main-wrap,.sv-wrap,.svContainer,.portalWrap,.portal-shell,.workspace,.dashboard-shell,.section,.infoSection,.adminSection,.adminShell,.adminWrap,
 .quick-intent,.trust-row,.program-tabs,.offer-banner,.service-strip,.trending.block,.content.block,.lists.block,.toolkit.block,.metrics.block,.source-note,.ecosystem,.tools-showcase,.faculty,.commercial,.trust-note,.final-cta,.faq,.site-footer-inner,.footer-bottom{width:calc(100% - 20px)!important}
 .sv113-header{padding-left:10px!important;padding-right:10px!important}
 .brand-logo-3d{height:44px!important;max-height:44px!important}.portalBrand img{height:44px!important;max-height:44px!important}.p-brand img{height:44px!important;max-height:44px!important}
 .trust-row{gap:8px!important;margin-top:10px!important}.trust-row>div{padding:10px!important;gap:8px!important}.trust-row .trust-icon{flex-basis:28px;width:28px!important;height:28px!important}.trust-row b{font-size:10.5px!important}.trust-row small{font-size:8.5px!important}
}
@media(max-width:460px){
 .wrap,.page-wrap,.page-container,.container,.content-wrap,.site-container,.main-wrap,.sv-wrap,.svContainer,.portalWrap,.portal-shell,.workspace,.dashboard-shell,.section,.infoSection,.adminSection,.adminShell,.adminWrap,
 .quick-intent,.trust-row,.program-tabs,.offer-banner,.service-strip,.trending.block,.content.block,.lists.block,.toolkit.block,.metrics.block,.source-note,.ecosystem,.tools-showcase,.faculty,.commercial,.trust-note,.final-cta,.faq,.site-footer-inner,.footer-bottom{width:calc(100% - 14px)!important}
 .brand-logo-3d{height:40px!important;max-height:40px!important}.brand-name{font-size:15px!important}
 .trust-row{gap:7px!important}.trust-row>div{padding:9px 8px!important}.trust-row .trust-icon{flex-basis:26px;width:26px!important;height:26px!important;font-size:11px!important}.trust-row b{font-size:9.5px!important}.trust-row small{font-size:7.8px!important}
}
