/* officialbruinsonline_com_nCI0ADky — diversify_v4 (parametric layouts) */
/* palette=indigo typo=ptserif_karla cols=1,hero=none,gap=14x64,mw=880,decor=dotted_top,align=center header=14 nav=5 entry=16 footer=4 radius=3px density=airy */
@import url('https://fonts.googleapis.com/css2?family=PT+Serif:wght@400;700&family=Karla:wght@400;500;600;700&display=swap');

:root{
  --heading:"PT Serif", Georgia, serif;
  --body:"Karla", system-ui, sans-serif;
  --bg:#f8fafd;
  --surface:#ffffff;
  --surface-alt:#eef0f9;
  --text:#1e1b4b;
  --muted:#4338ca;
  --border:#ddd6fe;
  --accent:#3730a3;
  --accent-dark:#312e81;
  --accent-soft:#e0e7ff;
  --radius:3px;
}

*,*::before,*::after{box-sizing:border-box}
html,body{margin:0;padding:0}
body{font-family:var(--body);font-size:16px;line-height:1.65;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
a{color:#3730a3;text-decoration:none}
a:hover{color:#312e81;text-decoration:underline}
img{max-width:100%;height:auto;display:block}
h1,h2,h3,h4,h5,h6{font-family:var(--heading);color:#1e1b4b;line-height:1.28;margin:1.25em 0 .5em;font-weight:700;letter-spacing:-0.005em}
h1{font-size:2.2em}h2{font-size:1.7em}h3{font-size:1.35em}h4{font-size:1.12em}
p{margin:0 0 1.15em}
blockquote{margin:1.4em 0;padding:.5em 1.2em;border-left:4px solid #3730a3;background:#eef0f9;color:#4338ca;font-style:italic}
blockquote p{margin:0}
hr{border:0;border-top:1px solid #ddd6fe;margin:2em 0}
code,kbd,samp{font-family:ui-monospace,"SF Mono",Menlo,Consolas,monospace;font-size:.92em;background:#eef0f9;padding:.12em .38em;border-radius:3px}
pre{font-family:ui-monospace,"SF Mono",Menlo,Consolas,monospace;background:#eef0f9;padding:14px 16px;overflow-x:auto;border-radius:3px;font-size:.92em;line-height:1.55}
pre code{background:transparent;padding:0}
ul,ol{padding-left:1.4em;margin:0 0 1.15em}
ul li,ol li{margin-bottom:.4em}
table{width:100%;border-collapse:collapse;margin:1.2em 0;font-size:.95em}
th,td{padding:.55em .8em;border-bottom:1px solid #ddd6fe;text-align:left}
th{background:#eef0f9;font-weight:600;color:#1e1b4b}
::selection{background:#e0e7ff;color:#1e1b4b}

.site-header{background:#f8fafd;padding:36px 24px;text-align:center}
.site-header .wrap{max-width:720px;margin:0 auto;padding:32px 30px;border:2px solid #1e1b4b;border-radius:0}
.site-title{font-family:var(--heading);font-size:1.95em;margin:0;font-weight:700}
.site-title a{color:#1e1b4b;text-decoration:none}
.site-tagline{margin:8px 0 0;color:#4338ca;font-size:.92em;font-style:italic}

.site-nav{background:#ffffff;padding:14px 0;border-bottom:1px solid #ddd6fe}
.site-nav .wrap{max-width:1200px;margin:0 auto;padding:0 24px;display:flex;align-items:center;flex-wrap:wrap;gap:8px}
.site-nav .nav-links{display:flex;flex-wrap:wrap;align-items:center;gap:6px}
.site-nav a{color:#1e1b4b;padding:7px 13px;font-size:.85em;font-weight:600;text-decoration:none;border:1px solid #ddd6fe}
.site-nav a:hover{background:#eef0f9;border-color:#3730a3;color:#3730a3;text-decoration:none}
.site-nav form{margin-left:auto;position:relative}
.site-nav input[type=search]{padding:7px 14px;border:1px solid #ddd6fe;background:#ffffff;color:#1e1b4b;border-radius:999px;font-size:.88em;width:200px;font-family:inherit}
.site-nav input[type=search]:focus{outline:none;border-color:#3730a3;box-shadow:0 0 0 3px #e0e7ff}

.container{max-width:820px;margin:0 auto;padding:48px clamp(20px,4vw,40px) 60px;background:#ffffff}

.archive-container{max-width:880px;margin:0 auto;padding:64px clamp(16px,3vw,28px) 60px;text-align:center}
.post-list{display:flex;flex-direction:column;gap:14px}
.post-list{padding-left:32px}
.post-list > .entry{border-top:1px dotted #3730a3;padding-top:20px}
.post-list > .entry:first-child{border-top:0}
.post-list > .entry:first-child .entry-title{font-size:1.55em}

.entry{position:relative;padding:22px 0 22px 22px;margin:0;border-top:1px solid #ddd6fe}
.entry:first-child{border-top:0;padding-top:6px}
.entry::before{content:"";position:absolute;left:0;top:30px;width:8px;height:8px;background:#3730a3;border-radius:50%}
.entry .cat,.cat-eyebrow{display:inline-block;color:#3730a3;font-size:.72em;font-weight:700;text-transform:uppercase;letter-spacing:.16em;margin-bottom:8px}
.entry .cat a,.cat-eyebrow a{color:#3730a3;text-decoration:none}
.entry-title{font-family:var(--heading);font-size:1.4em;line-height:1.28;margin:0 0 8px;font-weight:700}
.entry-title a{color:#1e1b4b;text-decoration:none}
.entry-title a:hover{color:#3730a3;text-decoration:none}
.entry-meta{color:#4338ca;font-size:.85em;margin-bottom:10px}
.entry-meta a{color:#4338ca}.entry-meta a:hover{color:#3730a3}
.excerpt{color:#1e1b4b;opacity:.84;margin-bottom:10px;font-size:.95em}
.more{display:inline-block;color:#3730a3;font-weight:600;font-size:.88em;text-decoration:none}
.more:hover{color:#312e81;text-decoration:underline}

.archive-title{font-family:var(--heading);font-size:1.7em;color:#1e1b4b;margin:0 0 1.2em;padding-bottom:.55em;border-bottom:1px solid #ddd6fe;font-weight:700}
.archive-title span{color:#3730a3}

.pagination{margin:3em 0 0;text-align:center;font-size:.92em}
.pagination a,.pagination span{display:inline-block;margin:0 3px 6px;padding:8px 14px;border:1px solid #ddd6fe;background:#ffffff;color:#1e1b4b;border-radius:3px;text-decoration:none}
.pagination .current{background:#3730a3;color:#ffffff;border-color:#3730a3}
.pagination a:hover{background:#3730a3;color:#ffffff;border-color:#3730a3;text-decoration:none}

body.single-post .container{background:#ffffff;padding:52px clamp(20px,4vw,52px) 64px;margin:0 auto;max-width:820px}
/* Safety reset for single-post pages: cancel any archive-card layout that
   leaks via shared selectors (e.g. .cat-eyebrow absolute positioning). */
body.single-post article.post{display:block;position:static;background:transparent;border:0;padding:0;margin:0;grid-template-columns:none}
body.single-post article.post::before{content:none}
body.single-post .cat-eyebrow{display:inline-block;position:static;top:auto;right:auto;left:auto;bottom:auto;grid-column:auto;align-self:auto;background:transparent;color:#3730a3;padding:0;margin:0 0 14px;font-size:.78em;font-weight:700;text-transform:uppercase;letter-spacing:.16em;border:0;border-radius:0;width:auto;height:auto;text-align:left}
body.single-post .cat-eyebrow::before,body.single-post .cat-eyebrow::after{content:none}
body.single-post .cat-eyebrow a{color:#3730a3;text-decoration:none}
body.single-post .cat-eyebrow a:hover{color:#312e81}
.post-title{font-family:var(--heading);font-size:2.3em;margin:0 0 14px;line-height:1.22;font-weight:700;letter-spacing:-0.012em;color:#1e1b4b}
.post-meta{color:#4338ca;font-size:.88em;margin-bottom:26px;padding-bottom:22px;border-bottom:1px solid #ddd6fe}
.post-meta a{color:#4338ca}.post-meta a:hover{color:#3730a3}
.post-body{font-size:17px;line-height:1.78;color:#1e1b4b}
.post-body p{margin:0 0 1.4em}
.post-body h2{font-size:1.55em;margin-top:1.6em}
.post-body h3{font-size:1.25em;margin-top:1.4em}
.post-body img{display:block;margin:1.4em auto;border-radius:3px}
.post-body figure{margin:1.8em 0;text-align:center}
.post-body figcaption{font-size:.86em;color:#4338ca;margin-top:.4em;font-style:italic}
.post-body a{color:#3730a3;text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
.post-body a:hover{color:#312e81}
.post-body ul,.post-body ol{margin-bottom:1.4em}

.search-panel{background:#ffffff;border:1px solid #ddd6fe;border-radius:3px;padding:28px 30px;margin-bottom:24px}
.search-panel h1{margin:0 0 8px}.search-panel p{color:#4338ca;margin:0 0 16px}
.search-panel form{display:flex;gap:8px;flex-wrap:wrap}
.search-panel input[type=search]{flex:1;min-width:200px;padding:11px 14px;border:1px solid #ddd6fe;background:#ffffff;color:#1e1b4b;border-radius:3px;font-size:1em;font-family:inherit}
.search-panel input[type=search]:focus{outline:none;border-color:#3730a3;box-shadow:0 0 0 3px #e0e7ff}
.search-panel button{padding:11px 22px;border:0;background:#3730a3;color:#ffffff;border-radius:3px;font-weight:600;cursor:pointer;font-family:inherit}
.search-panel button:hover{background:#312e81}
.search-empty{color:#4338ca;font-style:italic;text-align:center;margin:20px 0}
.search-summary{color:#4338ca;margin:0 0 14px}
.search-results-list{list-style:none;padding:0;margin:0}
.search-results-list li{padding:12px 0;border-bottom:1px dotted #ddd6fe}
.search-results-list li:last-child{border-bottom:0}
.search-results-list a{color:#1e1b4b;font-weight:600;text-decoration:none}
.search-results-list a:hover{color:#3730a3}
mark{background:#e0e7ff;color:#1e1b4b;padding:0 2px;border-radius:2px}

.search-dropdown{position:absolute;top:100%;right:0;background:#ffffff;border:1px solid #ddd6fe;min-width:300px;max-height:380px;overflow-y:auto;z-index:200;box-shadow:0 10px 28px rgba(15,23,42,0.12);display:none;margin-top:6px;border-radius:3px}
.search-dropdown.open{display:block}.site-nav form.has-dropdown{position:relative}
.search-dropdown a{display:block;padding:11px 14px;color:#1e1b4b;border-bottom:1px solid #ddd6fe;font-size:.9em;text-decoration:none}
.search-dropdown a:hover{background:#eef0f9;color:#3730a3}
.search-dropdown .see-all{background:#eef0f9;color:#3730a3;text-align:center;font-weight:700;text-transform:uppercase;font-size:.78em;letter-spacing:.06em}
.search-dropdown .see-all:hover{background:#3730a3;color:#ffffff}
.search-dropdown .none{padding:14px;color:#4338ca;font-style:italic;text-align:center;font-size:.9em}

body.single-post .container{max-width:1140px;padding:48px clamp(20px,4vw,40px) 64px}

.post-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:48px;align-items:start}
.post-layout > article.post{min-width:0}

.related-posts{margin:0;padding:22px 22px 24px;background:#eef0f9;border:1px solid #ddd6fe;border-radius:3px;position:sticky;top:24px}
.related-posts h3{font-family:var(--heading);font-size:.82em;margin:0 0 16px;color:#1e1b4b;text-transform:uppercase;letter-spacing:.18em;font-weight:700;padding-bottom:12px;border-bottom:2px solid #3730a3}
.related-posts ul{list-style:none;padding:0;margin:0;display:block}
.related-posts li{margin:0;padding:12px 0;border-bottom:1px solid #ddd6fe}
.related-posts li:last-child{border-bottom:0;padding-bottom:0}
.related-posts li:first-child{padding-top:0}
.related-posts li a{display:block;color:#1e1b4b;font-family:var(--heading);font-size:.96em;font-weight:600;line-height:1.38;text-decoration:none;transition:color .15s}
.related-posts li a:hover{color:#3730a3;text-decoration:none}

.post-nav{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:56px 0 0;padding-top:32px;border-top:1px solid #ddd6fe}
.post-nav a{display:flex;flex-direction:column;gap:6px;padding:18px 20px;background:#ffffff;border:1px solid #ddd6fe;border-radius:3px;text-decoration:none;color:#1e1b4b;transition:border-color .15s,background .15s,transform .15s}
.post-nav a:hover{border-color:#3730a3;background:#eef0f9;text-decoration:none;transform:translateY(-1px)}
.post-nav-prev{text-align:left}
.post-nav-next{text-align:right;grid-column:2}
.post-nav .label{font-size:.74em;color:#4338ca;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.post-nav .title{font-family:var(--heading);font-size:1.02em;font-weight:600;line-height:1.32;color:#1e1b4b}
.post-nav-next .title,.post-nav-next .label{text-align:right}

.site-footer{background:#312e81;color:#ffffff;padding:28px 24px;margin-top:60px;font-size:.9em}
.site-footer > div{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;text-align:left}
.site-footer a{color:#ffffff;opacity:.85}.site-footer a:hover{opacity:1}
.site-footer a + a{margin-left:14px}

@media (max-width:1024px){
  .archive-container,.container{padding-left:20px;padding-right:20px}
}
@media (max-width:980px){
  .post-layout{grid-template-columns:1fr;gap:36px}
  .related-posts{position:static}
}
@media (max-width:640px){
  .post-nav{grid-template-columns:1fr;gap:10px}
  .post-nav-next{grid-column:1;text-align:left}
  .post-nav-next .title,.post-nav-next .label{text-align:left}
}
@media (max-width:700px){
  body{font-size:15.5px}
  .post-title{font-size:1.75em}
  .entry-title{font-size:1.3em}
  .site-nav .wrap{flex-direction:column;align-items:stretch;padding:6px 16px;gap:0}
  .site-nav .nav-links{justify-content:flex-start;width:100%;overflow-x:auto;flex-wrap:nowrap;padding-bottom:4px}
  .site-nav .nav-links a{white-space:nowrap}
  .site-nav form{margin:8px 0;width:100%}
  .site-nav input[type=search]{width:100%}
  .search-dropdown{position:fixed;left:8px;right:8px;top:auto;width:auto;min-width:0}
  .post-body{font-size:16px;line-height:1.72}
  .site-footer > div{flex-direction:column;text-align:center}
  .site-footer a + a{margin-left:0}
}
