/* =========================================================================
   AOSARS Blog Suite, front-end styles.
   Scoped under .aosars-blog. Four colours only: cyan #00AEFE, indigo #393464,
   white #fff, black #000. Every tint is an rgba() of those four. Montserrat.
   ========================================================================= */
.aosars-blog{
  --cyan:#00AEFE;--indigo:#393464;--white:#FFFFFF;--black:#000000;
  --ink:rgba(0,0,0,.86);--ink-soft:rgba(57,52,100,.72);--ink-faint:rgba(57,52,100,.5);
  --rule:rgba(57,52,100,.14);--tint:rgba(0,174,254,.07);--indigo-tint:rgba(57,52,100,.05);
  font-family:'Montserrat',system-ui,-apple-system,sans-serif;color:var(--ink);line-height:1.6;
}
.aosars-blog *{box-sizing:border-box}
.aosars-blog img{max-width:100%;display:block}
.aosars-blog a{text-decoration:none;color:inherit}
.aosars-blog .ab-eyebrow{color:var(--cyan);font-size:12px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}

/* ---- filter and tools toolbar ---- */
.aosars-blog .ab-filterbar{display:flex;flex-wrap:wrap;align-items:flex-end;gap:16px;padding:6px 0 6px}
.aosars-blog .ab-field{display:flex;flex-direction:column;gap:6px}
.aosars-blog .ab-field label{font-size:10.5px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-faint)}
.aosars-blog .ab-select{position:relative}
.aosars-blog .ab-select::after{content:"";position:absolute;right:14px;top:50%;width:8px;height:8px;
  border-right:2px solid var(--indigo);border-bottom:2px solid var(--indigo);transform:translateY(-70%) rotate(45deg);pointer-events:none}
.aosars-blog .ab-select select{appearance:none;-webkit-appearance:none;font-family:inherit;font-size:13.5px;font-weight:600;
  color:var(--indigo);background:var(--white);border:1px solid var(--rule);border-radius:10px;padding:11px 38px 11px 14px;cursor:pointer;min-width:178px;outline:none;transition:.15s}
.aosars-blog .ab-select select:hover{border-color:var(--cyan)}
.aosars-blog .ab-select select:focus-visible{border-color:var(--cyan);box-shadow:0 0 0 3px rgba(0,174,254,.18)}
.aosars-blog .ab-tools{display:flex;align-items:flex-end;gap:14px;flex-wrap:wrap;margin-left:auto}
.aosars-blog .ab-sortby{display:inline-flex;align-items:center;gap:9px;font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint)}
.aosars-blog .ab-view{display:inline-flex;border:1px solid var(--rule);border-radius:10px;overflow:hidden;height:44px}
.aosars-blog .ab-view button{width:44px;height:100%;display:grid;place-items:center;background:var(--white);border:0;cursor:pointer;color:var(--ink-faint);transition:background .15s,color .15s;font-family:inherit}
.aosars-blog .ab-view button+button{border-left:1px solid var(--rule)}
.aosars-blog .ab-view button:hover{color:var(--indigo);background:var(--tint)}
.aosars-blog .ab-view button[aria-pressed="true"]{background:var(--indigo);color:var(--white)}
.aosars-blog .ab-view button:focus-visible{outline:2px solid var(--cyan);outline-offset:-2px}
.aosars-blog .ab-apply{font-family:inherit;font-weight:700;font-size:13px;color:var(--white);background:var(--indigo);border:0;border-radius:10px;padding:11px 16px;cursor:pointer}
.aosars-blog .ab-result-line{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;padding:14px 0 4px}
.aosars-blog .ab-result-count{font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint)}
.aosars-blog .ab-clear{font-family:inherit;font-size:12.5px;font-weight:700;color:var(--indigo);background:none;border:0;border-bottom:2px solid var(--cyan);padding:2px 0;cursor:pointer}
.aosars-blog .ab-clear:hover{color:var(--cyan)}

/* ---- grid + card ---- */
.aosars-blog .ab-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:8px}
.aosars-blog .ab-grid.ab-grid-3{grid-template-columns:1fr 1fr 1fr}
.aosars-blog .ab-card{border:1px solid var(--rule);border-radius:14px;overflow:hidden;background:var(--white);display:flex;flex-direction:column;height:100%;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}
.aosars-blog .ab-card:hover{transform:translateY(-6px);box-shadow:0 18px 40px rgba(57,52,100,.17);border-color:var(--cyan)}
.aosars-blog .ab-card-img{position:relative;display:block;aspect-ratio:16/10;overflow:hidden;background:var(--indigo-tint)}
.aosars-blog .ab-card-img img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.aosars-blog .ab-card:hover .ab-card-img img{transform:scale(1.04)}
.aosars-blog .ab-card-noimg{position:absolute;inset:0;background:linear-gradient(135deg,var(--indigo-tint),var(--tint))}
.aosars-blog .ab-date{position:absolute;left:12px;top:12px;background:var(--white);color:var(--indigo);font-size:11px;font-weight:800;padding:5px 10px;border-radius:8px;line-height:1.1;text-align:center}
.aosars-blog .ab-date b{display:block;font-size:15px}
.aosars-blog .ab-card-body{padding:16px 17px 18px;display:flex;flex-direction:column;gap:8px;flex:1}
.aosars-blog .ab-cat{color:var(--cyan);font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.aosars-blog .ab-card h3{font-size:16.5px;font-weight:700;color:var(--indigo);line-height:1.24;margin:0}
.aosars-blog .ab-card p{font-size:13.5px;color:var(--ink-soft);line-height:1.5;margin:0}
.aosars-blog .ab-cardfoot{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:4px}
.aosars-blog .ab-pill{background:var(--tint);color:var(--indigo);padding:3px 9px;border-radius:999px;font-size:11.5px;font-weight:700}
.aosars-blog .ab-more{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:800;color:var(--indigo);letter-spacing:.02em}
.aosars-blog .ab-more i{font-style:normal;color:var(--cyan);font-size:15px;line-height:1;transition:transform .2s}
.aosars-blog .ab-card:hover .ab-more i{transform:translateX(5px)}

/* ---- entrance pop ---- */
.aosars-blog .ab-pop{display:flex;opacity:0;transform:translateY(20px) scale(.98);transition:opacity .5s ease,transform .55s cubic-bezier(.2,.75,.25,1)}
.aosars-blog .ab-pop.is-in{opacity:1;transform:none}
.aosars-blog .ab-pop>.ab-card{width:100%}

/* ---- list view ---- */
.aosars-blog .ab-grid.is-list{grid-template-columns:1fr;gap:16px}
.aosars-blog .ab-grid.is-list .ab-pop{display:block}
.aosars-blog .ab-grid.is-list .ab-card{display:grid;grid-template-columns:300px 1fr;grid-template-areas:"thumb body";align-items:stretch}
.aosars-blog .ab-grid.is-list .ab-card-img{grid-area:thumb;aspect-ratio:auto;height:100%;min-height:172px}
.aosars-blog .ab-grid.is-list .ab-card-body{grid-area:body;padding:18px 20px}
.aosars-blog .ab-grid.is-list .ab-card h3{font-size:18px}

/* ---- empty state ---- */
.aosars-blog .ab-empty{text-align:center;padding:48px 20px;border:1px dashed var(--rule);border-radius:14px;margin-top:6px}
.aosars-blog .ab-empty p{color:var(--ink-soft);font-size:15px;font-weight:600;margin-bottom:14px}

/* ---- pagination ---- */
.aosars-blog .ab-pagination{margin-top:30px}
.aosars-blog .ab-pagination .page-numbers{list-style:none;display:flex;gap:8px;justify-content:center;padding:0;margin:0;flex-wrap:wrap}
.aosars-blog .ab-pagination .page-numbers li .page-numbers{min-width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--rule);border-radius:9px;font-size:13.5px;font-weight:700;color:var(--ink-soft);padding:0 10px;transition:.15s}
.aosars-blog .ab-pagination .page-numbers li .page-numbers:hover{border-color:var(--cyan);color:var(--indigo)}
.aosars-blog .ab-pagination .page-numbers li .page-numbers.current{background:var(--indigo);color:var(--white);border-color:var(--indigo)}

/* ---- carousel (content shelf, no autoplay) ---- */
.aosars-blog .ab-carousel-sec{padding:30px 0}
.aosars-blog .ab-carousel-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;flex-wrap:wrap;margin-bottom:22px}
.aosars-blog .ab-carousel-head h2{font-size:clamp(22px,3vw,30px);font-weight:800;color:var(--indigo);line-height:1.12;margin:8px 0 0}
.aosars-blog .ab-carousel-ctrls{display:flex;align-items:center;gap:12px}
.aosars-blog .ab-carousel-count{font-size:12.5px;font-weight:700;color:var(--ink-faint);min-width:54px;text-align:center}
.aosars-blog .ab-cbtn{width:44px;height:44px;border-radius:50%;border:1px solid var(--rule);background:var(--white);color:var(--indigo);font-size:18px;font-weight:800;cursor:pointer;transition:.16s;font-family:inherit;display:inline-flex;align-items:center;justify-content:center}
.aosars-blog .ab-cbtn:hover:not(:disabled){background:var(--indigo);color:var(--white);border-color:var(--indigo)}
.aosars-blog .ab-cbtn:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}
.aosars-blog .ab-cbtn:disabled{opacity:.35;cursor:not-allowed}
.aosars-blog .ab-allink{font-size:13px;font-weight:700;color:var(--indigo)}
.aosars-blog .ab-allink:hover{color:var(--cyan)}
.aosars-blog .ab-carousel-track{display:flex;gap:22px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding:6px 2px 18px;list-style:none;margin:0;scrollbar-width:none}
.aosars-blog .ab-carousel-track::-webkit-scrollbar{display:none}
.aosars-blog .ab-carousel-track:focus-visible{outline:2px solid var(--cyan);outline-offset:4px;border-radius:14px}
.aosars-blog .ab-slide{flex:0 0 calc((100% - 44px)/3);scroll-snap-align:start;min-width:0}
.aosars-blog .ab-carousel-dots{display:flex;gap:7px;justify-content:center;margin-top:4px}
.aosars-blog .ab-dotbtn{width:8px;height:8px;border-radius:50%;border:0;background:var(--rule);cursor:pointer;padding:0;transition:.16s}
.aosars-blog .ab-dotbtn.is-on{background:var(--cyan);width:22px;border-radius:999px}
.aosars-blog .ab-dotbtn:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}

/* ---- related ---- */
.aosars-blog .ab-related{padding:20px 0}
.aosars-blog .ab-section-bar{display:flex;align-items:center;justify-content:space-between;border-bottom:2px solid var(--indigo);padding-bottom:10px;margin-bottom:22px}
.aosars-blog .ab-section-bar h2{font-size:18px;font-weight:800;color:var(--indigo);margin:0}
.aosars-blog .ab-related .ab-grid{grid-template-columns:1fr 1fr 1fr}

/* ---- responsive ---- */
@media(max-width:900px){
  .aosars-blog .ab-grid,.aosars-blog .ab-grid.ab-grid-3,.aosars-blog .ab-related .ab-grid{grid-template-columns:1fr 1fr}
  .aosars-blog .ab-slide{flex-basis:calc((100% - 22px)/2)}
}
@media(max-width:640px){
  .aosars-blog .ab-grid,.aosars-blog .ab-grid.ab-grid-3,.aosars-blog .ab-related .ab-grid{grid-template-columns:1fr}
  .aosars-blog .ab-slide{flex-basis:84%}
  .aosars-blog .ab-carousel-ctrls .ab-cbtn{display:none}
  .aosars-blog .ab-tools{margin-left:0}
  .aosars-blog .ab-field,.aosars-blog .ab-select,.aosars-blog .ab-select select{width:100%;min-width:0}
  .aosars-blog .ab-grid.is-list .ab-card{grid-template-columns:1fr;grid-template-areas:"thumb" "body"}
  .aosars-blog .ab-grid.is-list .ab-card-img{aspect-ratio:16/10;height:auto;min-height:0}
}
@media(prefers-reduced-motion:reduce){
  .aosars-blog .ab-pop{opacity:1;transform:none;transition:none}
  .aosars-blog .ab-carousel-track{scroll-behavior:auto}
  .aosars-blog .ab-card,.aosars-blog .ab-card-img img,.aosars-blog .ab-more i{transition:none}
}
