/* Photo-led refinement: shared alignment, restrained motion, real student moments. */
.home-v4{--cream:#f7f8f3;background:#fff;--ink:#20382d}
.home-v4 .header{background:#ffffffef}.home-v4 .campus-hero{max-width:1280px;padding:56px 40px 46px;grid-template-columns:.95fr 1.15fr;gap:36px;min-height:620px;overflow:visible}
.home-v4 .hero-v3-copy{padding:0;min-width:0}.home-v4 .campus-eyebrow{margin-bottom:28px;font-size:12px}.home-v4 .campus-hero h1{font-size:clamp(36px,3.8vw,53px);line-height:1.55;letter-spacing:-.04em;font-weight:800}.home-v4 .headline-line{display:block;background:none}.optical-start{text-indent:-.5em}.home-v4 h1 mark{color:inherit;background:linear-gradient(transparent 76%,#dfecc1 76%,#dfecc1 94%,transparent 94%)}.home-v4 .hero-v3-description{font-size:14px;line-height:2.1;margin:26px 0}.home-v4 .round-button{box-shadow:none;border:0;background:#205e3e;padding:8px 8px 8px 24px;gap:26px;transition:background .2s,transform .2s}.home-v4 .arrow-circle{background:#fff;color:#205e3e;transition:transform .25s,background .25s}.home-v4 .hero-small{margin-top:22px}
.hero-gallery{min-width:0}.hero-photo-stage{position:relative;height:460px;overflow:hidden;border-radius:8px;background:#edf2ed;isolation:isolate}.hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:48% center;opacity:0;transition:opacity .65s ease,transform 1s cubic-bezier(.22,1,.36,1);pointer-events:none}.hero-photo.is-active{opacity:1}.photo-story{position:absolute;bottom:0;left:0;right:0;z-index:2;padding:60px 28px 26px;background:linear-gradient(transparent,rgba(13,39,30,.73));color:#fff}.photo-story>span{font:700 9px var(--latin);letter-spacing:.13em}.photo-story p{font-size:19px;font-weight:700;margin-top:10px;line-height:1.6}.gallery-bottom{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:14px;min-height:44px}.gallery-bottom>p{font-size:10px;color:var(--muted)}.photo-controls{display:flex;gap:8px}.photo-controls button{display:grid;place-items:center;width:44px;height:44px;background:white;border:1px solid #cdd8cc;border-radius:50%;font:700 11px var(--latin);color:var(--green);cursor:pointer;transition:color .2s,background .2s,transform .2s}.photo-controls button[aria-pressed=true]{color:#fff;background:var(--green);border-color:var(--green)}
.home-v4 .section-title h2{font-weight:700;letter-spacing:-.025em}.home-v4 .section-title{margin-bottom:40px}.home-v4 .section{padding:80px 0}.home-v4 .campus-about,.home-v4 .programs,.home-v4 .voices{background:#fff}.home-v4 .marker{background:none}.home-v4 .about-v3-grid{gap:56px;grid-template-columns:.9fr 1.1fr;align-items:start}.home-v4 .photo-notes{display:grid;grid-template-columns:1fr 1fr;gap:16px;min-height:0;padding:0;margin:0}.home-v4 .photo-main,.home-v4 .photo-small{position:static;width:auto;transform:none;box-shadow:none;border:0;padding:0;background:none}.home-v4 .photo-main:before,.home-v4 .photo-small:before{display:none}.home-v4 .photo-notes img{height:305px;width:100%;border-radius:6px;object-fit:cover;transition:transform .6s}.home-v4 .photo-main img{object-position:43% center}.home-v4 .photo-small img{object-position:40% center}.home-v4 .photo-notes figcaption{font-size:10px;padding:10px 0;line-height:1.8;min-height:56px}.home-v4 .photo-note{position:static;transform:none;grid-column:1/-1;font-size:12px;border-top:1px solid var(--line);padding-top:16px;line-height:1.8}.home-v4 .photo-note br{display:none}.home-v4 .organizers{justify-content:flex-start}.home-v4 .learn-loop>span{background:#eff3e9}.home-v4 .journey-section{background:#f0f4ea;background-image:none}.home-v4 .journey-entry,.home-v4 .journey-board{box-shadow:none;border-radius:8px}.home-v4 .journey-heading{align-items:flex-start}.home-v4 .journey-heading>p{margin-top:37px}
.line-icon{display:grid;place-items:center;color:var(--green)}.line-icon svg{width:30px;height:30px}.home-v4 .road-label{display:flex;flex-direction:column;align-items:center;justify-content:flex-start}.road-icon{width:54px;height:54px;background:#edf2e4;border-radius:50%;margin-bottom:12px}.health-road .road-icon{background:#e7f0ec;color:var(--teal)}.home-v4 .course-emblem{width:56px;height:56px;top:-28px;right:24px;transform:none;padding:0;border-color:#d6e0d3;background:#fff}.health .course-emblem{color:var(--teal)}.home-v4 .course-card{border-radius:8px;box-shadow:none;display:flex;flex-direction:column;transition:border-color .25s,box-shadow .25s}.home-v4 .course-card.health{box-shadow:none}.home-v4 .card-image{height:240px;overflow:hidden;flex-shrink:0}.home-v4 .card-image>img{transition:transform .7s cubic-bezier(.22,1,.36,1)}.home-v4 .card-body{display:flex;flex-direction:column;flex:1;padding:32px}.home-v4 .card-body .kicker{min-height:18px}.home-v4 .card-body h3{font-size:26px;line-height:1.6}.home-v4 .card-lead{font-size:24px;line-height:1.7;margin:20px 0 0;min-height:82px;font-weight:700}.home-v4 .course-outcome{min-height:52px;font-size:12px;line-height:1.9;margin-top:16px}.home-v4 .tags{min-height:31px;align-items:flex-start;margin:18px 0}.home-v4 .facts{margin-top:0}.home-v4 .facts>div:first-child{min-height:93px}.home-v4 .card-body>.btn{margin-top:auto;position:relative;top:16px;margin-bottom:16px}.home-v4 .btn,.home-v4 .btn.teal{box-shadow:none}.home-v4 .btn>span{transition:transform .25s,background .25s}.home-v4 .status{border-radius:3px}.home-v4 .card-number{font-size:36px}.home-v4 .support-layout figure>img{border-radius:8px}.home-v4 .benefit-status{border-radius:8px}.home-v4 .quotes blockquote{border-radius:6px}.home-v4 .quotes blockquote:before{display:none}.home-v4 .header nav a{position:relative;border-bottom-color:transparent}.home-v4 .header nav a:after{content:'';position:absolute;left:0;bottom:2px;width:100%;height:2px;background:var(--green);transform:scaleX(0);transform-origin:left;transition:transform .25s}.home-v4 .header nav a[aria-current=location]:after{transform:scaleX(1)}.home-v4 .header nav a:hover{border-color:transparent}.home-v4 .faq summary:after{transition:transform .25s}.home-v4 .faq details[open] summary:after{content:'+';transform:rotate(45deg)}
@media(hover:hover) and (pointer:fine){.hero-photo-stage:hover .hero-photo.is-active{transform:scale(1.035)}.photo-controls button:hover{background:#edf2e6;color:var(--green);transform:translateY(-2px)}.photo-controls button[aria-pressed=true]:hover{background:var(--deep);color:white}.home-v4 .round-button:hover{background:var(--deep);box-shadow:none;transform:translateY(-2px)}.home-v4 .round-button:hover .arrow-circle{transform:translateY(2px)}.home-v4 .course-card:hover{border-color:var(--green);box-shadow:0 14px 35px #193c2910}.home-v4 .course-card:hover .card-image>img{transform:scale(1.045)}.home-v4 .course-card:focus-within{border-color:var(--green)}.home-v4 .btn:hover{box-shadow:none;transform:none}.home-v4 .btn:hover>span{transform:rotate(45deg);background:#ffffff35}.home-v4 .header nav a:hover:after{transform:scaleX(1)}.home-v4 .road-shortcuts a:hover{background:var(--green);color:white}.home-v4 .faq summary:hover{color:var(--green)}}
@media(max-width:1100px){.home-v4 .campus-hero{padding:38px 28px;gap:25px;min-height:520px}.home-v4 .campus-hero h1{font-size:37px}.hero-photo-stage{height:395px}.photo-story{padding:45px 20px 20px}.photo-story p{font-size:16px}.home-v4 .campus-eyebrow{font-size:10px}.home-v4 .hero-v3-description{font-size:12px}.home-v4 .card-body{padding:24px}.home-v4 .card-body h3{font-size:23px}.home-v4 .card-lead{font-size:21px;min-height:72px}.home-v4 .course-outcome{min-height:72px}.home-v4 .facts>div:first-child{min-height:110px}.home-v4 .photo-notes{gap:12px}.home-v4 .photo-notes img{height:300px}}
@media(max-width:700px){.home-v4 .campus-hero{padding:34px 20px 22px;gap:28px;display:flex;min-height:0}.home-v4 .hero-v3-copy{padding:0}.home-v4 .campus-hero h1{font-size:clamp(31px,8.6vw,50px);line-height:1.55;letter-spacing:-.04em}.home-v4 .campus-eyebrow{font-size:10px;margin-bottom:20px}.home-v4 .hero-v3-description{font-size:13px;margin:20px 0;line-height:2}.home-v4 .hero-small{font-size:10px;margin-top:20px}.hero-gallery{width:100%}.hero-photo-stage{height:300px;border-radius:6px}.photo-story{padding:45px 18px 18px}.photo-story p{font-size:16px;margin-top:7px}.photo-story>span{font-size:7px}.gallery-bottom{margin-top:8px}.gallery-bottom>p{font-size:9px}.photo-controls{gap:4px}.photo-controls button{width:42px;height:42px}.home-v4 .section{padding:56px 0}.home-v4 .section-title{margin-bottom:28px}.home-v4 .section-title h2{font-size:26px;line-height:1.6}.home-v4 .about-v3-grid{grid-template-columns:minmax(0,1fr);gap:28px}.home-v4 .photo-notes{grid-template-columns:1fr 1fr;gap:12px}.home-v4 .photo-notes img{height:210px}.home-v4 .photo-notes figcaption{font-size:9px;min-height:53px;padding:9px 0}.home-v4 .photo-note{font-size:11px;padding-top:12px}.home-v4 .journey-heading>p{margin-top:15px}.home-v4 .road-label{display:grid;grid-template-columns:54px 1fr;column-gap:14px;justify-items:start}.road-icon{grid-row:1/3;margin:0}.home-v4 .card-image{height:210px}.home-v4 .card-body{padding:24px}.home-v4 .card-body h3{font-size:24px}.home-v4 .card-lead{font-size:22px;min-height:0}.home-v4 .course-outcome{min-height:0}.home-v4 .facts>div:first-child{min-height:0}.home-v4 .card-body>.btn{margin-top:20px;top:0;margin-bottom:0}.home-v4 .tags{min-height:0}.home-v4 .course-emblem{right:20px}.home-v4 .campus-bottom a{border-radius:8px}.home-v4 .hero-photo{object-position:50% center}}
@media(prefers-reduced-motion:reduce){.home-v4 *, .home-v4 *:before,.home-v4 *:after{transition:none!important;animation:none!important;scroll-behavior:auto!important}.home-v4 .hero-photo-stage:hover .hero-photo.is-active,.home-v4 .course-card:hover .card-image>img{transform:none}}

/* Editorial background and margin detail. Decoration never covers content. */
.home-v4 .hero-surface {
  position: relative;
  isolation: isolate;
  overflow: clip;
  background: #f5f6ed;
}
.hero-surface::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0 0 0 53%;
  background: #e3ebd9;
  border-radius: 100px 0 0 0;
}
.hero-surface::after {
  content: "";
  position: absolute;
  z-index: -1;
  width: 590px;
  height: 590px;
  border: 1px solid #b8cbaa;
  border-radius: 50%;
  right: -200px;
  top: -265px;
  box-shadow: 0 0 0 32px #c8d5bc45, 0 0 0 64px #cfdbc12b;
}
.home-v4 .hero-gallery {position: relative; isolation: isolate;}
.home-v4 .hero-gallery::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 12px -12px 50px 12px;
  border: 1px solid #adc09f;
  border-radius: 8px;
}
.home-v4 .hero-photo-stage {box-shadow: 0 16px 36px #20382d10;}
.home-v4 .entry-ribbon {background: #e7edcf; border-color: #cbd7b9;}
.hero-margin, .section-margin {display: none; pointer-events: none; user-select: none;}
.home-v4 .section {position: relative; isolation: isolate; overflow: clip;}
.home-v4 .section::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  pointer-events: none;
  background-image: linear-gradient(90deg, #859b731a 1px, transparent 1px), linear-gradient(#859b731a 1px, transparent 1px);
  background-size: 24px 24px;
  mask-image: linear-gradient(90deg, #0006, transparent 17%, transparent 83%, #0006);
}
.home-v4 .campus-about {background: #fdfdf8;}
.home-v4 .journey-section {background: #edf2e3;}
.home-v4 .programs {background: #f8f9f1;}
.home-v4 #benefits {background: #eaf0e3;}
.home-v4 .voices {background: #fafbf5;}
.home-v4 .faq {background: #f4f6ee;}
.home-v4 .section-title .kicker {display: flex; align-items: center; gap: 12px;}
.home-v4 .section-title .kicker::before {content: ""; width: 24px; height: 2px; background: currentColor; flex-shrink: 0;}
.home-v4 .photo-notes {padding: 16px; background: #eff3e6; border: 1px solid #dce5cf; border-radius: 8px;}
.home-v4 .flow::before {opacity: .3; background-image: linear-gradient(90deg,#cfe2bc45 1px,transparent 1px),linear-gradient(#cfe2bc45 1px,transparent 1px);}
.home-v4 .flow::after {content: ""; position: absolute; z-index: -1; width: 430px; height: 430px; border: 1px solid #cfe2bc22; border-radius: 50%; right: -180px; bottom: -260px; pointer-events: none;}
@media(min-width:1280px) {
  .hero-margin, .section-margin {display: block; position: absolute; writing-mode: vertical-rl; font: 700 9px var(--latin); letter-spacing: .17em; color: #778c6c;}
  .hero-margin {left: max(12px, calc((100% - 1370px)/2)); top: 55px;}
  .section-margin {left: max(18px, calc((100% - 1280px)/2)); top: 84px;}
  .section-margin::after {content: ""; display: inline-block; width: 1px; height: 66px; background: #a7ba9680; margin-top: 22px;}
  .home-v4 .flow .section-margin {color: #c2d2b5;}
}
@media(max-width:700px) {
  .hero-surface::before {inset: 42% 0 0 30%; border-radius: 60px 0 0 0;}
  .hero-surface::after {width: 290px; height: 290px; right: -210px; top: 28px; box-shadow: 0 0 0 22px #c8d5bc35;}
  .home-v4 .hero-gallery::before {inset: 8px -8px 50px 8px; border-radius: 6px;}
  .home-v4 .section::before {background-size: 20px 20px; mask-image: linear-gradient(90deg,#0004,transparent 12%,transparent 88%,#0004);}
  .home-v4 .photo-notes {padding: 12px; gap: 10px;}
  .home-v4 .photo-notes img {height: 200px;}
  .home-v4 .section-title .kicker {gap: 9px;}
  .home-v4 .section-title .kicker::before {width: 18px;}
}
