/* Homepage: SRM in the world. Partner universities, exchange routes, the International Advisory Board. Used by both halves of index.html. */
.gl { background: radial-gradient(60% 70% at 15% 0%, rgba(255,170,140,.06), transparent 70%), linear-gradient(180deg,#0b0910,#0e0a12 50%,#0b0910); padding: 104px 0 100px; color: #f6efe9; font-family: Geist, Inter, -apple-system, "Segoe UI", Arial, sans-serif; font-weight: 300; line-height: 1.55; overflow: hidden; }
:where(.gl) :where(h2, h3, p, ul) { margin: 0; }
:where(.gl) ul { list-style: none; padding: 0; }
.gl a { color: #ffd6a8; text-decoration: none; }
.gl a:focus-visible { outline: 2px solid #ffd6a8; outline-offset: 3px; border-radius: 6px; }
.gl-w { width: min(1200px, 100% - 48px); margin: 0 auto; }
.gl-top { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 420px); gap: 56px; align-items: end; }
.gl-eb { display: flex; align-items: center; gap: 12px; font: 500 11px "Geist Mono", ui-monospace, monospace; letter-spacing: .16em; text-transform: uppercase; color: rgba(255,226,200,.72); }
.gl-eb::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: #ffd6a8; box-shadow: 0 0 12px 2px rgba(255,200,140,.55); }
.gl-top h2 { margin-top: 24px; font-weight: 300; font-size: 72px; letter-spacing: -.05em; line-height: 1; text-wrap: balance; }
.gl-top h2 b { font-weight: 500; }
.gl-lede { margin-top: 20px; max-width: 52ch; font-size: 17px; color: rgba(246,239,233,.72); }
.gl-routes { margin-top: 24px; display: flex; flex-wrap: wrap; gap: 8px; }
.gl-routes a { display: inline-flex; align-items: center; min-height: 44px; padding: 0 16px; border-radius: 12px; border: 1px solid rgba(255,240,230,.18); background: rgba(255,240,232,.05); color: #f6efe9; font-size: 15px; }
.gl-routes a:hover { border-color: rgba(255,214,168,.45); }
.gl-iab { padding: 22px 24px; border-radius: 18px; border: 1px solid rgba(255,240,230,.16); background: linear-gradient(180deg, rgba(255,236,226,.09), rgba(255,236,226,.03)); }
.gl-iab h3 { font: 500 11px "Geist Mono", ui-monospace, monospace; letter-spacing: .14em; text-transform: uppercase; color: rgba(255,226,200,.72); }
.gl-iab .big { margin-top: 12px; display: flex; align-items: baseline; gap: 12px; font-size: 15px; color: rgba(246,239,233,.72); }
.gl-iab .big b { font-size: 56px; font-weight: 300; letter-spacing: -.05em; line-height: 1; color: #f6efe9; }
.gl-iab p.t { margin-top: 12px; font-size: 15.5px; color: rgba(246,239,233,.72); }
.gl-iab p.t b { color: #f6efe9; font-weight: 400; }
.gl-iab a.go { display: inline-flex; margin-top: 12px; min-height: 44px; align-items: center; font-size: 15px; }
.gl-unis { margin-top: 64px; }
.gl-unis h3 { font: 500 11px "Geist Mono", ui-monospace, monospace; letter-spacing: .14em; text-transform: uppercase; color: rgba(255,226,200,.72); }
.gl-unis ul { margin-top: 18px; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border-top: 1px solid rgba(255,222,196,.16); }
.gl-unis li { position: relative; padding: 18px 18px 18px 22px; border-bottom: 1px solid rgba(255,222,196,.12); display: grid; gap: 4px; }
.gl-unis li::before { content: ""; position: absolute; left: 4px; top: 26px; width: 5px; height: 5px; border-radius: 50%; background: #ffd6a8; opacity: .6; }
.gl-unis li b { font-size: 16.5px; font-weight: 400; line-height: 1.3; }
.gl-unis li span { font: 500 10px "Geist Mono", ui-monospace, monospace; letter-spacing: .12em; text-transform: uppercase; color: rgba(246,236,226,.56); }
.gl-countries { margin-top: 26px; font: 400 12px "Geist Mono", ui-monospace, monospace; letter-spacing: .1em; text-transform: uppercase; line-height: 2; color: rgba(246,236,226,.5); }
.gl-countries b { color: #f6efe9; font-weight: 500; }
.gl-foot { margin-top: 18px; display: flex; flex-wrap: wrap; gap: 6px 26px; font-size: 15px; }
.gl-foot a { min-height: 44px; display: inline-flex; align-items: center; }
@media (max-width: 1000px) { .gl-unis ul { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 900px) {
  .gl { padding: 64px 0; }
  .gl-w { width: calc(100% - 32px); }
  .gl-top { grid-template-columns: minmax(0, 1fr); gap: 30px; }
  .gl-top h2 { font-size: 44px; margin-top: 18px; }
  .gl-unis { margin-top: 44px; }
}
@media (max-width: 560px) { .gl-unis ul { grid-template-columns: minmax(0, 1fr); } }
/* photos: semester abroad, campus, International Students Day */
.gl-pics { margin-top: 56px; display: grid; grid-template-columns: 2fr 1fr 1fr; grid-template-rows: 1fr 1fr; gap: 12px; height: 520px; }
.gl-pic { position: relative; margin: 0; border-radius: 16px; overflow: hidden; border: 1px solid rgba(255,240,230,.12); background: #15101a; }
.gl-pic:first-child { grid-row: 1 / 3; }
.gl-pic:nth-child(4) { grid-column: 2 / 4; }
.gl-pic img { width: 100%; height: 100%; object-fit: cover; display: block; filter: saturate(.92) brightness(.9); }
.gl-pic::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(11,9,16,0) 55%, rgba(11,9,16,.82)); }
.gl-pic figcaption { position: absolute; left: 16px; right: 14px; bottom: 12px; z-index: 1; font: 500 10.5px "Geist Mono", ui-monospace, monospace; letter-spacing: .12em; text-transform: uppercase; color: rgba(255,240,230,.88); }
@media (max-width: 900px) { .gl-pics { grid-template-columns: 1fr 1fr; grid-template-rows: 240px 150px 150px; height: auto; margin-top: 36px; gap: 8px; } .gl-pic:first-child { grid-row: auto; grid-column: 1 / 3; } .gl-pic:nth-child(4) { grid-column: 1 / 3; } }
