/* ============================================================
   AQUA CENTER — Blog & Templates (plugin)
   Charte : noir/teal, Sora + DM Sans
   ============================================================ */
.ac-bl,.ac-art,.aqb-404{
  --accent:#007f7f;--mid:#73b9b9;--light:#b9dcdc;--border:rgba(185,220,220,.16);
  --display:'Sora',sans-serif;--body:'DM Sans',sans-serif;
  background:#000;color:#fff;font-family:var(--body);
}
.ac-bl *,.ac-art *,.aqb-404 *{box-sizing:border-box;}
.ac-bl a,.ac-art a,.aqb-404 a{text-decoration:none;}

/* ---------- LISTE (archive / catégorie / recherche) ---------- */
.ac-bl{padding:96px 40px;position:relative;overflow:hidden;}
.ac-bl::before{content:'';position:absolute;top:-10%;right:-8%;width:46%;height:60%;background:radial-gradient(ellipse at center,rgba(0,127,127,.16),transparent 70%);filter:blur(90px);pointer-events:none;}
.ac-bl-head{position:relative;z-index:1;text-align:center;max-width:680px;margin:0 auto 46px;}
.ac-bl-eyebrow{display:inline-block;font-family:var(--display);font-size:11px;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:var(--mid);margin-bottom:14px;}
.ac-bl-title{font-family:var(--display);font-size:clamp(28px,4vw,42px);font-weight:800;letter-spacing:.5px;text-transform:uppercase;line-height:1.12;margin:0 0 16px;color:#fff;}
.ac-bl-sub{font-size:15px;line-height:1.7;font-weight:300;color:rgba(185,220,220,.72);margin:0;}
.ac-bl-searchbar{display:flex;gap:10px;justify-content:center;margin-top:24px;flex-wrap:wrap;}
.ac-bl-searchbar input{background:rgba(0,20,20,.6);border:1px solid var(--border);border-radius:10px;padding:13px 16px;color:#fff;font-family:var(--body);font-size:14px;min-width:260px;outline:none;}
.ac-bl-searchbar input:focus{border-color:var(--mid);}
.ac-bl-searchbar button{display:inline-flex;align-items:center;gap:8px;background:var(--accent);color:#fff;border:0;border-radius:10px;padding:0 20px;font-family:var(--display);font-size:13px;font-weight:600;cursor:pointer;}
.ac-bl-searchbar svg{width:16px;height:16px;stroke:#fff;stroke-width:2;fill:none;}

.ac-bl-layout{position:relative;z-index:1;max-width:1240px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:44px;align-items:start;}
.ac-bl-main{min-width:0;}
.ac-bl-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;}
.ac-bl-empty{color:rgba(185,220,220,.6);font-size:15px;padding:20px 0;}

/* Carte */
.ac-post{display:flex;flex-direction:column;background:rgba(0,40,40,.4);border:1px solid var(--border);border-radius:16px;overflow:hidden;transition:transform .35s ease,border-color .35s ease;}
.ac-post:hover{transform:translateY(-5px);border-color:rgba(115,185,185,.45);}
.ac-post-media{position:relative;aspect-ratio:16/10;overflow:hidden;background:#012020;}
.ac-post-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s cubic-bezier(.22,1,.36,1);}
.ac-post:hover .ac-post-media img{transform:scale(1.06);}
.ac-post-ph{width:100%;height:100%;background:linear-gradient(135deg,#012626,#003b3b);}
.ac-post-cat{position:absolute;top:12px;left:12px;z-index:2;font-family:var(--display);font-size:10px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;color:#fff;background:linear-gradient(135deg,#0a5555,#0f8a8a 60%,#7cc3c3);padding:6px 12px;border-radius:8px;}
.ac-post-body{padding:22px;display:flex;flex-direction:column;flex:1;}
.ac-post-date{font-size:12px;font-weight:500;color:var(--mid);margin-bottom:9px;}
.ac-post-title{font-family:var(--display);font-size:18px;font-weight:700;line-height:1.32;color:#fff;margin:0 0 10px;transition:color .25s ease;}
.ac-post:hover .ac-post-title{color:var(--light);}
.ac-post-excerpt{font-size:13.5px;line-height:1.65;font-weight:300;color:rgba(185,220,220,.62);margin:0 0 18px;flex:1;}
.ac-post-more{font-family:var(--display);font-size:12.5px;font-weight:600;letter-spacing:.5px;color:#fff;display:inline-flex;align-items:center;gap:7px;}
.ac-post-more svg{width:15px;height:15px;stroke:var(--mid);stroke-width:2;fill:none;transition:transform .25s ease;}
.ac-post:hover .ac-post-more svg{transform:translateX(4px);}

/* Pagination */
.aqb-pagination{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:44px;}
.aqb-pagination .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:42px;height:42px;padding:0 12px;border-radius:10px;border:1px solid var(--border);color:var(--light);font-family:var(--display);font-size:14px;font-weight:600;transition:all .2s ease;}
.aqb-pagination a.page-numbers:hover{border-color:var(--accent);background:rgba(0,127,127,.16);color:#fff;}
.aqb-pagination .page-numbers.current{background:linear-gradient(135deg,#0a5555,#0f8a8a 60%,#7cc3c3);border-color:transparent;color:#fff;}
.aqb-pagination .page-numbers.dots{border:0;}

/* ---------- EDGEBAR (partagée) ---------- */
.ac-edge{position:sticky;top:96px;display:flex;flex-direction:column;gap:20px;}
.ac-edge-block{background:rgba(0,45,45,.4);border:1px solid var(--border);border-radius:16px;padding:20px;}
.ac-edge-title{font-family:var(--display);font-size:13px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--mid);margin:0 0 14px;}
.ac-edge-cta{padding:0;overflow:hidden;}
.ac-edge-cta-img{height:150px;background:#012020 center/cover no-repeat;}
.ac-edge-cta-body{padding:20px;}
.ac-edge-cta-body h4{font-family:var(--display);font-size:17px;font-weight:700;color:#fff;margin:0 0 8px;}
.ac-edge-cta-body p{font-size:13px;line-height:1.6;font-weight:300;color:rgba(185,220,220,.7);margin:0 0 16px;}
.ac-edge-btn{display:inline-flex;align-items:center;gap:8px;font-family:var(--display);font-size:12px;font-weight:600;letter-spacing:1px;text-transform:uppercase;color:#fff;background:linear-gradient(135deg,#0a5555,#0f8a8a 60%,#7cc3c3);padding:12px 20px;border-radius:10px;box-shadow:0 10px 24px -12px rgba(0,127,127,.9);transition:transform .25s ease;}
.ac-edge-btn svg{width:15px;height:15px;stroke:currentColor;stroke-width:2;fill:none;transition:transform .25s ease;}
.ac-edge-btn:hover{transform:translateY(-2px);}.ac-edge-btn:hover svg{transform:translateX(3px);}
.ac-toc{display:flex;flex-direction:column;gap:2px;}
.ac-toc a{font-size:13.5px;line-height:1.5;color:rgba(185,220,220,.72);padding:7px 10px;border-left:2px solid transparent;border-radius:0 6px 6px 0;transition:all .2s ease;}
.ac-toc a.lvl-3{padding-left:22px;font-size:12.5px;}
.ac-toc a:hover{color:#fff;background:rgba(0,127,127,.12);}
.ac-toc a.is-active{color:#fff;border-left-color:var(--accent);background:rgba(0,127,127,.16);}
.ac-edge-cats{display:flex;flex-wrap:wrap;gap:8px;}
.ac-edge-cats a{font-size:12px;color:var(--light);background:rgba(0,127,127,.12);border:1px solid rgba(0,127,127,.3);padding:7px 14px;border-radius:100px;transition:all .2s ease;}
.ac-edge-cats a:hover{color:#fff;background:rgba(0,127,127,.28);}
.ac-edge-cats a.is-active{color:#fff;background:linear-gradient(135deg,#0a5555,#0f8a8a 60%,#7cc3c3);border-color:transparent;}
.ac-edge-search{display:flex;gap:8px;}
.ac-edge-search input{flex:1;min-width:0;background:rgba(0,20,20,.6);border:1px solid var(--border);border-radius:10px;padding:11px 14px;color:#fff;font-family:var(--body);font-size:13.5px;outline:none;transition:border-color .2s ease;}
.ac-edge-search input::placeholder{color:rgba(185,220,220,.45);}
.ac-edge-search input:focus{border-color:var(--mid);}
.ac-edge-search button{flex:0 0 44px;background:var(--accent);border:0;border-radius:10px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s ease;}
.ac-edge-search button:hover{background:#0f8a8a;}
.ac-edge-search svg{width:18px;height:18px;stroke:#fff;stroke-width:2;fill:none;}
.ac-edge-share{display:flex;flex-wrap:wrap;gap:8px;}
.ac-edge-share a,.ac-edge-share button{font-family:var(--body);font-size:12.5px;color:#fff;background:rgba(0,20,20,.5);border:1px solid var(--border);padding:9px 14px;border-radius:8px;cursor:pointer;transition:all .2s ease;}
.ac-edge-share a:hover,.ac-edge-share button:hover{border-color:var(--accent);background:rgba(0,127,127,.18);}

/* ---------- ARTICLE (single) ---------- */
.ac-art-inner{max-width:1200px;margin:0 auto;padding:110px 24px 40px;}
.ac-art-head{max-width:820px;margin:0 auto 8px;text-align:center;}
.ac-art-cat{display:inline-block;font-family:var(--display);font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:#fff;background:linear-gradient(135deg,#0a5555,#0f8a8a 60%,#7cc3c3);padding:7px 16px;border-radius:8px;margin-bottom:20px;}
.ac-art-title{font-family:var(--display);font-size:clamp(28px,4.4vw,46px);font-weight:800;line-height:1.14;letter-spacing:.3px;color:#fff;margin:0 0 20px;}
.ac-art-meta{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:14px;font-size:13.5px;color:rgba(185,220,220,.8);margin-bottom:22px;}
.ac-art-meta span{display:inline-flex;align-items:center;gap:7px;}
.ac-art-meta svg{width:15px;height:15px;stroke:var(--mid);stroke-width:1.7;fill:none;}
.ac-art-meta .dot{width:4px;height:4px;border-radius:50%;background:rgba(185,220,220,.4);}
.ac-art-intro{font-size:18px;line-height:1.7;font-weight:300;color:var(--light);margin:0 auto 30px;max-width:720px;}
.ac-art-figure{margin:0;}
.ac-art-figure img{width:100%;height:auto;border-radius:18px;display:block;box-shadow:0 40px 80px -40px rgba(0,0,0,.8);}
.ac-art-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:52px;align-items:start;margin-top:52px;}
.ac-art-main{min-width:0;}
.ac-art-content{font-size:17px;line-height:1.85;color:rgba(235,245,245,.9);font-weight:300;}
.ac-art-content > *{margin:0 0 22px;}
.ac-art-content h2{font-family:var(--display);font-size:27px;font-weight:700;color:#fff;margin:44px 0 16px;scroll-margin-top:100px;}
.ac-art-content h3{font-family:var(--display);font-size:21px;font-weight:600;color:#fff;margin:34px 0 12px;scroll-margin-top:100px;}
.ac-art-content a{color:var(--mid);text-decoration:underline;text-underline-offset:3px;}
.ac-art-content a:hover{color:var(--light);}
.ac-art-content strong{color:#fff;font-weight:600;}
.ac-art-content ul,.ac-art-content ol{padding-left:22px;}
.ac-art-content li{margin-bottom:10px;}
.ac-art-content img{max-width:100%;height:auto;border-radius:14px;}
.ac-art-content blockquote{border-left:3px solid var(--accent);padding:6px 0 6px 22px;margin:28px 0;color:var(--light);font-style:italic;font-size:19px;}
.ac-art-tags{margin-top:34px;display:flex;flex-wrap:wrap;gap:8px;}
.ac-art-tags a{font-size:12px;color:var(--light);background:rgba(0,45,45,.5);border:1px solid var(--border);padding:6px 13px;border-radius:100px;}
.ac-art-back{display:inline-flex;align-items:center;gap:9px;margin-top:34px;font-family:var(--display);font-size:13px;font-weight:600;letter-spacing:1px;text-transform:uppercase;color:var(--mid);}
.ac-art-back svg{width:18px;height:18px;stroke:currentColor;stroke-width:2;fill:none;transition:transform .25s ease;}
.ac-art-back:hover{color:#fff;}.ac-art-back:hover svg{transform:translateX(-4px);}
.ac-art-related{max-width:1200px;margin:70px auto 0;padding:56px 24px 96px;border-top:1px solid var(--border);}
.ac-art-related-title{font-family:var(--display);font-size:24px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:#fff;text-align:center;margin:0 0 34px;}
.ac-art-related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.ac-rel-card{display:flex;flex-direction:column;background:rgba(0,40,40,.4);border:1px solid var(--border);border-radius:16px;overflow:hidden;transition:transform .35s ease,border-color .35s ease;}
.ac-rel-card:hover{transform:translateY(-5px);border-color:rgba(115,185,185,.45);}
.ac-rel-media{position:relative;aspect-ratio:16/10;overflow:hidden;background:#012020;}
.ac-rel-media img{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.22,1,.36,1);}
.ac-rel-card:hover .ac-rel-media img{transform:scale(1.06);}
.ac-rel-cat{position:absolute;top:10px;left:10px;font-family:var(--display);font-size:9.5px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:#fff;background:linear-gradient(135deg,#0a5555,#0f8a8a 60%,#7cc3c3);padding:5px 10px;border-radius:7px;}
.ac-rel-body{padding:18px;}.ac-rel-date{font-size:11.5px;color:var(--mid);}
.ac-rel-title{font-family:var(--display);font-size:16px;font-weight:700;line-height:1.34;color:#fff;margin:8px 0 0;}

/* ---------- 404 ---------- */
.aqb-404{min-height:78vh;display:flex;align-items:center;justify-content:center;padding:120px 24px 90px;position:relative;overflow:hidden;text-align:center;}
.aqb-404::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 60% 50% at 50% 40%,rgba(0,127,127,.18),transparent 70%);filter:blur(80px);pointer-events:none;}
.aqb-404-inner{position:relative;z-index:1;max-width:640px;}
.aqb-404-code{font-family:var(--display);font-size:clamp(80px,16vw,150px);font-weight:800;line-height:1;letter-spacing:2px;background:linear-gradient(135deg,#0f8a8a,#7cc3c3);-webkit-background-clip:text;background-clip:text;color:transparent;display:block;}
.aqb-404-title{font-family:var(--display);font-size:clamp(22px,3.4vw,32px);font-weight:700;color:#fff;margin:12px 0 14px;}
.aqb-404-sub{font-size:15px;line-height:1.7;font-weight:300;color:rgba(185,220,220,.72);margin:0 auto 28px;max-width:480px;}
.aqb-404-search{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-bottom:26px;}
.aqb-404-search input{background:rgba(0,20,20,.6);border:1px solid var(--border);border-radius:10px;padding:14px 16px;color:#fff;font-family:var(--body);font-size:14px;min-width:280px;outline:none;}
.aqb-404-search input:focus{border-color:var(--mid);}
.aqb-404-search button{display:inline-flex;align-items:center;gap:8px;background:var(--accent);color:#fff;border:0;border-radius:10px;padding:0 22px;font-family:var(--display);font-size:13px;font-weight:600;cursor:pointer;}
.aqb-404-search svg{width:16px;height:16px;stroke:#fff;stroke-width:2;fill:none;}
.aqb-404-links{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-bottom:28px;}
.aqb-404-links a{font-family:var(--display);font-size:12px;font-weight:600;letter-spacing:1px;text-transform:uppercase;color:var(--light);border:1px solid rgba(185,220,220,.25);padding:11px 20px;border-radius:100px;transition:all .25s ease;}
.aqb-404-links a:hover{color:#fff;border-color:var(--accent);background:rgba(0,127,127,.15);}
.aqb-404-home{display:inline-flex;align-items:center;gap:9px;font-family:var(--display);font-size:13px;font-weight:600;letter-spacing:1px;text-transform:uppercase;color:var(--mid);}
.aqb-404-home svg{width:18px;height:18px;stroke:currentColor;stroke-width:2;fill:none;transition:transform .25s ease;}
.aqb-404-home:hover{color:#fff;}.aqb-404-home:hover svg{transform:translateX(-4px);}

/* ---------- HALO bleu au survol ---------- */
.halo-blog,.halo-carte{position:relative !important;isolation:isolate !important;}
.halo-blog::before,.halo-carte::before{content:"" !important;position:absolute !important;inset:0 !important;border-radius:inherit !important;background:radial-gradient(180px circle at var(--mx,50%) var(--my,50%),rgba(185,220,220,.45),rgba(185,220,220,.18) 55%,transparent 75%) !important;opacity:0 !important;transition:opacity .4s ease !important;z-index:0 !important;pointer-events:none !important;}
.halo-blog.ac-halo-active::before,.halo-carte.ac-halo-active::before{opacity:1 !important;}
.halo-blog>*,.halo-carte>*{position:relative !important;z-index:1 !important;}

/* ---------- RESPONSIVE ---------- */
@media(max-width:1024px){
  .ac-bl-layout,.ac-art-layout{grid-template-columns:1fr;}
  .ac-edge{display:none !important;}
  .ac-art-related-grid{grid-template-columns:repeat(2,1fr);}
}
@media(max-width:640px){
  .ac-bl{padding:60px 20px;}
  .ac-bl-grid{grid-template-columns:1fr;}
  .ac-art-inner{padding:92px 20px 30px;}
  .ac-art-content,.ac-art-intro{font-size:16px;}
  .ac-art-related-grid{grid-template-columns:1fr;}
}
@media(prefers-reduced-motion:reduce){
  .halo-blog::before,.halo-carte::before{display:none !important;}
  .ac-post,.ac-rel-card{transition:none !important;}
}
