.cooperation-lead { display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:center; margin-bottom:36px; }
.cooperation-lead > p { font-family:var(--font-serif); font-size:clamp(25px,2.5vw,36px); line-height:1.65; }
.cooperation-lead strong { font-weight:400; color:var(--gold-bright); }
.cooperation-lead > div { color:var(--muted); font-size:15px; line-height:2; max-width:36em; }
.cooperation-featured { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.cooperation-card { min-width:0; display:flex; flex-direction:column; padding:30px; border:1px solid var(--border); background:var(--forest); }
.cooperation-feature { padding:38px; background:radial-gradient(ellipse at top right,rgba(201,162,39,.09),transparent 70%),var(--forest); border-top:2px solid var(--gold); }
.cooperation-category { display:flex; justify-content:space-between; align-items:center; gap:12px; font-size:12px; color:var(--gold-bright); margin-bottom:24px; }
.cooperation-category { display:none; }
.cooperation-category > span { color:var(--muted); font-size:11px; }
.cooperation-card h3 { font-family:var(--font-serif); font-size:23px; font-weight:500; line-height:1.55; color:var(--ink); margin:0 0 16px; }
.cooperation-feature h3 { font-size:36px; margin-bottom:4px; }
.cooperation-card .cooperation-school { font-size:12px; color:var(--muted); margin-bottom:28px; }
.cooperation-card .cooperation-school, .cooperation-card h4 { display:none; }
.cooperation-card h4 { font-size:15px; font-weight:500; line-height:1.7; color:var(--ink); margin:0 0 12px; }
.cooperation-card p { font-size:14px; line-height:1.95; color:var(--muted); margin:0; }
.cooperation-card dl { margin-top:auto; padding-top:26px; font-size:13px; }
.cooperation-card dl { display:none; }
.cooperation-card dl > div { display:grid; grid-template-columns:5em 1fr; gap:16px; border-top:1px solid var(--border); padding:13px 0; line-height:1.8; }
.cooperation-card dt { color:var(--gold-bright); }
.cooperation-card dt { display:none; }
.cooperation-card dd { margin:0; color:var(--ink); }
.cooperation-divider { display:flex; justify-content:space-between; gap:16px; padding:36px 0 22px; font-size:14px; color:var(--ink); }
.cooperation-divider > span:last-child { color:var(--muted); font-size:12px; }
.cooperation-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.cooperation-topics { border-top:1px solid var(--border); padding-top:16px; margin-top:auto; color:var(--gold-bright); font-size:11px; line-height:1.9; }
.cooperation-topics { display:none; }
.cooperation-grid .cooperation-card > p { padding-bottom:24px; }
.science-cooperation { margin:64px 0; scroll-margin-top:110px; }
.science-cooperation > header { margin-bottom:30px; }
.science-cooperation > header span { color:var(--gold-bright); font-size:12px; letter-spacing:.14em; }
.science-cooperation > header h2 { font-family:var(--font-serif); font-size:36px; font-weight:500; margin-top:12px; }
@media(max-width:1024px) { .cooperation-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .cooperation-feature { padding:28px; } .cooperation-lead { gap:30px; } }
@media(max-width:600px) { .cooperation-lead { grid-template-columns:1fr; gap:18px; margin-bottom:28px; } .cooperation-featured,.cooperation-grid { grid-template-columns:1fr; gap:16px; } .cooperation-card { padding:24px; } .cooperation-feature h3 { font-size:30px; } .cooperation-category { margin-bottom:20px; } .cooperation-divider { flex-direction:column; gap:6px; padding-top:30px; } .cooperation-card dl > div { gap:10px; } .science-cooperation > header h2 { font-size:30px; } }
/* Display exact regions of the supplied sheet; keep the original asset intact. */
.cooperation-image-window { display:block; background-image:url('/assets/img/home/school-cooperation.jpg'); background-repeat:no-repeat; }
.cooperation-logo { display:none; }
.cooperation-logo .cooperation-image-window { max-width:100%; flex-shrink:1; }
.cooperation-gallery { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin-top:24px; padding-top:22px; border-top:1px solid var(--border); }
.cooperation-gallery:has(figure:nth-child(3)) { grid-template-columns:repeat(3,minmax(0,1fr)); }
.cooperation-gallery figure { min-width:0; margin:0; }
.cooperation-photo-btn { display:block; width:100%; padding:0; border:0; background:transparent; cursor:zoom-in; }
.cooperation-photo-btn:focus-visible { outline:2px solid var(--gold-bright); outline-offset:3px; }
.cooperation-photo { width:100%; display:block; }
.cooperation-gallery figcaption { display:none; }
.cooperation-dialog { margin:auto; max-width:min(1200px, calc(100vw - 24px)); max-height:calc(100dvh - 24px); width:max-content; padding:16px 16px 20px; border:1px solid var(--border); background:var(--bg); color:var(--ink); overflow:auto; }
.cooperation-dialog::backdrop { background:rgba(0,0,0,.88); }
.cooperation-dialog form { display:flex; justify-content:flex-end; margin-bottom:10px; }
.cooperation-dialog button { min-width:64px; min-height:44px; border:1px solid var(--border); }
.cooperation-dialog img, .cooperation-dialog-sprite { display:block; max-height:82dvh; max-width:min(1200px, calc(100vw - 48px)); width:min(1200px, calc(100vw - 48px)); height:auto; margin:auto; object-fit:contain; }
.cooperation-dialog p { color:var(--muted); font-size:14px; text-align:center; margin:12px 0 0; }
.cooperation-gallery-three { grid-template-columns:1fr 1fr 2fr; }
.cooperation-grid .cooperation-gallery { margin-top:20px; }
@media(max-width:600px) { .cooperation-logo { width:212px; height:70px; } .cooperation-gallery { gap:10px; } .cooperation-gallery:has(figure:nth-child(3)), .cooperation-gallery-three { grid-template-columns:1fr 1fr; } .cooperation-gallery-three figure:last-child { grid-column:1 / -1; } }
.cooperation-feature .cooperation-gallery { grid-template-columns:1.6fr 1fr; width:100%; }
.cooperation-feature .cooperation-gallery-three { grid-template-columns:1.36fr 1.6fr 2.02fr; max-width:none; }
.cooperation-feature .cooperation-gallery.cooperation-gallery-three { grid-template-columns:1.36fr 1.6fr 2.02fr; max-width:none; }
.cooperation-grid .cooperation-card:not(:has(.cooperation-gallery)) { align-self:start; }
@media(max-width:600px) { .cooperation-feature .cooperation-gallery-three { grid-template-columns:1fr 1fr; } }
