:root{
  --green:#6b0f1a; --green-2:#9b1b30; --gold:#c9a227; --gold-2:#e8c96a; --gold-soft:#f6ecd0;
  --purple:#9b1b30; --ink:#1f2421; --muted:#5d665f; --paper:#fdfaf2; --card:#ffffff;
  --serif:"Cormorant Garamond",Georgia,serif; --display:"Cinzel",serif;
  --tamil:"Noto Serif Tamil","Latha",serif;
}
html{scroll-behavior:smooth}
body{background:var(--paper);color:var(--ink);font-family:var(--serif);font-size:1.18rem;line-height:1.65}
html[lang=ta] body{font-size:1.05rem}
:lang(ta),.ta{font-family:var(--tamil)}
h1,h2,h3,h4,.display{font-family:var(--display);color:var(--green);letter-spacing:.02em}
html[lang=ta] h1,html[lang=ta] h2,html[lang=ta] h3,html[lang=ta] h4{font-family:var(--tamil);letter-spacing:0;font-weight:700}
a{color:var(--green-2)}
a:hover{color:var(--gold)}

/* language toggle */
html[lang=en] .ta:not(.always),html[lang=ta] .en:not(.always){display:none!important}

/* topbar + nav */
.topbar{background:var(--green);color:var(--gold-soft);font-size:.9rem}
.topbar a{color:var(--gold-2);text-decoration:none}
.lang-switch .btn{border-color:var(--gold);color:var(--gold-2);padding:.1rem .7rem;font-size:.85rem}
.lang-switch .btn.active{background:var(--gold);color:var(--green);font-weight:700}
.navbar{background:#fff;border-bottom:3px solid var(--gold);box-shadow:0 2px 14px rgba(0,0,0,.06)}
.navbar-brand img{width:58px;height:58px;border-radius:50%}
.brand-text{line-height:1.1}
.brand-text strong{font-family:var(--display);color:var(--green);font-size:1.15rem;display:block}
.brand-text small{color:var(--muted);font-size:.85rem}
.navbar .nav-link{font-family:var(--display);font-size:.9rem;color:var(--green);font-weight:600;padding:.5rem .8rem!important}
html[lang=ta] .navbar .nav-link{font-family:var(--tamil);font-size:.88rem}
.navbar .nav-link.active,.navbar .nav-link:hover{color:var(--gold)}
.dropdown-item.active,.dropdown-item:active{background:var(--green)}

/* hero */
.hero{position:relative;color:#fff;background:
  radial-gradient(circle at 75% 40%,rgba(201,162,39,.35),transparent 55%),
  linear-gradient(135deg,var(--green) 0%,#4a0a12 60%,#3c0810 100%);overflow:hidden}
.hero::after{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(232,201,106,.25) 1px,transparent 1px);background-size:28px 28px;opacity:.35;pointer-events:none}
.hero .container{position:relative;z-index:1}
.hero h1{color:#fff;font-size:clamp(2rem,5vw,3.6rem)}
.hero .lead{color:var(--gold-soft);font-size:1.3rem}
.hero-logo{width:min(360px,80%);border-radius:50%;filter:drop-shadow(0 18px 40px rgba(0,0,0,.45));animation:float 6s ease-in-out infinite}
@keyframes float{50%{transform:translateY(-10px)}}
.page-hero{background:linear-gradient(135deg,var(--green),#4a0a12 70%,#3c0810);color:#fff;padding:4rem 0 3rem;text-align:center}
.page-hero h1{color:#fff}
.page-hero p{color:var(--gold-soft);max-width:720px;margin:0 auto}
.eyebrow{font-family:var(--display);color:var(--gold);letter-spacing:.2em;text-transform:uppercase;font-size:.85rem}

.btn-gold{background:var(--gold);color:var(--green);border:0;font-weight:700;font-family:var(--display)}
.btn-gold:hover{background:var(--gold-2);color:var(--green)}
.btn-outline-gold{border:2px solid var(--gold);color:var(--gold-2);font-family:var(--display)}
.btn-outline-gold:hover{background:var(--gold);color:var(--green)}
html[lang=ta] .btn-gold,html[lang=ta] .btn-outline-gold{font-family:var(--tamil)}

section{padding:4.5rem 0}
.section-title{text-align:center;margin-bottom:2.5rem}
.section-title h2{font-size:clamp(1.7rem,3vw,2.4rem)}
.divider{width:110px;height:3px;margin:.8rem auto 0;background:linear-gradient(90deg,transparent,var(--gold),transparent);position:relative}
.divider::after{content:"✦";position:absolute;left:50%;top:50%;transform:translate(-50%,-55%);color:var(--gold);background:var(--paper);padding:0 .4rem;font-size:.9rem}
.bg-cream{background:var(--gold-soft)}
.bg-cream .divider::after{background:var(--gold-soft)}

.card-saint{background:var(--card);border:1px solid #eadfba;border-radius:14px;padding:1.8rem;height:100%;transition:.25s;box-shadow:0 4px 18px rgba(107,15,26,.05)}
.card-saint:hover{transform:translateY(-4px);box-shadow:0 12px 30px rgba(107,15,26,.12);border-color:var(--gold)}
.card-saint .icon{width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:var(--green);color:var(--gold-2);font-size:1.5rem;margin-bottom:1rem}
.card-saint h3{font-size:1.25rem}

.mass-time{display:flex;justify-content:space-between;align-items:center;padding:.9rem 0;border-bottom:1px dashed #d9c78f}
.mass-time:last-child{border:0}
.mass-time .time{font-family:var(--display);color:var(--purple);font-weight:700;font-size:1.2rem;white-space:nowrap}

/* timeline */
.timeline{border-left:3px solid var(--gold);padding-left:1.5rem}
.timeline .item{position:relative;margin-bottom:1.4rem}
.timeline .item::before{content:"";position:absolute;left:-2.05rem;top:.45rem;width:14px;height:14px;border-radius:50%;background:var(--green);border:3px solid var(--gold)}
.timeline .year{font-family:var(--display);color:var(--purple);font-weight:700}

/* prayers */
.prayer-nav{position:sticky;top:96px}
.prayer-nav a{display:block;padding:.35rem .7rem;border-left:3px solid transparent;text-decoration:none;color:var(--green);font-size:1rem}
.prayer-nav a:hover{border-color:var(--gold);background:var(--gold-soft)}
.prayer{background:#fff;border:1px solid #eadfba;border-radius:14px;margin-bottom:1.8rem;overflow:hidden;scroll-margin-top:100px}
.prayer-head{background:linear-gradient(90deg,var(--green),var(--green-2));color:#fff;padding:1rem 1.4rem;display:flex;justify-content:space-between;align-items:center;gap:1rem}
.prayer-head h3{color:#fff;margin:0;font-size:1.25rem}
.prayer-head .sub{color:var(--gold-2);font-size:.95rem}
.prayer-body{padding:1.4rem}
.prayer-body .col-ta{font-family:var(--tamil);font-size:1rem;line-height:1.95}
.prayer-body .col-en{font-size:1.15rem}
.prayer-body .lbl{font-family:var(--display);font-size:.75rem;letter-spacing:.15em;color:var(--gold);text-transform:uppercase;margin-bottom:.4rem}
.view-btns .btn{font-size:.85rem}
body.view-ta .prayer .col-en,body.view-en .prayer .col-ta{display:none}
body.view-ta .prayer .col-ta,body.view-en .prayer .col-en{flex:0 0 100%;max-width:100%}
.v{color:var(--purple);font-weight:600}

.verse{font-style:italic;font-size:1.4rem;color:var(--green)}

/* feast */
.feast-day{border-left:5px solid var(--gold);background:#fff;border-radius:10px;padding:1.2rem 1.4rem;height:100%;box-shadow:0 3px 12px rgba(0,0,0,.05)}
.feast-day .date{font-family:var(--display);color:var(--purple);font-weight:700}
.feast-day .theme{display:inline-block;background:var(--gold-soft);color:var(--green);border-radius:20px;padding:0 .7rem;font-size:.9rem}
.feast-day.grand{border-color:var(--purple);background:linear-gradient(180deg,#fff,#f6effc)}
.countdown .box{background:rgba(255,255,255,.08);border:1px solid rgba(232,201,106,.4);border-radius:12px;padding:.8rem 1rem;min-width:84px}
.countdown .num{font-family:var(--display);font-size:2rem;color:var(--gold-2);line-height:1}

footer{background:#3c0810;color:#cfd8d2;padding:3.5rem 0 1.2rem;font-size:1rem}
footer h5{color:var(--gold-2);font-size:1.05rem}
footer a{color:#e8e2c9;text-decoration:none}
footer a:hover{color:var(--gold-2)}
footer .copy{border-top:1px solid rgba(255,255,255,.1);margin-top:2rem;padding-top:1rem;font-size:.9rem;color:#8fa198}

.reveal{opacity:0;transform:translateY(20px);transition:.7s ease}
.reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none}.hero-logo{animation:none}}
@media (max-width:991px){.prayer-nav{position:static}}

/* Luminous glass theme */
:root{
  --glass:rgba(255,255,255,.68);
  --glass-strong:rgba(255,255,255,.82);
  --glass-border:rgba(255,255,255,.78);
  --glass-shadow:0 18px 55px rgba(107,15,26,.12);
}
body{
  background:
    radial-gradient(ellipse at 4% 18%,rgba(201,162,39,.12),transparent 34rem),
    radial-gradient(ellipse at 94% 44%,rgba(155,27,48,.09),transparent 38rem),
    linear-gradient(145deg,#f8f5ec,#f8f1ea 55%,#f8f4eb);
  background-attachment:fixed;
}
.topbar{
  background:rgba(74,10,18,.92);
  border-bottom:1px solid rgba(232,201,106,.24);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
}
.navbar{
  background:rgba(255,255,255,.78);
  border-bottom:1px solid rgba(201,162,39,.35);
  box-shadow:0 8px 30px rgba(107,15,26,.08);
  backdrop-filter:blur(22px);
  -webkit-backdrop-filter:blur(22px);
}
.navbar-brand img{box-shadow:0 5px 18px rgba(107,15,26,.18)}
.navbar .dropdown-menu{
  background:rgba(255,255,255,.9);
  border:1px solid var(--glass-border);
  border-radius:14px;
  box-shadow:var(--glass-shadow);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
}
.dropdown-item{font-family:var(--serif)}
.hero,.page-hero{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  background:
    radial-gradient(ellipse at 76% 28%,rgba(232,201,106,.24),transparent 34%),
    radial-gradient(ellipse at 14% 100%,rgba(232,201,106,.2),transparent 42%),
    linear-gradient(130deg,rgba(107,15,26,.97),rgba(155,27,48,.94) 54%,rgba(60,8,16,.96));
}
.hero{min-height:480px;display:flex;align-items:center}
.page-hero{padding:5rem 0 4rem}
.hero::before,.page-hero::before{
  content:"";
  position:absolute;
  z-index:-1;
  width:clamp(16rem,38vw,34rem);
  aspect-ratio:1;
  right:-9rem;
  top:-15rem;
  border:1px solid rgba(255,255,255,.16);
  border-radius:50%;
  box-shadow:0 0 0 2.5rem rgba(255,255,255,.025),0 0 0 5rem rgba(255,255,255,.02);
}
.hero::after{
  background-image:radial-gradient(rgba(255,255,255,.42) .7px,transparent .7px);
  background-size:26px 26px;
  opacity:.16;
}
.hero h1{line-height:1.2;text-shadow:0 4px 24px rgba(0,0,0,.2)}
.hero .lead{color:#f3e9c9}
.hero .text-white-50{color:rgba(255,255,255,.76)!important}
.hero-logo{
  width:min(330px,78%);
  padding:1rem;
  border:1px solid rgba(255,255,255,.5);
  background:linear-gradient(145deg,rgba(255,255,255,.26),rgba(255,255,255,.07));
  box-shadow:0 25px 70px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.45);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
}
.hero .col-lg-5,.page-hero .container{position:relative;z-index:1}
.eyebrow{color:var(--gold-2)}
section{position:relative}
.bg-cream{
  background:linear-gradient(135deg,rgba(239,230,201,.46),rgba(255,255,255,.34));
  border-top:1px solid rgba(255,255,255,.48);
  border-bottom:1px solid rgba(255,255,255,.48);
}
.card-saint,.feast-day,.prayer{
  background:var(--glass);
  border:1px solid var(--glass-border);
  box-shadow:var(--glass-shadow),inset 0 1px 0 rgba(255,255,255,.65);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
}
.card-saint{border-radius:20px;transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease}
.card-saint:hover{
  transform:translateY(-6px);
  border-color:rgba(201,162,39,.58);
  box-shadow:0 24px 60px rgba(107,15,26,.17),inset 0 1px 0 rgba(255,255,255,.75);
}
.card-saint .icon{
  background:linear-gradient(145deg,rgba(107,15,26,.96),rgba(155,27,48,.84));
  box-shadow:0 8px 22px rgba(107,15,26,.2),inset 0 1px 0 rgba(255,255,255,.24);
}
.prayer-nav a{border-radius:0 12px 12px 0;transition:background .2s,border-color .2s}
.prayer-nav a:hover{background:rgba(255,255,255,.6)}
.prayer{border-radius:20px}
.prayer-head{
  background:linear-gradient(100deg,rgba(107,15,26,.96),rgba(155,27,48,.9));
  border-bottom:1px solid rgba(255,255,255,.24);
}
.prayer-body{background:rgba(255,255,255,.26)}
.feast-day{border-radius:18px}
.feast-day.grand{background:linear-gradient(145deg,rgba(255,255,255,.78),rgba(246,239,252,.68))}
.mass-time{border-color:rgba(107,15,26,.14)}
footer{
  background:
    radial-gradient(ellipse at 90% 0%,rgba(201,162,39,.12),transparent 38%),
    linear-gradient(130deg,rgba(74,10,18,.98),rgba(74,10,18,.96));
  border-top:1px solid rgba(255,255,255,.16);
}
footer img{border-radius:50%;box-shadow:0 8px 24px rgba(0,0,0,.22)}
.btn-gold{box-shadow:0 8px 22px rgba(201,162,39,.2);transition:transform .2s,box-shadow .2s,background .2s}
.btn-gold:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(201,162,39,.3)}
.btn-outline-gold{background:rgba(255,255,255,.08);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
@media (max-width:767px){
  .hero{min-height:0}
  .hero-logo{width:min(260px,68%);padding:.75rem}
  .page-hero{padding:3.6rem 0 3rem}
  section{padding:3.5rem 0}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important}
  .card-saint:hover,.btn-gold:hover{transform:none}
}

/* Sacred-art navigation */
.navbar.sticky-top{
  padding:.8rem 0;
  background:rgba(248,247,240,.78);
  border:0;
  box-shadow:none;
}
.navbar.sticky-top>.container{
  max-width:min(1450px,calc(100% - 2rem));
  min-height:78px;
  padding:.45rem .75rem .45rem 1rem;
  border:1px solid rgba(255,255,255,.92);
  border-radius:24px;
  background:linear-gradient(110deg,rgba(255,255,255,.94),rgba(255,255,255,.76));
  box-shadow:0 14px 38px rgba(107,15,26,.12),inset 0 1px 0 #fff;
  backdrop-filter:blur(24px);
  -webkit-backdrop-filter:blur(24px);
}
.navbar-brand{
  gap:.8rem!important;
  margin-right:1rem;
}
.brand-monogram{
  position:relative;
  display:grid;
  flex:0 0 58px;
  width:58px;
  height:58px;
  place-items:center;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.95);
  background:linear-gradient(145deg,#9b1b30,#4a0a12);
  color:#f1d585;
  font:600 1.25rem/1 var(--display);
  letter-spacing:-.08em;
  box-shadow:0 0 0 3px rgba(239,222,172,.36),0 8px 20px rgba(107,15,26,.2),inset 0 1px 0 rgba(255,255,255,.25);
}
.brand-text{display:block;min-width:0}
.brand-text strong{font-size:1.02rem;letter-spacing:.035em}
.brand-text small{
  display:block;
  margin-top:.27rem;
  color:#6b756e;
  font-family:var(--serif);
  font-size:.82rem;
  letter-spacing:.035em;
}
.brand-text small .bi{color:#b18a23;font-size:.74rem}
.navbar .navbar-nav{align-items:center;gap:.12rem}
.navbar .nav-link{
  padding:.55rem .62rem!important;
  border:1px solid transparent;
  border-radius:14px;
  color:#6e4a4a;
  font-size:.76rem;
  font-weight:700;
  letter-spacing:.025em;
  white-space:nowrap;
  transition:color .18s,background .18s,border-color .18s,transform .18s;
}
.navbar .nav-link-content{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:.38rem;
}
.navbar .nav-link-content>.bi{
  color:#a78324;
  font-size:.86rem;
  transition:color .18s,transform .18s;
}
.navbar .nav-link.active{
  border-color:rgba(201,162,39,.19);
  background:linear-gradient(135deg,rgba(248,239,208,.82),rgba(255,255,255,.78));
  color:var(--green);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.85);
}
.navbar .nav-link:hover{
  border-color:rgba(201,162,39,.25);
  background:rgba(246,236,208,.55);
  color:var(--green);
  transform:translateY(-1px);
}
.navbar .nav-link:hover .bi,.navbar .nav-link.active .bi{color:#765911}
.navbar .nav-item:last-child>.nav-link{
  margin-left:.24rem;
  padding-inline:.85rem!important;
  border-color:rgba(255,255,255,.24);
  background:linear-gradient(135deg,#b98f22,#d8b94f);
  color:#7a1424;
  box-shadow:0 6px 16px rgba(164,124,22,.2),inset 0 1px 0 rgba(255,255,255,.4);
}
.navbar .nav-item:last-child>.nav-link .bi{color:#7a1424}
.navbar .nav-item:last-child>.nav-link:hover{
  background:linear-gradient(135deg,#d4b247,#ead486);
  box-shadow:0 9px 20px rgba(164,124,22,.28);
}
.navbar .dropdown-toggle::after{margin-left:.25rem;vertical-align:.14em}
.navbar .dropdown-menu{padding:.45rem;border-radius:16px}
.navbar .prayers-dropdown>.nav-link{display:inline-flex;align-items:center;gap:.35rem}
.navbar .prayers-menu{left:50%;transform:translateX(-50%);min-width:230px}
.navbar .dropdown-item{
  padding:.55rem .75rem;
  border-radius:10px;
  color:#6e4a4a;
}
.navbar .dropdown-item:hover{background:rgba(246,236,208,.74);color:var(--green)}
.navbar-toggler{
  border:1px solid rgba(201,162,39,.42);
  border-radius:14px;
  padding:.55rem .7rem;
  box-shadow:0 4px 14px rgba(107,15,26,.08);
}
.navbar-toggler:focus{box-shadow:0 0 0 .2rem rgba(201,162,39,.2)}
@media (min-width:1200px) and (max-width:1399px){
  .navbar.sticky-top>.container{max-width:calc(100% - 1.25rem);padding-inline:.65rem}
  .navbar-brand{gap:.65rem!important;margin-right:.55rem}
  .brand-monogram,.brand-logo{flex-basis:52px;width:52px;height:52px}
  .brand-text strong{font-size:.92rem}
  .brand-text small{font-size:.74rem}
  .navbar .nav-link{padding-inline:.43rem!important;font-size:.7rem}
  .navbar .nav-link-content{gap:.25rem}
}
@media (max-width:1199.98px){
  .navbar.sticky-top{padding:.55rem 0;background:rgba(248,247,240,.55)}
  .navbar.sticky-top>.container{min-height:72px}
  .navbar .navbar-collapse{
    margin:.65rem .15rem .1rem;
    padding:.65rem;
    border:1px solid rgba(255,255,255,.9);
    border-radius:18px;
    background:rgba(255,255,255,.82);
    box-shadow:0 12px 32px rgba(107,15,26,.1);
    backdrop-filter:blur(20px);
    -webkit-backdrop-filter:blur(20px);
  }
  .navbar .navbar-nav{align-items:stretch;gap:.18rem}
  .navbar .nav-link{padding:.65rem .8rem!important;font-size:.9rem}
  .navbar .nav-link-content{justify-content:flex-start;gap:.65rem}
  .navbar .nav-item:last-child>.nav-link{margin:.25rem 0 0}
  .navbar .dropdown-menu{margin:.2rem .4rem;border:0;background:rgba(246,246,237,.8);box-shadow:none}
  .navbar .prayers-menu{left:auto;transform:none;min-width:0}
}
@media (max-width:575.98px){
  .navbar.sticky-top>.container{max-width:calc(100% - 1rem);padding:.4rem .65rem}
  .brand-monogram,.brand-logo{flex-basis:46px;width:46px;height:46px;font-size:1.05rem}
  .brand-text strong{font-size:.82rem}
  .brand-text small{font-size:.7rem}
  .navbar-brand{gap:.65rem!important}
}
html[lang=ta] body{font-size:1rem}
html[lang=ta] .navbar .nav-link{font-size:.82rem}
html[lang=ta] .brand-text strong{font-size:.95em}
html[lang=ta] .prayer-body .col-ta{font-size:.94rem}

.navbar .prayers-menu{
  margin-top:.8rem;
  border-color:rgba(201,162,39,.28);
}
.navbar .prayers-dropdown>.nav-link[aria-expanded=true]{
  border-color:rgba(201,162,39,.32);
  background:rgba(246,236,208,.66);
}
.navbar .nav-item:last-child>.nav-link{border-radius:999px}
.brand-logo{
  flex:0 0 58px;
  width:58px;
  height:58px;
  border-radius:50%;
  background:#fff;
  object-fit:cover;
  box-shadow:0 0 0 2px rgba(201,162,39,.55),0 6px 16px rgba(107,15,26,.16);
}
.hero-art-scroller{
  display:flex;
  gap:1rem;
  width:min(380px,100%);
  margin-inline:auto;
  padding:.5rem 0 1rem;
  overflow:hidden;
}
.hero-art-scroller img{
  flex:0 0 100%;
  width:100%;
  aspect-ratio:1;
  scroll-snap-align:center;
  padding:.65rem;
  border:1px solid rgba(255,255,255,.55);
  border-radius:50%;
  background:rgba(255,255,255,.14);
  box-shadow:0 22px 60px rgba(0,0,0,.28);
  object-fit:contain;
}
.hero-art-scroller img[src$="logo.png"]{object-fit:cover}
@media (max-width:767px){.hero-art-scroller{width:min(300px,100%)}}

/* No animations or transitions anywhere */
html{scroll-behavior:auto}
*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
.reveal{opacity:1!important;transform:none!important}
.card-saint:hover,.btn-gold:hover,.navbar .nav-link:hover{transform:none!important}

/* Bible reader */
.bible-reader{max-width:820px;margin:0 auto 2.5rem}
.bible-controls{display:grid;grid-template-columns:2fr 1fr;gap:1rem;margin-bottom:1.25rem}
.bible-controls label{font-family:var(--display);font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.bible-controls .form-select{margin-top:.3rem;background-color:rgba(255,255,255,.7);border-color:rgba(201,162,39,.35)}
.bible-text{padding:1.5rem 1.75rem;border:1px solid rgba(255,255,255,.6);border-radius:18px;background:rgba(255,255,255,.62);box-shadow:0 10px 34px rgba(107,15,26,.1);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);font-size:1.15rem;line-height:1.75}
.bible-text h2{font-size:1.5rem;margin-bottom:1rem}
.bible-text p{margin:0 0 .55rem}
.bible-text sup{margin-right:.35rem;color:var(--gold);font-weight:700;font-size:.7em}
.bible-nav{display:flex;justify-content:space-between;gap:1rem;margin-top:1.25rem}
.bible-note{margin-top:1rem;font-size:.85rem;color:var(--muted)}
.bible-tamil{max-width:820px;margin:0 auto;padding:1.5rem 1.75rem;text-align:center}
.bible-tamil h2{font-size:1.4rem}
@media (max-width:575px){.bible-controls{grid-template-columns:1fr}.bible-text{padding:1.1rem}}

/* Gold and red accents */
.btn-outline-success{--bs-btn-color:#9b1b30;--bs-btn-border-color:#9b1b30;--bs-btn-hover-bg:#9b1b30;--bs-btn-hover-border-color:#9b1b30;--bs-btn-active-bg:#9b1b30;--bs-btn-active-border-color:#9b1b30;--bs-btn-disabled-color:#9b1b30;--bs-btn-disabled-border-color:#9b1b30}
.btn-gold{background:linear-gradient(135deg,#e8c96a,#c9a227);border-color:#c9a227;color:#4a0a12}
.bible-lang-note{padding:.6rem .9rem;border-left:3px solid var(--gold);background:rgba(232,201,106,.18);font-size:.95rem}

/* Daily readings */
.readings-bar{display:flex;gap:.6rem;justify-content:center;align-items:center;margin-bottom:1.5rem;flex-wrap:wrap}
.readings-bar .form-control{width:auto;background-color:rgba(255,255,255,.7);border-color:rgba(201,162,39,.35)}
.reading-day{text-align:center;font-family:var(--display);color:var(--green);font-size:1.1rem;margin-bottom:1.25rem}
.reading-card{max-width:1000px;margin:0 auto 1.5rem;padding:1.4rem 1.6rem;border:1px solid rgba(255,255,255,.6);border-radius:18px;background:rgba(255,255,255,.62);box-shadow:0 10px 34px rgba(107,15,26,.1);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.reading-card h3{font-size:1.25rem;margin-bottom:1rem}
.reading-card h3 small{display:block;margin-top:.2rem;font-size:.8rem;color:var(--muted);font-weight:400}
.reading-lang{margin-bottom:.4rem;font-family:var(--display);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}
.reading-text p{margin:0 0 .45rem;white-space:pre-line}
.reading-text sup{margin-right:.3rem;color:var(--gold);font-weight:700;font-size:.7em}
.ta-text{font-family:var(--tamil);font-size:.98rem}

/* Quick faith links */
.quick-faith{position:relative;z-index:3;margin-top:-2.6rem;padding:0 0 1rem}
.faith-tile{display:flex;align-items:center;gap:1rem;height:100%;padding:1.1rem 1.3rem;border:1px solid rgba(255,255,255,.7);border-radius:18px;background:rgba(255,255,255,.82);box-shadow:0 16px 40px rgba(107,15,26,.18);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);color:var(--green);text-decoration:none}
.faith-tile i{display:grid;flex:0 0 52px;width:52px;height:52px;place-items:center;border-radius:50%;background:linear-gradient(135deg,#9b1b30,#6b0f1a);color:var(--gold-2);font-size:1.4rem;box-shadow:0 0 0 2px rgba(201,162,39,.6)}
.faith-tile strong{display:block;font-size:1.05rem;line-height:1.3}
.faith-tile small{display:block;margin-top:.15rem;color:var(--muted);font-size:.85rem}
.faith-tile:hover{border-color:var(--gold);color:var(--green-2)}
@media (max-width:767px){.quick-faith{margin-top:-1.5rem}}
@media (min-width:992px){
  .hero{padding-top:2rem;padding-bottom:3.2rem}
  .hero-art-scroller{width:min(300px,100%)}
}
@media (min-width:992px){
  .hero{padding-top:0!important;padding-bottom:0!important}
  .hero>.container{padding-top:1.5rem!important;padding-bottom:3.5rem!important}
  .hero .row{--bs-gutter-y:0}
}

/* ===== Royal theme: ivory, crimson velvet, gold foil ===== */
:root{
  --velvet:#5a0c18;
  --velvet-deep:#34060d;
  --foil:linear-gradient(135deg,#8a6a12 0%,#e8c96a 28%,#fff1b8 48%,#c9a227 68%,#8a6a12 100%);
  --damask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='80' viewBox='0 0 80 80'%3E%3Cg fill='none' stroke='%23c9a227' stroke-opacity='.16' stroke-width='1'%3E%3Cpath d='M40 6c7 9 7 17 0 26-7-9-7-17 0-26zM40 48c7 9 7 17 0 26-7-9-7-17 0-26zM6 40c9-7 17-7 26 0-9 7-17 7-26 0zM48 40c9-7 17-7 26 0-9 7-17 7-26 0z'/%3E%3Ccircle cx='40' cy='40' r='4'/%3E%3C/g%3E%3C/svg%3E");
  --crown:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='46' height='28' viewBox='0 0 46 28'%3E%3Cpath d='M3 24l3-16 8 8 9-13 9 13 8-8 3 16z' fill='%23c9a227' stroke='%238a6a12'/%3E%3Cg fill='%23fff1b8'%3E%3Ccircle cx='6' cy='7' r='2'/%3E%3Ccircle cx='23' cy='3' r='2'/%3E%3Ccircle cx='40' cy='7' r='2'/%3E%3C/g%3E%3C/svg%3E");
}
body{
  background:
    var(--damask),
    radial-gradient(ellipse at 4% 12%,rgba(201,162,39,.16),transparent 34rem),
    radial-gradient(ellipse at 96% 60%,rgba(155,27,48,.1),transparent 38rem),
    linear-gradient(180deg,#fbf6e9,#f6eddb);
  background-attachment:fixed;
}

/* Gold-foil headings */
.section-title h2,.page-hero h1,.hero h1{
  background:var(--foil);
  -webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;color:transparent;
  filter:drop-shadow(0 1px 0 rgba(60,8,16,.35));
}
main .section-title h2{filter:drop-shadow(0 1px 0 rgba(255,255,255,.6))}
main .section-title h2{background:linear-gradient(135deg,#6b0f1a,#9b1b30 45%,#b8860b)}
main .section-title h2{-webkit-background-clip:text;background-clip:text}

/* Crowned divider */
.divider{width:min(240px,60%);height:2px;background:linear-gradient(90deg,transparent,#c9a227 30%,#c9a227 70%,transparent)}
.divider::after{content:"";width:46px;height:28px;padding:0;background:var(--crown) center/contain no-repeat;transform:translate(-50%,-58%)}
.bg-cream .divider::after{background:var(--crown) center/contain no-repeat}

/* Velvet hero + page heroes with gold borders */
.hero,.page-hero{
  background:
    var(--damask),
    radial-gradient(ellipse at 75% 25%,rgba(232,201,106,.28),transparent 36%),
    linear-gradient(135deg,var(--velvet),#8a1226 55%,var(--velvet-deep));
  border-bottom:4px solid transparent;
  border-image:var(--foil) 1;
}
.hero::before,.page-hero::before{opacity:.5}

/* Royal cards: double gold frame with corner jewels */
.card-saint,.glass-card,.reading-card,.bible-text,.faith-tile,.prayer-card,.feast-card{
  position:relative;
  border:1px solid rgba(201,162,39,.55);
  box-shadow:0 14px 36px rgba(90,12,24,.14),inset 0 0 0 5px rgba(255,251,238,.9),inset 0 0 0 6px rgba(201,162,39,.38);
}
.card-saint::before,.reading-card::before,.bible-text::before{
  content:"";position:absolute;inset:9px;pointer-events:none;border-radius:inherit;
  background:
    linear-gradient(var(--gold),var(--gold)) top left/14px 1px no-repeat,
    linear-gradient(var(--gold),var(--gold)) top left/1px 14px no-repeat,
    linear-gradient(var(--gold),var(--gold)) top right/14px 1px no-repeat,
    linear-gradient(var(--gold),var(--gold)) top right/1px 14px no-repeat,
    linear-gradient(var(--gold),var(--gold)) bottom left/14px 1px no-repeat,
    linear-gradient(var(--gold),var(--gold)) bottom left/1px 14px no-repeat,
    linear-gradient(var(--gold),var(--gold)) bottom right/14px 1px no-repeat,
    linear-gradient(var(--gold),var(--gold)) bottom right/1px 14px no-repeat;
}
.card-saint .icon,.faith-tile i{
  background:radial-gradient(circle at 30% 25%,#c4243e,#6b0f1a 70%);
  color:#fff1b8;
  box-shadow:0 0 0 2px #c9a227,0 0 0 5px rgba(201,162,39,.25),0 6px 14px rgba(90,12,24,.3);
}

/* Navbar: ivory pill with gold foil underline */
.navbar.sticky-top{border-bottom:2px solid transparent;border-image:var(--foil) 1}
.navbar .nav-link.active{background:linear-gradient(135deg,rgba(232,201,106,.35),rgba(255,248,224,.8));color:#6b0f1a}
.topbar{background:linear-gradient(90deg,var(--velvet-deep),var(--velvet) 50%,var(--velvet-deep));border-bottom:1px solid rgba(232,201,106,.45)}

/* Foil buttons */
.btn-gold{
  background:var(--foil);background-size:160% 160%;
  border:1px solid #8a6a12;color:#3c0810;font-weight:700;
  box-shadow:0 8px 20px rgba(138,106,18,.35),inset 0 1px 0 rgba(255,255,255,.65);
}
.btn-outline-gold{border:1.5px solid #e8c96a;color:#fff1b8}

/* Footer: velvet with gold crown rule */
footer{
  background:var(--damask),linear-gradient(180deg,var(--velvet),var(--velvet-deep));
  border-top:4px solid transparent;border-image:var(--foil) 1;
  color:#f1e3c2;
}
footer h5{color:#e8c96a}
footer a{color:#f6e7bd}
footer a:hover{color:#fff1b8}

/* Hero artwork medallion */
.hero-art-scroller img{border:3px solid transparent;background:linear-gradient(rgba(60,8,16,.5),rgba(60,8,16,.5)) padding-box,var(--foil) border-box;box-shadow:0 22px 60px rgba(20,0,4,.5),0 0 0 6px rgba(201,162,39,.18)}

/* Selection + focus */
::selection{background:#c9a227;color:#3c0810}
:focus-visible{outline-color:#c9a227}

/* Royal nav fit */
@media (min-width:992px) and (max-width:1439px){
  .navbar .nav-link{padding-left:.5rem!important;padding-right:.5rem!important;font-size:.88rem!important}
  .navbar .nav-link i{display:none}
  .navbar .navbar-nav{gap:0!important}
}
