/* Our Group: campus directory */
.og-wide img{aspect-ratio:16/7;object-position:center 55%}
.og-stats{background:linear-gradient(90deg,#e8f0fe,#f3f7ff 50%,#fff8e1);padding:54px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.og-stats-row{display:grid;grid-template-columns:repeat(4,1fr);text-align:center}
.og-stats-row>div{position:relative;display:flex;flex-direction:column;gap:8px;padding:0 12px}
.og-stats-row>div+div:before{content:"✦";position:absolute;left:-6px;top:12px;color:var(--yellow);font-size:16px}
.og-stats strong{font-family:var(--serif);font-weight:500;font-size:clamp(38px,4vw,62px);line-height:1;color:var(--blue)}
.og-stats span{font-size:13px;letter-spacing:.06em;text-transform:uppercase;font-weight:600;color:var(--muted)}

.og-directory{padding:96px 0 80px}
.og-filters{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;margin:-8px 0 44px}
.og-filters button{padding:10px 24px;border:1px solid #c5d4ee;border-radius:999px;background:#fff;font:500 16px "Poppins",sans-serif;color:#334155;cursor:pointer;transition:all .2s}
.og-filters button:hover{border-color:var(--blue);color:var(--blue)}
.og-filters button.active{background:linear-gradient(135deg,var(--blue),var(--navy));border-color:transparent;color:#fff;box-shadow:0 8px 18px rgba(26,115,232,.28)}
.og-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:30px}
.og-grid .og-card{flex:0 1 calc(33.333% - 20px)}
.og-card{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:18px;background:#fff;overflow:hidden;transition:transform .3s,box-shadow .3s}
.og-card:hover{transform:translateY(-6px);box-shadow:0 24px 48px rgba(13,71,161,.15)}
.og-card-img{position:relative;display:block;aspect-ratio:16/10;overflow:hidden;background:#eef3fd}
.og-card-img img{width:100%;height:100%;object-fit:cover;transition:transform .6s}
.og-card:hover .og-card-img img{transform:scale(1.06)}
.og-pill{position:absolute;left:16px;top:16px;padding:6px 14px;border-radius:999px;background:rgba(255,255,255,.95);font:600 12px "Poppins",sans-serif;letter-spacing:.06em;text-transform:uppercase;color:var(--navy)}
.og-ph{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;width:100%;height:100%;color:#fff;background:linear-gradient(135deg,#0d47a1,#1a73e8)}
.og-ph i{font-size:44px;color:var(--yellow)}
.og-ph span{font:500 24px/1 var(--serif);letter-spacing:.14em;text-transform:uppercase}
.og-card-body{display:flex;flex-direction:column;gap:12px;padding:26px 28px 28px;flex:1}
.og-city{margin:0;font-size:14px;font-weight:600;color:var(--blue)}
.og-city i{margin-right:6px}
.og-card h3{margin:0;font-family:var(--serif);font-weight:600;font-size:24px;line-height:1.3}
.og-card h3 a{color:#0f172a;text-decoration:none}
.og-card h3 a:hover{color:var(--blue)}
.og-desc{margin:0;font-size:16px;line-height:1.7;color:#475569}
.og-meta{list-style:none;margin:6px 0 4px;padding:16px 0 0;border-top:1px solid #e8edf6;display:grid;gap:11px}
.og-meta li{display:flex;gap:12px;align-items:flex-start;font-size:15px;line-height:1.55;color:#475569;list-style:none}
.og-meta i{flex:0 0 16px;margin-top:4px;color:var(--blue);font-size:14px;text-align:center}
.og-meta a{color:var(--blue);text-decoration:none;word-break:break-word}
.og-meta a:hover{text-decoration:underline}
.og-actions{display:flex;gap:10px;margin-top:auto;padding-top:14px}
.og-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:46px;border-radius:999px;font:600 15px "Poppins",sans-serif;text-decoration:none;transition:transform .2s,background .2s}
.og-btn:hover{transform:translateY(-2px)}
.og-btn-main{flex:1;background:var(--blue);color:#fff}
.og-btn-main:hover{background:var(--navy);color:#fff}
.og-btn-wa,.og-btn-dir{flex:0 0 46px;font-size:19px}
.og-btn-wa{background:#25d366;color:#fff}
.og-btn-wa:hover{background:#1da851;color:#fff}
.og-btn-dir{background:#eef3fd;color:var(--blue)}
.og-btn-dir:hover{background:var(--blue);color:#fff}

.og-map-sec{padding:80px 0;background:#f7f9fd}
.og-map{display:grid;grid-template-columns:360px 1fr;gap:26px;align-items:stretch}
.og-map-list{list-style:none;margin:0;padding:0;display:grid;gap:10px;align-content:start}
.og-map-list li{list-style:none}
.og-map-list button{display:flex;flex-direction:column;gap:3px;width:100%;padding:16px 20px;text-align:left;border:1px solid var(--line);border-left:4px solid transparent;border-radius:12px;background:#fff;font-family:"Poppins",sans-serif;cursor:pointer;transition:all .2s}
.og-map-list button strong{font-size:16px;color:#1f2937}
.og-map-list button span{font-size:13.5px;color:var(--muted)}
.og-map-list button:hover{border-left-color:var(--yellow);transform:translateX(3px)}
.og-map-list button.active{border-left-color:var(--blue);background:#e8f0fe;box-shadow:0 10px 24px rgba(13,71,161,.12)}
.og-map-list button.active strong{color:var(--navy)}
.og-map-frame{position:relative;min-height:560px;border-radius:18px;overflow:hidden;box-shadow:0 18px 44px rgba(13,71,161,.14);background:#e8eef9}
.og-map-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.og-map-card{position:absolute;left:18px;bottom:18px;max-width:340px;display:flex;flex-direction:column;gap:5px;padding:16px 20px;border-radius:14px;background:rgba(255,255,255,.96);box-shadow:0 12px 30px rgba(0,10,40,.25)}
.og-map-card strong{font-size:16px;color:var(--navy)}
.og-map-card span{font-size:14px;line-height:1.5;color:#475569}
.og-map-card a{font-size:14px;font-weight:600;color:var(--blue);text-decoration:none}

.og-why{padding:96px 0 72px}
.og-why-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.og-why-grid article{padding:36px 28px;text-align:center;border:1px solid var(--line);border-radius:16px;background:linear-gradient(160deg,#fff,#f3f7ff);transition:transform .3s,box-shadow .3s}
.og-why-grid article:hover{transform:translateY(-6px);box-shadow:0 18px 40px rgba(13,71,161,.12)}
.og-why-grid i{display:inline-grid;place-items:center;width:66px;height:66px;margin-bottom:18px;border-radius:50%;background:var(--tint);color:var(--blue);font-size:26px}
.og-why-grid article:nth-child(even) i{background:#fff4cc;color:#b78103}
.og-why-grid h3{margin:0 0 10px;font-size:20px;color:var(--navy)}
.og-why-grid p{margin:0;font-size:16px;line-height:1.7;color:var(--muted)}
.og-cta-wrap{padding:0 0 96px}

@media(max-width:1100px){
  .og-grid .og-card{flex-basis:calc(50% - 15px)}
  .og-why-grid{grid-template-columns:repeat(2,1fr)}
  .og-map{grid-template-columns:1fr}
  .og-map-list{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:700px){
  .og-stats-row{grid-template-columns:repeat(2,1fr);row-gap:30px}
  .og-stats-row>div+div:before{display:none}
  .og-grid .og-card{flex-basis:100%}
  .og-why-grid,.og-map-list{grid-template-columns:1fr}
  .og-directory,.og-map-sec,.og-why{padding:56px 0}
  .og-map-frame{min-height:420px}
  .og-map-card{left:10px;right:10px;bottom:10px;max-width:none}
}
