/* Editorial refinement: shared components and responsive reading layouts. */
:root { --ed-green:#164b3f; --ed-green-deep:#103b32; --ed-green-soft:#eaf0e6; --ed-paper:#f7f5ef; --ed-radius:6px; --ed-radius-sm:4px; --ed-max:1200px; }
body.edusino-ui { line-height:1.7; }
body.edusino-ui h1,body.edusino-ui h2,body.edusino-ui h3,.ed-serif { font-weight:500; }
body.edusino-ui a { color:var(--ed-green); }
body.edusino-ui a.ed-btn--solid { color:#fff; }
.ed-btn,.ed-region-pills a,.ed-search .ed-btn { border-radius:5px; }
body.edusino-ui .ed-search { border:1px solid #cfd6cc; border-radius:6px; padding:0; overflow:hidden; box-shadow:none; gap:0; background:#fff; }
body.edusino-ui .ed-search input[type=search] { border:0; background:transparent; box-shadow:none; border-radius:0; padding:1rem; margin:0; min-width:0; width:100%; font:inherit; }
body.edusino-ui .ed-search .ed-btn { border-radius:0; margin:0; min-height:54px; flex-shrink:0; }
.ed-search:focus-within { outline:2px solid var(--ed-green); outline-offset:3px; }
a:focus-visible,button:focus-visible,summary:focus-visible,select:focus-visible { outline:2px solid var(--ed-green); outline-offset:4px; }
.ed-home-hero h1 { max-width:9em; }
.ed-home-hero__media { position:relative; overflow:hidden; box-shadow:none; border-radius:8px; }
.ed-home-hero__media::before,.ed-home-hero__media::after { display:none; }
.ed-home-hero__media>.ed-photo { position:absolute; width:100%; height:100%; inset:0; }
.ed-home-hero__caption { background:linear-gradient(transparent,rgba(10,35,26,.7)); left:0; right:0; bottom:0; padding:3rem 1.25rem 1.25rem; color:#fff; }
.ed-photo { display:block; width:100%; height:100%; object-fit:cover; }
.ed-photo-fallback { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:1rem; padding:1.5rem; background:#e8ede2; color:var(--ed-green); text-align:center; font-family:var(--ed-serif); }
.ed-photo-fallback .ed-line-icon { width:40px; height:40px; }
.ed-line-icon { width:26px; height:26px; flex-shrink:0; color:var(--ed-green); vertical-align:middle; }
.ed-quickbar { border:0; border-top:1px solid var(--ed-line); border-bottom:1px solid var(--ed-line); background:transparent; border-radius:0; }
.ed-quickbar a { font-weight:500; padding:1.5rem 1rem; }
.ed-uni-card { border:0; background:transparent; box-shadow:none; }
.ed-uni-card:hover { box-shadow:none; }
.ed-uni-card__media { overflow:hidden; border-radius:6px; height:235px; }
.ed-uni-card__body { padding:1rem 0; }
.ed-uni-row { align-items:start; padding:1rem 0 1.5rem; border:0; border-bottom:1px solid var(--ed-line); border-radius:0; background:transparent; }
.ed-uni-row__media { height:170px; object-fit:cover; }
.ed-directory,.ed-province-layout,.ed-article { padding-left:1.25rem; padding-right:1.25rem; }
.ed-filters { border-radius:5px; box-shadow:none; background:transparent; }
.ed-filters, .ed-filters form { min-width:0; }
.ed-filters select, .ed-filters input, .ed-filters button { box-sizing:border-box; max-width:100%; min-width:0; }
.ed-filters summary { cursor:pointer; font-weight:600; font-size:1rem; }
.ed-filters[open] summary { margin-bottom:1rem; }
.ed-filter-reset { display:block; text-align:center; margin-top:1rem; }
.ed-dir-toolbar { flex-wrap:wrap; }
.ed-dir-toolbar select,.ed-province-picker select { font:inherit; border:1px solid var(--ed-line); border-radius:4px; background:white; padding:.6rem; max-width:100%; }
.ed-province-picker { display:none; }
.ed-province-nav { border:0; border-right:1px solid var(--ed-line); border-radius:0; background:transparent; }
.ed-province-scene { margin:1.5rem 0; height:260px; overflow:hidden; border-radius:6px; }
.ed-province-scene figcaption { display:none; }
.ed-uni-hero-media { width:100%; height:220px; min-height:0; object-fit:cover; object-position:center; overflow:hidden; }
.ed-tabs { overflow-x:auto; flex-wrap:nowrap; white-space:nowrap; }
.ed-tabs a { flex-shrink:0; }
[id] { scroll-margin-top:150px; }
.ed-explore-card { border:0; border-bottom:1px solid var(--ed-line); border-radius:0; padding:1.2rem 0; background:transparent; }
.ed-explore-card:hover { box-shadow:none; background:var(--ed-green-soft); }
.ed-resource-list a { display:flex; justify-content:space-between; align-items:center; gap:1rem; padding:1rem 0; border-bottom:1px solid var(--ed-line); text-decoration:none; }
.ed-resource-list a:hover { text-decoration:underline; }
.ed-resource-section { padding:2.5rem 0 4rem; max-width:850px; }
.ed-resource-section h1 { font-size:clamp(2rem,4vw,3rem); }
.ed-campus-grid figure { margin:0; }
.ed-campus-grid .ed-photo { height:210px; border-radius:5px; }
.ed-campus-grid figcaption { font-size:.8rem; margin-top:.5rem; color:var(--ed-muted); }
.ed-guide-categories { display:flex; flex-wrap:wrap; gap:.6rem; margin:1.5rem 0; }
.ed-guide-categories a { padding:.5rem .9rem; border:1px solid var(--ed-line); border-radius:4px; text-decoration:none; }
.ed-guide-categories a[aria-current=page] { background:var(--ed-green); color:white; }
.ed-steps a { text-decoration:none; padding:1rem; display:block; border-right:1px solid var(--ed-line); }
.ed-steps a:hover { background:#dee8d8; }
.ed-guide-card { border:0; background:transparent; }
.ed-guide-card__media { height:200px; overflow:hidden; border-radius:5px; }
.ed-guide-card__body { padding:1rem 0; }
.ed-featured-guide { border:0; background:transparent; }
.ed-featured-guide__media { overflow:hidden; min-height:280px; border-radius:6px; }
.ed-featured-guide__media>.ed-photo { height:100%; min-height:280px; }
.ed-featured-guide__body { padding:2rem; }
.ed-article { grid-template-columns:minmax(0,720px) minmax(220px,280px); justify-content:space-between; gap:3.5rem; }
.ed-article__body { background:transparent; border:0; border-radius:0; padding:0; font-size:17px; line-height:1.8; }
body.edusino-ui .ed-prose h2 { margin:2.5rem 0 .85rem; font-size:clamp(1.4rem,2.3vw,1.8rem); line-height:1.3; }
.ed-prose p { margin:0 0 1.25rem; }
.ed-prose ul,.ed-prose ol { padding-left:1.25rem; }
.ed-prose a { text-decoration:underline; text-underline-offset:3px; }
.ed-aside-card { background:transparent; border:0; border-left:1px solid var(--ed-line); border-radius:0; padding:0 0 1.5rem 1.5rem; }
.ed-toc { background:var(--ed-green-soft); padding:1.25rem; margin-bottom:2rem; border-radius:5px; }
.ed-toc summary { cursor:pointer; font-weight:600; }
.ed-toc a { display:block; padding:.45rem 0; font-size:.9rem; }
.ed-article-meta { font-size:.85rem; color:var(--ed-muted); }
.ed-photo-credits { max-width:var(--ed-max); margin:1.5rem auto 0; padding:0 1.25rem; font-size:.75rem; color:var(--ed-muted); }
.ed-photo-credits summary { cursor:pointer; }
.ed-photo-credits li { margin:.6rem 0; }
.ed-photo-credits ul { padding-left:1rem; }
.ed-path,.ed-cta-band { border-radius:5px; }
@media(min-width:901px) { .ed-filters summary { list-style:none; } .ed-filters summary::-webkit-details-marker { display:none; } }
@media(max-width:900px) {
 .ed-uni-hero-media { height:160px; margin:0.75rem 0 1rem; }
 .ed-header__cta { display:none; }
 .ed-logo img { width:150px; }
 .ed-home-hero__grid,.ed-directory,.ed-province-layout,.ed-article { grid-template-columns:minmax(0,1fr); }
 .ed-directory,.ed-province-layout { gap:1.25rem; padding-top:1rem; }
 .ed-filters { position:static; padding:.9rem 1rem; width:100%; }
 .ed-page-hero { padding-top:1.6rem; padding-bottom:1.25rem; }
 .ed-province-hero .ed-home-hero__media { display:none; }
 .ed-province-nav { display:none; }
 .ed-province-picker { display:flex; gap:.6rem; align-items:end; margin-top:1rem; flex-wrap:wrap; }
 .ed-province-picker label { flex:1; min-width:150px; }
 .ed-province-picker select { display:block; width:100%; margin-top:.3rem; }
 .ed-region-pills { flex-wrap:nowrap; overflow-x:auto; padding-bottom:.5rem; }
 .ed-region-pills a { white-space:nowrap; flex-shrink:0; }
 .ed-province-scene { height:180px; }
 .ed-uni-row { grid-template-columns:100px minmax(0,1fr); gap:1rem; }
 .ed-uni-row__media { width:100%; height:110px; min-height:0; }
 .ed-uni-row h3 { font-size:1.1rem; }
 .ed-uni-row p { font-size:.85rem; }
 .ed-uni-row .ed-photo-fallback { font-size:.65rem; padding:.5rem; }
 .ed-uni-row .ed-photo-fallback span { display:none; }
 .ed-article { gap:2rem; }
 .ed-article__body { font-size:16px; }
 .ed-aside-card { padding:1rem 0; border-left:0; border-top:1px solid var(--ed-line); }
 .ed-steps { grid-template-columns:1fr 1fr; }
 .ed-featured-guide__body { padding:1.5rem 0; }
 .ed-tabs { top:76px; }
 .ed-dir-toolbar h2 { font-size:1.2rem; }
 .ed-tabs a { padding:.8rem .65rem; font-size:.85rem; }
}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } * { transition:none!important; } }

.ed-section-article { max-width:720px; font-size:17px; line-height:1.8; }
.ed-section-article li { margin-bottom:.75rem; }
