/* Saint Jeanne visual identity: botanical greens, ivory and terracotta. */
:root{--navy:#173f35;--navy2:#28594b;--blue:#376c59;--gold:#d7b889;--cream:#f3efe6;--ink:#263c34;--muted:#67776c;--line:#dce2d8;--shadow:0 16px 40px rgba(28,62,46,.08)}
body{background:#fcfaf5;font-family:'DM Sans',sans-serif}
.wrap{width:min(1200px,calc(100% - 64px))}
header{background:#fcfaf5;border-bottom:1px solid var(--line);box-shadow:none}
.header-inner{min-height:106px;gap:20px}
.brand{gap:16px}.brand img{width:72px;height:72px;border-radius:50%}
.brand-name{max-width:210px;font:700 1.1rem/1.25 'Playfair Display',serif;color:var(--navy)}
.header-note{display:none}
.btn,.button_two_plane{border-radius:999px;letter-spacing:.04em;font-size:.72rem;min-height:46px;padding:14px 22px;transition:background .2s,transform .2s}
.btn{background:var(--navy);color:#fff}.btn:hover{background:var(--navy2);color:#fff}
.tuition-btn{background:transparent;color:var(--navy);border:1px solid #b7c6b8}
.button_two_plane{background:#a8553d!important;color:white!important;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}
.hero{height:610px;min-height:0;margin:28px auto 0;width:min(1320px,calc(100% - 48px));border-radius:24px;display:grid;grid-template-columns:1fr 1fr;background:#e9eee4;overflow:hidden}
.hero:after{display:none}.hero-image{grid-column:2;grid-row:1;height:100%;width:100%;object-fit:cover;object-position:58% center}
.hero-copy{position:relative;inset:auto;transform:none;grid-column:1;grid-row:1;width:100%;padding:64px 48px;align-self:center;color:var(--navy)}
.hero h1{font:700 clamp(2.6rem,4vw,4.2rem)/1.07 'Playfair Display',serif;letter-spacing:-.03em;margin:22px 0}
.hero p{color:#52665a;font-size:1.03rem;line-height:1.8}
.eyebrow,.eyebrow.light{color:#a8553d;letter-spacing:.14em;font-size:.7rem}
.hero-copy .btn[href='#pathways']{display:inline-flex;margin-top:16px}
.quick{margin-top:0;padding:30px 0 70px}.quick-grid{gap:12px;box-shadow:none;grid-template-columns:repeat(4,minmax(0,1fr))}
.quick-card{border:1px solid var(--line)!important;border-radius:16px;background:#fffdf8;padding:24px;min-height:184px;position:relative}
.quick-card:nth-child(2){border-right:1px solid var(--line)}
.quick-card strong{font:700 1.35rem/1.2 'Playfair Display',serif;margin:0 0 12px}
.quick-card b{font-size:.66rem;color:#a8553d;letter-spacing:.06em;margin-top:20px}
.quick-card:hover{background:#e9eee4;color:var(--ink);transform:translateY(-4px)}.quick-card:hover strong{color:var(--navy)}.quick-card:hover span{color:var(--muted)}.quick-card:hover b{color:#a8553d}
section.content{padding:80px 0}.title{font-size:clamp(2.15rem,3.5vw,3.2rem);line-height:1.14;letter-spacing:-.025em}
.section-head{text-align:left;max-width:none;margin:0 0 40px;display:grid;grid-template-columns:1.1fr 1fr;column-gap:70px;align-items:center}
.section-head .eyebrow{grid-column:1}.section-head .title{grid-column:1;margin-bottom:0}.section-head .intro{grid-column:2;grid-row:1 / span 2;max-width:520px;margin:0}.section-head .source-note{grid-column:1 / -1;margin-top:24px}
.location{background:#f0eee5;border-radius:32px 32px 0 0}.place-grid{gap:20px;grid-template-columns:repeat(2,minmax(0,1fr))}.place{border-radius:18px;min-height:400px;box-shadow:none}.place:after{background:linear-gradient(transparent,rgba(18,47,36,.95));inset:20% 0 0}.place small{color:#e5c69a}.place h3{font-size:1.55rem}.place-copy{padding:26px}
#acceptances{background:#fcfaf5}.outcomes-grid{gap:24px;align-items:stretch}.outcome{padding:32px;background:white;border:1px solid var(--line);border-radius:20px;box-shadow:none}.outcome h3{font-size:1.6rem}.pill{border-radius:999px;background:#eef2e9;border:0;padding:10px 15px;font-size:.8rem}
.college-photo{border-radius:12px;height:240px;width:100%;margin-top:22px}.facts-grid{gap:12px}.fact{background:#f3f4ed;border-left:0;border-radius:12px;padding:20px}.fact strong{font:700 1.3rem/1.2 'Playfair Display',serif;margin-bottom:8px}.fact span{display:block;line-height:1.5}
.enrollment{background:#173f35;position:relative}.enrollment .title{color:#fff7e7}.enrollment .eyebrow{color:#d7b889}.enrollment .intro{color:#d8e3d8}.enroll-top{grid-template-columns:1fr 1fr;gap:70px;align-items:center}.enroll-preview{border-radius:160px 160px 18px 18px;height:330px;object-fit:cover;border:0;box-shadow:none}
.advantage-list{padding:0;list-style:none}.advantage-list li{padding:15px 0;border-bottom:1px solid #ffffff26;color:#e3ebe1}.advantage-list li:before{display:none}.advantage-list strong{color:#e8cb9e}
.big-stats{gap:12px;margin-top:16px}.big-stat{border-radius:14px;padding:22px;background:#ffffff0b;border:1px solid #ffffff30}.big-stat strong{font-size:1.8rem;color:#e8cb9e}.big-stat span{letter-spacing:.04em;font-size:.7rem}
#enrollment .activity-grid{gap:20px;margin-top:48px}.activity{height:270px;border-radius:16px}.activity:after{background:linear-gradient(transparent,rgba(12,42,30,.9))}.enrollment .source-note{color:#c5d7c8}
#outcomes{background:#f3efe6}.ranking-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:32px}.ranking-grid .fact{background:#fffdf8;border:1px solid #e3dfd3;padding:25px}.ranking-grid .fact strong{font-size:1.85rem;color:#a8553d}.support-panel{background:#e7ecdf;border:0;border-radius:20px;padding:32px}
.data-table{font-size:.82rem}.data-table th{background:#37604d}.scroll-table{border-radius:10px;border:1px solid var(--line)}.data-table tr:nth-child(even) td{background:#f3f5ee}
footer{background:#102e27;padding:60px 0 25px}.footer-grid{gap:45px}.copyright{color:#b4c9b8}.dialog{border-radius:22px;background:#fcfaf5}.dialog h2{color:var(--navy)}.close{border-radius:50%}
@media(max-width:1050px){.header-inner{flex-wrap:wrap;justify-content:space-between;padding:14px 0}.header-actions{gap:8px}.header-actions .btn,.button_two_plane{font-size:.65rem;padding:12px 16px}.brand-name{max-width:170px;font-size:.95rem}.hero-copy{padding:36px}.hero{height:560px}.quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.section-head{column-gap:30px}.enroll-top{gap:30px}}
@media(max-width:700px){.wrap{width:calc(100% - 36px)}.header-inner{min-height:0;gap:12px}.brand{margin:0}.brand img{width:48px;height:48px}.brand-name{max-width:220px}.header-actions{width:100%;justify-content:space-between}.header-actions .btn,.button_two_plane{min-height:40px;font-size:.59rem;padding:10px 12px}.header-actions .counselor-btn{position:static;width:auto;display:inline-flex}.hero{width:calc(100% - 24px);margin-top:12px;height:auto;display:flex;flex-direction:column;border-radius:18px}.hero-image{height:250px;order:0}.hero-copy{order:1;padding:30px 24px}.hero h1{font-size:2.65rem}.hero p{font-size:.96rem}.quick{padding:18px 0 44px}.quick-grid{gap:10px}.quick-card{padding:18px;min-height:190px}.quick-card strong{font-size:1.13rem}.quick-card span{font-size:.75rem}.quick-card b{font-size:.6rem}section.content{padding:54px 0}.section-head{display:block;margin-bottom:28px}.section-head .title{margin:12px 0 20px}.section-head .intro{margin:0}.place-grid,.outcomes-grid,.enroll-top{grid-template-columns:1fr}.place{min-height:360px}.outcome{padding:24px}.ranking-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ranking-grid .fact{padding:18px}.ranking-grid .fact strong{font-size:1.5rem}.enroll-preview{height:280px}.activity{height:250px}.footer-grid{grid-template-columns:1fr;gap:28px}.header-actions .counselor-btn{max-width:130px}.support-panel{padding:24px}}
.place[href]:focus-visible{outline:3px solid #a8553d;outline-offset:5px}
#temecula-modal .dialog{width:min(920px,100%);padding:40px}
#temecula-modal h2{font:700 clamp(1.8rem,4vw,2.6rem)/1.15 'Playfair Display',serif;margin:12px 35px 18px 0}
.temecula-intro{color:var(--muted)}
.temecula-banner{width:100%;height:190px;object-fit:cover;border-radius:14px;margin:24px 0}
.temecula-details{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.temecula-details section{background:#eef2e9;border-radius:14px;padding:22px}
.temecula-details h3{margin:0 0 12px;color:var(--navy);font:700 1.3rem 'Playfair Display',serif}
.temecula-details ul{margin:0;padding-left:20px}.temecula-details li+li{margin-top:8px}
.temecula-things{grid-column:1/-1}.temecula-things ul{columns:2;column-gap:35px}.temecula-things li{break-inside:avoid}
#temecula-modal .source-note{color:var(--muted)}
@media(max-width:600px){#temecula-modal .dialog{padding:26px 20px}.temecula-details{grid-template-columns:1fr}.temecula-things ul{columns:1}.temecula-banner{height:140px}}
/* Temecula brochure layout */
#temecula-modal .dialog{width:min(1320px,100%);padding:30px 24px;background:#f3efe3;color:#5d6264}
.temecula-heading{display:grid;grid-template-columns:1fr 185px;gap:40px;padding:6px 28px 12px}
#temecula-modal .eyebrow{color:#bd9648;letter-spacing:.03em;font-size:.92rem}
#temecula-modal h2{font:700 clamp(1.6rem,3vw,2.2rem)/1.15 'DM Sans',sans-serif;color:#142c50;margin:6px 0 14px}
#temecula-modal h2:after{content:'';display:block;width:100px;height:4px;background:#c5a259;margin-top:10px}
.temecula-intro{margin:0;color:#5d6264;line-height:1.45}.temecula-motto{font:700 1.45rem/1.2 'DM Sans',sans-serif;color:#142c50;border-bottom:4px solid #c5a259;align-self:start;margin:8px 25px 0 0;padding-bottom:12px}
.temecula-gallery{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:3px;margin:8px -24px 22px}.temecula-gallery figure{margin:0;background:#142c50}.temecula-gallery img{height:175px;object-fit:cover}.temecula-gallery figcaption{color:#fff;text-align:center;font-size:.67rem;font-weight:700;text-transform:uppercase;padding:10px 5px;line-height:1.3;min-height:46px;display:grid;place-items:center}
.temecula-details{grid-template-columns:1fr .95fr 1.1fr;gap:12px}.temecula-details section{background:#fff;border-radius:20px;padding:22px 20px}.temecula-details h3{font:700 1.22rem/1.2 'DM Sans',sans-serif;color:#142c50;margin-bottom:16px}.temecula-details ul{list-style:none;padding:0;margin:0}.temecula-details li{display:flex;align-items:center;gap:12px;padding:10px 0;line-height:1.4;font-size:.9rem}.temecula-details li+li{margin:0;border-top:1px solid #d2d2ce}.temecula-icon{width:30px;height:30px;flex:0 0 30px;color:#d3a04d}.temecula-details section:first-child .temecula-icon{border:1px solid currentColor;border-radius:50%;width:42px;height:42px;flex-basis:42px;padding:6px}.travel-intro{font-size:.85rem;margin:-8px 0 12px}.temecula-travel li{border:1px solid #c7c9c8!important;border-radius:12px;padding:14px 10px;gap:10px;margin:10px 0!important}.temecula-travel .temecula-icon{color:#142c50}.temecula-travel strong{font-size:.95rem;color:#142c50;flex:1}.temecula-travel li>span{font-size:.92rem;font-weight:700;white-space:nowrap;color:#bf8731}.travel-note{font-size:.7rem;margin:12px 0 0}.temecula-details .temecula-things{grid-column:auto}
@media(max-width:1000px){.temecula-details{grid-template-columns:1fr 1fr}.temecula-details section:last-child{grid-column:1/-1}.temecula-gallery img{height:130px}.temecula-gallery figcaption{font-size:.6rem}}
@media(max-width:600px){#temecula-modal .dialog{padding:26px 18px}.temecula-heading{display:block;padding:8px 4px}.temecula-motto{font-size:1.1rem;display:inline-block;margin:16px 0}.temecula-motto br{display:none}.temecula-gallery{grid-template-columns:repeat(2,minmax(0,1fr));margin:14px 0 20px;gap:8px}.temecula-gallery figure{border-radius:10px;overflow:hidden}.temecula-gallery figure:last-child{grid-column:1/-1}.temecula-gallery img{height:130px}.temecula-gallery figcaption{font-size:.67rem;min-height:40px}.temecula-details{grid-template-columns:1fr}.temecula-details section:last-child{grid-column:auto}.temecula-details h3{font-size:1.2rem}}
/* University drive times modal, coordinated with the Temecula brochure. */
#universities-modal .dialog{width:min(1050px,100%);padding:40px;background:#f3efe3;color:#5d6264}
#universities-modal .eyebrow{color:#bd9648;letter-spacing:.03em;font-size:.85rem;padding-right:30px}
#universities-modal h2{font:700 clamp(1.65rem,3vw,2.2rem)/1.15 'DM Sans',sans-serif;color:#142c50;margin:12px 30px 18px 0}
#universities-modal h2:after{content:'';display:block;width:100px;height:4px;background:#c5a259;margin-top:14px}
.universities-intro{margin-bottom:28px}.university-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.university-card{display:flex;align-items:center;gap:18px;background:white;border-radius:20px;padding:26px}
.university-icon{display:grid;place-items:center;width:52px;height:52px;flex:0 0 52px;color:#c79a47;border:1px solid currentColor;border-radius:50%}.university-icon svg{width:30px;height:30px}
.university-card h3{font:700 1.05rem/1.3 'DM Sans',sans-serif;color:#142c50;margin:0 0 12px}.university-time{font-size:1.6rem;font-weight:700;color:#be8734;line-height:1.3}.university-label{display:block;font-size:.76rem;margin-top:5px}.university-note{font-size:.78rem;margin:24px 0 0}
@media(max-width:650px){#universities-modal .dialog{padding:30px 20px}.university-grid{grid-template-columns:1fr}.university-card{padding:22px 18px}.university-time{font-size:1.4rem}}
/* School video introduction. */
.school-film{padding:0 0 76px;background:#fcfaf5}.school-film-grid{display:grid;grid-template-columns:.75fr 1.5fr;gap:48px;align-items:center}.school-film-copy .title{font-size:clamp(2rem,3vw,2.8rem);margin:14px 0 20px}.school-film-copy p{color:var(--muted)}.school-film-copy>a{display:inline-block;color:#a8553d;font-size:.85rem;font-weight:700;margin-top:8px}.school-film-copy>a:focus-visible{outline:3px solid #a8553d;outline-offset:5px}.school-film-player{position:relative;aspect-ratio:16/9;overflow:hidden;border-radius:20px;background:#173f35;box-shadow:var(--shadow)}.school-film-player iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
@media(max-width:700px){.school-film{padding-bottom:48px}.school-film-grid{grid-template-columns:1fr;gap:22px}.school-film-copy .title{margin-bottom:14px}.school-film-player{border-radius:14px}}

.quick-card strong.ranking-number{font-size:clamp(2rem,3vw,2.6rem);line-height:1;margin-bottom:12px}
