/* =============================================================
   Adventist Media — "Broadcast & Noticeboard"
   Palette comes from the logo: crimson, brass, warm ink, paper.
   Fonts are self-hosted: faster on slow connections, no third party.
   ============================================================= */

@font-face{
  font-family:"Fraunces";
  src:url("../fonts/fraunces.woff2") format("woff2-variations");
  font-weight:100 900;font-style:normal;font-display:swap;
}
@font-face{
  font-family:"Fraunces";
  src:url("../fonts/fraunces-italic.woff2") format("woff2-variations");
  font-weight:100 900;font-style:italic;font-display:swap;
}
@font-face{
  font-family:"Archivo";
  src:url("../fonts/archivo.woff2") format("woff2-variations");
  font-weight:100 900;font-style:normal;font-display:swap;
}

:root{
  --crimson:#A01F24;
  --crimson-deep:#6E1418;
  --crimson-soft:#F7EBEC;
  --ink:#1A1718;
  --ink-60:#5C5456;
  --ink-40:#8B8285;
  --paper:#FBFAF8;
  --card:#FFFFFF;
  --line:#EBE5E3;
  --brass:#C9A227;
  --brass-soft:#FBF5E2;

  --f-display:"Fraunces",Georgia,"Times New Roman",serif;
  --f-ui:"Archivo",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;

  --r-sm:8px; --r-md:14px; --r-lg:22px;
  --shadow-1:0 1px 2px rgba(26,23,24,.05);
  --shadow-2:0 6px 24px -8px rgba(26,23,24,.18);
  --shadow-3:0 24px 60px -18px rgba(26,23,24,.3);
  --wrap:1180px;
  --gut:clamp(18px,4vw,40px);
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{
  margin:0;background:var(--paper);color:var(--ink);
  font-family:var(--f-ui);font-size:16px;line-height:1.6;
  font-synthesis-weight:none;-webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
img{max-width:100%;display:block}
a{color:inherit}
button,input,select,textarea{font:inherit;color:inherit}
h1,h2,h3,h4{font-family:var(--f-display);font-weight:700;line-height:1.1;
  letter-spacing:-.018em;margin:0 0 .4em;
  font-variation-settings:"opsz" 92,"SOFT" 18,"WONK" 1}
h1{font-size:clamp(2.1rem,5.4vw,3.5rem)}
h2{font-size:clamp(1.6rem,3.5vw,2.45rem)}
h3{font-size:clamp(1.15rem,2vw,1.5rem)}
p{margin:0 0 1em}
:focus-visible{outline:3px solid var(--crimson);outline-offset:3px;border-radius:4px}

.wrap{max-width:var(--wrap);margin:0 auto;padding-inline:var(--gut)}
.am-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:-999px;top:0;z-index:999;background:var(--crimson);color:#fff;
  padding:12px 20px;border-radius:0 0 var(--r-sm) 0;text-decoration:none;font-weight:600}
.skip:focus{left:0}

/* ---------------------------------------------------------------
   HEADER
   --------------------------------------------------------------- */
.am-top{background:var(--ink);color:#F3EDEC;font-size:.8rem;letter-spacing:.005em}
.am-top .wrap{display:flex;align-items:center;justify-content:space-between;
  gap:14px;min-height:38px;flex-wrap:wrap}
.am-top time{color:#BDB2B0}
.am-top-links{display:flex;gap:16px;align-items:center}
.am-top-links a{color:#F3EDEC;text-decoration:none;opacity:.86}
.am-top-links a:hover{opacity:1;color:#fff}

.am-head{position:sticky;top:0;z-index:60;background:rgba(251,250,248,.92);
  backdrop-filter:saturate(1.6) blur(12px);border-bottom:1px solid var(--line)}
.am-head .wrap{display:flex;align-items:center;gap:18px;min-height:72px}
.am-brand{display:flex;align-items:center;gap:11px;text-decoration:none;flex-shrink:0;margin-right:auto}
.am-brand img{height:38px;width:auto}
.am-brand b{font-family:var(--f-display);font-size:1.22rem;font-weight:700;letter-spacing:-.025em;
  line-height:1;display:block}
.am-brand span{display:block;font-size:.66rem;color:var(--ink-40);letter-spacing:.07em;margin-top:3px}

.am-nav{display:flex;gap:4px;align-items:center}
.am-nav a{text-decoration:none;font-size:.935rem;font-weight:500;padding:9px 13px;border-radius:var(--r-sm);
  color:var(--ink-60);white-space:nowrap;transition:color .16s,background .16s}
.am-nav a:hover{color:var(--ink);background:#F2EDEB}
.am-nav a.is-on{color:var(--crimson);background:var(--crimson-soft);font-weight:600}

.am-head-cta{display:flex;align-items:center;gap:9px;flex-shrink:0}
.am-burger{display:none;width:44px;height:44px;border:1px solid var(--line);background:var(--card);
  border-radius:var(--r-sm);cursor:pointer;align-items:center;justify-content:center;padding:0}
.am-burger i{display:block;width:19px;height:2px;background:var(--ink);position:relative;transition:.2s}
.am-burger i::before,.am-burger i::after{content:"";position:absolute;left:0;width:19px;height:2px;
  background:var(--ink);transition:.2s}
.am-burger i::before{top:-6px}.am-burger i::after{top:6px}
.am-burger[aria-expanded=true] i{background:transparent}
.am-burger[aria-expanded=true] i::before{top:0;transform:rotate(45deg)}
.am-burger[aria-expanded=true] i::after{top:0;transform:rotate(-45deg)}

/* live pip in the header */
.am-live-pip{display:inline-flex;align-items:center;gap:6px;background:var(--crimson);color:#fff;
  font-size:.7rem;font-weight:700;letter-spacing:.09em;padding:5px 10px;border-radius:99px;
  text-decoration:none}
.am-live-pip::before{content:"";width:6px;height:6px;border-radius:50%;background:#fff;
  animation:pulse 1.6s ease-in-out infinite}
@keyframes pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.7)}}

@media(max-width:940px){
  .am-burger{display:flex}
  .am-nav{position:fixed;inset:72px 0 auto;background:var(--paper);flex-direction:column;
    align-items:stretch;gap:0;padding:10px var(--gut) 26px;border-bottom:1px solid var(--line);
    box-shadow:var(--shadow-2);transform:translateY(-120%);transition:transform .3s cubic-bezier(.4,0,.2,1);
    max-height:calc(100vh - 72px);overflow-y:auto}
  .am-nav.is-open{transform:translateY(0)}
  .am-nav a{padding:14px 10px;font-size:1.05rem;border-bottom:1px solid var(--line);border-radius:0}
  .am-brand span{display:none}
}

/* ---------------------------------------------------------------
   BUTTONS
   --------------------------------------------------------------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;
  font-family:var(--f-ui);font-size:.95rem;font-weight:600;line-height:1;
  padding:13px 22px;border-radius:99px;border:1.5px solid transparent;
  text-decoration:none;cursor:pointer;transition:background .18s,color .18s,border-color .18s,transform .12s}
.btn:active{transform:translateY(1px)}
.btn-primary{background:var(--crimson);color:#fff;border-color:var(--crimson)}
.btn-primary:hover{background:#8A1A1F;border-color:#8A1A1F}
.btn-ghost{background:transparent;color:var(--ink);border-color:var(--line)}
.btn-ghost:hover{border-color:var(--ink);background:var(--card)}
.btn-light{background:rgba(255,255,255,.12);color:#fff;border-color:rgba(255,255,255,.35)}
.btn-light:hover{background:#fff;color:var(--crimson-deep);border-color:#fff}
.btn-wa{background:#25D366;color:#0B2E18;border-color:#25D366}
.btn-wa:hover{background:#1EB958;border-color:#1EB958}
.btn-sm{padding:9px 16px;font-size:.86rem}
.btn-block{width:100%}

/* ---------------------------------------------------------------
   HERO — the one orchestrated moment
   --------------------------------------------------------------- */
.am-hero{position:relative;overflow:hidden;color:#fff;
  background:
    radial-gradient(120% 90% at 8% 0%,rgba(201,162,39,.16) 0%,transparent 55%),
    radial-gradient(100% 120% at 100% 100%,rgba(160,31,36,.55) 0%,transparent 60%),
    linear-gradient(152deg,#2B0A0C 0%,var(--crimson-deep) 48%,#8E1A1F 100%);
}
/* soft moving studio light */
.am-hero::after{content:"";position:absolute;inset:-40%;pointer-events:none;
  background:radial-gradient(45% 45% at 50% 50%,rgba(255,255,255,.09),transparent 70%);
  animation:sweep 18s ease-in-out infinite alternate}
@keyframes sweep{from{transform:translate3d(-14%,-6%,0)}to{transform:translate3d(16%,8%,0)}}

/* minmax(0,…) stops the headline's min-content width from stealing the second column */
.am-hero .wrap{position:relative;z-index:2;display:grid;
  grid-template-columns:minmax(0,1.06fr) minmax(0,.94fr);
  gap:clamp(28px,5vw,64px);align-items:center;padding-block:clamp(48px,7vw,86px)}

.am-hero-eyebrow{display:inline-flex;align-items:center;gap:9px;font-size:.78rem;font-weight:600;
  letter-spacing:.04em;color:#F0D9A8;background:rgba(201,162,39,.14);
  border:1px solid rgba(201,162,39,.32);padding:7px 15px;border-radius:99px;margin-bottom:22px;
  text-decoration:none}
.am-hero-eyebrow .dot{width:7px;height:7px;border-radius:50%;background:var(--brass)}
.am-hero-eyebrow.is-live{color:#fff;background:var(--crimson);border-color:#D4535A}
.am-hero-eyebrow.is-live .dot{background:#fff;animation:pulse 1.6s ease-in-out infinite}

.am-hero h1{font-size:clamp(2.35rem,5.6vw,4rem);color:#fff;margin:0 0 6px;
  letter-spacing:-.03em;text-wrap:balance}

/* vertical word slider */
.am-rotator{display:block;height:1.14em;overflow:hidden;position:relative;
  font-family:var(--f-display);font-size:clamp(2.35rem,5.6vw,4rem);font-weight:700;
  line-height:1.14;letter-spacing:-.03em;color:var(--brass);margin-bottom:22px}
.am-rotator ul{list-style:none;margin:0;padding:0;transition:transform .75s cubic-bezier(.76,0,.24,1)}
.am-rotator li{height:1.14em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

.am-hero-verse{font-family:var(--f-display);font-style:italic;font-size:clamp(1rem,1.5vw,1.15rem);
  color:#EBD6D4;max-width:46ch;line-height:1.65;margin:0 0 30px;
  border-left:2px solid rgba(201,162,39,.5);padding-left:18px}
.am-hero-acts{display:flex;gap:12px;flex-wrap:wrap}

/* the tilted broadcast card holding the newest stories */
.am-bcast{position:relative;aspect-ratio:4/3.1;border-radius:var(--r-lg);overflow:hidden;
  box-shadow:var(--shadow-3);transform:rotate(1.4deg);background:#1B0709}
.am-bcast-slide{position:absolute;inset:0;opacity:0;transition:opacity .9s ease;
  display:block;text-decoration:none;color:#fff}
.am-bcast-slide.is-on{opacity:1}
.am-bcast-slide img{width:100%;height:100%;object-fit:cover}
.am-bcast-slide figcaption{position:absolute;inset:auto 0 0;padding:70px 24px 22px;
  background:linear-gradient(to top,rgba(14,5,6,.94) 12%,rgba(14,5,6,.6) 52%,transparent)}
.am-bcast-kicker{display:inline-block;font-size:.7rem;font-weight:700;letter-spacing:.1em;
  background:var(--crimson);padding:4px 9px;border-radius:4px;margin-bottom:9px}
.am-bcast-slide h2{font-size:1.3rem;color:#fff;margin:0;line-height:1.24;letter-spacing:-.015em}
.am-bcast-dots{position:absolute;bottom:14px;right:16px;display:flex;gap:6px;z-index:3}
.am-bcast-dots button{width:22px;height:4px;border:0;padding:0;border-radius:99px;cursor:pointer;
  background:rgba(255,255,255,.4);transition:background .2s}
.am-bcast-dots button[aria-current=true]{background:var(--brass)}
.am-bcast-empty{position:absolute;inset:0;display:grid;place-items:center;text-align:center;
  padding:30px;color:#E7CFCD;font-size:.95rem}

@media(max-width:900px){
  .am-hero .wrap{grid-template-columns:1fr;gap:34px}
  .am-bcast{transform:none;aspect-ratio:16/11}
}

/* hero load sequence */
.am-hero .reveal{opacity:0;transform:translateY(16px);animation:heroIn .7s cubic-bezier(.22,1,.36,1) forwards}
.am-hero .reveal:nth-child(1){animation-delay:.05s}
.am-hero .reveal:nth-child(2){animation-delay:.16s}
.am-hero .reveal:nth-child(3){animation-delay:.27s}
.am-hero .reveal:nth-child(4){animation-delay:.38s}
.am-hero .reveal:nth-child(5){animation-delay:.49s}
.am-hero-art{opacity:0;transform:translateY(22px) rotate(1.4deg);
  animation:heroArt .9s cubic-bezier(.22,1,.36,1) .3s forwards}
@keyframes heroIn{to{opacity:1;transform:none}}
@keyframes heroArt{to{opacity:1;transform:rotate(1.4deg)}}

/* ---------------------------------------------------------------
   SECTION FURNITURE
   --------------------------------------------------------------- */
.am-sec{padding-block:clamp(44px,6vw,76px)}
.am-sec-alt{background:var(--card);border-block:1px solid var(--line)}
.am-sec-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;
  margin-bottom:30px;flex-wrap:wrap}
.am-sec-head h2{margin:0}
.am-sec-head p{margin:6px 0 0;color:var(--ink-60);font-size:.95rem;max-width:56ch}
.am-sec-head .more{font-size:.92rem;font-weight:600;color:var(--crimson);text-decoration:none;
  white-space:nowrap;border-bottom:1.5px solid transparent;padding-bottom:2px}
.am-sec-head .more:hover{border-color:var(--crimson)}
.am-rule{height:3px;width:52px;background:var(--crimson);border-radius:2px;margin-bottom:14px}

/* ---------------------------------------------------------------
   NEWS — asymmetric: one lead + a stacked column
   --------------------------------------------------------------- */
.am-news-split{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:clamp(22px,3vw,40px);align-items:start}

.am-lead{display:block;text-decoration:none;color:inherit;border-radius:var(--r-lg);overflow:hidden;
  background:var(--card);box-shadow:var(--shadow-2);transition:transform .25s,box-shadow .25s}
.am-lead:hover{transform:translateY(-3px);box-shadow:var(--shadow-3)}
.am-lead-img{aspect-ratio:16/9.6;overflow:hidden;background:var(--crimson-soft)}
.am-lead-img img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.am-lead:hover .am-lead-img img{transform:scale(1.035)}
.am-lead-body{padding:24px clamp(20px,2.4vw,30px) 28px}
.am-lead h3{font-size:clamp(1.4rem,2.3vw,1.85rem);margin:10px 0 10px;line-height:1.16}
.am-lead p{color:var(--ink-60);margin:0;font-size:.97rem}

.am-stack{display:flex;flex-direction:column;gap:2px;background:var(--line);
  border-radius:var(--r-md);overflow:hidden;box-shadow:var(--shadow-1)}
.am-row{display:grid;grid-template-columns:86px 1fr;gap:15px;padding:15px;background:var(--card);
  text-decoration:none;color:inherit;transition:background .18s;align-items:center}
.am-row:hover{background:#FAF6F5}
.am-row-img{aspect-ratio:1;border-radius:var(--r-sm);overflow:hidden;background:var(--crimson-soft)}
.am-row-img img{width:100%;height:100%;object-fit:cover}
.am-row h4{font-family:var(--f-display);font-size:1.02rem;font-weight:600;line-height:1.3;
  margin:0 0 5px;letter-spacing:-.012em}
.am-row:hover h4{color:var(--crimson)}

.am-meta{display:flex;align-items:center;gap:9px;font-size:.78rem;color:var(--ink-40);flex-wrap:wrap}
.am-meta .sep{width:3px;height:3px;border-radius:50%;background:var(--ink-40);flex-shrink:0}
.am-chip{display:inline-block;font-size:.7rem;font-weight:700;letter-spacing:.07em;
  color:var(--crimson);background:var(--crimson-soft);padding:4px 9px;border-radius:4px}
.am-chip-brass{color:#7A6210;background:var(--brass-soft)}
.am-chip-ink{color:#fff;background:var(--ink)}

@media(max-width:880px){.am-news-split{grid-template-columns:1fr}}

/* ---------------------------------------------------------------
   LIVE BAND
   --------------------------------------------------------------- */
.am-live{background:linear-gradient(140deg,#2B0A0C,var(--crimson-deep) 70%);color:#fff;
  padding-block:clamp(44px,6vw,72px)}
.am-live .wrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:clamp(26px,4vw,52px);align-items:center}
.am-live h2{color:#fff;margin:0 0 12px}
.am-live p{color:#E6CECD;margin:0 0 22px;max-width:50ch}
.am-live-frame{position:relative;aspect-ratio:16/9;border-radius:var(--r-md);overflow:hidden;
  background:#140506;box-shadow:var(--shadow-3);border:1px solid rgba(255,255,255,.1)}
.am-live-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.am-live-off{position:absolute;inset:0;display:grid;place-items:center;text-align:center;padding:26px}
.am-live-off .mark{width:62px;height:62px;border-radius:50%;background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.2);display:grid;place-items:center;margin:0 auto 14px;font-size:1.4rem}
/* when a recording is showing behind it, sit the label at the foot of the frame */
.am-live-off.is-over{place-items:end start;text-align:left;
  background:linear-gradient(to top,rgba(14,5,6,.92) 8%,rgba(14,5,6,.45) 48%,transparent 78%)}
.am-live-off.is-over .mark{margin:0 0 12px}
.am-sched{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:1px;
  background:rgba(255,255,255,.14);border-radius:var(--r-sm);overflow:hidden}
.am-sched li{background:rgba(255,255,255,.07);padding:11px 16px;font-size:.9rem;color:#F0DEDD}
@media(max-width:880px){.am-live .wrap{grid-template-columns:1fr}}

/* ---------------------------------------------------------------
   EVENTS — poster cards with a ticket-stub date tab
   --------------------------------------------------------------- */
.am-posters{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));
  gap:clamp(18px,2.4vw,28px)}
/* two flyers per row on a phone — one per row makes the page endless */
@media(max-width:560px){
  .am-posters{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:13px}
  .am-poster h4{font-size:.95rem}
  .am-poster-body{padding:12px 13px 15px}
  .am-stub{left:10px;width:44px;padding:7px 0 8px}
  .am-stub .d{font-size:1.2rem}
  .am-stub .m{font-size:.56rem}
  .am-where,.am-poster .am-meta{font-size:.76rem}
}
.am-poster{position:relative;display:block;text-decoration:none;color:inherit;background:var(--card);
  border-radius:var(--r-md);overflow:hidden;box-shadow:var(--shadow-2);
  transition:transform .25s,box-shadow .25s}
.am-poster:hover{transform:translateY(-4px);box-shadow:var(--shadow-3)}
.am-poster-img{aspect-ratio:3/4;overflow:hidden;background:linear-gradient(160deg,var(--crimson-soft),#F3E7E8)}
.am-poster-img img{width:100%;height:100%;object-fit:cover}
.am-stub{position:absolute;top:0;left:16px;width:54px;background:var(--crimson);color:#fff;
  text-align:center;padding:9px 0 10px;border-radius:0 0 6px 6px;box-shadow:var(--shadow-2);line-height:1}
.am-stub .d{font-family:var(--f-display);font-size:1.5rem;font-weight:700;display:block}
.am-stub .m{font-size:.62rem;font-weight:700;letter-spacing:.11em;display:block;margin-top:3px;opacity:.92}
.am-stub::after{content:"";position:absolute;left:8px;right:8px;bottom:5px;height:1px;
  border-top:1.5px dashed rgba(255,255,255,.45)}
.am-poster-body{padding:15px 17px 19px}
.am-poster h4{font-family:var(--f-display);font-size:1.07rem;line-height:1.26;margin:0 0 7px;
  letter-spacing:-.014em;font-weight:600}
.am-poster:hover h4{color:var(--crimson)}
.am-where{display:flex;gap:6px;align-items:flex-start;font-size:.82rem;color:var(--ink-60);margin-top:7px}
.am-past{filter:saturate(.45);opacity:.72}

/* ---------------------------------------------------------------
   ANNOUNCEMENTS — a church bulletin, not cards
   --------------------------------------------------------------- */
.am-board{border:1px solid var(--line);border-radius:var(--r-md);overflow:hidden;background:var(--card)}
.am-note{display:grid;grid-template-columns:auto 1fr auto;gap:16px;align-items:center;
  padding:16px clamp(16px,2vw,22px);border-bottom:1px solid var(--line);
  text-decoration:none;color:inherit;transition:background .16s}
.am-note:last-child{border-bottom:0}
.am-note:hover{background:#FAF6F5}
.am-note-type{width:46px;height:46px;border-radius:10px;display:grid;place-items:center;
  font-size:1.2rem;background:var(--crimson-soft);flex-shrink:0}
.am-note h4{font-family:var(--f-display);font-size:1.05rem;margin:0 0 4px;line-height:1.3;font-weight:600}
.am-note:hover h4{color:var(--crimson)}
.am-note-when{text-align:right;font-size:.8rem;color:var(--ink-40);white-space:nowrap}
@media(max-width:620px){
  .am-note{grid-template-columns:auto 1fr}
  .am-note-when{display:none}
}

/* ---------------------------------------------------------------
   BUSINESS DIRECTORY
   --------------------------------------------------------------- */
.am-biz-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(262px,1fr));
  gap:clamp(18px,2.2vw,26px)}
.am-biz{position:relative;background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);
  overflow:hidden;text-decoration:none;color:inherit;display:flex;flex-direction:column;
  transition:transform .22s,box-shadow .22s,border-color .22s}
.am-biz:hover{transform:translateY(-3px);box-shadow:var(--shadow-2);border-color:#DCD3D1}
.am-biz-img{aspect-ratio:16/10;overflow:hidden;background:linear-gradient(160deg,#F4EEEC,#EFE7E5)}
.am-biz-img img{width:100%;height:100%;object-fit:cover}
.am-biz-body{padding:15px 17px 18px;display:flex;flex-direction:column;flex:1}
.am-biz h4{font-family:var(--f-display);font-size:1.1rem;margin:0 0 5px;font-weight:600;line-height:1.26}
.am-biz-serv{font-size:.86rem;color:var(--ink-60);margin:7px 0 0;flex:1}
.am-biz-foot{display:flex;align-items:center;gap:8px;margin-top:14px;padding-top:13px;
  border-top:1px solid var(--line);font-size:.82rem;color:var(--ink-40)}
.am-ribbon{position:absolute;top:12px;right:0;background:var(--brass);color:#2E2406;
  font-size:.68rem;font-weight:800;letter-spacing:.08em;padding:5px 11px 5px 13px;
  border-radius:4px 0 0 4px;box-shadow:var(--shadow-1);z-index:2}
.am-biz-featured{border-color:rgba(201,162,39,.45);box-shadow:0 0 0 1px rgba(201,162,39,.22)}

/* Swipeable on phones, a tidy grid on desktop so nothing looks clipped. */
.am-scroller{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;
  padding:4px 4px 18px;margin-inline:-4px;scrollbar-width:thin}
.am-scroller>*{flex:0 0 clamp(236px,74vw,278px);scroll-snap-align:start}
@media(min-width:920px){
  .am-scroller{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));overflow:visible;
    padding-bottom:4px}
  .am-scroller>*{flex:none}
  .am-scroller>*:nth-child(n+5){display:none}
}

/* ---------------------------------------------------------------
   SUBSCRIBE BAND
   --------------------------------------------------------------- */
.am-sub{background:var(--ink);color:#fff;padding-block:clamp(40px,5vw,64px)}
.am-sub .wrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:clamp(26px,4vw,52px);align-items:center}
.am-sub h2{color:#fff;margin:0 0 10px}
.am-sub p{color:#B9ADAB;margin:0;max-width:48ch}
.am-sub-form{display:grid;gap:11px}
.am-sub-row{display:grid;grid-template-columns:1fr 1fr;gap:11px}
.am-sub input[type=text],.am-sub input[type=email],.am-sub input[type=tel]{
  width:100%;padding:13px 16px;border-radius:10px;border:1.5px solid rgba(255,255,255,.18);
  background:rgba(255,255,255,.07);color:#fff;font-size:.95rem}
.am-sub input::placeholder{color:#8D8280}
.am-sub input:focus{outline:none;border-color:var(--brass);background:rgba(255,255,255,.12)}
.am-sub-check{display:flex;gap:9px;align-items:flex-start;font-size:.85rem;color:#B9ADAB;cursor:pointer}
.am-sub-check input{margin-top:3px;accent-color:var(--brass);width:16px;height:16px}
@media(max-width:820px){.am-sub .wrap{grid-template-columns:1fr}.am-sub-row{grid-template-columns:1fr}}

/* ---------------------------------------------------------------
   FOOTER
   --------------------------------------------------------------- */
.am-foot{background:#120F10;color:#A89C9A;padding-block:clamp(40px,5vw,62px) 0;font-size:.9rem}
.am-foot .wrap{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1.1fr);gap:clamp(24px,3vw,44px)}
.am-foot h5{font-family:var(--f-ui);font-size:.82rem;font-weight:700;letter-spacing:.06em;
  color:#fff;margin:0 0 15px}
.am-foot ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:9px}
.am-foot a{color:#A89C9A;text-decoration:none}
.am-foot a:hover{color:#fff}
.am-foot-brand img{height:42px;margin-bottom:14px}
.am-foot-brand p{max-width:34ch;line-height:1.7;margin:0}
.am-socials{display:flex;gap:9px;margin-top:17px}
.am-socials a{width:38px;height:38px;border-radius:50%;background:rgba(255,255,255,.07);
  display:grid;place-items:center;color:#D6CCCA;transition:background .18s,color .18s}
.am-socials a:hover{background:var(--crimson);color:#fff}
.am-foot-base{margin-top:clamp(30px,4vw,46px);border-top:1px solid rgba(255,255,255,.09);
  padding-block:20px;display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;font-size:.84rem}
@media(max-width:860px){.am-foot .wrap{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.am-foot .wrap{grid-template-columns:1fr}}

/* ---------------------------------------------------------------
   FLOATING WHATSAPP
   --------------------------------------------------------------- */
.am-wa-float{position:fixed;right:16px;bottom:16px;z-index:70;width:56px;height:56px;border-radius:50%;
  background:#25D366;display:grid;place-items:center;box-shadow:0 8px 26px rgba(37,211,102,.42);
  color:#fff;text-decoration:none;transition:transform .2s}
.am-wa-float:hover{transform:scale(1.07)}
.am-wa-float svg{width:29px;height:29px}

/* ---------------------------------------------------------------
   ARTICLE / DETAIL PAGES
   --------------------------------------------------------------- */
.am-detail{display:grid;grid-template-columns:minmax(0,1fr) 316px;gap:clamp(28px,4vw,52px);
  align-items:start;padding-block:clamp(28px,4vw,48px)}
@media(max-width:960px){.am-detail{grid-template-columns:1fr}}

.am-crumbs{font-size:.82rem;color:var(--ink-40);margin-bottom:18px;display:flex;gap:8px;flex-wrap:wrap}
.am-crumbs a{color:var(--ink-60);text-decoration:none}
.am-crumbs a:hover{color:var(--crimson)}

.am-article h1{font-size:clamp(1.9rem,4.2vw,3rem);margin:12px 0 16px;letter-spacing:-.028em;
  text-wrap:balance}
.am-hero-img{border-radius:var(--r-md);overflow:hidden;margin:24px 0 30px;background:var(--crimson-soft);
  box-shadow:var(--shadow-2)}
.am-prose{font-family:var(--f-display);font-size:1.105rem;line-height:1.78;color:#2A2425;
  max-width:70ch;font-weight:400;font-variation-settings:"opsz" 14,"SOFT" 0,"WONK" 0}
.am-prose p{margin:0 0 1.15em}
.am-prose a{color:var(--crimson);text-decoration:underline;text-underline-offset:3px}
.am-prose h2,.am-prose h3{margin-top:1.5em}
.am-prose blockquote{margin:1.5em 0;padding:4px 0 4px 22px;border-left:3px solid var(--brass);
  font-style:italic;color:var(--ink-60)}

.am-byline{display:flex;align-items:center;gap:12px;padding:16px 0;border-block:1px solid var(--line);
  margin:26px 0;flex-wrap:wrap}
.am-avatar{width:40px;height:40px;border-radius:50%;background:var(--crimson);color:#fff;
  display:grid;place-items:center;font-weight:700;font-size:.95rem;font-family:var(--f-ui)}

.am-share{display:flex;gap:9px;flex-wrap:wrap;align-items:center;margin-left:auto}
.am-share-btn{display:inline-flex;align-items:center;gap:7px;padding:8px 14px;border-radius:99px;
  font-size:.84rem;font-weight:600;text-decoration:none;border:1.5px solid var(--line);color:var(--ink-60);
  background:var(--card);cursor:pointer;transition:.18s}
.am-share-btn:hover{border-color:var(--ink);color:var(--ink)}
.am-share-wa:hover{background:#25D366;border-color:#25D366;color:#073B1C}
.am-share-fb:hover{background:#1877F2;border-color:#1877F2;color:#fff}

/* tags */
.am-tags{display:flex;gap:8px;flex-wrap:wrap;margin:26px 0}
.am-tag{font-size:.82rem;padding:6px 13px;border-radius:99px;background:var(--card);
  border:1px solid var(--line);color:var(--ink-60);text-decoration:none;transition:.16s}
.am-tag:hover{border-color:var(--crimson);color:var(--crimson);background:var(--crimson-soft)}

/* reactions */
.am-reacts{display:flex;gap:10px;flex-wrap:wrap;margin:28px 0;padding:20px;border-radius:var(--r-md);
  background:var(--card);border:1px solid var(--line)}
.am-reacts-label{width:100%;font-size:.88rem;color:var(--ink-60);margin:0 0 4px}
.am-react{display:inline-flex;align-items:center;gap:8px;padding:9px 16px;border-radius:99px;
  border:1.5px solid var(--line);background:var(--paper);cursor:pointer;font-size:.88rem;font-weight:600;
  transition:.16s}
.am-react:hover{border-color:var(--crimson);background:var(--crimson-soft)}
.am-react.is-mine{border-color:var(--crimson);background:var(--crimson);color:#fff}
.am-react .n{font-variant-numeric:tabular-nums;opacity:.75;font-weight:700}
.am-react.is-mine .n{opacity:.9}

/* comments */
.am-comments{margin-top:40px}
.am-comment{display:grid;grid-template-columns:auto 1fr;gap:14px;padding:18px 0;
  border-bottom:1px solid var(--line)}
.am-comment:last-child{border-bottom:0}
.am-comment-body{margin:6px 0 0;color:#38302F;font-size:.96rem}
.am-form{display:grid;gap:13px;background:var(--card);border:1px solid var(--line);
  border-radius:var(--r-md);padding:clamp(18px,2.4vw,26px);margin-top:22px}
.am-form label{font-size:.86rem;font-weight:600;color:var(--ink-60)}
.am-form input,.am-form textarea,.am-form select{width:100%;padding:12px 15px;border-radius:10px;
  border:1.5px solid var(--line);background:var(--paper);font-size:.96rem;font-family:var(--f-ui)}
.am-form textarea{resize:vertical;min-height:110px;line-height:1.6}
.am-form input:focus,.am-form textarea:focus,.am-form select:focus{outline:none;border-color:var(--crimson);
  box-shadow:0 0 0 3px rgba(160,31,36,.1);background:var(--card)}
.am-form .hint{font-size:.8rem;color:var(--ink-40);margin:-6px 0 0}
.am-form-row{display:grid;grid-template-columns:1fr 1fr;gap:13px}
@media(max-width:600px){.am-form-row{grid-template-columns:1fr}}
.am-req{color:var(--crimson)}

/* sidebar */
.am-side{display:flex;flex-direction:column;gap:22px;position:sticky;top:94px}
@media(max-width:960px){.am-side{position:static}}
.am-widget{background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);
  padding:20px 21px 22px}
.am-widget h5{font-family:var(--f-ui);font-size:.8rem;font-weight:700;letter-spacing:.07em;
  color:var(--ink-40);margin:0 0 15px;padding-bottom:12px;border-bottom:1px solid var(--line)}
.am-rank{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px;counter-reset:r}
.am-rank li{display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:start;counter-increment:r}
.am-rank li::before{content:counter(r);font-family:var(--f-display);font-size:1.3rem;font-weight:700;
  color:var(--crimson-soft);line-height:1;min-width:22px;text-align:center}
.am-rank a{text-decoration:none;font-size:.93rem;font-weight:600;line-height:1.35;color:var(--ink)}
.am-rank a:hover{color:var(--crimson)}
.am-rank small{display:block;color:var(--ink-40);font-weight:400;margin-top:3px;font-size:.78rem}

/* verse widget */
.am-verse{background:linear-gradient(150deg,var(--crimson-deep),var(--crimson));color:#fff;
  border:0;border-radius:var(--r-md);padding:24px 22px 26px;position:relative;overflow:hidden}
.am-verse::before{content:"\201C";position:absolute;top:-28px;right:10px;font-family:var(--f-display);
  font-size:9rem;color:rgba(255,255,255,.12);line-height:1}
.am-verse h5{color:rgba(255,255,255,.65);border-color:rgba(255,255,255,.2)}
.am-verse p{font-family:var(--f-display);font-size:1.06rem;line-height:1.6;margin:0 0 10px;
  position:relative;z-index:1}
.am-verse cite{font-style:normal;font-size:.84rem;color:rgba(255,255,255,.78);font-weight:600}

/* ---------------------------------------------------------------
   ADS
   --------------------------------------------------------------- */
.am-ad{position:relative;border-radius:var(--r-md);overflow:hidden;background:var(--card);
  border:1px dashed var(--line)}
.am-ad img{width:100%;height:auto}
.am-ad-tag{position:absolute;top:7px;left:7px;z-index:2;font-size:.6rem;font-weight:700;letter-spacing:.09em;
  background:rgba(26,23,24,.62);color:#fff;padding:3px 7px;border-radius:3px}
.am-ad-header{margin:18px auto 0;max-width:var(--wrap)}

/* ---------------------------------------------------------------
   FILTER BAR / SEARCH
   --------------------------------------------------------------- */
.am-filters{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-bottom:28px;
  padding:14px 16px;background:var(--card);border:1px solid var(--line);border-radius:var(--r-md)}
.am-filters form{display:flex;gap:9px;flex:1;min-width:210px}
.am-filters input,.am-filters select{padding:10px 14px;border-radius:9px;border:1.5px solid var(--line);
  background:var(--paper);font-size:.9rem;flex:1;min-width:0}
.am-filters input:focus,.am-filters select:focus{outline:none;border-color:var(--crimson)}
.am-pill{padding:8px 15px;border-radius:99px;border:1.5px solid var(--line);background:var(--paper);
  font-size:.86rem;font-weight:600;text-decoration:none;color:var(--ink-60);white-space:nowrap}
.am-pill:hover{border-color:var(--ink);color:var(--ink)}
.am-pill.is-on{background:var(--crimson);border-color:var(--crimson);color:#fff}

/* ---------------------------------------------------------------
   PAGER / FLASH / EMPTY
   --------------------------------------------------------------- */
.am-pager{display:flex;gap:7px;justify-content:center;margin-top:40px;flex-wrap:wrap}
.am-page{min-width:42px;height:42px;display:grid;place-items:center;padding:0 13px;border-radius:10px;
  border:1.5px solid var(--line);background:var(--card);text-decoration:none;font-size:.92rem;
  font-weight:600;color:var(--ink-60)}
.am-page:hover{border-color:var(--ink);color:var(--ink)}
.am-page.is-active{background:var(--crimson);border-color:var(--crimson);color:#fff}
.am-page-gap{display:grid;place-items:center;height:42px;color:var(--ink-40);padding:0 4px}

.am-flash{display:flex;gap:11px;align-items:flex-start;padding:14px 18px;border-radius:var(--r-md);
  margin-bottom:22px;font-size:.94rem;font-weight:500;line-height:1.5}
.am-flash span{font-size:1.05rem;line-height:1.4}
.am-flash-success{background:#F0FDF4;border-left:4px solid #16A34A;color:#15803D}
.am-flash-error{background:#FEF2F2;border-left:4px solid var(--crimson);color:#991B1B}
.am-flash-info{background:var(--brass-soft);border-left:4px solid var(--brass);color:#7A6210}

.am-empty{text-align:center;padding:clamp(44px,7vw,80px) 24px;background:var(--card);
  border:1px dashed var(--line);border-radius:var(--r-lg)}
.am-empty .mark{width:64px;height:64px;border-radius:50%;background:var(--crimson-soft);
  display:grid;place-items:center;margin:0 auto 18px;font-size:1.6rem}
.am-empty h3{margin:0 0 8px}
.am-empty p{color:var(--ink-60);max-width:44ch;margin:0 auto 20px}

/* page banner for inner pages */
.am-banner{background:
    radial-gradient(90% 140% at 100% 0%,rgba(201,162,39,.14),transparent 55%),
    linear-gradient(150deg,#2B0A0C,var(--crimson-deep));
  color:#fff;padding-block:clamp(36px,5vw,58px)}
.am-banner h1{color:#fff;margin:0 0 10px;font-size:clamp(1.9rem,4.4vw,2.9rem)}
.am-banner p{color:#E4CCCB;max-width:58ch;margin:0;font-size:1.02rem}
.am-banner .am-crumbs{color:rgba(255,255,255,.6);margin-bottom:14px}
.am-banner .am-crumbs a{color:rgba(255,255,255,.82)}
.am-banner .am-crumbs a:hover{color:#fff}

/* gallery */
.am-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin:24px 0}
.am-gallery img{border-radius:var(--r-md);aspect-ratio:4/3;object-fit:cover;width:100%;
  box-shadow:var(--shadow-1);cursor:zoom-in}

/* contact list on business page */
.am-contact{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px;
  background:var(--line);border-radius:var(--r-md);overflow:hidden}
.am-contact li{background:var(--card);padding:13px 16px;display:grid;grid-template-columns:24px 1fr;
  gap:12px;align-items:center;font-size:.93rem}
.am-contact a{color:var(--crimson);text-decoration:none;font-weight:600;word-break:break-word}
.am-contact a:hover{text-decoration:underline}

/* video grid */
.am-videos{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:22px}
.am-video{background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);overflow:hidden;
  text-decoration:none;color:inherit;transition:transform .22s,box-shadow .22s}
.am-video:hover{transform:translateY(-3px);box-shadow:var(--shadow-2)}
.am-video-thumb{position:relative;aspect-ratio:16/9;overflow:hidden;background:#1B0709}
.am-video-thumb img{width:100%;height:100%;object-fit:cover}
.am-video-thumb .play{position:absolute;inset:0;display:grid;place-items:center;
  background:rgba(14,5,6,.3);transition:background .2s}
.am-video:hover .play{background:rgba(14,5,6,.45)}
.am-video-thumb .play i{width:52px;height:52px;border-radius:50%;background:var(--crimson);
  display:grid;place-items:center;box-shadow:var(--shadow-2);font-style:normal;color:#fff;
  padding-left:4px;font-size:1.1rem}
.am-video-body{padding:14px 16px 17px}
.am-video h4{font-family:var(--f-display);font-size:1.02rem;margin:0 0 6px;line-height:1.3;font-weight:600}

/* steps for the "list your business" explainer */
.am-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:20px;margin:30px 0}
.am-step{padding:22px;background:var(--card);border:1px solid var(--line);border-radius:var(--r-md)}
.am-step b{display:block;font-family:var(--f-display);font-size:1.05rem;margin-bottom:7px}
.am-step p{margin:0;font-size:.9rem;color:var(--ink-60)}

/* scroll reveal (single subtle fade, once) */
.r-in{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s cubic-bezier(.22,1,.36,1)}
.r-in.is-vis{opacity:1;transform:none}

/* ---------------------------------------------------------------
   REDUCED MOTION — honour it completely
   --------------------------------------------------------------- */
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;
    transition-duration:.001ms!important;scroll-behavior:auto!important}
  .am-rotator{height:auto}
  .am-rotator ul{animation:none}
  .am-rotator li+li{display:none}
  .r-in{opacity:1;transform:none}
  .am-hero .reveal,.am-hero-art{opacity:1;transform:none}
  .am-hero-art{transform:rotate(1.4deg)}
}

@media print{
  .am-head,.am-top,.am-foot,.am-wa-float,.am-share,.am-reacts,.am-side,.am-ad{display:none!important}
  body{background:#fff}
}
