/* SpinOut U V16.3.9 — compact human-first public typography */
:root{
  --su39-ink:#17151a;
  --su39-muted:#625f68;
  --su39-line:#e8e6e3;
  --su39-soft:#f7f6f4;
  --su39-blue:#0b63f6;
}

/* Shared public reading rhythm */
.destination-page,
.marketplace-browser-page,
.public-info,
.campus-context-body{
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}

/* Registered Student destinations: one calm hierarchy instead of oversized editorial blocks. */
body.post-homepage-route .destination-shell{
  width:min(1440px,calc(100% - 48px));
  padding-top:28px;
}
body.post-homepage-route .destination-breadcrumb,
body.post-homepage-route .destination-native-breadcrumb,
body.post-homepage-route .integrity-breadcrumb{
  margin-bottom:28px!important;
  font-size:13px!important;
  line-height:1.25!important;
  font-weight:450!important;
}
body.post-homepage-route .world-title-block{
  display:block!important;
  max-width:980px!important;
  margin:8px 0 32px!important;
}
body.post-homepage-route .world-title-block>div>span,
body.post-homepage-route .direction-index-head>span,
body.post-homepage-route .direction-hero span,
body.post-homepage-route .generic-destination-hero span,
body.post-homepage-route .integrity-search-hero>span{
  display:block!important;
  font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  font-size:10px!important;
  line-height:1.2!important;
  letter-spacing:.12em!important;
  font-weight:720!important;
  text-transform:uppercase!important;
  color:#596273!important;
  margin-bottom:10px!important;
}
body.post-homepage-route .world-title-block h1,
body.post-homepage-route .direction-index-head h1,
body.post-homepage-route .direction-hero h1,
body.post-homepage-route .generic-destination-hero h1,
body.post-homepage-route .integrity-search-hero h1,
body.post-homepage-route .account-card h1{
  font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  font-size:clamp(34px,3.35vw,48px)!important;
  line-height:1.02!important;
  letter-spacing:-.038em!important;
  font-weight:600!important;
  max-width:880px!important;
  margin:0 0 14px!important;
  text-wrap:balance!important;
}
body.post-homepage-route .world-title-block .world-promise{
  max-width:780px!important;
  margin:0 0 10px!important;
  font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  font-size:clamp(18px,1.55vw,22px)!important;
  line-height:1.38!important;
  letter-spacing:-.018em!important;
  font-weight:500!important;
  color:var(--su39-ink)!important;
}
body.post-homepage-route .world-title-block>p,
body.post-homepage-route .direction-index-head p,
body.post-homepage-route .direction-hero p,
body.post-homepage-route .generic-destination-hero p,
body.post-homepage-route .integrity-search-hero p{
  max-width:760px!important;
  margin:0!important;
  font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  font-size:15px!important;
  line-height:1.55!important;
  font-weight:400!important;
  letter-spacing:0!important;
  color:var(--su39-muted)!important;
}
body.post-homepage-route .direction-hero,
body.post-homepage-route .generic-destination-hero{
  min-height:390px!important;
  border-radius:20px!important;
}
body.post-homepage-route .direction-hero>div,
body.post-homepage-route .generic-destination-hero>div{
  padding:clamp(30px,4vw,54px)!important;
}
body.post-homepage-route .destination-section,
body.post-homepage-route .destination-all{
  margin:54px 0!important;
  padding-top:0!important;
  padding-bottom:0!important;
}
body.post-homepage-route .destination-section>header,
body.post-homepage-route .destination-all>header{
  margin-bottom:18px!important;
}
body.post-homepage-route .destination-section header h2,
body.post-homepage-route .destination-all header h2,
body.post-homepage-route .integrity-result-section>header h2{
  font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  font-size:clamp(23px,2.15vw,30px)!important;
  line-height:1.08!important;
  letter-spacing:-.028em!important;
  font-weight:600!important;
  margin-top:5px!important;
  margin-bottom:7px!important;
  max-width:780px!important;
}
body.post-homepage-route .destination-section header p,
body.post-homepage-route .destination-all header p,
body.post-homepage-route .integrity-result-section>header p{
  max-width:720px!important;
  font-size:14px!important;
  line-height:1.55!important;
  font-weight:400!important;
  color:var(--su39-muted)!important;
}
body.post-homepage-route .destination-feature{
  min-height:360px!important;
  margin:64px 0!important;
  border-radius:20px!important;
}
body.post-homepage-route .destination-feature h2{
  font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  font-size:clamp(26px,2.6vw,36px)!important;
  line-height:1.05!important;
  letter-spacing:-.03em!important;
  font-weight:600!important;
}
body.post-homepage-route .destination-feature p{
  font-size:14.5px!important;
  line-height:1.55!important;
  font-weight:400!important;
}
body.post-homepage-route .all-directions-grid strong{
  font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  font-size:20px!important;
  line-height:1.15!important;
  letter-spacing:-.025em!important;
  font-weight:600!important;
}

/* Student world/category experiences reached from horizontal rails. */
body.student-secondary-route .world-hero h1,
body.student-secondary-route .world-atlas-head h1,
body.student-secondary-route .world-hero-cinematic h1,
body.student-secondary-route .world-hero-split h1,
body.student-secondary-route .world-hero-circles h1,
body.student-secondary-route .world-hero-mosaic h1,
body.student-secondary-route .discovery-category-hero h1{
  font-size:clamp(34px,3.35vw,48px)!important;
  line-height:1.02!important;
  letter-spacing:-.038em!important;
  font-weight:600!important;
  max-width:850px!important;
}
body.student-secondary-route .world-atlas-head>p,
body.student-secondary-route .world-hero-copy>p,
body.student-secondary-route .discovery-category-hero>p{
  font-size:15px!important;
  line-height:1.55!important;
  font-weight:400!important;
  max-width:650px!important;
}
body.student-secondary-route .discovery-subtopics-head h2,
body.student-secondary-route .discovery-results-head h2,
body.student-secondary-route .themes-overview-head h2{
  font-size:clamp(22px,2vw,28px)!important;
  font-weight:600!important;
  letter-spacing:-.025em!important;
}

/* Campus destination hierarchy: compact and operational, not presentation-deck scale. */
.campus-context-body .campus-destination-hero{min-height:350px!important}
.campus-context-body .campus-destination-copy{padding:44px 0 28px!important;max-width:820px!important}
.campus-context-body .campus-destination-copy h1{
  font-size:clamp(32px,3.15vw,44px)!important;
  line-height:1.03!important;
  letter-spacing:-.035em!important;
  font-weight:600!important;
  max-width:780px!important;
}
.campus-context-body .campus-destination-copy p{font-size:14.5px!important;line-height:1.55!important;font-weight:400!important;max-width:720px!important}
.campus-context-body .campus-value-card h2,
.campus-context-body .campus-buyer-fit h2,
.campus-context-body .campus-route-cta h2,
.campus-context-body .campus-editorial h2{
  font-size:clamp(22px,2vw,29px)!important;
  line-height:1.08!important;
  letter-spacing:-.026em!important;
  font-weight:600!important;
}

/* Public information pages use the same restrained system. */
body.public-info .public-hero{padding:64px 0 42px!important}
body.public-info .public-hero h1{
  font-size:clamp(34px,3.5vw,46px)!important;
  line-height:1.03!important;
  letter-spacing:-.038em!important;
  font-weight:600!important;
  max-width:820px!important;
}
body.public-info .public-hero p{font-size:16px!important;line-height:1.58!important;max-width:760px!important;margin-top:18px!important}
body.public-info .public-section-head h2{font-size:clamp(24px,2.4vw,32px)!important;font-weight:600!important;letter-spacing:-.03em!important}
body.public-info .public-card h2,
body.public-info .public-card h3,
body.public-info .public-step strong{font-size:20px!important;font-weight:600!important;letter-spacing:-.024em!important}
body.public-info .public-contact-panel h2{font-size:30px!important;font-weight:600!important}

/* Standalone public utility pages: avoid 60–70px hero slabs. */
body:not(.campus-context-body):not(.public-info) .hero h1,
body:not(.campus-context-body):not(.public-info) main>.shell>.hero h1{
  font-size:clamp(32px,3.4vw,46px)!important;
  line-height:1.03!important;
  letter-spacing:-.035em!important;
  font-weight:600!important;
}
body:not(.campus-context-body):not(.public-info) .hero .lede,
body:not(.campus-context-body):not(.public-info) .hero>p{
  font-size:16px!important;
  line-height:1.58!important;
  font-weight:400!important;
}
.legal-hero h1{font-size:clamp(32px,3.4vw,46px)!important;font-weight:600!important;letter-spacing:-.035em!important}
.legal-section h2{font-size:26px!important;font-weight:600!important;letter-spacing:-.025em!important}

@media(max-width:760px){
  body.post-homepage-route .destination-shell{width:min(100% - 28px,680px)!important;padding-top:20px!important}
  body.post-homepage-route .world-title-block{margin:4px 0 24px!important}
  body.post-homepage-route .world-title-block h1,
  body.post-homepage-route .direction-index-head h1,
  body.post-homepage-route .direction-hero h1,
  body.post-homepage-route .generic-destination-hero h1,
  body.post-homepage-route .integrity-search-hero h1,
  body.post-homepage-route .account-card h1,
  body.student-secondary-route .world-hero h1,
  body.student-secondary-route .world-atlas-head h1,
  body.student-secondary-route .discovery-category-hero h1{
    font-size:clamp(29px,8.6vw,38px)!important;
    line-height:1.04!important;
  }
  body.post-homepage-route .world-title-block .world-promise{font-size:17px!important;line-height:1.42!important}
  body.post-homepage-route .world-title-block>p,
  body.post-homepage-route .direction-hero p,
  body.post-homepage-route .generic-destination-hero p{font-size:14px!important;line-height:1.55!important}
  body.post-homepage-route .direction-hero>div,
  body.post-homepage-route .generic-destination-hero>div{padding:26px 20px!important}
  body.post-homepage-route .destination-feature{margin:46px 0!important}
  body.post-homepage-route .destination-section,
  body.post-homepage-route .destination-all{margin:42px 0!important}
  body.public-info .public-hero{padding:44px 0 32px!important}
  body.public-info .public-hero h1{font-size:clamp(30px,8.5vw,38px)!important}
  .campus-context-body .campus-destination-copy h1{font-size:clamp(29px,8.2vw,38px)!important}
}
