/* IN VIA 2.0 - homepage sections and school guides */
html{scroll-padding-top:138px}section[id]{scroll-margin-top:16px}
.hero{position:relative;background:#fffefa}
.hero-visual{position:absolute;inset:0;overflow:hidden;pointer-events:none}
.hero-visual img{position:absolute;height:100%;width:100%;object-fit:contain;object-position:right bottom;max-width:none}
.hero-grid{display:flex;min-height:clamp(610px,43vw,780px);position:relative}
.hero-copy{width:48%;max-width:575px;padding:58px 0 68px}
.hero h1{font-size:clamp(43px,4.3vw,61px)}
.hero-intro{max-width:445px}
.people-art .people{-webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.08) 1.5%,rgba(0,0,0,.35) 4%,rgba(0,0,0,.75) 7%,#000 11%);mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.08) 1.5%,rgba(0,0,0,.35) 4%,rgba(0,0,0,.75) 7%,#000 11%)}
.about-home{display:grid;grid-template-columns:.65fr 1.35fr;gap:70px;padding-block:80px}
.about-home>div:first-child h2{font-size:46px}.about-home .prose{max-width:none}
.about-home .prose h2{font-size:25px;margin-top:27px}.about-home .prose h2:first-child{margin-top:0}
.team-home,.home-extra{padding-block:35px 65px}
.contact-home{background:#f3f7fb;padding:78px 0 82px}.contact-home .contact-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:75px}
.contact-home h2{font-size:46px}.contact-home .contact-info>h3{margin-top:40px;font-size:24px}.contact-home .contact-info>p:not(.section-intro){font-size:14px;max-width:340px}
.contact-home .contact-form{padding:30px;background:#fff;border-radius:16px;box-shadow:0 10px 35px #10244c07}
.contact-home textarea{min-height:135px}.contact-home .consent{font-size:12px}
.brochures-section{padding-block:70px}.edition-tag{font-size:12px;font-weight:700;border:1px solid #cadbdb;border-radius:30px;padding:9px 16px;white-space:nowrap}
.brochure-tools{display:grid;grid-template-columns:1.8fr 1fr;gap:18px;margin-top:30px}.brochure-tools label{display:grid;gap:7px;font-size:13px;font-weight:700;color:var(--navy)}
.brochure-tools input,.brochure-tools select{width:100%;background:#fff;border:1px solid #d4dfe7;border-radius:9px;min-height:50px;padding:10px 15px;font-weight:400;color:var(--ink);font-size:15px}
.brochure-results{font-size:13px;color:var(--muted);margin:18px 0}
.brochure-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}
.brochure-grid .brochure-card{display:flex;flex-direction:column;border:1px solid #e0e7eb;background:#fff;border-radius:13px;overflow:hidden;box-shadow:0 5px 18px #132b4b05}
.brochure-grid .brochure-cover{width:100%;height:auto;aspect-ratio:2.13;border:0;border-radius:0;overflow:hidden;padding:0;background:var(--navy)}
.brochure-grid .brochure-cover img{height:100%;width:100%;object-fit:cover;object-position:top}
.brochure-grid .brochure-info{padding:22px;display:flex;flex-direction:column;align-items:flex-start;flex:1}
.brochure-grid .brochure-info h3{font-size:23px;line-height:1.2;margin:2px 0 12px}
.brochure-grid .brochure-info>p{font-size:12px;margin:0 0 16px;color:var(--muted)}
.brochure-grid .brochure-info .brochure-city{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:#008354;margin-bottom:10px}
.brochure-grid .pill{margin-top:auto;background:#fff;border:1px solid #d4dfe7;font-size:12px;padding:10px 15px;min-height:43px}
.brochure-grid .pill:hover{background:#eef5ff;border-color:var(--blue)}
.brochure-more{display:flex;margin:30px auto 0}.brochure-edition{font-size:12px;color:var(--muted);max-width:750px;margin:28px 0 0}
.partners-section{padding:66px 0 70px;background:#fff;border-top:1px solid #edf0f4}.partners-heading{text-align:center;margin-bottom:35px}.partners-heading .eyebrow{color:var(--muted);margin-bottom:8px}.partners-heading h2{font-size:35px}
.partners-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.partner-item{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:160px;padding:22px 25px;background:var(--navy);gap:20px;border-radius:12px;transition:background .2s}
.partner-item:hover{background:#1b2864}.partner-item img{width:100%;max-width:255px;height:75px;object-fit:contain}.partner-caption{font-size:12px;font-weight:600;color:#dce8ff;text-align:center;line-height:1.5}.partner-wordmark{text-align:center;color:#fff;font:700 30px/1.12 Barlow,Arial,sans-serif;max-width:260px}
.content-dialog{position:fixed;border:0;border-radius:16px;padding:50px;width:min(780px,calc(100% - 32px));max-height:88dvh;overflow:auto;color:var(--ink);box-shadow:0 25px 100px #0004}.content-dialog::backdrop{background:#0a173acf;backdrop-filter:blur(4px)}
.content-dialog h2{font-size:36px;max-width:630px;padding-right:15px}.dialog-close{position:sticky;float:right;top:-26px;border:1px solid #d6e0eb;width:40px;height:40px;display:grid;place-items:center;background:#fff;border-radius:50%;font-size:26px;line-height:1;z-index:2;margin:-20px -20px 6px 8px}.dialog-image{max-height:340px;object-fit:cover;width:100%;border-radius:10px;margin:25px 0}.content-dialog .prose{max-width:none}.home-detail{border-bottom:1px solid var(--line);padding:22px 0}.home-detail summary{font:700 23px Barlow,Arial,sans-serif;cursor:pointer}.home-detail[open] summary{margin-bottom:20px}
@media(min-width:1700px){.hero-copy{width:49%;max-width:620px}.hero h1{font-size:65px}}
@media(max-width:1100px){.hero-grid{min-height:580px}.hero h1{font-size:49px}.hero-copy{width:51%;max-width:495px}.hero-visual{left:9%}.hero-visual img{object-position:right bottom}.hero-intro{max-width:410px}.hero-actions{gap:20px}.about-home{gap:45px}.contact-home .contact-layout{gap:40px}.brochure-grid{gap:17px}.brochure-grid .brochure-info{padding:18px}.brochure-grid .brochure-info h3{font-size:21px}}
@media(max-width:800px){html{scroll-padding-top:100px}.hero-grid{min-height:0;display:block}.hero-copy{width:100%;max-width:600px;padding:48px 0 22px}.hero h1{font-size:clamp(41px,7vw,57px)}.hero-intro{max-width:520px}.hero-visual{position:relative;inset:auto;float:none;height:440px;order:2}.hero{display:flex;flex-direction:column}.hero-grid{order:1}.hero-visual img{height:100%;width:auto;right:0;bottom:0;object-fit:contain;object-position:right bottom}.about-home{grid-template-columns:1fr;gap:20px;padding-block:55px}.about-home>div:first-child h2{font-size:37px}.about-home>div:first-child h2 br{display:none}.contact-home{padding-block:55px}.contact-home .contact-layout{grid-template-columns:1fr;gap:25px}.contact-home h2{font-size:40px}.contact-home .contact-form{padding:23px}.brochure-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.brochures-section{padding-block:50px}.edition-tag{display:none}.partners-strip{gap:12px}.partner-item{padding:12px;gap:14px}.partner-item img{height:60px}.partner-wordmark{font-size:24px}.partners-section{padding-block:45px}.content-dialog{padding:35px 25px}.content-dialog h2{font-size:30px}.dialog-close{top:-20px;margin:-15px -10px 6px 8px}}
@media(max-width:520px){.hero-visual{height:355px}.hero h1{font-size:42px}.hero-copy{padding-top:35px}.hero-actions{gap:17px}.hero-actions .button{padding-inline:20px}.hero-actions .text-link{font-size:13px}.brochure-tools{grid-template-columns:1fr;gap:13px}.brochure-grid{grid-template-columns:1fr;gap:20px}.brochure-grid .brochure-info{padding:22px}.brochure-grid .brochure-info h3{font-size:25px}.brochure-grid .brochure-cover{aspect-ratio:2.2}.partners-strip{grid-template-columns:1fr;gap:20px}.partner-item{min-height:130px;padding:15px}.partner-item img{height:70px;max-width:250px}.partner-wordmark{font-size:31px}.partners-heading{margin-bottom:20px}.contact-home .contact-form{padding:20px 17px}.contact-home .form-row{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.partner-item{transition:none}}
