/* Keep photographs intact instead of forcing people into portrait crops. */
.home-page header{position:static;backdrop-filter:none}
.hero-editorial{min-height:0;padding-top:44px;padding-bottom:54px;gap:32px}
.hero-editorial:before{display:none}
.hero-collage{display:block;height:auto;min-height:0}
.hero-collage .hero-card{position:relative;inset:auto;width:100%;height:auto;transform:none;padding:5px;border-radius:4px;box-shadow:0 10px 28px #103a5718}
.hero-collage .hero-card-main{grid-column:1/-1;z-index:1}
.hero-collage .hero-card img{height:auto;aspect-ratio:3/4;object-fit:cover;object-position:25% center}
.hero-collage .hero-card-main img{aspect-ratio:4/3;object-fit:contain}
.hero-collage .hero-card-bottom img{object-position:50% center;object-fit:contain;background:var(--paper)}
.hero-collage .hero-card-portrait img{object-position:center}
.hero-card-main figcaption{position:static;padding:8px 4px 3px;font-size:12px}
.hero-moments{position:relative;height:auto;aspect-ratio:1/1.05;margin:24px 10px 0}
.hero-moments .hero-card{position:absolute;box-shadow:0 12px 30px #103a5724}
.hero-moments .hero-card-top{width:68%;left:0;top:0;transform:rotate(-4deg);z-index:1}
.hero-moments .hero-card-bottom{width:70%;left:3%;top:auto;bottom:0;transform:rotate(3deg);z-index:2}
.hero-moments .hero-card-portrait{width:38%;left:auto;right:0;top:24%;transform:rotate(6deg);z-index:3}
.hero-moments .hero-card-top img,.hero-moments .hero-card-bottom img{aspect-ratio:4/3;object-fit:cover}
.hero-moments .hero-card-portrait img{aspect-ratio:3/4;object-fit:cover}
.swipe-hint{margin:8px auto 0;line-height:1.4;font-size:12px}
.swipe-hint span{font-size:19px}
.gallery-story{min-width:0;width:100%}
.gallery-story .swipe-hint,.archive .swipe-hint{padding:0}
.archive-hint{display:none}
.home-page .contact-stage{display:block}
.contact-stage .contact-card{padding:54px 7%}
.home-page .wrap{padding-top:64px;padding-bottom:64px}
.manifesto{column-gap:32px;row-gap:24px}
.manifesto-copy{padding-top:42px}
.manifesto-image{width:100%;height:auto;margin-top:25px;border-radius:4px;box-shadow:none}
.manifesto-image img{height:auto;object-fit:contain}
.manifesto-image figcaption{position:static;display:inline-block;margin-top:10px}
.school-reel{padding:60px 0}
.home-page .reel-heading{padding-top:0;padding-bottom:30px;grid-template-columns:1.5fr 1fr;gap:20px 36px}
.reel{align-items:start;gap:18px}
.reel .reel-card{height:auto;border-radius:4px;flex:0 0 320px}
.reel .reel-wide{flex-basis:540px}
.reel-card img{height:405px;object-fit:contain;background:#dfeff1}
.reel-card:after,.values-slide:after{display:none}
.reel-card:hover img,.values-slide:hover img,.archive-grid figure:hover img{transform:none}
.reel-card figcaption,.values-slide figcaption{position:static;padding:16px 18px;min-height:90px;color:var(--ink);background:var(--paper)}
.reel-card figcaption span,.values-slide figcaption span{color:var(--ink);font-size:26px;margin-bottom:4px}
.values-story{gap:32px;min-width:0;align-items:start}
.values-gallery{min-width:0;width:100%;padding:0 0 14px;margin:0;align-items:start}
.values-gallery .values-slide{height:auto;flex-basis:100%;margin:0;border-radius:4px}
.values-slide img{height:390px;object-fit:contain;background:var(--paper)}
.values-slide img[src$="alumna-foliculogenesis-2023.jpg"]{object-fit:cover;object-position:82% center}
.values-copy{margin:0}
.courses-editorial .course-side{margin-top:0;min-height:520px}
.courses-editorial{grid-template-columns:1.15fr 1fr}
.courses-editorial .course{min-width:0;min-height:520px;padding:30px}
.courses-editorial .course-side h3{font-size:clamp(28px,3.5vw,48px);letter-spacing:-.04em;line-height:1.15}
.learning-grid{gap:30px}
.books-story{gap:32px}
.books-collage{height:540px;margin:0}
.archive-heading{gap:28px;margin-bottom:28px}
.archive-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:auto;gap:24px;align-items:start}
.archive-grid figure{height:auto;border-radius:4px;background:#edf0e8}
.archive-grid img{height:270px;object-fit:contain;background:var(--paper)}
.archive-grid figure:nth-child(1) img{object-fit:cover;object-position:100% center}
.archive-grid figure:nth-child(2) img{object-fit:cover;object-position:0% center}
.archive-grid figcaption{position:static;padding:12px 14px;font-size:14px}
.practice-pair{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.practice-pair figure{margin:0;min-width:0}
.practice-pair img{height:320px;object-fit:contain;background:#eaeadd}
.practice-pair figcaption{padding-top:16px}
.practice-pair h3{font-size:28px;margin-bottom:6px}
.practice-pair p{margin:0;color:var(--muted)}
.home-page .travel-wrap{padding-top:24px}
.video-story{margin-top:0}
.video-story-grid,.place-story{gap:32px}
.contact-image img{object-fit:contain;background:var(--paper)}
.home-page .footer{align-items:start}
.footer-nav{max-width:610px}
.home-page .footer-actions{display:grid;gap:12px}
.home-page .footer-button{display:block;background:#176342;color:#fff;border:2px solid #176342;border-radius:14px;padding:20px 24px;font-size:18px;font-weight:700;line-height:1.45;text-align:left;box-shadow:0 5px 0 #0e432e,0 10px 22px #17634224}
.home-page .footer-button:hover{background:#104b32;border-color:#104b32;text-decoration:none}
.home-page .footer-button:focus-visible{outline:3px solid #103a57;outline-offset:5px}
.home-page .footer-nav>p{font-size:28px;text-align:left;margin-bottom:20px}
.home-page .footer-actions{gap:18px}
.footer-links a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:900px){
 .hero-editorial{grid-template-columns:1fr}
 .hero-collage{width:100%;max-width:720px;margin:15px auto 0}
 .hero-collage .hero-card img{aspect-ratio:4/3}
 .hero-collage .hero-card-portrait img{object-position:center 35%}
 .values-story,.books-story,.place-story{row-gap:28px;column-gap:0}
 .values-copy{margin:0}
 .archive-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
 .hero-editorial{padding:28px 18px 36px;gap:12px}
 .hero-copy{padding:0 6px}
 .hero-collage{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:16px}
 .hero-collage .hero-card-main{grid-column:1/-1}
 .hero-collage .hero-card-main img{aspect-ratio:4/3}
 .hero-collage .hero-card-top{grid-column:1/-1}
 .hero-collage .hero-card-top img{aspect-ratio:4/3;object-fit:cover;background:var(--paper)}
 .hero-collage .hero-card-bottom img,.hero-collage .hero-card-portrait img{aspect-ratio:3/4}
 .hero-proof{margin-top:24px}
 .home-page .wrap{padding:42px 20px}
 .manifesto-mark{margin-bottom:18px}
 .manifesto-copy{padding-top:20px}
 .school-reel{padding:42px 0}
 .home-page .reel-heading{padding:0 20px 24px}
 .reel{padding:0 20px 12px;scroll-padding-left:20px;gap:14px}
 .reel .reel-card,.reel .reel-wide,.reel .reel-tall{flex-basis:calc(100vw - 40px);height:auto}
 .reel-card img{height:340px;max-height:340px}
 .reel .reel-wide img{height:340px;aspect-ratio:auto;object-fit:contain}
 .reel .reel-wide img[src$="docente-anatomia-2017.jpg"]{height:340px;aspect-ratio:auto;object-fit:cover;object-position:0% center}
 .reel .reel-wide img[src$="docente-aula-pizarra-2017.jpg"]{height:340px;aspect-ratio:auto;object-fit:cover;object-position:15% center}
 .reel .reel-wide img[src$="exposicion-ojo-2023.jpg"]{height:340px;aspect-ratio:auto;object-fit:cover;object-position:12% center}
 .reel .reel-wide img[src$="docente-radicales-completo.jpg"]{height:340px;aspect-ratio:auto;object-fit:cover;object-position:100% center}
 .reel-card figcaption{min-height:96px}
 .values-story{display:flex;flex-direction:column;gap:24px}
 .values-gallery{width:100%;margin:0;padding-bottom:12px}
 .values-gallery .values-slide{flex-basis:100%;height:auto}
 .values-slide img{height:340px;object-fit:contain}
 .values-slide-group img{height:340px;aspect-ratio:auto}
 .values-copy h2,.books-copy h2{font-size:40px}
 .section-kicker{margin-bottom:20px}
 .courses-editorial{grid-template-columns:1fr}
 .courses-editorial .course{padding:24px;min-height:440px}
 .courses-editorial .course-side{min-height:390px}
 .courses-editorial .course-side h3{font-size:clamp(27px,8vw,40px);white-space:normal}
 .books-story{gap:20px}
 .books-collage{height:420px;margin:0}
 .archive-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:14px;padding-bottom:12px}
 .archive-grid figure{flex:0 0 100%;height:auto;scroll-snap-align:start}
 .archive-grid img{height:340px;object-fit:contain}
 .archive-grid figure:nth-child(1) img,.archive-grid figure:nth-child(2) img{height:340px}
 .archive-hint{display:block}
 .hero-moments{height:350px;margin:24px 8px 0}
 .hero-moments .hero-card-top{width:72%}
 .hero-moments .hero-card-bottom{width:74%}
 .hero-moments .hero-card-portrait{width:43%;top:27%}
 .hero-moments .hero-card-bottom img{aspect-ratio:4/3}
 .contact-stage .contact-card{padding:36px 24px}
 .archive-heading{margin-bottom:24px}
 .practice-pair{grid-template-columns:1fr;gap:28px}
.practice-pair img{height:320px;object-fit:contain}
 .portrait-video{margin-top:8px}
 .video-story-grid{gap:28px}
 .place-story{gap:24px}
 .contact-image{height:auto;margin:0 0 20px;border:0;border-radius:4px}
 .contact-image img{height:auto}
 .contact-card{padding:36px 24px}
 .home-page .footer{padding:30px 20px}
 .footer-nav{margin-top:24px}
 .home-page .footer-links{gap:14px 20px}
}

/* Shared professional framework, between programme links and legal navigation. */
.home-page .footer{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px}
.home-page .footer>.footer-nav{max-width:none;width:100%;min-width:0}
.home-page .school-framework{grid-column:1/-1;background:#f7f3ea;border-top:1px solid #d9dfd4;border-bottom:1px solid #d9dfd4;padding:52px 32px;min-width:0}
.school-framework-inner{max-width:960px;margin-inline:auto}
.home-page .school-framework p{max-width:none;font-size:1.0625rem;line-height:1.85;margin:0 0 30px;text-align:left}
.home-page .school-framework p:last-child{margin-bottom:0}
.home-page .school-framework-highlight{display:block;font-family:'Fraunces',Georgia,serif;font-weight:500;font-size:clamp(2rem,3.8vw,3.3rem);line-height:1.2;letter-spacing:-.025em;color:#123d31;margin:14px 0 22px;text-wrap:balance;overflow-wrap:break-word}
.home-page .footer>.footer-links{grid-column:1/-1;justify-content:flex-start;flex-wrap:wrap;margin:0;font-size:1rem}
@media(max-width:760px){.home-page .footer{grid-template-columns:minmax(0,1fr);gap:28px}.home-page .footer>.footer-nav{margin-top:0}.home-page .school-framework{padding:34px 0}.home-page .school-framework p{font-size:1rem;line-height:1.8;margin-bottom:26px}.home-page .school-framework-highlight{font-size:clamp(1.9rem,7.5vw,2.5rem)}}

/* EIDH arrival guide: broad map and contained, mobile-friendly travel cards. */
.arrival-section{padding-top:80px;padding-bottom:32px;scroll-margin-top:32px}
.arrival-heading{max-width:760px;margin-bottom:32px}.arrival-heading h2{font-size:clamp(2.3rem,5vw,4.2rem);line-height:1.08;margin:14px 0 22px}.arrival-heading>p:last-child{font-size:1.1rem;line-height:1.7}
.arrival-map{border:1px solid #173e3430;border-radius:24px;overflow:hidden;background:#fff}.arrival-map iframe{display:block;width:100%;height:380px;border:0}.arrival-map-caption{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:22px 28px;flex-wrap:wrap}.arrival-map-caption a,.arrival-link,.arrival-transfers a{font-size:1rem;font-weight:600;text-underline-offset:5px}
.arrival-cards{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:24px}.arrival-card{position:relative;padding:36px;border:1px solid #173e3430;border-radius:24px;background:#fff;min-width:0}.arrival-card h3,.arrival-transfers h3{font-family:Georgia,serif;font-size:clamp(1.9rem,3vw,2.6rem);line-height:1.15;margin:16px 0 24px}.arrival-card p{font-size:1rem;line-height:1.7}.arrival-icon{display:flex;align-items:center;justify-content:center;width:52px;height:52px;border:1px solid #173e3440;border-radius:50%;font-size:1.7rem;margin-bottom:24px}.arrival-flight{background:#173e34;color:#fff}.arrival-flight .eyebrow,.arrival-flight a{color:#e6ebc8}.arrival-flight .arrival-icon{border-color:#ffffff65}.arrival-flight-row{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:22px 0;border-bottom:1px solid #ffffff40;flex-wrap:wrap}.arrival-flight-row strong,.arrival-flight-row span{display:block}.arrival-flight-row span{font-size:.9rem;margin-top:6px}.arrival-flight-row b{font-size:1.5rem;white-space:nowrap}.arrival-card .arrival-note{font-size:.9rem;line-height:1.6;margin:24px 0}.arrival-link{display:inline-block;padding:10px 0}.arrival-transfers{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:32px;padding:36px 0;margin-top:16px;border-bottom:1px solid #173e3430}.arrival-transfers h4{font-size:1.2rem;margin:0 0 16px}.arrival-transfers p{font-size:1rem;line-height:1.7}.arrival-transfers h3{margin-bottom:0}.arrival-section a:focus-visible{outline:3px solid #bc9142;outline-offset:5px}
@media(max-width:700px){.arrival-section{padding-top:48px}.arrival-cards,.arrival-transfers{grid-template-columns:1fr}.arrival-card{padding:26px 22px}.arrival-map iframe{height:310px}.arrival-map-caption{padding:20px}.arrival-transfers{gap:24px;padding:28px 4px}.arrival-heading h2{font-size:2.5rem}.arrival-map-caption strong{font-size:1rem}}
