
/* Petit Séminaire Saint Joseph d’Efok — identité catholique institutionnelle 2026–2027
   Palette retenue : bleu marial, bleu ecclésial, bordeaux cardinal, ivoire liturgique,
   or ancien discret. Les couleurs restent volontairement sobres pour éviter l’effet décoratif. */
:root{
  --ink:#18304f;
  --ink-2:#35506f;
  --cream:#f5f0e5;
  --paper:#fffdf7;
  --mist:#edf1f3;
  --line:rgba(24,48,79,.15);
  --gold:#b79a58;
  --gold-2:#dac48f;
  --wine:#7a2636;
  --sage:#4f6f61;
  --marian:#244f7b;
  --violet-liturgical:#5d486d;
  --shadow:0 24px 60px rgba(13,36,63,.15);
}
html{background:#f5f0e5}
body{background:linear-gradient(180deg,#f8f4eb 0%,#f4efe5 58%,#eee8dc 100%);color:var(--ink)}
body:before{background:
  radial-gradient(circle at 9% 8%,rgba(36,79,123,.11),transparent 28%),
  radial-gradient(circle at 92% 14%,rgba(122,38,54,.08),transparent 28%),
  linear-gradient(180deg,#fbf8f0 0%,#f4efe5 55%,#eee7dc 100%)}
.sacred-bar{background:#102a46;color:rgba(255,255,255,.86);border-bottom:1px solid rgba(218,196,143,.25);font-size:.69rem;letter-spacing:.13em;text-transform:uppercase}
.sacred-bar .container{min-height:31px;display:flex;align-items:center;justify-content:space-between;gap:18px}
.sacred-bar strong{color:#ead9ad;font-weight:800}.sacred-bar .year{color:#b9c9d8;white-space:nowrap}
.header{top:0;background:rgba(248,244,235,.94);border-bottom:1px solid rgba(24,48,79,.13);box-shadow:0 8px 28px rgba(13,36,63,.04)}
.nav{min-height:82px}.brand img{width:54px;height:54px}.brand-title{color:#122b49}.brand-sub{color:#6d5b40}.navlinks a{color:rgba(24,48,79,.78)}
.navlinks a:hover,.navlinks a.active{color:var(--wine);background:rgba(255,255,255,.8);box-shadow:0 7px 22px rgba(13,36,63,.07)}
.lang{border-left-color:rgba(24,48,79,.16)}
.eyebrow{color:var(--wine)}.eyebrow:before{background:var(--gold)}
.btn.primary,.cover-btn-primary{background:var(--marian);border-color:var(--marian);color:#fff}.btn.primary:hover,.cover-btn-primary:hover{background:#193f67}
.btn.goldbtn{background:linear-gradient(135deg,#b79a58,#d4bd83);color:#1e2e42}
.ribbon-grid{border-color:rgba(24,48,79,.13);background:rgba(24,48,79,.13)}.metric{background:rgba(255,253,247,.9)}.metric strong{color:var(--wine)}
.panel,.lux-card,.person,.prayer-card,.fee{background:rgba(255,253,247,.94)}
.department{background:#173a61}.department:nth-child(2){background:#6e2938}
.footer{background:#102a46}.footer .brand-sub{color:#e0c991}.footer a:hover{color:#e0c991}
.cover-shade{background:linear-gradient(90deg,rgba(7,28,50,.91) 0%,rgba(7,28,50,.68) 48%,rgba(7,28,50,.20) 78%,rgba(7,28,50,.12) 100%)}
.cover-kicker{color:#ead39a}.cover-academic-badges strong{border-color:rgba(234,211,154,.44);background:rgba(15,42,70,.36)}
.cover-dot{border-color:rgba(255,255,255,.6)}.cover-dot.is-active{background:#d5bc7b;border-color:#d5bc7b}
.cover-arrow{border-color:rgba(255,255,255,.5);background:rgba(11,35,61,.35)}
.cover-progress span{background:#d2b873}

/* Homepage news / rentrée */
.home-news{padding:78px 0;background:linear-gradient(180deg,rgba(255,253,247,.64),rgba(237,241,243,.72));border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.home-news-head{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:32px}.home-news-head p{max-width:560px;color:rgba(24,48,79,.68);margin:0}
.home-news-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:24px;align-items:stretch}
.home-news-visual{position:relative;min-height:520px;overflow:hidden;border-radius:30px;box-shadow:var(--shadow)}.home-news-visual img{width:100%;height:100%;object-fit:cover}.home-news-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(9,29,50,.72))}.home-news-label{position:absolute;z-index:2;left:25px;right:25px;bottom:22px;color:#fff}.home-news-label span{display:block;color:#ead39a;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;font-weight:800}.home-news-label strong{display:block;font-family:var(--serif);font-size:2rem;line-height:1.08;margin-top:5px}
.home-news-copy{border-radius:30px;border:1px solid var(--line);background:rgba(255,253,247,.96);padding:36px;display:flex;flex-direction:column;justify-content:center;box-shadow:0 18px 48px rgba(13,36,63,.07)}.home-news-copy h2{font-size:clamp(2.2rem,4vw,3.9rem);margin:14px 0 16px}.home-news-copy p{color:rgba(24,48,79,.72)}
.news-thumbs{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:25px 0}.news-thumbs img{width:100%;height:115px;object-fit:cover;border-radius:14px}
.text-link-premium{display:inline-flex;align-items:center;gap:9px;font-weight:850;color:var(--wine);margin-top:10px}.text-link-premium:hover{color:var(--marian)}

/* News page */
.news-hero{padding:82px 0 64px;background:linear-gradient(135deg,#102a46,#1b446f 63%,#6a3040);color:#fff}.news-hero .eyebrow{color:#ead39a}.news-hero .eyebrow:before{background:#ead39a}.news-hero h1{font-size:clamp(3.1rem,6vw,6rem);margin-bottom:18px}.news-hero p{max-width:740px;color:#d7e0e9;font-size:1.1rem}
.news-feature-card{display:grid;grid-template-columns:1.25fr .75fr;border-radius:30px;overflow:hidden;background:#fffdf7;border:1px solid var(--line);box-shadow:var(--shadow)}.news-feature-card .media{min-height:500px}.news-feature-card .media img{width:100%;height:100%;object-fit:cover}.news-feature-card .copy{padding:42px;display:flex;flex-direction:column;justify-content:center}.news-date{font-size:.72rem;letter-spacing:.16em;color:var(--wine);font-weight:850;text-transform:uppercase}.news-feature-card h2{font-size:clamp(2.2rem,4vw,4rem);margin:14px 0}.news-feature-card p{color:rgba(24,48,79,.7)}

/* Back-to-school reportage */
.reportage-hero{position:relative;min-height:680px;display:flex;align-items:flex-end;color:#fff;overflow:hidden}.reportage-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.reportage-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,29,51,.93),rgba(8,29,51,.62) 50%,rgba(8,29,51,.16)),linear-gradient(0deg,rgba(8,29,51,.52),transparent 45%)}.reportage-copy{position:relative;z-index:2;padding:95px 0 65px}.reportage-copy .eyebrow{color:#ead39a}.reportage-copy .eyebrow:before{background:#ead39a}.reportage-copy h1{font-size:clamp(3.4rem,6.4vw,6.8rem);max-width:850px}.reportage-copy p{max-width:740px;color:#e1e8ef;font-size:1.12rem}.reportage-meta{display:flex;gap:12px;flex-wrap:wrap;margin-top:25px}.reportage-meta span{border:1px solid rgba(255,255,255,.36);background:rgba(9,31,55,.38);padding:9px 12px;border-radius:999px;font-size:.72rem;letter-spacing:.09em;text-transform:uppercase}
.reportage-intro{max-width:860px;margin:auto;text-align:center}.reportage-intro .motto{font-family:var(--serif);font-size:clamp(2rem,4vw,3.7rem);color:var(--marian);line-height:1.1;margin:18px 0}.reportage-intro p{font-size:1.05rem;color:rgba(24,48,79,.72)}
.rentree-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.rentree-card{margin:0;position:relative;overflow:hidden;border-radius:22px;background:#fff;box-shadow:0 14px 38px rgba(13,36,63,.09);cursor:zoom-in}.rentree-card img{width:100%;height:320px;object-fit:cover;transition:.35s ease}.rentree-card:hover img{transform:scale(1.025)}.rentree-card figcaption{padding:13px 14px;font-size:.79rem;color:rgba(24,48,79,.72);font-weight:750;background:#fffdf8}.rentree-card.featured{grid-column:span 2}.rentree-card.featured img{height:480px}
.archive-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin:10px 0 28px}.archive-heading p{max-width:570px;color:rgba(24,48,79,.68);margin:0}

/* Lightbox */
.pssj-lightbox{position:fixed;inset:0;display:none;align-items:center;justify-content:center;background:rgba(5,17,31,.95);z-index:9999;padding:32px}.pssj-lightbox.open{display:flex}.pssj-lightbox img{max-width:min(95vw,1500px);max-height:88vh;object-fit:contain;box-shadow:0 24px 80px rgba(0,0,0,.4)}.pssj-lightbox button{position:absolute;top:18px;right:22px;width:48px;height:48px;border-radius:50%;border:1px solid rgba(255,255,255,.45);color:#fff;background:rgba(255,255,255,.08);font-size:28px;cursor:pointer}

/* Prayer page gets a discreet liturgical violet accent rather than a generic gold-heavy look. */
.prayer-card{background:linear-gradient(180deg,#fffdf8,#f1ecf3)}.prayer-card .icon{color:var(--violet-liturgical)}

@media(max-width:1060px){.sacred-bar .motto-long{display:none}.home-news-layout,.news-feature-card{grid-template-columns:1fr}.home-news-visual{min-height:430px}.news-feature-card .media{min-height:400px}.rentree-grid{grid-template-columns:repeat(2,1fr)}.rentree-card.featured{grid-column:span 2}}
@media(max-width:720px){.sacred-bar .container{justify-content:center}.sacred-bar .year{display:none}.home-news-head,.archive-heading{align-items:flex-start;flex-direction:column}.home-news-copy{padding:28px}.news-thumbs{grid-template-columns:1fr 1fr}.news-thumbs img:last-child{display:none}.rentree-grid{grid-template-columns:1fr}.rentree-card.featured{grid-column:auto}.rentree-card.featured img,.rentree-card img{height:300px}.reportage-hero{min-height:600px}.reportage-copy{padding:80px 0 50px}}
