/*
Theme Name: Albret
Theme URI: https://www.albret-jazz-sessions.com/
Author: Albret Jazz Sessions
Description: Theme sur mesure pour Albret Jazz Sessions : blog consacre au jazz, a la musique et aux instruments. Polices embarquees, aucune requete externe.
Version: 1.0.0
Requires at least: 6.0
Requires PHP: 8.0
License: GPL-2.0-or-later
Text Domain: albret
Tags: blog, musique, deux-colonnes
*/

/* ---------- Polices embarquees : aucune requete externe ---------- */
@font-face{font-family:"Jost";src:url(fonts/jost.woff2) format("woff2");font-weight:300 700;font-style:normal;font-display:swap}
@font-face{font-family:"Gelasio";src:url(fonts/gelasio.woff2) format("woff2");font-weight:400 700;font-style:normal;font-display:swap}
@font-face{font-family:"Gelasio";src:url(fonts/gelasio-italic.woff2) format("woff2");font-weight:400 700;font-style:italic;font-display:swap}

/* ---------- Jetons ---------- */
:root{
  --aj-paper:#F4F5F7;
  --aj-card:#FFFFFF;
  --aj-rule:#E3E5EA;
  --aj-rule-2:#CFD3DA;
  --aj-deep:#11143D;
  --aj-deep-soft:#2A2E63;
  --aj-deep-dark:#0C0E2B;
  --aj-brass:#A97C1E;
  --aj-brass-2:#D9B566;
  --aj-ink:#141A26;
  --aj-body:#22262D;
  --aj-muted:#6B7280;
  --aj-link:#0E5FA8;
  --aj-wrap:1180px;
  --aj-gutter:clamp(18px,4vw,24px);
  --aj-radius:2px;
  --aj-display:"Jost",Futura,"Century Gothic","Segoe UI",system-ui,sans-serif;
  --aj-serif:"Gelasio",Georgia,"Times New Roman",serif;
}

/* ---------- Base ---------- */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--aj-paper);color:var(--aj-ink);font-family:var(--aj-serif);font-size:18px;line-height:1.75}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
a:hover,a:focus{color:var(--aj-link)}
:focus-visible{outline:2px solid var(--aj-brass);outline-offset:2px}
.aj-wrap{max-width:var(--aj-wrap);margin:0 auto;padding-inline:var(--aj-gutter)}
.aj-skip{position:absolute;left:-9999px}
.aj-skip:focus{left:8px;top:8px;z-index:99;background:var(--aj-card);padding:10px 16px;border:1px solid var(--aj-deep)}
.screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* ---------- Barre haute ---------- */
.aj-topbar{background:var(--aj-deep);color:#E9E6E4}
.aj-topbar .aj-wrap{display:flex;justify-content:space-between;align-items:center;gap:16px;padding-block:7px;
  font-family:var(--aj-display);font-size:12px;letter-spacing:.1em;text-transform:uppercase}
.aj-topbar a{color:var(--aj-brass-2)}
.aj-topbar a:hover{color:#fff}

/* ---------- Masthead ---------- */
.aj-masthead{text-align:center;padding-block:26px 18px}
.aj-logo{display:inline-block;font-family:var(--aj-display);font-size:clamp(24px,5vw,40px);font-weight:500;
  letter-spacing:.1em;text-transform:uppercase;line-height:1.05;color:var(--aj-deep)}
.aj-logo img{margin-inline:auto}
.aj-baseline{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:13px}
.aj-baseline span{font-family:var(--aj-display);font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--aj-brass)}
.aj-baseline i{display:block;width:58px;height:1px;background:var(--aj-rule-2)}

/* ---------- Navigation ---------- */
.aj-nav{border-top:1px solid var(--aj-rule);border-bottom:1px solid var(--aj-rule);background:var(--aj-paper)}
.aj-nav ul{list-style:none;margin:0;padding-block:12px;display:flex;justify-content:center;flex-wrap:wrap;gap:12px 36px;
  font-family:var(--aj-display);font-size:13px;letter-spacing:.14em;text-transform:uppercase}
.aj-nav li{margin:0}
.aj-nav .current-menu-item>a,.aj-nav .current-menu-parent>a,.aj-nav .current-post-ancestor>a{color:var(--aj-brass)}
.aj-nav .sub-menu{display:none}
.aj-navtoggle{display:none}

/* ---------- Hero d'accueil ---------- */
.aj-hero{text-align:center;padding-block:34px 30px;border-bottom:1px solid var(--aj-rule)}
.aj-kicker{font-family:var(--aj-display);font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--aj-muted);margin-bottom:16px}
.aj-hero h1{font-family:var(--aj-display);font-size:clamp(22px,3.4vw,33px);font-weight:500;letter-spacing:.06em;
  text-transform:uppercase;line-height:1.26;margin:0 auto 16px;max-width:24ch;color:var(--aj-deep);text-wrap:pretty}
.aj-hero p{font-size:clamp(16px,2vw,18px);line-height:1.75;color:#474C55;margin:0 auto 22px;max-width:72ch}
.aj-chips{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}
.aj-chip{border:1px solid var(--aj-rule-2);border-radius:var(--aj-radius);padding:8px 17px;background:var(--aj-card);
  font-family:var(--aj-display);font-size:12px;letter-spacing:.1em;text-transform:uppercase}
.aj-chip:hover{border-color:var(--aj-brass);color:var(--aj-link)}

/* ---------- Bloc une + colonne ---------- */
.aj-lede{display:flex;gap:40px;align-items:flex-start;padding-block:32px 0}
.aj-lede__main{flex:1 1 auto;min-width:0}
.aj-lede__side{width:340px;flex:0 0 auto}
.aj-feature{background:var(--aj-card);border:1px solid var(--aj-rule);border-radius:var(--aj-radius)}
.aj-feature__media{aspect-ratio:16/8;background:#E7E9ED;border-bottom:1px solid var(--aj-rule);overflow:hidden}
.aj-feature__media img{width:100%;height:100%;object-fit:cover}
.aj-feature__body{padding:22px 26px 24px}
.aj-feature h2{font-family:var(--aj-serif);font-size:clamp(22px,2.6vw,29px);line-height:1.26;font-weight:700;margin:0 0 13px;text-wrap:pretty}
.aj-feature p{font-size:17px;line-height:1.72;color:#474C55;margin:0 0 16px}
.aj-feature__foot{padding-top:14px;border-top:1px solid var(--aj-rule);font-family:var(--aj-display);font-size:12px;letter-spacing:.08em;color:var(--aj-muted)}

.aj-sidehead{font-family:var(--aj-display);font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--aj-deep);
  padding-bottom:11px;border-bottom:2px solid var(--aj-deep);margin-bottom:4px}
.aj-mini{padding-block:16px;border-bottom:1px solid var(--aj-rule)}
.aj-mini:last-child{border-bottom:0}
.aj-mini h3{font-family:var(--aj-serif);font-size:18px;line-height:1.33;font-weight:600;margin:0 0 9px}
.aj-mini .aj-meta{font-family:var(--aj-display);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--aj-muted)}
.aj-mini .aj-cat{color:var(--aj-brass)}

/* ---------- Sections par rubrique ---------- */
.aj-section{padding-block:38px 0}
.aj-section__head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;
  padding-bottom:12px;border-bottom:2px solid var(--aj-deep);margin-bottom:22px}
.aj-section__head h2{font-family:var(--aj-display);font-size:clamp(16px,2vw,19px);font-weight:500;letter-spacing:.18em;
  text-transform:uppercase;margin:0;color:var(--aj-deep)}
.aj-more{font-family:var(--aj-display);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--aj-brass);white-space:nowrap}

/* ---------- Grille de cartes : rapport ~1,9 ---------- */
.aj-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}
.aj-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}
.aj-card{background:var(--aj-card);border:1px solid var(--aj-rule);border-radius:var(--aj-radius);
  display:flex;flex-direction:column;overflow:hidden}
.aj-card__media{aspect-ratio:16/7;background:#E7E9ED;border-bottom:1px solid var(--aj-rule);overflow:hidden}
.aj-card__media img{width:100%;height:100%;object-fit:cover}
.aj-card__body{padding:13px 16px;display:flex;flex-direction:column;gap:8px}
.aj-card__cat{font-family:var(--aj-display);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--aj-brass)}
.aj-card h3{font-family:var(--aj-serif);font-size:17px;line-height:1.3;font-weight:600;margin:0}
.aj-card .aj-meta{font-family:var(--aj-display);font-size:11px;letter-spacing:.08em;color:var(--aj-muted);margin-top:auto}
/* ceinture contre GP Premium */
.aj-grid>*{width:auto;max-width:none;float:none;padding:0}

/* ---------- Bandeau rubriques ---------- */
.aj-ribbon{background:var(--aj-deep);margin-top:44px;padding-block:34px}
.aj-ribbon .aj-wrap{display:flex;align-items:center;justify-content:space-between;gap:40px;flex-wrap:wrap}
.aj-ribbon__title{font-family:var(--aj-display);font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--aj-brass-2);margin-bottom:11px}
.aj-ribbon__links{display:flex;gap:10px;flex-wrap:wrap}
.aj-ribbon__links a{border:1px solid #3A3F7A;border-radius:var(--aj-radius);padding:9px 18px;color:var(--aj-paper);
  font-family:var(--aj-display);font-size:12px;letter-spacing:.1em;text-transform:uppercase}
.aj-ribbon__links a:hover{border-color:var(--aj-brass);color:#fff}
.aj-ribbon__links b{color:var(--aj-brass-2);font-weight:400}
.aj-btn{background:var(--aj-brass);color:var(--aj-ink);border-radius:var(--aj-radius);padding:13px 26px;
  font-family:var(--aj-display);font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:600;display:inline-block}
.aj-btn:hover{background:var(--aj-brass-2);color:var(--aj-ink)}

/* ---------- Article ---------- */
.aj-breadcrumb{border-top:1px solid var(--aj-rule);border-bottom:1px solid var(--aj-rule)}
.aj-breadcrumb .aj-wrap{padding-block:10px;font-family:var(--aj-display);font-size:11px;letter-spacing:.12em;
  text-transform:uppercase;color:var(--aj-muted)}
.aj-breadcrumb .aj-here{color:var(--aj-brass)}
.aj-layout{display:flex;gap:44px;align-items:flex-start;padding-block:30px 0}
.aj-main{flex:1 1 auto;min-width:0}
.aj-side{width:320px;flex:0 0 auto}
.aj-eyebrow{font-family:var(--aj-display);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--aj-brass);margin-bottom:15px}
.aj-title{font-family:var(--aj-display);font-size:clamp(24px,3.6vw,34px);font-weight:500;letter-spacing:.04em;
  line-height:1.26;margin:0 0 18px;color:var(--aj-deep);text-wrap:pretty}
.aj-dek{font-family:var(--aj-serif);font-size:clamp(18px,2.2vw,21px);line-height:1.68;color:#474C55;margin:0 0 20px;font-style:italic}
.aj-byline{display:flex;align-items:center;gap:13px;padding-block:13px;border-top:1px solid var(--aj-rule);
  border-bottom:1px solid var(--aj-rule);margin-bottom:26px;font-family:var(--aj-display);font-size:12px;letter-spacing:.08em;color:var(--aj-muted)}
.aj-byline img{width:32px;height:32px;border-radius:50%}
.aj-figure{margin:0 0 28px}
.aj-figure img{width:100%;border:1px solid var(--aj-rule);border-radius:var(--aj-radius)}
.aj-figure figcaption{font-family:var(--aj-display);font-size:11px;letter-spacing:.06em;color:var(--aj-muted);margin-top:9px}

.aj-toc{background:var(--aj-card);border:1px solid var(--aj-rule);border-left:3px solid var(--aj-brass);
  border-radius:var(--aj-radius);padding:20px 24px;margin-bottom:30px}
.aj-toc__title{font-family:var(--aj-display);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--aj-deep);margin-bottom:13px}
.aj-toc ol{margin:0;padding-left:20px;font-size:16px;line-height:1.9}

.aj-content{font-size:18px;line-height:1.82;color:var(--aj-body)}
.aj-content>*{max-width:100%}
.aj-content p{margin:0 0 18px}
.aj-content h2{font-family:var(--aj-display);font-size:clamp(19px,2.4vw,23px);font-weight:500;letter-spacing:.05em;
  line-height:1.34;margin:30px 0 14px;color:var(--aj-deep);scroll-margin-top:20px}
.aj-content h3{font-family:var(--aj-serif);font-size:21px;font-weight:700;line-height:1.35;margin:26px 0 12px;scroll-margin-top:20px}
.aj-content a{color:var(--aj-link);text-decoration:underline;text-underline-offset:3px;font-weight:600}
.aj-content ul,.aj-content ol{margin:0 0 18px;padding-left:24px}
.aj-content li{margin-bottom:9px}
.aj-content img{border-radius:var(--aj-radius);margin-block:10px}
.aj-content blockquote{margin:24px 0;padding:16px 22px;background:var(--aj-card);border-left:3px solid var(--aj-brass);font-style:italic}
.aj-content table{width:100%;border-collapse:collapse;margin-bottom:20px;font-size:16px}
.aj-content th,.aj-content td{border:1px solid var(--aj-rule);padding:10px 12px;text-align:left}
.aj-content th{background:var(--aj-card);font-family:var(--aj-display);font-size:13px;letter-spacing:.06em;text-transform:uppercase}

.aj-alsoread{margin:32px 0;padding:20px 24px;background:var(--aj-card);border:1px solid var(--aj-rule);border-radius:var(--aj-radius)}
.aj-alsoread__title{font-family:var(--aj-display);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--aj-brass);margin-bottom:10px}
.aj-alsoread a{font-family:var(--aj-serif);font-size:20px;font-weight:600;line-height:1.32}

.aj-author{display:flex;gap:20px;padding:24px 26px;background:var(--aj-deep);color:#E9E6E4;border-radius:var(--aj-radius);margin-top:34px}
.aj-author img{width:68px;height:68px;border-radius:50%;flex:0 0 auto}
.aj-author__ph{width:68px;height:68px;border-radius:50%;background:var(--aj-deep-soft);flex:0 0 auto}
.aj-author__k{font-family:var(--aj-display);font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--aj-brass-2);margin-bottom:8px}
.aj-author__n{font-family:var(--aj-serif);font-size:19px;font-weight:600;color:var(--aj-paper);margin-bottom:7px}
.aj-author p{font-size:15px;line-height:1.72;margin:0;color:#C9B9A4}

/* ---------- Barre laterale ---------- */
.aj-widget{background:var(--aj-card);border:1px solid var(--aj-rule);border-radius:var(--aj-radius);padding:20px 22px;margin-bottom:22px}
.aj-widget__title{font-family:var(--aj-display);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--aj-deep);
  padding-bottom:11px;border-bottom:1px solid var(--aj-rule);margin-bottom:4px}
.aj-widget ul{list-style:none;margin:0;padding:0;font-size:16px}
.aj-widget li{padding-block:10px;border-bottom:1px solid #EDEFF2;display:flex;justify-content:space-between;gap:12px;line-height:1.4}
.aj-widget li:last-child{border-bottom:0}
.aj-widget .aj-count{color:var(--aj-brass);font-family:var(--aj-display);font-size:13px}
.aj-about{border-color:var(--aj-deep)}
.aj-about p{font-size:15px;line-height:1.65;color:#474C55;margin:0 0 12px}
.aj-about a{font-weight:600;color:var(--aj-link)}

/* ---------- Pagination ---------- */
.aj-pagination{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin:34px 0 0;
  font-family:var(--aj-display);font-size:14px;letter-spacing:.06em}
.aj-pagination .page-numbers{border:1px solid var(--aj-rule-2);border-radius:var(--aj-radius);padding:10px 16px;background:var(--aj-card)}
.aj-pagination .current{background:var(--aj-deep);color:var(--aj-paper);border-color:var(--aj-deep)}

/* ---------- Recherche ---------- */
.aj-searchform{display:flex;gap:10px}
.aj-searchform input[type=search]{flex:1 1 auto;min-width:0;height:44px;padding:0 14px;font:inherit;font-size:16px;
  border:1px solid var(--aj-rule-2);border-radius:var(--aj-radius);background:var(--aj-card);color:var(--aj-ink)}
.aj-searchform button{height:44px;padding:0 20px;border:0;border-radius:var(--aj-radius);background:var(--aj-brass);
  color:var(--aj-ink);font-family:var(--aj-display);font-size:13px;letter-spacing:.1em;text-transform:uppercase;font-weight:600;cursor:pointer}

/* ---------- Pied de page ---------- */
.aj-footer{background:var(--aj-deep-dark);color:#CBC3C1;margin-top:48px}
.aj-footer__top{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;
  padding-block:30px;border-bottom:1px solid #2A2E63}
.aj-footer__logo{font-family:var(--aj-display);font-size:19px;letter-spacing:.12em;text-transform:uppercase;color:var(--aj-paper)}
.aj-footer__base{font-family:var(--aj-display);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--aj-brass)}
.aj-footer__bottom{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;
  padding-block:18px 30px;font-size:14px}
.aj-footer__bottom ul{list-style:none;margin:0;padding:0;display:flex;gap:26px;flex-wrap:wrap}
.aj-footer a:hover{color:var(--aj-brass-2)}

/* ---------- Page simple ---------- */
.aj-page{padding-block:36px 0}
.aj-page .aj-title{max-width:none}

/* ---------- Commentaires ---------- */
.aj-comments{margin-top:40px;padding-top:24px;border-top:2px solid var(--aj-deep)}
.aj-comments h2{font-family:var(--aj-display);font-size:17px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--aj-deep);margin:0 0 18px}
.aj-comments ol{list-style:none;margin:0;padding:0}
.aj-comments .comment-body{background:var(--aj-card);border:1px solid var(--aj-rule);border-radius:var(--aj-radius);padding:16px 20px;margin-bottom:16px}

/* ---------- Responsive ---------- */
@media (max-width:1060px){
  .aj-lede,.aj-layout{flex-direction:column;gap:32px}
  .aj-lede__side,.aj-side{width:100%}
  .aj-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
}
@media (max-width:720px){
  body{font-size:17px}
  .aj-grid,.aj-grid--2{grid-template-columns:1fr;gap:20px}
  .aj-baseline i{width:28px}
  .aj-topbar .aj-wrap{font-size:11px;gap:10px}
  .aj-topbar .aj-sign{display:none}
  .aj-nav ul{gap:10px 20px;font-size:12px}
  .aj-feature__body{padding:18px 18px 20px}
  .aj-ribbon .aj-wrap{gap:22px}
  .aj-footer__top,.aj-footer__bottom{flex-direction:column;align-items:flex-start}
}
