:root{--gold:#c99a52;--gold2:#a87125;--navy:#08245d;--ink:#252525;--cream:#fbf8f2;--soft:#f4e8d4;--line:#e2c693;--white:#fff;--max:1240px}
html{scroll-behavior:smooth}*,*:before,*:after{box-sizing:border-box}body{color:var(--ink);background:var(--cream);font-family:Arial,Helvetica,sans-serif}
#masthead,.site-header-wrap,.site-header,.site-footer-wrap,.site-footer{display:none!important}
body .content-container,body .site-container,body #primary,body .content-area,body article,body .entry-content-wrap,body .entry-content{max-width:none!important;width:100%!important;margin:0!important;padding:0!important}body .site-main{padding:0!important}.entry-header,.page-title{display:none!important}
/* HEADER */
.tgbgc-header{position:relative;z-index:50;background:#fff;border-bottom:1px solid #eee;box-shadow:0 1px 0 rgba(0,0,0,.03)}
.tgbgc-headrow{max-width:1680px;margin:auto;display:flex;align-items:center;gap:16px;padding:5px 18px 4px;min-height:92px}
.tgbgc-brand{display:flex;align-items:center;justify-content:center;text-decoration:none;color:var(--ink);flex:0 0 132px;align-self:stretch}
.tgbgc-brand img{width:118px;height:82px;object-fit:contain;display:block}
.tgbgc-brandtext{display:none;font-weight:700;font-size:1.25rem}.tgbgc-headrow nav{margin-left:auto}
.tgbgc-menu{display:flex;align-items:center;flex-wrap:nowrap;justify-content:flex-end;gap:5px 17px;list-style:none;margin:0;padding:0}
.tgbgc-menu li{margin:0}.tgbgc-menu a{color:#2d2d2d;text-decoration:none;font-size:.98rem;line-height:1.35;white-space:nowrap;font-weight:400}
.tgbgc-menu a:hover,.tgbgc-menu .current-menu-item>a{color:var(--gold2);text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:1px}
.tgbgc-mobile-toggle{display:none;border:0;background:transparent;font-size:1.7rem}
.tgbgc-searchrow{background:linear-gradient(90deg,#f0ddc0 0%,#f7eee0 42%,#fff 100%);padding:7px 26px 10px}
.tgbgc-searchrow form{max-width:1500px;margin:auto;display:grid;grid-template-columns:1fr auto;gap:12px}
.tgbgc-searchrow input{min-height:46px;border:1px solid #d7d7d7;border-radius:999px;padding:8px 18px;font-size:1rem;background:#f8f9fb;box-shadow:inset 0 1px 2px rgba(0,0,0,.03)}
.tgbgc-searchrow button{border:0;border-radius:999px;background:var(--navy);color:#fff;padding:9px 24px;font-size:1rem;min-width:126px}
/* HOME */
.tgbgc-home{background:#fff}.tgbgc-homehero{position:relative;max-width:1500px;min-height:610px;margin:0 auto;background-image:var(--hero);background-size:cover;background-position:center;display:grid;place-items:center;overflow:hidden}
.tgbgc-homehero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.02),rgba(0,0,0,0) 42%,rgba(0,0,0,.03));pointer-events:none}
.tgbgc-hero-copy{position:relative;z-index:2;color:#fff!important;text-align:center;max-width:800px;margin-left:25%;margin-top:-12%;text-shadow:0 2px 12px rgba(0,0,0,.22)}
.tgbgc-hero-copy h1{font-family:"Brush Script MT","Segoe Script","Lucida Handwriting",cursive!important;font-size:clamp(3.8rem,5.6vw,6rem)!important;font-weight:400!important;line-height:1!important;margin:0!important;color:#fff!important;letter-spacing:-.02em}
.tgbgc-join{position:absolute;z-index:3;right:30px;top:48%;transform:translateY(-50%);width:145px;height:96px;border-radius:999px;background:var(--gold);display:grid;place-items:center;text-align:center;color:#fff!important;text-decoration:none;font-size:1.22rem;line-height:1.15;box-shadow:0 8px 22px rgba(80,50,10,.12)}
.tgbgc-welcome{max-width:1100px;margin:auto;padding:54px 28px 64px;text-align:center}.tgbgc-welcome h2{font-family:Georgia,serif;font-size:2.4rem;margin:8px 0 12px;color:#252a34}.tgbgc-welcome>p:last-of-type{font-size:1.06rem;line-height:1.7;max-width:840px;margin:0 auto}.tgbgc-homegrid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:32px}.tgbgc-homegrid a{padding:24px;border:1px solid var(--line);border-radius:16px;background:#fff;color:inherit;text-decoration:none;box-shadow:0 7px 20px rgba(65,45,15,.04)}.tgbgc-homegrid strong{display:block;font-family:Georgia,serif;font-size:1.5rem;margin-bottom:8px}.tgbgc-homegrid span{line-height:1.5}
/* SHARED PAGE HERO */
.tgbgc-page{background:var(--cream);min-height:60vh}.tgbgc-page-hero{text-align:center;padding:20px 20px 22px;background:linear-gradient(100deg,#f4e5cf,#fff);border-bottom:1px solid #ead1a4}.tgbgc-page-hero h1{font-family:Georgia,serif!important;font-size:clamp(2.2rem,3.2vw,3rem)!important;line-height:1.08!important;margin:4px 0 8px!important;color:#202633!important}.tgbgc-page-hero>p:last-child{max-width:800px;margin:0 auto;font-size:1rem;line-height:1.45}.tgbgc-eyebrow{margin:0;color:var(--gold2);font-size:.74rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.tgbgc-intro,.tgbgc-center{max-width:1180px;margin:20px auto;padding:22px 28px;background:#fff;border-left:5px solid var(--gold)}.tgbgc-center{text-align:center;border-left:0;background:transparent;padding-top:18px;padding-bottom:12px}.tgbgc-center h2,.tgbgc-sectiontitle h2{font-family:Georgia,serif;font-size:2.05rem;margin:0 0 7px}.tgbgc-intro h2{margin:0 0 10px;font-size:1.7rem}.tgbgc-intro p{margin:0;line-height:1.6}
/* MEDITATIONS */
.tgbgc-two{max-width:1180px;margin:20px auto 54px;display:grid;grid-template-columns:1fr 1fr;gap:24px;padding:0 20px}.tgbgc-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:26px;min-width:0;box-shadow:0 7px 22px rgba(80,55,15,.035)}.tgbgc-card h2{font-family:Georgia,serif;font-size:1.75rem;line-height:1.2;margin:22px 0 14px}.tgbgc-meditation{display:flex;flex-direction:column;min-height:390px}.tgbgc-badge{align-self:stretch;border-radius:999px;background:#f4dfb7;color:#85540f;padding:6px 12px;font-size:.73rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.tgbgc-badge.muted{background:#eee;color:#666}.tgbgc-script{font-family:"Segoe Print","Bradley Hand",cursive;font-size:1rem;line-height:1.65}.tgbgc-audio,.tgbgc-coming{margin-top:auto;border:1px dashed #d8bd8a;border-radius:14px;padding:16px;display:flex;gap:14px;align-items:center}.tgbgc-audio small{display:block;color:#666}.tgbgc-coming{min-height:110px;justify-content:center;text-align:center;color:#777}
/* BIBLE + HEALTH */
.tgbgc-grid3{max-width:1240px;margin:0 auto 60px;padding:12px 20px 22px;display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.tgbgc-verse,.tgbgc-health{background:#fff;border:1px solid var(--line);border-radius:16px;padding:24px;min-height:285px;display:flex;flex-direction:column;box-shadow:0 6px 18px rgba(70,48,12,.035)}.tgbgc-verse h2,.tgbgc-health h2{font-family:Georgia,serif;font-size:1.5rem;margin:0 0 12px}.tgbgc-verse blockquote{font-size:1.05rem;line-height:1.55;margin:0 0 16px;border:0;padding:0}.tgbgc-verse p{line-height:1.55}.tgbgc-outline{margin-top:auto;border:1px solid var(--gold);border-radius:999px;padding:11px 18px;text-align:center;color:var(--gold2);text-decoration:none}.tgbgc-link{color:var(--gold2)}
/* MARY */
.tgbgc-audio-banner{max-width:1180px;margin:22px auto;padding:16px 22px;background:#fff;border:1px solid var(--line);display:flex;gap:18px;align-items:center}.tgbgc-audio-banner span{flex:1}.tgbgc-audio-banner button{border:1px solid var(--gold);border-radius:999px;padding:10px 20px;background:#fff}.tgbgc-marylist{max-width:1180px;margin:0 auto;padding:6px 20px 60px}.tgbgc-maryrow{display:grid;grid-template-columns:250px 1fr;gap:32px;align-items:center;padding:25px 0;border-bottom:1px solid #e6d4b5}.tgbgc-maryrow:nth-child(even){grid-template-columns:1fr 250px}.tgbgc-maryrow:nth-child(even) .tgbgc-maryart{order:2}.tgbgc-maryart{aspect-ratio:1;background:radial-gradient(circle at 50% 35%,#fff5cf,#d5a457 58%,#79501e);border:7px double #d7b36c;display:grid;place-items:center;text-align:center;color:#fff;padding:18px;box-shadow:inset 0 0 0 1px #f5dfb4}.tgbgc-maryart span{font-size:3.2rem}.tgbgc-maryart strong{font-family:Georgia,serif;font-size:1rem}.tgbgc-meta{color:var(--gold2);font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.tgbgc-maryrow h2{font-family:Georgia,serif;font-size:1.85rem;margin:5px 0 10px}.tgbgc-maryrow p{line-height:1.68;margin-top:0}
/* ROSARY */
.tgbgc-anchors{display:flex;flex-wrap:wrap;gap:9px;justify-content:center;padding:14px 20px;background:#fff;border-bottom:1px solid var(--line)}.tgbgc-anchors a{border:1px solid var(--gold);border-radius:999px;padding:8px 15px;color:var(--gold2);text-decoration:none}.tgbgc-rosaryintro{max-width:1180px;margin:auto;padding:32px 20px;display:grid;grid-template-columns:1.35fr .65fr;gap:32px}.tgbgc-rosaryintro h2{font-family:Georgia,serif;font-size:2rem}.tgbgc-rosaryintro li,.tgbgc-rosaryintro p{line-height:1.62}.tgbgc-rosarygraphic{min-height:300px;border-radius:20px;background:#fff;border:1px solid #ead8b7;display:grid;place-items:center;text-align:center;font-size:1.65rem;overflow:hidden}.tgbgc-rosarygraphic .beads{max-width:270px;line-height:1.3;letter-spacing:.09em}.tgbgc-section{max-width:1180px;margin:auto;padding:38px 20px}.tgbgc-sectiontitle{text-align:center;margin-bottom:24px}.tgbgc-mysterygrid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}.tgbgc-mystery{text-align:center}.tgbgc-mystery>div{aspect-ratio:1.45;border-radius:9px;background:linear-gradient(145deg,#513116,#c89244 50%,#f2d67e);display:grid;place-items:center;color:#fff}.tgbgc-mystery span{font-family:Georgia,serif;font-size:1.8rem}.tgbgc-mystery h3{font-size:.9rem;font-weight:500;line-height:1.3}.tgbgc-prayers details{max-width:950px;margin:0 auto 10px;padding:15px 18px;background:#fff;border:1px solid var(--line);border-radius:12px}.tgbgc-prayers summary{font-weight:700;cursor:pointer}.tgbgc-reading{max-width:900px}.tgbgc-reading h3{font-family:Georgia,serif;font-size:1.45rem;margin-top:26px}.tgbgc-reading p,.tgbgc-reading li{line-height:1.75}.tgbgc-callout{max-width:1100px;margin:26px auto 50px;padding:22px 26px;background:#fff;border-left:6px solid var(--gold);line-height:1.7}
/* MASS */
.tgbgc-compare{border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#fff}.tgbgc-compare .head,.tgbgc-compare .row{display:grid;grid-template-columns:1fr 1fr 1.35fr}.tgbgc-compare .head{background:var(--navy);color:#fff}.tgbgc-compare .head>*{padding:14px}.tgbgc-compare .row>div{padding:16px;border-top:1px solid #ebdcc1;line-height:1.52}.tgbgc-compare .row>div+div{border-left:1px solid #ebdcc1}
/* SAINTS */
.tgbgc-sainttools{max-width:1180px;margin:auto;padding:28px 20px 16px}.tgbgc-sainttools label{display:block;font-weight:800;margin-bottom:9px}.tgbgc-sainttools>div{display:grid;grid-template-columns:1fr auto;gap:10px}.tgbgc-sainttools input{border:1px solid #ccc;border-radius:999px;padding:13px 18px;font-size:1rem}.tgbgc-sainttools button{border:0;border-radius:999px;padding:10px 22px;background:var(--navy);color:#fff}.tgbgc-saintgrid{max-width:1320px;margin:auto;padding:8px 20px 52px;display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.tgbgc-saint{background:#fff;border:1px solid #d7b878;border-radius:8px;overflow:hidden;box-shadow:0 5px 16px rgba(62,44,14,.04)}.tgbgc-saint[hidden]{display:none}.tgbgc-saint a{color:inherit;text-decoration:none}.tgbgc-saint .portrait{aspect-ratio:1.12;background:radial-gradient(circle,#fff2bd,#c69345 55%,#694018);border-bottom:6px double #dfbd78;display:grid;place-items:center}.tgbgc-saint .portrait span{width:88px;height:88px;border-radius:50%;display:grid;place-items:center;background:#fff9;font-family:Georgia,serif;font-size:1.9rem;color:#76501e}.tgbgc-saint .body{padding:16px}.tgbgc-saint h2{font-family:Georgia,serif;font-size:1.25rem;margin:0 0 6px}.tgbgc-saint p{line-height:1.48;margin:8px 0}.tgbgc-saint .causes{display:block;color:var(--gold2);font-size:.8rem;font-weight:700}.tgbgc-saintprofile{max-width:900px;margin:0 auto;text-align:center;padding:42px 20px 8px}.tgbgc-saintprofile h1{font-family:Georgia,serif;font-size:3rem}
/* HEALTH / CONTACT / BLOG */
.tgbgc-healthnote{max-width:1180px;margin:28px auto 8px;padding:22px 26px;background:#fff;border-left:6px solid #b35a4b;line-height:1.6}.tgbgc-health>span{font-size:2rem;color:var(--gold)}.tgbgc-contactform{display:grid;gap:14px}.tgbgc-contactform label{display:grid;gap:5px;font-weight:700}.tgbgc-contactform input,.tgbgc-contactform textarea{width:100%;border:1px solid #ccc;border-radius:10px;padding:10px;font:inherit}.tgbgc-contactform button{justify-self:start;border:0;border-radius:999px;background:var(--navy);color:#fff;padding:12px 22px}.tgbgc-contactform .hp{position:absolute;left:-10000px}.tgbgc-formmsg{padding:10px;border-radius:8px;background:#eef6ee}.tgbgc-formmsg.error{background:#fff0ee}.tgbgc-bloghero{text-align:center;padding:24px 20px;background:linear-gradient(100deg,#f3e3c8,#fff);border-bottom:1px solid #ead1a4}.tgbgc-bloghero h1{font-family:Georgia,serif;font-size:2.8rem;margin:4px 0 8px}.tgbgc-footer{background:#172033;color:#fff;padding:26px 28px;display:flex;justify-content:space-between;align-items:center;gap:30px}.tgbgc-footer>div{display:flex;align-items:center;gap:16px}.tgbgc-footer img{width:92px;height:66px;object-fit:contain}.tgbgc-footer p{margin:0;line-height:1.5}
@media(max-width:1180px){.tgbgc-headrow{gap:14px}.tgbgc-menu{gap:5px 14px}.tgbgc-menu a{font-size:.95rem}.tgbgc-brand{flex-basis:100px}.tgbgc-brand img{width:96px;height:68px}}
@media(max-width:1220px){.tgbgc-headrow{min-height:70px}.tgbgc-headrow nav{display:none;position:absolute;left:0;right:0;top:70px;background:#fff;padding:18px 24px;border-bottom:1px solid #ddd;box-shadow:0 8px 18px rgba(0,0,0,.08)}.tgbgc-headrow nav.open{display:block}.tgbgc-menu{display:grid;gap:10px}.tgbgc-mobile-toggle{display:block;margin-left:auto}.tgbgc-brandtext{display:block}.tgbgc-grid3{grid-template-columns:repeat(2,1fr)}.tgbgc-saintgrid{grid-template-columns:repeat(3,1fr)}.tgbgc-mysterygrid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.tgbgc-headrow{padding:6px 14px;min-height:62px}.tgbgc-brand{flex-basis:auto}.tgbgc-brand img{width:76px;height:52px}.tgbgc-brandtext{font-size:1rem}.tgbgc-headrow nav{top:62px}.tgbgc-searchrow{padding:7px 14px 10px}.tgbgc-searchrow form{grid-template-columns:1fr}.tgbgc-homehero{min-height:500px;margin:0;background-position:42% center}.tgbgc-hero-copy{margin:0;padding:20px;transform:translateY(-40px)}.tgbgc-hero-copy h1{font-size:3.7rem!important}.tgbgc-join{right:14px;top:auto;bottom:18px;transform:none;width:110px;height:76px;font-size:1rem}.tgbgc-homegrid,.tgbgc-two,.tgbgc-grid3,.tgbgc-rosaryintro,.tgbgc-saintgrid{grid-template-columns:1fr}.tgbgc-maryrow,.tgbgc-maryrow:nth-child(even){grid-template-columns:1fr}.tgbgc-maryrow:nth-child(even) .tgbgc-maryart{order:0}.tgbgc-maryart{max-width:320px;margin:auto}.tgbgc-mysterygrid{grid-template-columns:repeat(2,1fr)}.tgbgc-compare .head{display:none}.tgbgc-compare .row{grid-template-columns:1fr}.tgbgc-compare .row>div+div{border-left:0}.tgbgc-sainttools>div{grid-template-columns:1fr}.tgbgc-footer{align-items:flex-start;flex-direction:column}.tgbgc-page-hero{padding:18px 16px 20px}.tgbgc-page-hero h1{font-size:2.2rem!important}.tgbgc-center h2,.tgbgc-sectiontitle h2{font-size:1.8rem}}
/* v3.0 real artwork integration */
.tgbgc-mary-intro{display:grid;grid-template-columns:280px 1fr;gap:34px;align-items:center;padding:26px 0 34px;border-bottom:1px solid #e6d4b5}.tgbgc-mary-intro img{width:100%;aspect-ratio:1;object-fit:cover;border:7px double #d7b36c}.tgbgc-mary-intro h2{font-family:Georgia,serif;font-size:2rem;margin:6px 0 12px}.tgbgc-maryart{background:none!important;padding:0!important;border:7px double #d7b36c!important;overflow:hidden}.tgbgc-maryart img{display:block;width:100%;height:100%;object-fit:cover}.tgbgc-mystery>img{display:block;width:100%;aspect-ratio:1.45;object-fit:cover;border-radius:9px;box-shadow:0 3px 12px rgba(48,34,14,.08)}.tgbgc-mystery>div{display:none!important}.tgbgc-rosarygraphic{background:#fff}.tgbgc-rosarygraphic img{max-width:80%;max-height:300px;object-fit:contain}.tgbgc-saint .portrait.photo{background:#f8f0df}.tgbgc-saint .portrait.photo img{display:block;width:100%;height:100%;object-fit:cover}.tgbgc-saints .tgbgc-page-hero{background-image:linear-gradient(rgba(247,237,216,.90),rgba(255,255,255,.93)),url('general/saints-wallpaper.png');background-size:cover;background-position:center}.tgbgc-saintprofile{position:relative}.tgbgc-saintprofile .portrait-large{max-width:360px;margin:0 auto 24px}.tgbgc-saintprofile .portrait-large img{width:100%;border:8px double #d7b36c}
@media(max-width:760px){.tgbgc-mary-intro{grid-template-columns:1fr}.tgbgc-mary-intro img{max-width:320px;margin:auto}.tgbgc-mystery>img{aspect-ratio:1.25}}


/* Exact interactive silver rosary — 50 purple decade beads, 4 white separators, 5 introductory beads = 59 beads */
.tgbgc-rosarygraphic{padding:18px 14px 14px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;background:#fff}
.tgbgc-exact-rosary{width:min(100%,610px);margin:auto}
.tgbgc-rosary-svg{display:block;width:100%;height:auto;overflow:visible}
.tgbgc-silver-chain{fill:none;stroke:#aeb4bc;stroke-width:3;opacity:.78}
.tgbgc-silver-link{stroke:#b8bec6;stroke-width:2.8;stroke-linecap:round}
.tgbgc-svg-bead{cursor:pointer;outline:none}
.tgbgc-svg-bead .tgbgc-bead-glow{fill:#f3ddff;opacity:0;filter:url(#tgbgcGlow);transition:opacity .18s ease}
.tgbgc-svg-bead.white .tgbgc-bead-glow{fill:#fff8d9}
.tgbgc-svg-bead[aria-pressed="true"] .tgbgc-bead-glow{opacity:.98}
.tgbgc-svg-bead[aria-pressed="true"] circle:not(.tgbgc-bead-glow){stroke:#ffffff;stroke-width:2.6}
.tgbgc-svg-bead:focus-visible .tgbgc-bead-glow{opacity:.72}
.tgbgc-rosary-controls{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;font-size:.92rem}
.tgbgc-reset-rosary{border:1px solid #989fa8;border-radius:999px;background:#fff;padding:7px 14px;color:#5d646c;cursor:pointer;font:inherit}
.tgbgc-reset-rosary:hover{background:#f4f5f6}
.tgbgc-rosary-help{margin:0!important;font-size:.88rem;color:#665c4d;text-align:center}
@media(max-width:760px){.tgbgc-exact-rosary{width:min(100%,520px)}}


/* v3.4 Saints: calendar ordering, daily traditional-calendar feature, and consistent portraits */
.tgbgc-sotd{max-width:1180px;margin:30px auto 2px;padding:24px 26px;background:linear-gradient(135deg,#fffaf0,#f5ead7);border:1px solid #d7b878;border-radius:16px}
.tgbgc-sotd-heading{display:grid;grid-template-columns:64px 1fr;gap:20px;align-items:center;margin-bottom:20px}.tgbgc-sotd-icon{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:#fff;border:1px solid #d7b878;color:#a66c1b;font-size:1.7rem}.tgbgc-sotd h2{font-family:Georgia,serif;margin:2px 0 6px;font-size:1.8rem}.tgbgc-sotd p{margin:4px 0}.tgbgc-calendar-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.tgbgc-calendar-choice{background:#fff;border:1px solid #dfc691;border-radius:12px;padding:20px 22px;box-shadow:0 5px 14px rgba(62,44,14,.04)}.tgbgc-calendar-choice h3{font-family:Georgia,serif;font-size:1.38rem;margin:3px 0 2px;color:#252a34}.tgbgc-calendar-kicker{color:var(--gold2);font-size:.72rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.tgbgc-calendar-choice .tgbgc-calendar-subtitle{font-weight:700;color:#6d6255;margin-bottom:10px}.tgbgc-calendar-choice p{line-height:1.5}.tgbgc-calendar-button{display:inline-block;margin-top:12px;font-weight:800}.tgbgc-calendar-compare{text-align:center;margin:18px 0 0!important}.tgbgc-calendar-compare a{font-weight:800;color:var(--navy);text-decoration:none}.tgbgc-calendar-compare a:hover{text-decoration:underline}.tgbgc-sortnote{color:#6d6255;font-size:.9rem}
.tgbgc-saint .portrait{aspect-ratio:4/5}.tgbgc-saint .portrait.photo img{object-position:center 18%}.tgbgc-saint .body{position:relative}.tgbgc-dateflag{display:inline-block;margin:0 0 8px!important;padding:5px 9px;border-radius:999px;background:#f5ead7;color:#8b5715;font-size:.78rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}

/* v3.4 Stations of the Cross */
.tgbgc-stations-intro{max-width:1080px;margin:0 auto;padding:28px 22px 8px;text-align:center;font-size:1.05rem;line-height:1.7}
.tgbgc-stations-grid{max-width:1400px;margin:0 auto;padding:22px 22px 64px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
.tgbgc-station{position:relative;background:#fffdf9;border:1px solid #d9bd87;border-radius:14px;overflow:hidden;box-shadow:0 4px 16px rgba(57,42,20,.06);display:flex;flex-direction:column}
.tgbgc-station-head{position:absolute;z-index:2;top:10px;left:10px;display:flex;align-items:center;gap:7px;background:rgba(255,252,246,.94);border:1px solid #c8a665;border-radius:999px;padding:5px 10px;color:#6f4b1b;font-family:Georgia,serif;font-weight:700}.tgbgc-station-cross{font-size:1rem}.tgbgc-station-roman{font-size:.9rem;letter-spacing:.05em}
.tgbgc-station img{width:100%;aspect-ratio:4/3;object-fit:cover;filter:sepia(.06) contrast(1.03);border-bottom:1px solid #dbc69e}
.tgbgc-station h2{font-family:Georgia,serif;font-size:1.23rem;line-height:1.25;margin:16px 16px 9px;color:#1e2633}
.tgbgc-station-response{margin:0 16px 14px;line-height:1.58;font-style:italic;color:#42382d}
.tgbgc-station-meditation{margin-top:auto;min-height:120px;padding:14px 16px 20px;border-top:1px dashed #d9bd87;background:#fffaf1}.tgbgc-station-meditation strong{font-family:Georgia,serif;color:#9a651c}.tgbgc-station-meditation p{color:#8a8175;margin:8px 0 0;font-size:.9rem}
@media(max-width:1100px){.tgbgc-stations-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.tgbgc-sotd{text-align:center}.tgbgc-sotd-heading{grid-template-columns:1fr}.tgbgc-sotd-icon{margin:auto}.tgbgc-calendar-choice-grid{grid-template-columns:1fr}.tgbgc-stations-grid{grid-template-columns:repeat(2,1fr);gap:14px;padding:16px 14px 45px}.tgbgc-station h2{font-size:1.05rem}.tgbgc-station-response{font-size:.92rem}}
@media(max-width:480px){.tgbgc-stations-grid{grid-template-columns:1fr}}


/* v3.5 saint portrait normalization: one consistent devotional frame on every card */
.tgbgc-saint .portrait.photo{position:relative;padding:10px;background:#efe2c8!important;border:6px double #c7a15d;border-bottom:6px double #c7a15d!important;box-sizing:border-box;overflow:hidden}
.tgbgc-saint .portrait.photo::after{content:"";position:absolute;inset:5px;pointer-events:none;border:1px solid rgba(125,83,25,.45);box-shadow:inset 0 0 0 2px rgba(255,255,255,.45)}
.tgbgc-saint .portrait.photo img{width:100%;height:100%;object-fit:cover;border:1px solid #c8aa72;box-sizing:border-box}
.tgbgc-saint .portrait.photo img[src*="st-blaise"]{object-position:center 38%}
.tgbgc-saint .portrait.photo img[src*="st-apollonia"]{object-position:center 20%}
.tgbgc-saint .portrait.photo img[src*="st-lucy"]{object-position:center 15%}
.tgbgc-saint .portrait.photo img[src*="st-gerard"]{object-position:center 18%}
.tgbgc-saint .portrait.photo img[src*="st-jude"]{object-position:center 15%}
.tgbgc-saint .portrait.photo img[src*="st-gemma"]{object-position:center 16%}

/* v3.5 rosary interaction */
.tgbgc-interactive-rosary .tgbgc-svg-bead{cursor:pointer}
.tgbgc-interactive-rosary .tgbgc-svg-bead[aria-pressed="true"]{filter:drop-shadow(0 0 7px rgba(214,183,255,.95))}

/* v3.6: return to the user's exact rosary artwork; clickable targets match bead size and no SVG guide circles are drawn. */
.tgbgc-photo-rosary{position:relative;width:min(100%,480px);margin:auto;line-height:0}
.tgbgc-photo-rosary>img{display:block;width:100%;height:auto;filter:drop-shadow(0 3px 7px rgba(45,38,54,.10))}
.tgbgc-photo-bead{position:absolute;transform:translate(-50%,-50%);width:3.15%;aspect-ratio:1;border:0;border-radius:50%;padding:0;background:transparent;cursor:pointer;box-shadow:none;outline-offset:3px}
.tgbgc-photo-bead.white{width:4.1%}
.tgbgc-photo-bead[aria-pressed="true"]{background:rgba(241,220,255,.45);box-shadow:0 0 2px 2px rgba(255,255,255,.98),0 0 9px 5px rgba(186,119,236,.82),0 0 18px 7px rgba(225,197,248,.48)}
.tgbgc-photo-bead.white[aria-pressed="true"]{background:rgba(255,251,220,.48);box-shadow:0 0 2px 2px rgba(255,255,255,.98),0 0 9px 5px rgba(228,204,129,.75)}
.tgbgc-photo-bead:focus-visible{outline:2px solid #6b3d91}
.tgbgc-saintcollection{max-width:1180px;margin:22px auto 28px;padding:18px;background:#fffdf9;border:1px solid #d7b878;border-radius:14px;text-align:center}
.tgbgc-saintcollection h2{font-family:Georgia,serif;margin:4px 0 8px}.tgbgc-saintcollection p{margin:0 auto 14px;max-width:850px;color:#62584c}
.tgbgc-saintcollection img{display:block;width:100%;height:auto;border:6px double #c7a15d;background:#f7eedc}
/* Every card uses the same cream-and-gold frame, regardless of source. */
.tgbgc-saint .portrait.photo{aspect-ratio:1.18/1!important;padding:8px!important;background:#f4e7ce!important;border:6px double #c7a15d!important}
.tgbgc-saint .portrait.photo img{object-fit:cover!important;object-position:center center!important;border:1px solid #d4b77d!important}


/* v3.7 full-site polish: exact, realistic interactive rosary and uncropped saint portraits */
.tgbgc-rosaryintro{max-width:1380px;grid-template-columns:minmax(0,1fr) minmax(470px,590px);gap:42px;align-items:start;padding-top:34px}
.tgbgc-rosarygraphic{min-height:0;padding:18px 18px 16px;overflow:visible;background:linear-gradient(180deg,#fff,#fffdf9)}
.tgbgc-exact-rosary{width:min(100%,570px);margin:0 auto}
.tgbgc-rosary-svg{display:block;width:100%;height:auto;overflow:visible}
.tgbgc-rosary-svg .tgbgc-chain{fill:none;stroke:url(#tgbgcSilver);stroke-width:3.2;stroke-linecap:round;stroke-linejoin:round;opacity:.92}
.tgbgc-rosary-svg .tgbgc-svg-bead{cursor:pointer;outline:none}
.tgbgc-rosary-svg .tgbgc-svg-bead .bead-core{stroke:#5f6670;stroke-width:.7;filter:url(#tgbgcSoftShadow);transition:filter .15s ease,stroke .15s ease,stroke-width .15s ease}
.tgbgc-rosary-svg .tgbgc-svg-bead.white .bead-core{stroke:#aaa69e}
.tgbgc-rosary-svg .tgbgc-svg-bead .bead-shine{fill:#fff;opacity:.58;pointer-events:none}
.tgbgc-rosary-svg .tgbgc-svg-bead[aria-pressed="true"] .bead-core{filter:url(#tgbgcBeadGlow);stroke:#c9b1ed;stroke-width:1.6}
.tgbgc-rosary-svg .tgbgc-svg-bead:focus-visible .bead-core{stroke:#1d315b;stroke-width:2}
.tgbgc-rosary-controls{margin-top:4px;font-size:1rem}.tgbgc-rosary-help{font-size:.94rem!important}
/* Hide all legacy photo-overlay click targets if an older page cache momentarily contains them. */
.tgbgc-photo-bead{display:none!important}

/* Saints: all individual portraits, one consistent original-style cream/gold frame, no head cropping. */
.tgbgc-saintcollection{display:none!important}
.tgbgc-saintgrid{max-width:1360px;gap:22px}
.tgbgc-saint .portrait.photo{aspect-ratio:4/5!important;padding:9px!important;background:linear-gradient(145deg,#f8edd9,#ead5ad)!important;border:7px double #c49a4d!important;box-shadow:inset 0 0 0 2px #fff8e9,0 4px 12px rgba(76,49,15,.08)!important}
.tgbgc-saint .portrait.photo::after{inset:6px;border:1px solid rgba(138,92,27,.55);box-shadow:inset 0 0 0 2px rgba(255,255,255,.58)}
.tgbgc-saint .portrait.photo img{display:block!important;width:100%!important;height:100%!important;object-fit:contain!important;object-position:center top!important;background:#f6efe4!important;border:1px solid #d8bd88!important}
.tgbgc-saint .body{min-height:205px}
.tgbgc-saint h2{line-height:1.22}
.tgbgc-link-static{display:inline-block;color:#8a672e;text-decoration:none;font-size:.92rem}
@media(max-width:1100px){.tgbgc-rosaryintro{grid-template-columns:1fr}.tgbgc-rosarygraphic{max-width:640px;width:100%;margin:0 auto}.tgbgc-exact-rosary{width:min(100%,600px)}}
@media(max-width:760px){.tgbgc-exact-rosary{width:min(100%,500px)}.tgbgc-saint .portrait.photo{aspect-ratio:4/5!important}}


/* v3.8: deterministic exact-count rosary and natural saint-card framing */
.tgbgc-rosaryintro{grid-template-columns:minmax(0,1fr) minmax(520px,650px)!important;align-items:start!important}
.tgbgc-exact-rosary{width:min(100%,640px)!important}
.tgbgc-rosary-svg .tgbgc-chain{fill:none;stroke:url(#tgbgcSilver38);stroke-width:2.7;stroke-linecap:round;stroke-linejoin:round;opacity:.96}
.tgbgc-rosary-svg .tgbgc-svg-bead .bead-core{stroke:#5e626a;stroke-width:.8;filter:url(#tgbgcShadow38);transition:filter .14s ease,stroke .14s ease,stroke-width .14s ease}
.tgbgc-rosary-svg .tgbgc-svg-bead.white .bead-core{stroke:#aaa398}
.tgbgc-rosary-svg .tgbgc-svg-bead .bead-shine{fill:#fff;opacity:.66;pointer-events:none}
.tgbgc-rosary-svg .tgbgc-svg-bead[aria-pressed="true"] .bead-core{filter:url(#tgbgcGlow38);stroke:#d4b9f7;stroke-width:1.4}
.tgbgc-rosary-svg .tgbgc-svg-bead:focus-visible .bead-core{stroke:#1d315b;stroke-width:1.8}
.tgbgc-real-medal,.tgbgc-real-crucifix{pointer-events:none}

/* Let the saints' original matching gold frames display at their natural aspect ratio.
   This removes the blank lower panel and prevents heads/halos from being cropped. */
.tgbgc-saint .portrait.photo{aspect-ratio:auto!important;padding:0!important;background:#f7efdf!important;border:0!important;box-shadow:none!important;overflow:hidden!important}
.tgbgc-saint .portrait.photo::after{display:none!important}
.tgbgc-saint .portrait.photo img{display:block!important;width:100%!important;height:auto!important;max-height:none!important;object-fit:contain!important;object-position:center center!important;background:#f7efdf!important;border:0!important}
.tgbgc-saint{overflow:hidden}
@media(max-width:1100px){.tgbgc-rosaryintro{grid-template-columns:1fr!important}.tgbgc-exact-rosary{width:min(100%,620px)!important}}
@media(max-width:760px){.tgbgc-exact-rosary{width:min(100%,520px)!important}}

/* v3.9: clean saint-sheet crops and transparent realistic silver rosary hardware */
.tgbgc-real-medal,.tgbgc-real-crucifix{filter:drop-shadow(0 2px 2px rgba(20,20,20,.22));}
.tgbgc-saint .portrait.photo{background:#fffaf0!important;border:1px solid #d5b36f!important;border-radius:7px 7px 0 0!important;overflow:hidden!important;padding:0!important;}
.tgbgc-saint .portrait.photo img{display:block!important;width:100%!important;height:auto!important;object-fit:contain!important;object-position:center center!important;background:#fffaf0!important;}
.tgbgc-saint .portrait.photo::after{display:none!important;}

/* v4.0 cache-busted visual corrections */
.tgbgc-saint .portrait.photo{height:auto!important;aspect-ratio:auto!important;background:transparent!important;overflow:hidden!important;border:0!important;}
.tgbgc-saint .portrait.photo img{display:block!important;width:100%!important;height:auto!important;aspect-ratio:auto!important;object-fit:contain!important;object-position:center!important;border:0!important;background:transparent!important;}
.tgbgc-real-medal,.tgbgc-real-crucifix{opacity:1!important;}

/* v4.1 saints cleanup: keep the rosary untouched; improve saint cards and hide title bars embedded in older source art */
.tgbgc-saintgrid{max-width:1360px!important;gap:24px!important}
.tgbgc-saint{background:#fff!important;border:1px solid #d7b878!important;border-radius:10px!important;overflow:hidden!important;box-shadow:0 6px 16px rgba(76,49,15,.06)!important}
.tgbgc-saint a{display:flex!important;flex-direction:column!important;height:100%!important}
.tgbgc-saint .portrait.photo{position:relative!important;aspect-ratio:4/5!important;padding:10px!important;background:linear-gradient(145deg,#fbf0dc,#ecd6ae)!important;border:0!important;border-bottom:1px solid #d7b878!important;border-radius:0!important;overflow:hidden!important;box-shadow:none!important}
.tgbgc-saint .portrait.photo::after{content:""!important;position:absolute!important;inset:8px!important;border:1px solid rgba(138,92,27,.50)!important;box-shadow:inset 0 0 0 2px rgba(255,255,255,.58)!important;pointer-events:none!important;display:block!important}
.tgbgc-saint .portrait.photo img{display:block!important;width:100%!important;height:116%!important;max-height:none!important;aspect-ratio:auto!important;object-fit:cover!important;object-position:center top!important;background:#f7efdf!important;border:1px solid #d4b77d!important}
.tgbgc-saint .portrait.photo img[src*="st-gemma"],.tgbgc-saint .portrait.photo img[src*="st-gerard"]{height:100%!important;object-position:center 18%!important}
.tgbgc-saint .body{padding:16px 18px 18px!important;min-height:215px!important}
.tgbgc-saint h2{margin:0 0 8px!important;line-height:1.2!important}
.tgbgc-saint p{line-height:1.5!important}


/* v5.0 Saints rebuild — no legacy collage imagery. */
.tgbgc-saintgrid{max-width:1380px!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:24px!important}
.tgbgc-saint{background:#fff!important;border:1px solid #dfc28a!important;border-radius:14px!important;overflow:hidden!important;box-shadow:0 8px 22px rgba(74,48,17,.07)!important}
.tgbgc-saint a{display:flex!important;flex-direction:column!important;height:100%!important;text-decoration:none!important}
.tgbgc-saint .portrait.photo.tgbgc-wiki-portrait{position:relative!important;aspect-ratio:4/5!important;padding:14px!important;background:linear-gradient(145deg,#fffaf0,#eee0c3)!important;border:0!important;border-bottom:1px solid #e2c68f!important;overflow:hidden!important;display:grid!important;place-items:center!important}
.tgbgc-saint .portrait.photo.tgbgc-wiki-portrait::before{content:"";position:absolute;inset:8px;border:5px double #c69b4e;border-radius:8px;pointer-events:none;z-index:2}
.tgbgc-saint .portrait.photo.tgbgc-wiki-portrait::after{content:""!important;position:absolute!important;inset:15px!important;border:1px solid rgba(255,255,255,.78)!important;box-shadow:inset 0 0 0 1px rgba(126,84,25,.20)!important;pointer-events:none!important;z-index:2!important;display:block!important}
.tgbgc-saint .portrait.photo.tgbgc-wiki-portrait img{display:block!important;width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important;background:#f4ead8!important;border:0!important;opacity:0;transition:opacity .18s ease}
.tgbgc-saint .portrait.photo.tgbgc-wiki-portrait.loaded img{opacity:1}
.tgbgc-wiki-fallback{position:absolute;inset:0;display:grid;place-items:center;font-family:Georgia,serif;font-size:2rem;color:#8a6426;background:radial-gradient(circle at center,#fff9e9,#ead4aa);z-index:1}
.tgbgc-image-credit{position:absolute!important;right:16px!important;bottom:13px!important;z-index:4!important;background:rgba(255,255,255,.9)!important;border-radius:999px!important;padding:3px 7px!important;font-size:.62rem!important;color:#76501e!important;line-height:1.2!important;box-shadow:0 1px 4px rgba(0,0,0,.08)!important}
.tgbgc-saint .body{padding:16px 18px 20px!important;min-height:220px!important}
.tgbgc-saint h2{font-size:1.28rem!important;line-height:1.18!important;margin:0 0 8px!important}
.tgbgc-saint p{line-height:1.48!important;margin:7px 0!important}
@media(max-width:1220px){.tgbgc-saintgrid{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(max-width:880px){.tgbgc-saintgrid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:560px){.tgbgc-saintgrid{grid-template-columns:1fr!important}}

/* v5.1: never show giant blank Saint cards while remote artwork loads. */
.tgbgc-saint .portrait.photo.tgbgc-wiki-portrait{height:300px!important;aspect-ratio:auto!important;padding:12px!important;display:grid!important;place-items:center!important;position:relative!important;background:linear-gradient(145deg,#fffaf0,#eee0c3)!important}
.tgbgc-saint .portrait.photo.tgbgc-wiki-portrait img{position:relative!important;z-index:1!important;width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important;background:#f7efdf!important;opacity:0!important}
.tgbgc-saint .portrait.photo.tgbgc-wiki-portrait.loaded img{opacity:1!important}
.tgbgc-wiki-fallback{position:absolute!important;inset:12px!important;z-index:1!important;display:grid!important;place-items:center!important;font-family:Georgia,serif!important;font-size:2rem!important;font-weight:700!important;color:#7c5721!important;background:radial-gradient(circle,#fffaf0,#ead7b4)!important;border-radius:6px!important}
.tgbgc-wiki-fallback[hidden]{display:none!important}
.tgbgc-saint .body{display:block!important;position:relative!important;z-index:5!important;padding:16px 18px 20px!important;min-height:0!important;background:#fff!important}
.tgbgc-image-credit{position:absolute!important;right:18px!important;bottom:16px!important;z-index:6!important;background:rgba(255,255,255,.9)!important;border-radius:999px!important;padding:3px 7px!important;font-size:.62rem!important;color:#76501e!important;line-height:1.2!important}
@media(max-width:760px){.tgbgc-saint .portrait.photo.tgbgc-wiki-portrait{height:340px!important}}

/* v5.2: remove visible Wikimedia badge overlay from saint cards */
.tgbgc-image-credit{display:none!important;}

/* v5.3 Saints directory: uniform portrait boxes + locally curated portrait support. */
.tgbgc-saint .portrait,
.tgbgc-saint .portrait.photo,
.tgbgc-saint .portrait.photo.tgbgc-wiki-portrait,
.tgbgc-saint .portrait.photo.tgbgc-local-portrait,
.tgbgc-saint .portrait.tgbgc-static-fallback{
  box-sizing:border-box!important;
  width:100%!important;
  height:300px!important;
  min-height:300px!important;
  max-height:300px!important;
  aspect-ratio:auto!important;
  flex:0 0 300px!important;
  position:relative!important;
  overflow:hidden!important;
  display:grid!important;
  place-items:center!important;
  padding:12px!important;
  background:linear-gradient(145deg,#fffaf0,#eee0c3)!important;
  border:0!important;
  border-bottom:1px solid #e2c68f!important;
}
.tgbgc-saint .portrait.photo.tgbgc-local-portrait::before,
.tgbgc-saint .portrait.photo.tgbgc-wiki-portrait::before,
.tgbgc-saint .portrait.tgbgc-static-fallback::before{
  content:""!important;position:absolute!important;inset:8px!important;border:5px double #c69b4e!important;border-radius:8px!important;pointer-events:none!important;z-index:3!important;
}
.tgbgc-saint .portrait.photo.tgbgc-local-portrait::after,
.tgbgc-saint .portrait.photo.tgbgc-wiki-portrait::after,
.tgbgc-saint .portrait.tgbgc-static-fallback::after{
  content:""!important;position:absolute!important;inset:15px!important;border:1px solid rgba(255,255,255,.78)!important;box-shadow:inset 0 0 0 1px rgba(126,84,25,.20)!important;pointer-events:none!important;z-index:3!important;display:block!important;
}
.tgbgc-saint .portrait.photo.tgbgc-local-portrait img,
.tgbgc-saint .portrait.photo.tgbgc-wiki-portrait img{
  display:block!important;width:100%!important;height:100%!important;max-height:276px!important;object-fit:contain!important;object-position:center!important;background:#f7efdf!important;border:0!important;
}
.tgbgc-saint .portrait.photo.tgbgc-local-portrait img{opacity:1!important;z-index:1!important}
.tgbgc-wiki-fallback{
  position:absolute!important;inset:12px!important;width:auto!important;height:auto!important;min-height:0!important;max-height:none!important;display:grid!important;place-items:center!important;z-index:1!important;margin:0!important;border-radius:6px!important;background:radial-gradient(circle,#fffaf0,#ead7b4)!important;
}
.tgbgc-wiki-fallback[hidden]{display:none!important}
@media(max-width:760px){
  .tgbgc-saint .portrait,.tgbgc-saint .portrait.photo,.tgbgc-saint .portrait.photo.tgbgc-wiki-portrait,.tgbgc-saint .portrait.photo.tgbgc-local-portrait,.tgbgc-saint .portrait.tgbgc-static-fallback{height:320px!important;min-height:320px!important;max-height:320px!important;flex-basis:320px!important}
}

/* v5.5: local-first saint portraits; every card uses the same portrait height. */
.tgbgc-saint .portrait.photo.tgbgc-local-portrait{
  position:relative!important;height:300px!important;aspect-ratio:auto!important;padding:12px!important;
  display:grid!important;place-items:center!important;background:linear-gradient(145deg,#fffaf0,#eee0c3)!important;
  border:0!important;border-bottom:1px solid #e2c68f!important;overflow:hidden!important;
}
.tgbgc-saint .portrait.photo.tgbgc-local-portrait::before{content:"";position:absolute;inset:8px;border:5px double #c69b4e;border-radius:8px;pointer-events:none;z-index:2}
.tgbgc-saint .portrait.photo.tgbgc-local-portrait::after{content:""!important;position:absolute!important;inset:15px!important;border:1px solid rgba(255,255,255,.78)!important;box-shadow:inset 0 0 0 1px rgba(126,84,25,.20)!important;pointer-events:none!important;z-index:2!important;display:block!important}
.tgbgc-saint .portrait.photo.tgbgc-local-portrait img{display:block!important;position:relative!important;z-index:1!important;width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important;background:#f7efdf!important;border:0!important;opacity:1!important}
@media(max-width:760px){.tgbgc-saint .portrait.photo.tgbgc-local-portrait{height:340px!important}}


/* v5.6 — remove legacy saint-sheet behavior and keep every portrait slot identical. */
.tgbgc-saint .portrait.photo.tgbgc-wiki-portrait,
.tgbgc-saint .portrait.photo.tgbgc-local-portrait,
.tgbgc-saint .portrait.tgbgc-static-fallback{
    height:300px!important;
    aspect-ratio:auto!important;
    min-height:300px!important;
    max-height:300px!important;
    box-sizing:border-box!important;
    overflow:hidden!important;
}
.tgbgc-saint .portrait.photo.tgbgc-local-portrait{
    position:relative!important;
    padding:12px!important;
    display:grid!important;
    place-items:center!important;
    background:linear-gradient(145deg,#fffaf0,#eee0c3)!important;
    border:0!important;
    border-bottom:1px solid #e2c68f!important;
}
.tgbgc-saint .portrait.photo.tgbgc-local-portrait::before{
    content:"";
    position:absolute;
    inset:8px;
    border:5px double #c69b4e;
    border-radius:8px;
    pointer-events:none;
    z-index:2;
}
.tgbgc-saint .portrait.photo.tgbgc-local-portrait img{
    width:100%!important;
    height:100%!important;
    object-fit:contain!important;
    object-position:center!important;
    background:#f7efdf!important;
    border:0!important;
}
@media(max-width:760px){
  .tgbgc-saint .portrait.photo.tgbgc-wiki-portrait,
  .tgbgc-saint .portrait.photo.tgbgc-local-portrait,
  .tgbgc-saint .portrait.tgbgc-static-fallback{
      height:340px!important;
      min-height:340px!important;
      max-height:340px!important;
  }
}

/* v6.0 final Saints portrait consistency */
.tgbgc-saint .portrait.photo img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center 22%!important;
  display:block!important;
}
.tgbgc-saint .portrait.photo,
.tgbgc-saint .portrait.tgbgc-static-fallback{
  height:300px!important;
  min-height:300px!important;
  max-height:300px!important;
  overflow:hidden!important;
}
@media(max-width:760px){
  .tgbgc-saint .portrait.photo,
  .tgbgc-saint .portrait.tgbgc-static-fallback{
    height:340px!important;
    min-height:340px!important;
    max-height:340px!important;
  }
}

/* v6.2.2 — Rosary page viewport improvement only.
   Preserve the exact SVG geometry/count; display it smaller so the mystery artwork
   begins higher on desktop and can remain visible while marking beads. */
@media (min-width:1101px){
  .tgbgc-rosaryintro{
    grid-template-columns:minmax(0,1fr) minmax(350px,430px)!important;
    gap:30px!important;
    padding-top:24px!important;
    padding-bottom:18px!important;
  }
  .tgbgc-rosarygraphic{
    padding:10px 12px 10px!important;
    gap:6px!important;
  }
  .tgbgc-exact-rosary{
    width:min(100%,390px)!important;
  }
  .tgbgc-rosary-controls{
    margin-top:0!important;
    font-size:.9rem!important;
  }
  .tgbgc-rosary-help{
    font-size:.82rem!important;
    line-height:1.25!important;
  }
  #mysteries.tgbgc-section{
    padding-top:22px!important;
  }
  #mysteries .tgbgc-sectiontitle{
    margin-bottom:16px!important;
  }
}
@media (min-width:761px) and (max-width:1100px){
  .tgbgc-exact-rosary{width:min(100%,410px)!important}
  .tgbgc-rosarygraphic{max-width:470px!important;padding:12px!important}
}

/* v6.2.3 — Rosary contemplation layout only. Exact bead geometry/count unchanged. */
.tgbgc-mystery-jump{color:#9b6416;text-decoration:underline;text-underline-offset:3px;font-weight:700}
.tgbgc-mystery-jump:hover,.tgbgc-mystery-jump:focus{color:#6f4309}
.tgbgc-mysterygroup{scroll-margin-top:110px;border-radius:14px;padding:12px 10px 18px;margin:0 0 22px;transition:background-color .25s ease,box-shadow .25s ease}
.tgbgc-mysterygroup-title{font-family:Georgia,serif;text-align:center;font-size:1.35rem;margin:0 0 12px;color:#1d2638}
.tgbgc-mysterygroup.tgbgc-highlight-row{background:#fff5d8;box-shadow:0 0 0 3px rgba(190,132,33,.28)}
@media (min-width:1101px){
  .tgbgc-rosaryintro{grid-template-columns:minmax(0,1fr) 250px!important;gap:24px!important;padding-top:18px!important;padding-bottom:6px!important}
  .tgbgc-rosarygraphic{padding:8px!important;gap:4px!important}
  .tgbgc-exact-rosary{width:40%!important;min-width:150px!important;max-width:180px!important}
  .tgbgc-rosary-controls{font-size:.8rem!important;gap:6px!important}
  .tgbgc-reset-rosary{padding:6px 10px!important;font-size:.82rem!important}
  .tgbgc-rosary-help{font-size:.72rem!important;line-height:1.2!important;margin:0!important}
  #mysteries.tgbgc-section{padding-top:8px!important}
  #mysteries .tgbgc-sectiontitle{margin-bottom:10px!important}
}

/* v6.2.4 — Contemplation workspace: mysteries remain visible beside a sticky clickable rosary.
   No SVG geometry, bead positions, or bead counts are changed. */
.tgbgc-rosaryintro-copyonly{
  display:block!important;
  max-width:1380px!important;
  padding-bottom:12px!important;
}
.tgbgc-rosaryintro-copyonly .tgbgc-rosarycopy{max-width:none!important}
.tgbgc-rosary-contemplation{
  max-width:1450px;
  margin:0 auto;
  padding:0 20px 30px;
  display:grid;
  grid-template-columns:minmax(0,1fr) 270px;
  gap:28px;
  align-items:start;
}
.tgbgc-mysteries-pane{
  max-width:none!important;
  margin:0!important;
  padding:14px 0 28px!important;
  min-width:0;
}
.tgbgc-rosary-sticky{
  position:sticky;
  top:105px;
  align-self:start;
  z-index:4;
  padding-top:14px;
}
.tgbgc-rosary-sticky .tgbgc-rosarygraphic{
  width:100%;
  min-height:0!important;
  padding:10px 10px 9px!important;
  gap:5px!important;
  box-shadow:0 8px 28px rgba(46,35,20,.08);
}
.tgbgc-rosary-sticky .tgbgc-exact-rosary{
  width:190px!important;
  min-width:0!important;
  max-width:190px!important;
}
.tgbgc-rosary-sticky .tgbgc-rosary-controls{font-size:.8rem!important;gap:6px!important}
.tgbgc-rosary-sticky .tgbgc-reset-rosary{padding:6px 10px!important;font-size:.8rem!important}
.tgbgc-rosary-sticky .tgbgc-rosary-help{font-size:.72rem!important;line-height:1.2!important;margin:0!important}
.tgbgc-rosary-contemplation .tgbgc-mysterygroup{scroll-margin-top:105px}

@media (max-width:1100px){
  .tgbgc-rosary-contemplation{grid-template-columns:1fr!important;max-width:1180px}
  .tgbgc-rosary-sticky{position:static!important;order:-1;padding-top:0;max-width:430px;width:100%;margin:0 auto 10px}
  .tgbgc-rosary-sticky .tgbgc-exact-rosary{width:min(100%,220px)!important;max-width:220px!important}
}


/* v6.2.5 — contemplative mystery overlay with synchronized decade beads */
.tgbgc-mystery-open{display:block;width:100%;padding:0;border:0;background:transparent;color:inherit;cursor:pointer;font:inherit;text-align:center}
.tgbgc-mystery-open img{display:block;width:100%;aspect-ratio:1.45;object-fit:cover;border-radius:9px;box-shadow:0 3px 12px rgba(48,34,14,.08);transition:transform .18s ease,box-shadow .18s ease}
.tgbgc-mystery-open:hover img,.tgbgc-mystery-open:focus-visible img{transform:translateY(-2px);box-shadow:0 7px 20px rgba(48,34,14,.15)}
.tgbgc-mystery-open h3{font-family:inherit;font-size:1rem;font-weight:400;margin:13px 0 0}
html.tgbgc-modal-open,html.tgbgc-modal-open body{overflow:hidden}
.tgbgc-mystery-modal[hidden]{display:none!important}
.tgbgc-mystery-modal{position:fixed;inset:0;z-index:999999;display:flex;align-items:center;justify-content:center;padding:20px}
.tgbgc-mystery-modal-backdrop{position:absolute;inset:0;background:rgba(16,18,25,.82);backdrop-filter:blur(4px)}
.tgbgc-mystery-dialog{position:relative;z-index:1;width:min(96vw,1420px);height:min(94vh,980px);background:#fffaf0;border:2px solid #d4ad66;border-radius:18px;box-shadow:0 28px 80px rgba(0,0,0,.42);padding:18px 24px 20px;display:flex;flex-direction:column;outline:none}
.tgbgc-mystery-close{position:absolute;right:14px;top:10px;z-index:4;width:42px;height:42px;border-radius:50%;border:1px solid #bda779;background:#fffdf8;font-size:2rem;line-height:1;cursor:pointer;color:#3d3225}
.tgbgc-mystery-dialog-title{font-family:Georgia,serif;text-align:center;margin:2px 52px 12px;color:#1d2638;font-size:clamp(1.7rem,2.4vw,2.5rem)}
.tgbgc-mystery-large-wrap{position:relative;flex:1;min-height:0;display:flex;align-items:center;justify-content:center;overflow:hidden;border-radius:12px;background:#16130f}
.tgbgc-mystery-large-image{display:block;width:100%;height:100%;object-fit:contain;background:#16130f}
.tgbgc-prayer-corner{position:absolute;right:18px;top:18px;width:min(390px,38%);max-height:calc(100% - 36px);overflow:auto;background:rgba(255,250,239,.95);border:2px solid rgba(193,145,58,.75);border-radius:14px;box-shadow:0 12px 34px rgba(0,0,0,.28);padding:15px 18px;color:#201b15;text-align:left}
.tgbgc-prayer-corner h3{font-family:Georgia,serif;color:#70470d;margin:0 0 6px;font-size:1.15rem}
.tgbgc-prayer-corner h3:not(:first-child){margin-top:14px;padding-top:10px;border-top:1px solid #dbc49c}
.tgbgc-prayer-corner p{font-size:.98rem;line-height:1.48;margin:0 0 7px}
.tgbgc-decade-instruction{text-align:center;margin:10px 0 7px;color:#5c4d3a;font-size:.92rem}
.tgbgc-decade-beads{display:flex;justify-content:center;align-items:center;gap:clamp(9px,1.15vw,18px);padding:2px 8px 4px;flex-wrap:nowrap}
.tgbgc-decade-bead{position:relative;width:clamp(38px,3.4vw,52px);height:clamp(38px,3.4vw,52px);border-radius:50%;border:2px solid #3b1858;background:radial-gradient(circle at 30% 23%,#eadcff 0 9%,#ae82dc 22%,#7040a0 48%,#4a226d 72%,#230d36 100%);box-shadow:0 3px 6px rgba(25,10,38,.32);cursor:pointer;padding:0;transition:transform .12s ease,box-shadow .14s ease,border-color .14s ease;color:#fff}
.tgbgc-decade-bead:hover{transform:scale(1.06)}
.tgbgc-decade-bead[aria-pressed="true"]{border-color:#f1ddff;box-shadow:0 0 5px 3px #e8ccff,0 0 18px 8px rgba(186,124,255,.9),0 3px 6px rgba(25,10,38,.32)}
.tgbgc-decade-bead-shine{position:absolute;left:22%;top:18%;width:24%;height:16%;border-radius:50%;background:rgba(255,255,255,.72);transform:rotate(-25deg)}
.tgbgc-decade-bead-number{position:absolute;inset:0;display:grid;place-items:center;font-size:.72rem;font-weight:700;text-shadow:0 1px 2px #32134d;opacity:.9}
.tgbgc-decade-progress{text-align:center;font-weight:700;color:#5b3a11;margin-top:5px;font-size:.9rem}
@media(max-width:820px){
 .tgbgc-mystery-modal{padding:8px}.tgbgc-mystery-dialog{width:98vw;height:96vh;padding:12px 10px 14px}
 .tgbgc-prayer-corner{right:8px;top:8px;width:calc(100% - 16px);max-height:58%;padding:12px 14px}
 .tgbgc-decade-beads{gap:5px}.tgbgc-decade-bead{width:32px;height:32px;min-width:32px}.tgbgc-decade-bead-number{font-size:.62rem}
}

/* v6.2.6 — rosary prayer-order correction, main-rosary prayer popup, and close-button alignment */
.tgbgc-mystery-close{
  width:42px!important;height:42px!important;min-width:42px!important;min-height:42px!important;
  padding:0!important;margin:0!important;display:grid!important;place-items:center!important;
  line-height:1!important;font-size:1.9rem!important;font-family:Arial,sans-serif!important;
  right:12px!important;top:12px!important;border-radius:50%!important;
}
.tgbgc-prayer-cross{cursor:pointer;outline:none}
.tgbgc-prayer-cross:focus-visible{filter:drop-shadow(0 0 7px rgba(30,49,91,.8))}
.tgbgc-rosary-prayer-popup[hidden]{display:none!important}
.tgbgc-rosary-prayer-popup{
  position:fixed;right:22px;bottom:22px;z-index:1000000;width:min(430px,calc(100vw - 30px));max-height:min(70vh,660px);
  overflow:auto;background:#fffaf0;border:2px solid #d4ad66;border-radius:16px;box-shadow:0 18px 55px rgba(0,0,0,.28);
  padding:20px 22px 18px;color:#2c261f;font-size:1rem;line-height:1.48
}
.tgbgc-rosary-prayer-popup-inner h3{font-family:Georgia,serif;color:#6e4512;margin:0 32px 8px 0;font-size:1.35rem}
.tgbgc-rosary-prayer-popup-inner p{margin:0 0 10px}
.tgbgc-rosary-prayer-popup-close{
  position:absolute;right:8px;top:7px;width:34px!important;height:34px!important;min-width:34px!important;padding:0!important;
  display:grid!important;place-items:center!important;border:0;background:transparent;color:#4a3826;font-size:1.65rem;line-height:1;cursor:pointer
}
@media(max-width:760px){
  .tgbgc-rosary-prayer-popup{right:10px;bottom:10px;width:calc(100vw - 20px);max-height:60vh;padding:17px 18px}
}

/* v6.2.7 — straight-line Rosary tracker. Circular SVG retained in markup as a hidden backup. */
.tgbgc-circular-rosary-backup{display:none!important}
.tgbgc-rosary-contemplation{display:block!important;max-width:1450px!important;padding:0 20px 30px!important}
.tgbgc-mysteries-pane{width:100%!important}
.tgbgc-rosaryintro-reference{display:grid!important;grid-template-columns:minmax(0,1fr) 310px!important;gap:38px!important;align-items:start!important;max-width:1380px!important}
.tgbgc-rosary-reference{margin:8px 0 0;text-align:center;background:#fff;border:1px solid #ead1a3;border-radius:18px;padding:14px;box-shadow:0 8px 28px rgba(46,35,20,.07)}
.tgbgc-rosary-reference img{display:block;width:100%;max-height:500px;object-fit:contain;border-radius:10px}
.tgbgc-rosary-reference figcaption{font-size:.8rem;line-height:1.35;color:#6b5a45;margin-top:8px}
.tgbgc-rosary-steps{line-height:1.55;padding-left:1.25rem}.tgbgc-rosary-steps li{margin:0 0 5px}
.tgbgc-mysterygroup{padding-top:8px!important;margin-bottom:34px!important}
.tgbgc-mysterygroup-title{font-size:1.6rem!important;margin-bottom:9px!important}
.tgbgc-linear-rosary{width:100%;display:flex;align-items:center;justify-content:center;gap:3px;white-space:nowrap;overflow-x:auto;padding:8px 8px 12px;margin:0 auto 12px;border-top:1px solid #edd6ad;border-bottom:1px solid #edd6ad;background:linear-gradient(90deg,rgba(255,250,239,.35),rgba(255,255,255,.9),rgba(255,250,239,.35));scrollbar-width:thin}
.tgbgc-linear-cross{width:31px;height:45px;min-width:31px;padding:1px;border:0;background:transparent;cursor:pointer;margin-right:3px}.tgbgc-linear-cross img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 1px 1px rgba(0,0,0,.25))}.tgbgc-linear-cross:hover img{filter:drop-shadow(0 0 5px rgba(145,94,20,.7))}
.tgbgc-linear-bead{position:relative;width:17px;height:17px;min-width:17px;border-radius:50%;padding:0;border:1px solid #3b1858;cursor:pointer;box-shadow:0 1px 3px rgba(25,10,38,.3)}
.tgbgc-linear-bead>span{position:absolute;inset:0;border-radius:50%;background:radial-gradient(circle at 30% 23%,#eadcff 0 10%,#ae82dc 24%,#7040a0 50%,#4a226d 74%,#230d36 100%)}
.tgbgc-linear-bead.white{width:21px;height:21px;min-width:21px;border-color:#bfb3a0}.tgbgc-linear-bead.white>span{background:radial-gradient(circle at 30% 25%,#fff 0 13%,#fffdf7 32%,#e7dfd2 70%,#bdb3a7 100%)}
.tgbgc-linear-bead[aria-pressed="true"]{border-color:#f5e3ff;box-shadow:0 0 4px 2px #ead4ff,0 0 12px 5px rgba(178,105,255,.9)}
.tgbgc-linear-bead small{position:absolute;top:24px;left:50%;transform:translateX(-50%);font-size:.52rem;color:#795119;font-weight:700;pointer-events:none}
.tgbgc-linear-prayer-marker{font-size:.62rem;border:1px solid #d6b77f;border-radius:999px;background:#fff9ec;color:#8a5b16;padding:3px 6px;cursor:pointer;margin:0 4px}.tgbgc-linear-prayer-marker:hover{background:#fff0ca}
.tgbgc-linear-decade{display:inline-flex;align-items:center;gap:3px;margin-left:5px;padding-left:5px;border-left:1px solid #d9c29b}
.tgbgc-linear-reset{margin-left:8px;border:1px solid #c9b48e;border-radius:999px;background:#fff;padding:4px 8px;font-size:.65rem;cursor:pointer}.tgbgc-linear-count{font-size:.62rem;color:#6d5b44;margin-left:5px}
@media(max-width:1100px){.tgbgc-rosaryintro-reference{grid-template-columns:1fr!important}.tgbgc-rosary-reference{max-width:360px;margin:0 auto}.tgbgc-linear-rosary{justify-content:flex-start}}
@media(max-width:760px){.tgbgc-linear-bead{width:18px;height:18px;min-width:18px}.tgbgc-linear-bead.white{width:22px;height:22px;min-width:22px}.tgbgc-linear-rosary{padding-bottom:16px}.tgbgc-linear-bead small{top:25px}}

/* v6.2.8 — cleaner linear tracker, real rosary reference, stronger Mysteries heading. */
.tgbgc-rosary-reference img{
  width:100%!important;
  height:360px!important;
  max-height:360px!important;
  object-fit:contain!important;
  object-position:center!important;
  background:#fff!important;
}
.tgbgc-mysteries-pane>.tgbgc-sectiontitle{
  margin:22px auto 26px!important;
  text-align:center!important;
}
.tgbgc-mysteries-pane>.tgbgc-sectiontitle .tgbgc-meditating-label{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:14px!important;
  width:min(760px,92%)!important;
  margin:0 auto 12px!important;
  font-size:.98rem!important;
  line-height:1.2!important;
  letter-spacing:.19em!important;
  color:#9a6218!important;
}
.tgbgc-mysteries-pane>.tgbgc-sectiontitle .tgbgc-meditating-label:before,
.tgbgc-mysteries-pane>.tgbgc-sectiontitle .tgbgc-meditating-label:after{
  content:"";
  height:1px;
  flex:1 1 80px;
  background:#d9b46e;
  opacity:.75;
}
.tgbgc-mysteries-pane>.tgbgc-sectiontitle h2{
  font-size:clamp(2.35rem,3.6vw,3.25rem)!important;
  line-height:1.05!important;
  margin:0!important;
}
.tgbgc-mysterygroup-title{
  margin:18px 0 12px!important;
}
.tgbgc-linear-rosary{
  width:100%!important;
  display:block!important;
  overflow:visible!important;
  white-space:normal!important;
  padding:10px 12px 8px!important;
  margin:0 auto 18px!important;
  border:1px solid #ead2a4!important;
  border-radius:14px!important;
  background:#fffdf8!important;
  box-shadow:0 3px 14px rgba(69,47,19,.05)!important;
}
.tgbgc-linear-track-main{
  width:100%!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:2px!important;
  min-width:0!important;
}
.tgbgc-linear-cross{
  width:24px!important;height:35px!important;min-width:24px!important;
  margin:0 4px 0 0!important;
}
.tgbgc-linear-bead{
  width:13px!important;height:13px!important;min-width:13px!important;
  border-width:1px!important;
}
.tgbgc-linear-bead.white{
  width:17px!important;height:17px!important;min-width:17px!important;
}
.tgbgc-linear-bead small{
  top:19px!important;
  font-size:.48rem!important;
  line-height:1!important;
  white-space:nowrap!important;
}
.tgbgc-linear-prayer-marker{
  font-size:.56rem!important;
  line-height:1!important;
  padding:3px 5px!important;
  margin:0 3px!important;
  flex:0 0 auto!important;
}
.tgbgc-linear-decade{
  gap:2px!important;
  margin-left:3px!important;
  padding-left:4px!important;
  flex:0 0 auto!important;
}
.tgbgc-linear-actions{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:10px!important;
  margin-top:14px!important;
  padding-top:7px!important;
  border-top:1px solid #f0dfbe!important;
}
.tgbgc-linear-reset{
  margin:0!important;
  font-size:.7rem!important;
  padding:4px 9px!important;
}
.tgbgc-linear-count{
  margin:0!important;
  font-size:.7rem!important;
  color:#6d5b44!important;
}
@media(max-width:1180px){
  .tgbgc-linear-rosary{overflow-x:auto!important;scrollbar-width:thin!important}
  .tgbgc-linear-track-main{justify-content:flex-start!important;min-width:980px!important;padding-bottom:8px!important}
}
@media(max-width:760px){
  .tgbgc-mysteries-pane>.tgbgc-sectiontitle .tgbgc-meditating-label{font-size:.78rem!important;letter-spacing:.13em!important;gap:8px!important}
  .tgbgc-rosary-reference img{height:300px!important;max-height:300px!important}
}

/* v6.2.9 — real user-supplied rosary reference; no card box; intro virtue labels hidden. */
.tgbgc-rosary-reference-photo{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:0!important;
}
.tgbgc-rosary-reference-photo img{
  width:100%!important;
  height:auto!important;
  max-height:520px!important;
  object-fit:contain!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.tgbgc-rosary-reference-photo figcaption{margin-top:8px!important;}
.tgbgc-linear-intro-label,.tgbgc-linear-bead-label,.tgbgc-intro-label{display:none!important;}

/* v6.3.0 — simplified Rosary introduction; mystery days replace reference photo. */
.tgbgc-rosaryintro-reference{
  grid-template-columns:minmax(0,1.55fr) minmax(320px,.75fr)!important;
  gap:48px!important;
  align-items:start!important;
  max-width:1380px!important;
  padding-left:10px!important;
}
.tgbgc-rosaryintro-reference .tgbgc-rosarycopy{
  max-width:none!important;
  margin-left:0!important;
  padding-left:0!important;
}
.tgbgc-rosaryintro-reference .tgbgc-rosarycopy h2{
  margin-top:0!important;
}
.tgbgc-mystery-days-panel{
  display:grid;
  gap:14px;
  padding:10px 0 0;
  align-self:start;
}
.tgbgc-mystery-day-row{
  display:block;
  padding:16px 18px;
  border-left:4px solid #c89244;
  background:rgba(255,255,255,.55);
  text-decoration:none!important;
  color:#202838!important;
  border-radius:0 12px 12px 0;
}
.tgbgc-mystery-day-row strong{
  display:block;
  font-family:Georgia,serif;
  font-size:1.22rem;
  margin-bottom:4px;
}
.tgbgc-mystery-day-row span{
  display:block;
  font-size:1rem;
  line-height:1.35;
}
.tgbgc-mystery-day-row:hover,
.tgbgc-mystery-day-row:focus-visible{
  background:#fff8e9;
  box-shadow:0 3px 12px rgba(79,52,16,.08);
}
@media(max-width:900px){
  .tgbgc-rosaryintro-reference{grid-template-columns:1fr!important;gap:18px!important;padding-left:20px!important}
  .tgbgc-mystery-days-panel{grid-template-columns:1fr!important;padding-top:0!important}
}

/* v6.3.1 Blessed Virgin Mary audio */
.tgbgc-mary-audio{justify-content:space-between;gap:26px}.tgbgc-mary-audio .tgbgc-audio-copy{display:flex;flex-direction:column;gap:3px;min-width:240px}.tgbgc-mary-audio .tgbgc-audio-copy strong{font-family:Georgia,serif;font-size:1.2rem}.tgbgc-mary-audio .tgbgc-audio-copy span{color:#5f584f}.tgbgc-mary-audio audio{width:min(560px,100%)}@media(max-width:760px){.tgbgc-mary-audio{align-items:stretch;flex-direction:column}.tgbgc-mary-audio audio{width:100%}}


/* v6.3.2 — expanded Blessed Virgin Mary apparition page */
.tgbgc-mary .tgbgc-page-body{max-width:none!important;padding-left:4vw!important;padding-right:4vw!important}
.tgbgc-marylist-expanded{max-width:1500px!important;padding-left:0!important;padding-right:0!important}
.tgbgc-mary-intro-wide{grid-template-columns:minmax(260px,360px) 1fr;gap:48px}
.tgbgc-mary-research-note{margin-top:16px;padding:13px 16px;border-left:4px solid var(--gold);background:#fffaf0}
.tgbgc-apparitions-heading{text-align:center;padding:42px 0 24px}.tgbgc-apparitions-heading h2{font-family:Georgia,serif;font-size:2.5rem;margin:5px 0 8px}
.tgbgc-apparition-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 34px;padding-bottom:70px}
.tgbgc-apparition-card{border:1px solid #e4c991;border-radius:18px;background:#fff;overflow:hidden;box-shadow:0 10px 28px rgba(63,45,20,.08)}
.tgbgc-apparition-open{display:grid;grid-template-columns:280px 1fr;width:100%;height:100%;padding:0;border:0;background:transparent;text-align:left;cursor:pointer;color:inherit}
.tgbgc-apparition-open img{width:100%;height:100%;min-height:300px;object-fit:cover}.tgbgc-apparition-open>div{padding:28px 30px}
.tgbgc-apparition-open h2{font-family:Georgia,serif;font-size:2rem;margin:6px 0 12px}.tgbgc-apparition-open p{line-height:1.62}.tgbgc-apparition-open:hover .tgbgc-link{text-decoration:underline}
.tgbgc-apparition-overlay[hidden]{display:none!important}.tgbgc-apparition-overlay{position:fixed;inset:0;z-index:99999;background:rgba(18,19,24,.82);padding:3vh 3vw;overflow:auto}
.tgbgc-apparition-modal{position:relative;max-width:1500px;margin:0 auto;background:#fffaf2;border:2px solid #d7b36c;border-radius:20px;min-height:92vh;box-shadow:0 24px 70px rgba(0,0,0,.35);overflow:hidden}
.tgbgc-apparition-close{position:sticky;top:14px;float:right;z-index:4;margin:16px 18px 0 0;width:48px;height:48px;border-radius:50%;border:1px solid #c79d50;background:#fff;font-size:2rem;line-height:1;cursor:pointer}
.tgbgc-apparition-modal-body{padding:34px 46px 54px;clear:both}.tgbgc-apparition-modal-grid{display:grid;grid-template-columns:minmax(300px,430px) 1fr;gap:52px;align-items:start}
.tgbgc-apparition-modal-art{position:sticky;top:28px}.tgbgc-apparition-modal-art img{width:100%;max-height:72vh;object-fit:contain;border:8px double #d7b36c;background:#fff}
.tgbgc-apparition-detail-copy h2{font-family:Georgia,serif;font-size:3rem;margin:5px 0 22px}.tgbgc-apparition-detail-copy>p{font-size:1.08rem;line-height:1.82;margin:0 0 18px}
.tgbgc-apparition-sources{margin-top:34px;padding-top:24px;border-top:1px solid #dfc38d}.tgbgc-apparition-sources h3{font-family:Georgia,serif;font-size:1.8rem;margin:0 0 14px}.tgbgc-apparition-refs{padding-left:24px}.tgbgc-apparition-refs li{margin:9px 0;line-height:1.5}.tgbgc-apparition-refs a,.tgbgc-magisterium-link a{color:#7c5317;text-decoration:underline}
body.tgbgc-apparition-opened{overflow:hidden}
@media(max-width:980px){.tgbgc-apparition-grid{grid-template-columns:1fr}.tgbgc-apparition-open{grid-template-columns:220px 1fr}.tgbgc-apparition-modal-grid{grid-template-columns:1fr}.tgbgc-apparition-modal-art{position:static}.tgbgc-apparition-modal-art img{max-height:420px}.tgbgc-apparition-detail-copy h2{font-size:2.4rem}}
@media(max-width:680px){.tgbgc-mary .tgbgc-page-body{padding-left:16px!important;padding-right:16px!important}.tgbgc-apparition-open{grid-template-columns:1fr}.tgbgc-apparition-open img{height:260px;min-height:0}.tgbgc-apparition-overlay{padding:0}.tgbgc-apparition-modal{min-height:100vh;border-radius:0}.tgbgc-apparition-modal-body{padding:24px 20px 40px}.tgbgc-apparition-close{margin-right:10px}.tgbgc-apparition-detail-copy h2{font-size:2rem}}
/* v6.3.3 Marian apparition expansion */
.tgbgc-apparition-close{display:flex!important;align-items:center!important;justify-content:center!important;padding:0!important;line-height:1!important;font-family:Arial,sans-serif!important;font-size:30px!important}
.tgbgc-devotion-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;padding:0 0 72px}
.tgbgc-devotion-grid article{border:1px solid #e4c991;border-radius:18px;background:#fff;overflow:hidden;box-shadow:0 10px 28px rgba(63,45,20,.08)}
.tgbgc-devotion-grid img{width:100%;height:340px;object-fit:cover}.tgbgc-devotion-grid article>div{padding:24px 26px}.tgbgc-devotion-grid h3{font-family:Georgia,serif;font-size:1.65rem;margin:0 0 12px}.tgbgc-devotion-grid p{line-height:1.65}.tgbgc-devotion-grid a{color:#7c5317;text-decoration:underline}
@media(max-width:980px){.tgbgc-devotion-grid{grid-template-columns:1fr}}

.tgbgc-apparition-open.no-art{grid-template-columns:1fr}
.tgbgc-apparition-open.no-art .tgbgc-apparition-cardcopy{padding:32px 34px}
.tgbgc-apparition-cardcopy{padding:28px 30px}
.tgbgc-apparition-open.no-art h2{max-width:18ch}
.tgbgc-apparition-modal-grid.no-art{grid-template-columns:1fr}
.tgbgc-devotion-grid-text article{display:block}
.tgbgc-devotion-grid-text article>div{padding:28px 30px}
.tgbgc-devotion-grid-text article h3{margin-top:0}
@media(max-width:680px){.tgbgc-apparition-open.no-art .tgbgc-apparition-cardcopy{padding:24px 20px}}


/* v6.3.5 — no-art Marian apparition cards styled as finished cards, not blank placeholders */
.tgbgc-apparition-open.no-art{grid-template-columns:1fr;min-height:100%;background:linear-gradient(180deg,#fffef9 0%,#fffaf0 100%)}
.tgbgc-apparition-noart-crest{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;min-height:168px;padding:28px 34px 12px;background:linear-gradient(180deg,#fffdf8 0%,#fbf3de 100%);border-bottom:1px solid #e7d2a0}
.tgbgc-apparition-noart-crest span{display:inline-flex;align-items:center;justify-content:center;width:76px;height:76px;border-radius:50%;border:2px solid #d3b06a;background:#fff8ea;color:#7c5317;font-family:Georgia,serif;font-size:2.35rem;font-weight:700;box-shadow:0 8px 18px rgba(124,83,23,.08)}
.tgbgc-apparition-noart-crest small{margin-top:14px;color:#8a6a33;font-size:.82rem;letter-spacing:.11em;text-transform:uppercase;font-weight:700}
.tgbgc-apparition-open.no-art .tgbgc-apparition-cardcopy{padding-top:22px}
.tgbgc-devotion-grid-text{align-items:stretch}
.tgbgc-devotion-grid-text article{min-height:100%}
@media(max-width:680px){.tgbgc-apparition-noart-crest{padding:24px 20px 10px}}


/* v6.4.1 — source-grounded generated images for Lourdes, Guadalupe, Knock, and La Salette */
.tgbgc-apparition-modal-art.source-open{position:static}
.tgbgc-image-source-toggle{display:block;margin:10px auto 0;padding:7px 13px;border:1px solid #c79d50;border-radius:999px;background:#fffaf0;color:#17314f;font-size:.78rem;font-weight:700;letter-spacing:.035em;cursor:pointer;box-shadow:0 2px 8px rgba(63,45,20,.08)}
.tgbgc-image-source-toggle:hover,.tgbgc-image-source-toggle:focus-visible{background:#f7ecd2;outline:2px solid transparent;box-shadow:0 0 0 3px rgba(199,157,80,.22)}
.tgbgc-image-source-toggle[aria-expanded="true"]{background:#17314f;color:#fff;border-color:#17314f}
.tgbgc-image-source-panel{margin-top:10px;padding:14px 15px 15px;border:1px solid #dcc187;border-radius:11px;background:#fff8e8;color:#40372d;font-size:.86rem;line-height:1.5;box-shadow:0 5px 14px rgba(63,45,20,.07)}
.tgbgc-image-source-panel[hidden]{display:none!important}
.tgbgc-image-source-panel h4{margin:0 0 7px;font-family:Georgia,serif;color:#17314f;font-size:1rem}
.tgbgc-image-source-panel h4:not(:first-child){margin-top:13px}
.tgbgc-image-source-panel p{margin:0 0 10px}
.tgbgc-image-source-panel dl{margin:0}.tgbgc-image-source-panel dl>div{display:grid;grid-template-columns:62px 1fr;gap:8px;padding:5px 0;border-top:1px solid rgba(199,157,80,.24)}
.tgbgc-image-source-panel dt{font-weight:700;color:#65512f}.tgbgc-image-source-panel dd{margin:0;min-width:0;overflow-wrap:anywhere}
.tgbgc-image-source-panel a{color:#7c5317;text-decoration:underline;text-underline-offset:2px}
.tgbgc-image-source-links{margin:6px 0 0;padding-left:19px}.tgbgc-image-source-links li{margin:5px 0}
@media(max-width:980px){.tgbgc-image-source-panel{max-width:620px;margin-left:auto;margin-right:auto}.tgbgc-image-source-toggle{margin-left:auto;margin-right:auto}}

/* v6.5.0 — source-transparent Marian devotion cards */
.tgbgc-marian-devotions .tgbgc-devotion-grid{padding-bottom:28px}
.tgbgc-devotion-card .tgbgc-meta{margin:0 0 10px;color:#a96816;font-size:.78rem;letter-spacing:.09em;text-transform:uppercase;font-weight:800}
.tgbgc-devotion-card .tgbgc-image-source-toggle{margin:16px 0 0}
.tgbgc-devotion-card .tgbgc-image-source-panel{text-align:left}
.tgbgc-devotion-card .tgbgc-image-source-panel a{color:#17314f}
.tgbgc-devotion-notes{padding:0 0 72px}
.tgbgc-devotion-note{border:1px solid #e4c991;border-radius:18px;background:linear-gradient(180deg,#fffef9 0%,#fff9ed 100%);box-shadow:0 10px 28px rgba(63,45,20,.07)}
.tgbgc-devotion-note>div{padding:26px 30px}
.tgbgc-devotion-note h3{margin:0 0 10px;font-family:Georgia,serif;font-size:1.55rem}
.tgbgc-devotion-note p{line-height:1.65}
.tgbgc-devotion-note a{color:#7c5317;text-decoration:underline}


/* v6.6.1 — preserve full Marian card images without unwanted cropping */
.tgbgc-apparition-open img{
  width:100%;
  height:auto;
  min-height:0;
  object-fit:contain;
  object-position:center center;
  align-self:start;
  background:#f8f0df;
}
.tgbgc-devotion-grid img{
  width:100%;
  height:auto;
  object-fit:contain;
  object-position:center center;
  display:block;
  background:#f8f0df;
}
@media(max-width:680px){
  .tgbgc-apparition-open img{height:auto;}
}


/* v6.6.2 — Mary page structure and proportion revision */
.tgbgc-mary-intro-wide img{aspect-ratio:4/3;object-fit:cover;object-position:center}
.tgbgc-apparition-jumpnav{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 12px;max-width:1180px;margin:18px auto 0}
.tgbgc-apparition-jumpnav a{display:inline-flex;align-items:center;justify-content:center;padding:9px 14px;border:1px solid #d7b36c;border-radius:999px;background:#fffaf0;color:#7c5317;text-decoration:none;font-size:.92rem;line-height:1.2}
.tgbgc-apparition-jumpnav a:hover,.tgbgc-apparition-jumpnav a:focus-visible{background:#f7ecd2;outline:2px solid transparent;box-shadow:0 0 0 3px rgba(199,157,80,.18)}
.tgbgc-apparition-card{scroll-margin-top:110px}
.tgbgc-apparition-open{grid-template-columns:240px 1fr;align-items:stretch}
.tgbgc-apparition-open img{width:100%;height:100%;min-height:280px;max-height:390px;object-fit:contain;object-position:center center;align-self:center;background:#f8f0df}
.tgbgc-apparition-cardcopy{display:flex;flex-direction:column;justify-content:center}
.tgbgc-devotion-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 30px;padding:0 0 72px}
.tgbgc-devotion-grid article{display:grid;grid-template-columns:240px 1fr;align-items:stretch;border:1px solid #e4c991;border-radius:18px;background:#fff;overflow:hidden;box-shadow:0 10px 28px rgba(63,45,20,.08)}
.tgbgc-devotion-grid img{width:100%;height:100%;min-height:280px;object-fit:contain;object-position:center center;display:block;background:#f8f0df}
.tgbgc-devotion-grid article>div{padding:24px 26px;display:flex;flex-direction:column;justify-content:center}
@media(max-width:1100px){.tgbgc-apparition-open{grid-template-columns:220px 1fr}.tgbgc-devotion-grid article{grid-template-columns:220px 1fr}}
@media(max-width:980px){.tgbgc-devotion-grid{grid-template-columns:1fr}.tgbgc-devotion-grid article{grid-template-columns:220px 1fr}}
@media(max-width:680px){.tgbgc-apparition-jumpnav{justify-content:flex-start}.tgbgc-apparition-open{grid-template-columns:1fr}.tgbgc-apparition-open img{height:auto;max-height:none;min-height:0}.tgbgc-devotion-grid article{grid-template-columns:1fr}.tgbgc-devotion-grid img{height:auto;min-height:0}}


/* v6.6.4 — Mary page: full-width Cana hero + compact gallery matching approved mockup */
.tgbgc-mary>.tgbgc-page-hero{display:none!important}
.tgbgc-mary{background:#fbf7ef}
.tgbgc-cana-hero{position:relative;min-height:330px;width:100%;background-image:linear-gradient(90deg,rgba(20,14,8,.88) 0%,rgba(20,14,8,.72) 26%,rgba(20,14,8,.18) 48%,rgba(20,14,8,0) 70%),var(--cana);background-size:cover;background-position:58% center;border-bottom:1px solid #d6aa56;display:flex;align-items:center;overflow:hidden}
.tgbgc-cana-copy{width:min(470px,40vw);margin-left:max(5vw,72px);padding:34px 0;color:#fff;text-shadow:0 2px 8px rgba(0,0,0,.35)}
.tgbgc-cana-copy h2{margin:0;font-family:Georgia,serif;font-size:clamp(2.9rem,4vw,4.7rem);line-height:.98;font-weight:700;color:#fff}
.tgbgc-cana-ref{margin:14px 0 10px;color:#e9b84d;font-family:Georgia,serif;font-size:1.18rem;text-transform:uppercase;letter-spacing:.08em}
.tgbgc-cana-rule{display:block;width:255px;max-width:85%;height:1px;background:#d7a742;margin:13px 0 15px}
.tgbgc-cana-tagline{margin:0;max-width:430px;font-family:Georgia,serif;font-style:italic;font-size:1.05rem;line-height:1.52;color:#fff}
.tgbgc-marylist-expanded{max-width:1540px!important;padding-top:0!important;padding-bottom:18px!important}
.tgbgc-apparitions-heading-clean{padding:24px 0 14px!important;margin:0!important}
.tgbgc-apparitions-heading-clean h2{margin:0 0 5px!important;font-size:2rem!important;text-transform:uppercase;letter-spacing:.025em;color:#17314f}
.tgbgc-apparition-subtitle{margin:0 0 12px!important;font-family:Georgia,serif;font-style:italic;color:#9d641b!important;font-size:.98rem}
.tgbgc-apparition-jumpnav{margin-top:8px!important;gap:4px 0!important}
.tgbgc-apparition-jumpnav a{border:0!important;border-right:1px solid #d8b16d!important;border-radius:0!important;background:transparent!important;padding:3px 13px!important;color:#17314f!important;font-family:Georgia,serif;font-weight:700;font-size:.9rem!important;box-shadow:none!important}
.tgbgc-apparition-jumpnav a:last-child{border-right:0!important}
.tgbgc-apparition-grid{grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:16px!important;padding-bottom:8px!important}
.tgbgc-apparition-card{border-radius:10px!important;box-shadow:0 5px 16px rgba(63,45,20,.07)!important}
.tgbgc-apparition-card.tgbgc-apparition-extra{display:none}
.tgbgc-apparition-grid.tgbgc-show-all .tgbgc-apparition-extra{display:block}
.tgbgc-apparition-open{grid-template-columns:42% 58%!important;min-height:236px!important;align-items:stretch!important}
.tgbgc-apparition-open img{width:100%!important;height:100%!important;min-height:236px!important;max-height:none!important;object-fit:contain!important;object-position:center!important;background:#f4ecdd!important;align-self:stretch!important}
.tgbgc-apparition-cardcopy{padding:15px 14px!important;justify-content:flex-start!important}
.tgbgc-apparition-cardcopy .tgbgc-meta{font-size:.66rem!important;line-height:1.25;margin:0 0 8px!important}
.tgbgc-apparition-cardcopy h2{font-size:1.15rem!important;line-height:1.12;margin:0 0 8px!important}
.tgbgc-apparition-cardcopy p{font-size:.84rem!important;line-height:1.42;margin:0 0 9px!important;display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical;overflow:hidden}
.tgbgc-apparition-cardcopy .tgbgc-link{font-size:.8rem;color:#17314f;margin-top:auto}
.tgbgc-view-more-wrap{text-align:center;padding:5px 0 20px}
.tgbgc-view-more-apparitions{border:1px solid #c99a49;border-radius:9px;background:#fffaf1;color:#17314f;padding:9px 22px;font-family:Georgia,serif;font-weight:700;cursor:pointer}
.tgbgc-view-more-apparitions span{display:inline-block;margin-left:8px;transition:transform .2s ease}
.tgbgc-view-more-apparitions[aria-expanded="true"] span{transform:rotate(180deg)}
.tgbgc-marian-devotions{max-width:1540px;margin:0 auto;padding:0 20px 12px}
.tgbgc-devotions-heading{text-align:center;border-top:1px solid #eee3cf;padding:17px 0 11px}
.tgbgc-devotions-heading h2{margin:0;font-family:Georgia,serif;text-transform:uppercase;letter-spacing:.02em;font-size:1.8rem;color:#17314f}
.tgbgc-devotion-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:18px!important;padding:0 0 24px!important}
.tgbgc-devotion-grid article{grid-template-columns:145px 1fr!important;min-height:205px!important;border-radius:10px!important}
.tgbgc-devotion-grid img{width:100%!important;height:100%!important;min-height:205px!important;object-fit:contain!important;background:#f4ecdd!important}
.tgbgc-devotion-grid article>div{padding:15px 16px!important;justify-content:flex-start!important}
.tgbgc-devotion-card .tgbgc-meta{display:none}
.tgbgc-devotion-grid h3{font-size:1.28rem!important;line-height:1.15;margin:0 0 9px!important}
.tgbgc-devotion-grid p{font-size:.86rem!important;line-height:1.45;margin:0 0 8px!important}
.tgbgc-devotion-card .tgbgc-image-source-toggle{margin-top:auto!important;align-self:flex-start!important;font-size:.72rem!important;padding:6px 10px!important}
.tgbgc-mary-audio-bottom{max-width:1100px!important;margin:12px auto 38px!important}
@media(max-width:1250px){.tgbgc-apparition-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}.tgbgc-devotion-grid{grid-template-columns:1fr!important}.tgbgc-devotion-grid article{grid-template-columns:180px 1fr!important}}
@media(max-width:820px){.tgbgc-cana-hero{min-height:410px;background-position:64% center}.tgbgc-cana-copy{width:58%;margin-left:24px}.tgbgc-cana-copy h2{font-size:2.8rem}.tgbgc-apparition-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.tgbgc-apparition-open{grid-template-columns:1fr!important}.tgbgc-apparition-open img{height:210px!important;min-height:210px!important}.tgbgc-devotion-grid article{grid-template-columns:150px 1fr!important}}
@media(max-width:560px){.tgbgc-cana-hero{min-height:470px;background-position:68% center}.tgbgc-cana-copy{width:74%;margin-left:18px;padding-top:150px}.tgbgc-cana-copy h2{font-size:2.45rem}.tgbgc-cana-tagline{font-size:.94rem}.tgbgc-apparition-grid{grid-template-columns:1fr!important}.tgbgc-apparition-open{grid-template-columns:145px 1fr!important}.tgbgc-apparition-open img{height:100%!important;min-height:230px!important}.tgbgc-devotion-grid article{grid-template-columns:120px 1fr!important}.tgbgc-devotion-grid img{min-height:220px!important}.tgbgc-apparition-jumpnav{justify-content:center!important}.tgbgc-apparition-jumpnav a{font-size:.82rem!important;padding:3px 8px!important}}


/* v6.6.5 — hero + four-across card layout revision */
.tgbgc-cana-hero{background-image:var(--cana)!important;background-size:cover!important;background-position:center center!important;min-height:520px!important;display:flex!important;align-items:center!important;border-bottom:1px solid #d6aa56!important}
.tgbgc-cana-copy{width:min(38%,460px)!important;margin-left:64px!important;padding:36px 0!important}
.tgbgc-cana-copy h2{font-size:4rem!important;line-height:.97!important;margin:0 0 10px!important;color:#fff!important;text-shadow:0 2px 10px rgba(0,0,0,.3)}
.tgbgc-cana-ref{color:#d4a446!important;letter-spacing:.08em!important;text-transform:uppercase!important;font-family:Georgia,serif!important;font-size:1rem!important;margin:0 0 14px!important}
.tgbgc-cana-rule{display:block!important;width:110px!important;height:2px!important;background:#c69a4b!important;margin:0 0 16px!important}
.tgbgc-cana-tagline{font-size:1.06rem!important;line-height:1.65!important;color:#fff!important;max-width:420px!important;text-shadow:0 1px 8px rgba(0,0,0,.28)}
.tgbgc-cana-tagline strong{font-weight:700}
.tgbgc-apparition-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:22px!important;padding-bottom:12px!important}
.tgbgc-apparition-card.tgbgc-apparition-extra{display:none}
.tgbgc-apparition-grid.tgbgc-show-all .tgbgc-apparition-extra{display:block}
.tgbgc-apparition-card-vertical{border-radius:12px!important;overflow:hidden!important}
.tgbgc-apparition-card-vertical .tgbgc-apparition-open{display:flex!important;flex-direction:column!important;align-items:stretch!important;height:100%!important;background:#fff}
.tgbgc-apparition-cardhead{padding:16px 16px 8px!important}
.tgbgc-apparition-cardhead .tgbgc-meta{font-size:.8rem!important;line-height:1.3!important;margin:0 0 8px!important;color:#b1791f!important;text-transform:uppercase!important;letter-spacing:.04em!important}
.tgbgc-apparition-cardhead h2{font-size:1.15rem!important;line-height:1.12!important;margin:0!important;color:#17314f!important}
.tgbgc-apparition-card-vertical img,.tgbgc-apparition-card-vertical .tgbgc-apparition-noart-crest{width:100%!important;height:250px!important;min-height:250px!important;object-fit:contain!important;object-position:center center!important;background:#f7f0e2!important;display:block!important}
.tgbgc-apparition-card-vertical .tgbgc-apparition-cardcopy{padding:12px 16px 16px!important;display:flex!important;flex-direction:column!important;justify-content:flex-start!important;gap:10px!important;flex:1 1 auto!important}
.tgbgc-apparition-card-vertical .tgbgc-apparition-cardcopy p{font-size:.93rem!important;line-height:1.48!important;margin:0!important;display:block!important;overflow:visible!important;-webkit-line-clamp:unset!important}
.tgbgc-apparition-card-vertical .tgbgc-link{margin-top:auto!important;font-size:.9rem!important;color:#17314f!important;text-decoration:none!important}
.tgbgc-devotion-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:22px!important;padding:0 0 30px!important}
.tgbgc-devotion-card-vertical{display:flex!important;flex-direction:column!important;border:1px solid #e4c991!important;border-radius:12px!important;background:#fff!important;overflow:hidden!important;box-shadow:0 5px 16px rgba(63,45,20,.07)!important;padding:16px!important}
.tgbgc-devotion-card-vertical .tgbgc-meta{font-size:.8rem!important;line-height:1.3!important;margin:0 0 8px!important;color:#b1791f!important;text-transform:uppercase!important;letter-spacing:.04em!important}
.tgbgc-devotion-card-vertical h3{font-size:1.15rem!important;line-height:1.15!important;margin:0 0 12px!important;color:#17314f!important}
.tgbgc-devotion-card-vertical img{width:100%!important;height:250px!important;min-height:250px!important;object-fit:contain!important;object-position:center center!important;background:#f7f0e2!important;display:block!important;margin:0 0 12px!important}
.tgbgc-devotion-cardcopy{display:flex!important;flex-direction:column!important;gap:10px!important;flex:1 1 auto!important}
.tgbgc-devotion-cardcopy p{font-size:.93rem!important;line-height:1.48!important;margin:0!important}
.tgbgc-devotion-cardcopy .tgbgc-image-source-toggle{align-self:flex-start!important;margin-top:auto!important}
@media(max-width:1280px){.tgbgc-apparition-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}.tgbgc-cana-copy{width:min(42%,420px)!important}}
@media(max-width:980px){.tgbgc-cana-hero{min-height:460px!important}.tgbgc-cana-copy{width:min(48%,380px)!important;margin-left:34px!important}.tgbgc-apparition-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.tgbgc-devotion-grid{grid-template-columns:1fr!important}}
@media(max-width:680px){.tgbgc-cana-hero{min-height:520px!important;background-position:62% center!important}.tgbgc-cana-copy{width:68%!important;max-width:none!important;margin-left:18px!important;padding-top:170px!important}.tgbgc-cana-copy h2{font-size:2.8rem!important}.tgbgc-cana-tagline{font-size:.98rem!important}.tgbgc-apparition-grid{grid-template-columns:1fr!important}}


/* v6.6.6 — restore cana hero closer to preferred mockup */
.tgbgc-cana-hero{position:relative!important;min-height:390px!important;width:100%!important;background-image:linear-gradient(90deg,rgba(20,14,8,.82) 0%,rgba(20,14,8,.72) 22%,rgba(20,14,8,.38) 42%,rgba(20,14,8,.10) 56%,rgba(20,14,8,0) 68%),var(--cana)!important;background-size:cover!important;background-position:center center!important;display:flex!important;align-items:center!important;overflow:hidden!important;border-bottom:1px solid #d6aa56!important}
.tgbgc-cana-copy{width:min(40%,520px)!important;max-width:520px!important;margin-left:42px!important;padding:18px 0!important;position:relative!important;z-index:2!important}
.tgbgc-cana-copy h2{font-size:3.35rem!important;line-height:1.03!important;margin:0 0 10px!important;color:#fff!important;text-shadow:0 2px 10px rgba(0,0,0,.35)!important}
.tgbgc-cana-ref{margin:0 0 12px!important;color:#d6a750!important;letter-spacing:.06em!important;text-transform:uppercase!important;font-family:Georgia,serif!important;font-size:1rem!important}
.tgbgc-cana-rule{display:block!important;width:120px!important;height:2px!important;background:#c89d50!important;margin:0 0 16px!important}
.tgbgc-cana-tagline{max-width:470px!important;margin:0!important;font-family:Georgia,serif!important;font-style:italic!important;font-size:1.05rem!important;line-height:1.45!important;color:#fff!important;text-shadow:0 1px 6px rgba(0,0,0,.3)!important}
.tgbgc-cana-tagline strong{font-weight:700!important}
@media(max-width:980px){.tgbgc-cana-hero{min-height:420px!important;background-position:56% center!important}.tgbgc-cana-copy{width:min(52%,420px)!important;margin-left:26px!important}.tgbgc-cana-copy h2{font-size:2.85rem!important}}
@media(max-width:680px){.tgbgc-cana-hero{min-height:470px!important;background-position:62% center!important}.tgbgc-cana-copy{width:72%!important;max-width:none!important;margin-left:18px!important;padding-top:80px!important}.tgbgc-cana-copy h2{font-size:2.35rem!important}.tgbgc-cana-tagline{font-size:.95rem!important;line-height:1.42!important}}


/* v6.6.7 — center Marian card headings over artwork */
.tgbgc-apparition-card-vertical .tgbgc-apparition-cardhead{
  text-align:center!important;
}
.tgbgc-apparition-card-vertical .tgbgc-apparition-cardhead .tgbgc-meta,
.tgbgc-apparition-card-vertical .tgbgc-apparition-cardhead h2{
  text-align:center!important;
}
.tgbgc-devotion-card-vertical>.tgbgc-meta,
.tgbgc-devotion-card-vertical>h3{
  text-align:center!important;
}


/* v6.6.8 — show the entire Cana scene vertically so Mary's head is never cropped */
.tgbgc-cana-hero{
  background-color:#25170e!important;
  background-image:linear-gradient(90deg,rgba(20,14,8,.92) 0%,rgba(20,14,8,.80) 22%,rgba(20,14,8,.52) 38%,rgba(20,14,8,.10) 55%,rgba(20,14,8,0) 72%),var(--cana)!important;
  background-size:100% 100%,auto 100%!important;
  background-position:center center,right center!important;
  background-repeat:no-repeat,no-repeat!important;
  min-height:390px!important;
}
@media(max-width:980px){
  .tgbgc-cana-hero{background-size:100% 100%,auto 100%!important;background-position:center center,right center!important;}
}
@media(max-width:680px){
  .tgbgc-cana-hero{background-size:100% 100%,auto 100%!important;background-position:center center,72% center!important;}
}


/* v6.6.9 — exact approved Cana banner and consistent devotion image sizing */
.tgbgc-cana-hero-imageonly{margin:0;padding:0;border-bottom:1px solid #d6aa56;overflow:hidden;background:#25170e;}
.tgbgc-cana-hero-imageonly img{display:block;width:100%;height:auto;}
.tgbgc-devotion-card-vertical img.tgbgc-fixed-devotion-img{display:block;width:100%!important;height:auto!important;min-height:0!important;aspect-ratio:auto!important;object-fit:contain!important;object-position:center top!important;background:#f7f0e2!important;margin:0 0 12px!important;}
.tgbgc-devotion-card-vertical{align-items:stretch!important;}


/* v6.7.0 — final Cana hero: exact saved image, never cropped */
.tgbgc-cana-final{
  display:grid;
  grid-template-columns:minmax(360px,.82fr) minmax(0,1.75fr);
  align-items:stretch;
  width:100%;
  background:#24160e;
  border-bottom:1px solid #d6aa56;
}
.tgbgc-cana-final-copy{
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:42px 44px;
  color:#fff;
  background:linear-gradient(135deg,#21130c 0%,#3a2415 100%);
}
.tgbgc-cana-final-copy h2{
  margin:0 0 10px;
  font-family:Georgia,serif;
  font-size:clamp(2.7rem,4vw,4.25rem);
  line-height:1.02;
  color:#fff;
}
.tgbgc-cana-final-ref{
  margin:0 0 14px!important;
  font-family:Georgia,serif;
  font-size:1rem;
  letter-spacing:.09em;
  text-transform:uppercase;
  color:#d7aa54;
}
.tgbgc-cana-final-rule{
  display:block;
  width:120px;
  height:2px;
  margin:0 0 18px;
  background:#c89d50;
}
.tgbgc-cana-final-copy>p:last-child{
  margin:0;
  max-width:520px;
  font-family:Georgia,serif;
  font-size:1.08rem;
  line-height:1.6;
  color:#fff;
}
.tgbgc-cana-final-copy strong{font-weight:700;}
.tgbgc-cana-final-art{
  display:flex;
  align-items:center;
  justify-content:center;
  background:#efe4d0;
  overflow:visible;
}
.tgbgc-cana-final-art img{
  display:block;
  width:100%;
  height:auto;
  max-width:none;
  object-fit:contain;
  object-position:center center;
}
@media(max-width:980px){
  .tgbgc-cana-final{grid-template-columns:1fr;}
  .tgbgc-cana-final-copy{padding:32px 28px;}
  .tgbgc-cana-final-art img{width:100%;height:auto;}
}


/* v6.7.1 — restore consistent Marian devotion card proportions */
.tgbgc-devotion-grid{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:22px!important;
  align-items:stretch!important;
}
.tgbgc-devotion-card-vertical{
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  padding:16px!important;
  min-width:0!important;
}
.tgbgc-devotion-card-vertical>.tgbgc-meta,
.tgbgc-devotion-card-vertical>h3{
  text-align:center!important;
}
.tgbgc-devotion-card-vertical img.tgbgc-fixed-devotion-img{
  display:block!important;
  width:100%!important;
  height:300px!important;
  min-height:300px!important;
  max-height:300px!important;
  object-fit:contain!important;
  object-position:center center!important;
  background:#f7f0e2!important;
  margin:0 0 14px!important;
}
.tgbgc-devotion-cardcopy{
  display:flex!important;
  flex-direction:column!important;
  flex:1 1 auto!important;
}
.tgbgc-devotion-cardcopy .tgbgc-image-source-toggle{
  margin-top:auto!important;
  align-self:flex-start!important;
}
@media(max-width:980px){
  .tgbgc-devotion-grid{grid-template-columns:1fr!important;}
  .tgbgc-devotion-card-vertical img.tgbgc-fixed-devotion-img{height:320px!important;min-height:320px!important;max-height:320px!important;}
}


/* v6.7.2 — clean, consistent four-card Marian devotion layout */
.tgbgc-marian-devotions .tgbgc-devotion-grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:20px!important;
  align-items:stretch!important;
  padding:0 0 32px!important;
}
.tgbgc-marian-devotions .tgbgc-devotion-card-vertical{
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  min-width:0!important;
  padding:16px!important;
  border:1px solid #e4c991!important;
  border-radius:12px!important;
  background:#fff!important;
  overflow:hidden!important;
  box-shadow:0 5px 16px rgba(63,45,20,.06)!important;
}
.tgbgc-marian-devotions .tgbgc-devotion-card-vertical>.tgbgc-meta{
  display:none!important;
}
.tgbgc-marian-devotions .tgbgc-devotion-card-vertical>h3{
  text-align:center!important;
  font-size:1.18rem!important;
  line-height:1.2!important;
  color:#17314f!important;
  margin:0 0 12px!important;
}
.tgbgc-marian-devotions .tgbgc-devotion-card-vertical img.tgbgc-fixed-devotion-img{
  display:block!important;
  width:100%!important;
  height:260px!important;
  min-height:260px!important;
  max-height:260px!important;
  object-fit:contain!important;
  object-position:center center!important;
  background:#f7f0e2!important;
  margin:0 0 14px!important;
}
.tgbgc-marian-devotions .tgbgc-devotion-cardcopy{
  display:flex!important;
  flex-direction:column!important;
  flex:1 1 auto!important;
  gap:12px!important;
}
.tgbgc-marian-devotions .tgbgc-devotion-cardcopy>p{
  font-size:.92rem!important;
  line-height:1.5!important;
  margin:0!important;
}
.tgbgc-marian-devotions .tgbgc-image-source-toggle{
  margin-top:auto!important;
  align-self:flex-start!important;
  padding:7px 12px!important;
  border:1px solid #c8953d!important;
  border-radius:999px!important;
  background:#fffaf0!important;
  color:#17314f!important;
  font-size:.78rem!important;
  font-weight:700!important;
  box-shadow:none!important;
}
.tgbgc-marian-devotions .tgbgc-image-source-panel[hidden]{
  display:none!important;
}
.tgbgc-marian-devotions .tgbgc-image-source-panel{
  margin-top:12px!important;
  padding:13px 14px!important;
  border:1px solid #e4c991!important;
  border-radius:10px!important;
  background:#fffaf0!important;
  color:#28313d!important;
  font-size:.82rem!important;
  line-height:1.45!important;
}
.tgbgc-marian-devotions .tgbgc-image-source-panel h4{
  font-size:.95rem!important;
  margin:0 0 7px!important;
  color:#17314f!important;
}
.tgbgc-marian-devotions .tgbgc-image-source-panel p{
  margin:0 0 8px!important;
}
.tgbgc-marian-devotions .tgbgc-image-source-panel dl,
.tgbgc-marian-devotions .tgbgc-image-source-panel ul{
  margin-top:8px!important;
  margin-bottom:8px!important;
}
@media(max-width:1200px){
  .tgbgc-marian-devotions .tgbgc-devotion-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}
@media(max-width:680px){
  .tgbgc-marian-devotions .tgbgc-devotion-grid{grid-template-columns:1fr!important;}
  .tgbgc-marian-devotions .tgbgc-devotion-card-vertical img.tgbgc-fixed-devotion-img{
    height:300px!important;min-height:300px!important;max-height:300px!important;
  }
}



/* v6.7.5 — Mary page title + whole-hero proportional resize.
   The v6.7.2 Cana hero itself is untouched: same markup, image, text, colors,
   grid proportions, and image behavior. We only make the complete hero narrower
   and center it, which naturally makes it shorter without cropping anything. */
.tgbgc-mary > .tgbgc-page-hero{
  display:block!important;
  padding:12px 20px 14px!important;
  background:#fbf7ef!important;
  border-bottom:1px solid #ead1a4!important;
}
.tgbgc-mary > .tgbgc-page-hero .tgbgc-eyebrow,
.tgbgc-mary > .tgbgc-page-hero > p:last-child{
  display:none!important;
}
.tgbgc-mary > .tgbgc-page-hero h1{
  margin:0!important;
  color:#17395f!important;
  font-family:Georgia,serif!important;
  font-size:clamp(2rem,2.6vw,2.75rem)!important;
  line-height:1.08!important;
}



/* v6.7.6 — resize the complete v6.7.2 Cana hero as ONE locked visual object.
   No child widths, typography, image sizing, copy, colors, or grid proportions are changed. */
.tgbgc-cana-scale-shell{
  position:relative;
  width:100%;
  overflow:visible;
}
@media (min-width:981px){
  .tgbgc-cana-scale-shell{
    --tgbgc-cana-scale:.90;
  }
  .tgbgc-cana-scale-shell > .tgbgc-cana-final{
    position:absolute!important;
    top:0!important;
    left:0!important;
    width:100%!important;
    margin:0!important;
    transform:scale(var(--tgbgc-cana-scale))!important;
    transform-origin:top center!important;
  }
}
@media (max-width:980px){
  .tgbgc-cana-scale-shell > .tgbgc-cana-final{
    position:relative!important;
    width:100%!important;
    margin:0!important;
    transform:none!important;
  }
}

/* v6.8.0 — Mary, Mother of God saint biography popup example */
.tgbgc-saint .tgbgc-saint-open{display:flex!important;flex-direction:column!important;width:100%!important;height:100%!important;margin:0!important;padding:0!important;border:0!important;background:transparent!important;color:inherit!important;text-align:left!important;font:inherit!important;cursor:pointer!important}
.tgbgc-saint .tgbgc-saint-open:hover h2,.tgbgc-saint .tgbgc-saint-open:focus-visible h2{text-decoration:underline}
.tgbgc-saint .tgbgc-saint-open:focus-visible{outline:3px solid rgba(196,154,77,.45)!important;outline-offset:-3px!important}
.tgbgc-saint-overlay[hidden]{display:none!important}
.tgbgc-saint-overlay{position:fixed;inset:0;z-index:100000;background:rgba(18,19,24,.82);padding:3vh 3vw;overflow:auto}
.tgbgc-saint-modal{position:relative;max-width:1500px;margin:0 auto;background:#fffaf2;border:2px solid #d7b36c;border-radius:20px;min-height:92vh;box-shadow:0 24px 70px rgba(0,0,0,.35);overflow:hidden}
.tgbgc-saint-close{position:sticky;top:14px;float:right;z-index:4;margin:16px 18px 0 0;width:48px;height:48px;border-radius:50%;border:1px solid #c79d50;background:#fff;color:#3d3327;display:flex;align-items:center;justify-content:center;padding:0;font-family:Arial,sans-serif;font-size:30px;line-height:1;cursor:pointer}
.tgbgc-saint-modal-body{padding:34px 46px 54px;clear:both}
body.tgbgc-saint-opened{overflow:hidden}
.tgbgc-saint-detail-copy h3{font-family:Georgia,serif;color:#1d2638;font-size:1.65rem;margin:30px 0 12px}
.tgbgc-saint-detail-copy>p{font-size:1.06rem;line-height:1.78;margin:0 0 18px}
.tgbgc-saint-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:8px 0 26px}
.tgbgc-saint-facts>div,.tgbgc-patronage-grid>div{border:1px solid #dfc38d;border-radius:12px;background:#fffdf8;padding:14px 16px}
.tgbgc-saint-facts strong,.tgbgc-patronage-grid strong{display:block;color:#8b5715;font-family:Georgia,serif;font-size:1.05rem;margin-bottom:5px}
.tgbgc-saint-facts span,.tgbgc-patronage-grid span{display:block;line-height:1.58;color:#40372d}
.tgbgc-saint-list{padding-left:24px;margin:8px 0 24px}
.tgbgc-saint-list li{margin:10px 0;line-height:1.6}
.tgbgc-patronage-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:8px 0 22px}
.tgbgc-saint-note{margin:22px 0;padding:15px 17px;border-left:4px solid #c79d50;background:#fff5df;line-height:1.65;color:#40372d}
.tgbgc-saint-modal-art .tgbgc-image-source-panel p{margin:7px 0 0}
@media(max-width:980px){.tgbgc-saint-facts,.tgbgc-patronage-grid{grid-template-columns:1fr}.tgbgc-saint-modal-body{padding:28px 28px 44px}}
@media(max-width:680px){.tgbgc-saint-overlay{padding:0}.tgbgc-saint-modal{min-height:100vh;border-radius:0}.tgbgc-saint-modal-body{padding:22px 18px 36px}.tgbgc-saint-close{margin-right:10px}}




/* v6.9.1 — Stations of the Cross laid out in ordered cards */
.tgbgc-stations-intro{max-width:980px;margin:0 auto;padding:24px 22px 10px;text-align:center;font-size:1.06rem;line-height:1.8}
.tgbgc-stations-grid{max-width:1380px;margin:0 auto;padding:18px 22px 60px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;align-items:start}
.tgbgc-station-card{background:#fffdf9;border:1px solid #d9bd87;border-radius:20px;padding:24px 24px 22px;box-shadow:0 8px 26px rgba(57,42,20,.07);height:100%;display:flex;flex-direction:column}
.tgbgc-station-top{text-align:center;margin-bottom:8px}
.tgbgc-station-kicker{margin:0 0 8px;color:#9a651c;font-weight:700;letter-spacing:.06em;text-transform:uppercase;font-size:.92rem}
.tgbgc-station-kicker .tgbgc-station-roman{font-family:Georgia,serif}
.tgbgc-station-card h2{font-family:Georgia,serif;font-size:clamp(1.55rem,2vw,2.15rem);line-height:1.18;color:#1e2633;margin:0 0 8px}
.tgbgc-station-genuflect{margin:2px 0 8px;text-align:center;font-weight:700;color:#7c5220}
.tgbgc-station-response{margin:0 0 16px;text-align:center;line-height:1.6;font-style:italic;font-size:1.02rem;color:#42382d}
.tgbgc-station-visual{margin:0 0 16px;overflow:hidden;border-radius:16px;border:1px solid #dbc69e;box-shadow:0 3px 18px rgba(48,34,14,.08)}
.tgbgc-station-visual img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;filter:sepia(.05) contrast(1.02)}
.tgbgc-station-meditation{margin:0 0 16px;padding:16px 16px 18px;background:#fffaf1;border:1px dashed #d9bd87;border-radius:15px;flex:1}
.tgbgc-station-meditation p{margin:0;line-height:1.75;font-size:1.02rem;color:#3f3428}
.tgbgc-station-prayers{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;padding-top:4px}
.tgbgc-station-prayer{appearance:none;border:1px solid #d9bd87;background:#fff8eb;color:#8a5b17;border-radius:999px;padding:10px 16px;font-family:Georgia,serif;font-size:1rem;font-weight:700;cursor:pointer;transition:transform .16s ease, box-shadow .16s ease, background-color .16s ease}
.tgbgc-station-prayer:hover,.tgbgc-station-prayer:focus-visible{background:#fff3d7;box-shadow:0 6px 16px rgba(107,73,20,.12);transform:translateY(-1px)}
.tgbgc-station-dot{color:#b28640;font-size:1.1rem}
@media(max-width:1100px){.tgbgc-stations-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:760px){
  .tgbgc-stations-grid{grid-template-columns:1fr;padding:16px 14px 45px;gap:18px}
  .tgbgc-station-card{padding:18px 16px 20px;border-radius:16px}
  .tgbgc-station-kicker{font-size:.82rem}
  .tgbgc-station-card h2{font-size:1.55rem}
  .tgbgc-station-response{font-size:.97rem}
  .tgbgc-station-meditation{padding:14px 14px 16px}
  .tgbgc-station-meditation p{font-size:.98rem}
}

/* v6.9.4 — The Mass documented comparison */
.tgbgc-mass-anchors{position:sticky;top:0;z-index:18}
.tgbgc-mass-purpose{max-width:1050px;padding-bottom:18px}
.tgbgc-mass-lead{font-size:1.08rem;line-height:1.78;max-width:920px;margin:0 auto 24px}
.tgbgc-mass-lead sup,.tgbgc-mass-stage sup,.tgbgc-mass-beyond sup{font-size:.72em;margin-left:2px}
.tgbgc-mass-lead sup a,.tgbgc-mass-stage sup a,.tgbgc-mass-beyond sup a{color:var(--gold2);text-decoration:none;font-weight:800}
.tgbgc-mass-principles{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:24px}
.tgbgc-mass-principles>div{background:#fff;border:1px solid var(--line);border-top:4px solid var(--gold);border-radius:14px;padding:18px;text-align:center}
.tgbgc-mass-principles strong{display:block;font-family:Georgia,serif;font-size:1.08rem;margin-bottom:7px;color:var(--navy)}
.tgbgc-mass-principles span{display:block;line-height:1.45;color:#5f6065;font-size:.92rem}
.tgbgc-mass-visual{padding-top:30px}
.tgbgc-mass-photo-grid,.tgbgc-mass-video-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.tgbgc-mass-photo-card,.tgbgc-mass-video-card{margin:0;background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:0 8px 24px rgba(64,45,18,.06)}
.tgbgc-mass-photo-card img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;object-position:center}
.tgbgc-mass-photo-card figcaption{padding:18px 20px 20px}
.tgbgc-mass-photo-card figcaption strong{display:block;font-family:Georgia,serif;font-size:1.2rem;color:var(--navy);margin-bottom:5px}
.tgbgc-mass-photo-card figcaption span{display:block;line-height:1.5;margin-bottom:9px}
.tgbgc-mass-photo-card figcaption small{display:block;line-height:1.45;color:#666}
.tgbgc-mass-photo-card a,.tgbgc-mass-sources a{color:#81591f;text-decoration:underline;text-underline-offset:2px}
.tgbgc-mass-video-grid{margin-top:28px}
.tgbgc-mass-video-card{padding:20px}
.tgbgc-mass-video-card h3{font-family:Georgia,serif;font-size:1.25rem;margin:0 0 14px;color:var(--navy)}
.tgbgc-mass-video{aspect-ratio:16/9;border-radius:12px;overflow:hidden;background:#111}
.tgbgc-mass-video iframe{width:100%;height:100%;border:0;display:block}
.tgbgc-mass-video-card p{line-height:1.55;margin:12px 0 0;color:#555}
.tgbgc-mass-compare-section{max-width:1180px}
.tgbgc-mass-stage{margin:0 0 26px;background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:0 7px 20px rgba(75,50,18,.04)}
.tgbgc-mass-stage>h3{font-family:Georgia,serif;font-size:1.45rem;line-height:1.25;margin:0;padding:17px 22px;background:linear-gradient(90deg,#f6ead7,#fff);border-bottom:1px solid var(--line);color:var(--navy)}
.tgbgc-mass-cols{display:grid;grid-template-columns:1fr 1fr}
.tgbgc-mass-col{padding:22px 24px;min-width:0}
.tgbgc-mass-col+.tgbgc-mass-col{border-left:1px solid #eadbc3}
.tgbgc-mass-col h4{font-family:Georgia,serif;font-size:1.15rem;margin:0 0 14px;color:var(--navy)}
.tgbgc-mass-col p{line-height:1.68;margin:10px 0}
.tgbgc-mass-col blockquote{margin:14px 0;padding:13px 16px;background:#fbf6ed;border-left:4px solid var(--gold);font-family:Georgia,serif;font-size:1.02rem;line-height:1.55;color:#3d3529}
.tgbgc-mass-col.tlm{background:#fffdfa}
.tgbgc-mass-col.no{background:#fff}
.tgbgc-mass-change{padding:14px 22px 16px;background:#f7f1e7;border-top:1px solid #eadbc3;line-height:1.6}
.tgbgc-mass-stage-emphasis{border-color:#d8b36c;box-shadow:0 9px 26px rgba(122,86,23,.09)}
.tgbgc-mass-fact-table{border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#fff}
.tgbgc-mass-fact-table .head,.tgbgc-mass-fact-table .row{display:grid;grid-template-columns:.55fr 1fr 1.45fr}
.tgbgc-mass-fact-table .head{background:var(--navy);color:#fff}
.tgbgc-mass-fact-table .head>*{padding:14px 16px}
.tgbgc-mass-fact-table .row>div{padding:17px 18px;border-top:1px solid #eadbc3;line-height:1.58}
.tgbgc-mass-fact-table .row>div+div{border-left:1px solid #eadbc3}
.tgbgc-mass-caution{margin:28px auto 0;max-width:1080px;background:#fffaf0}
.tgbgc-mass-history-note{max-width:960px}
.tgbgc-mass-history-note>p{font-size:1.02rem;line-height:1.78}
.tgbgc-mass-sources{max-width:980px;border-top:1px solid var(--line)}
.tgbgc-footnotes{padding-left:1.6rem}
.tgbgc-footnotes li{margin:0 0 14px;line-height:1.68;scroll-margin-top:110px}
@media(max-width:850px){
 .tgbgc-mass-principles,.tgbgc-mass-photo-grid,.tgbgc-mass-video-grid,.tgbgc-mass-cols{grid-template-columns:1fr}
 .tgbgc-mass-col+.tgbgc-mass-col{border-left:0;border-top:1px solid #eadbc3}
 .tgbgc-mass-fact-table .head{display:none}
 .tgbgc-mass-fact-table .row{grid-template-columns:1fr}
 .tgbgc-mass-fact-table .row>div+div{border-left:0;border-top:1px dashed #eadbc3}
 .tgbgc-mass-fact-table .row>div:first-child{background:#f7f1e7;padding-bottom:10px}
 .tgbgc-mass-anchors{position:static}
}

/* v6.9.4 — expanded Mass page: Missal vs practice, rubrics check, parish guide */
.tgbgc-mass-note{max-width:920px;margin:22px auto 0;background:#f8fbfd}
.tgbgc-mass-insight{max-width:1080px;margin:28px auto 0;background:#f5f8f5;border-left:5px solid #6f806c}
.tgbgc-mass-insight sup,.tgbgc-mass-check sup,.tgbgc-priest-guide sup{font-size:.72em;margin-left:2px}
.tgbgc-mass-insight sup a,.tgbgc-mass-check sup a,.tgbgc-priest-guide sup a{color:var(--gold2);text-decoration:none;font-weight:800}
.tgbgc-mass-video-links{display:flex;align-items:center;gap:18px;margin:20px auto 0;padding:18px 20px;max-width:860px;background:#fff;border:1px solid var(--line);border-radius:14px}
.tgbgc-mass-video-links p{margin:0;line-height:1.55;color:#555}
.tgbgc-mass-video-links .tgbgc-btn{white-space:nowrap}
.tgbgc-mass-practice-table .head,.tgbgc-mass-practice-table .row{grid-template-columns:.5fr 1.35fr 1.15fr}
.tgbgc-mass-check{max-width:1160px}
.tgbgc-mass-check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.tgbgc-check-card{position:relative;background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px 22px 20px;box-shadow:0 7px 20px rgba(70,48,19,.04)}
.tgbgc-check-card h3{font-family:Georgia,serif;color:var(--navy);font-size:1.15rem;line-height:1.3;margin:34px 0 10px}
.tgbgc-check-card p{line-height:1.68;margin:0;color:#444}
.tgbgc-check-status{position:absolute;top:15px;left:18px;display:inline-block;padding:5px 9px;border-radius:999px;font-size:.73rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;background:#eee;color:#444}
.tgbgc-check-card.no{border-top:4px solid #9d5b57}.tgbgc-check-card.no .tgbgc-check-status{background:#f7e9e8;color:#743b37}
.tgbgc-check-card.permitted{border-top:4px solid #718369}.tgbgc-check-card.permitted .tgbgc-check-status{background:#eaf1e6;color:#52624c}
.tgbgc-check-card.required{border-top:4px solid #5b7189}.tgbgc-check-card.required .tgbgc-check-status{background:#e8eef4;color:#40566b}
.tgbgc-check-card.regulated{border-top:4px solid #b48b49}.tgbgc-check-card.regulated .tgbgc-check-status{background:#f6eedf;color:#765923}
.tgbgc-priest-guide{max-width:1120px;background:#fffdf8;border:1px solid #e5d5b7;border-radius:20px;margin-top:36px;margin-bottom:42px;padding:34px}
.tgbgc-priest-guide-actions{text-align:center;margin:-6px 0 20px}
.tgbgc-priest-guide-intro{max-width:900px;margin:0 auto 26px;padding:18px 20px;background:#fff;border:1px solid var(--line);border-radius:14px;line-height:1.65}
.tgbgc-priest-guide-intro>strong{display:block;color:var(--navy);font-family:Georgia,serif;font-size:1.08rem;margin-bottom:4px}
.tgbgc-priest-guide-intro p{margin:0;font-style:italic}
.tgbgc-priest-guide-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:24px}
.tgbgc-priest-guide-grid article{background:#fff;border:1px solid var(--line);border-radius:14px;padding:20px}
.tgbgc-priest-guide-grid h3{font-family:Georgia,serif;color:var(--navy);font-size:1.1rem;line-height:1.3;margin:0 0 9px}
.tgbgc-priest-guide-grid p{line-height:1.62;margin:0;color:#454545}
.tgbgc-mass-stage,.tgbgc-mass-purpose,.tgbgc-mass-visual,.tgbgc-mass-beyond,.tgbgc-mass-check,.tgbgc-priest-guide{scroll-margin-top:120px}
@media(max-width:850px){
 .tgbgc-mass-check-grid,.tgbgc-priest-guide-grid{grid-template-columns:1fr}
 .tgbgc-mass-video-links{display:block;text-align:center}
 .tgbgc-mass-video-links p{margin-top:12px;text-align:left}
 .tgbgc-priest-guide{padding:24px 18px}
}
@media print{
 body.tgbgc-print-guide .tgbgc-header,body.tgbgc-print-guide .tgbgc-footer,body.tgbgc-print-guide .tgbgc-mobile-toggle{display:none!important}
 body.tgbgc-print-guide *{visibility:hidden!important}
 body.tgbgc-print-guide .tgbgc-priest-guide,body.tgbgc-print-guide .tgbgc-priest-guide *{visibility:visible!important}
 body.tgbgc-print-guide .tgbgc-priest-guide{position:absolute!important;left:0!important;top:0!important;width:100%!important;max-width:none!important;margin:0!important;border:0!important;box-shadow:none!important;padding:18px!important;background:#fff!important}
 body.tgbgc-print-guide .tgbgc-print-guide-btn{display:none!important}
 body.tgbgc-print-guide .tgbgc-priest-guide-grid{grid-template-columns:1fr 1fr!important;gap:10px!important}
 body.tgbgc-print-guide .tgbgc-priest-guide-grid article{break-inside:avoid;padding:12px!important}
 body.tgbgc-print-guide a{color:#000!important;text-decoration:none!important}
}
.tgbgc-priest-guide-sources{margin-top:18px;padding:16px 18px;border-top:1px solid #e5d5b7;background:#fffaf0;border-radius:12px;line-height:1.55}
.tgbgc-priest-guide-sources strong{display:block;color:var(--navy);margin-bottom:4px}
.tgbgc-priest-guide-sources span{display:block;color:#4d4d4d;font-size:.93rem}

/* v6.9.5 — small layout fixes and Mass-page refinements */
/* Keep apparition-card wording visible when a theme applies button hover colors. */
.tgbgc-apparition-open:hover,
.tgbgc-apparition-open:focus,
.tgbgc-apparition-open:focus-visible{
  color:#222!important;
  background:#fff!important;
}
.tgbgc-apparition-open:hover h2,
.tgbgc-apparition-open:focus h2,
.tgbgc-apparition-open:focus-visible h2{color:#17314f!important;}
.tgbgc-apparition-open:hover p,
.tgbgc-apparition-open:focus p,
.tgbgc-apparition-open:focus-visible p{color:#222!important;}
.tgbgc-apparition-open:hover .tgbgc-meta,
.tgbgc-apparition-open:focus .tgbgc-meta,
.tgbgc-apparition-open:focus-visible .tgbgc-meta{color:#a96816!important;}
.tgbgc-apparition-open:hover .tgbgc-link,
.tgbgc-apparition-open:focus .tgbgc-link,
.tgbgc-apparition-open:focus-visible .tgbgc-link{color:#17314f!important;text-decoration:underline!important;}

/* The three introductory Mass cards are now jump links. */
.tgbgc-mass-principles>a{
  display:flex;flex-direction:column;justify-content:flex-start;
  background:#fff;border:1px solid var(--line);border-top:4px solid var(--gold);
  border-radius:14px;padding:18px;text-align:center;text-decoration:none!important;color:inherit!important;
  transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease;
}
.tgbgc-mass-principles>a:hover,.tgbgc-mass-principles>a:focus-visible{
  transform:translateY(-2px);box-shadow:0 8px 18px rgba(71,48,18,.09);border-color:#c8953d;
}
.tgbgc-mass-principles>a strong{display:block;font-family:Georgia,serif;font-size:1.08rem;margin-bottom:7px;color:var(--navy)}
.tgbgc-mass-principles>a span{display:block;line-height:1.45;color:#5f6065;font-size:.92rem}
.tgbgc-mass-principles>a em{display:block;margin-top:auto;padding-top:10px;font-style:normal;font-size:.78rem;font-weight:800;color:#9b641d}
.tgbgc-mass-practice-anchor{scroll-margin-top:120px;height:0;overflow:hidden}

/* Match video headings and card bottoms precisely. */
.tgbgc-mass-video-grid{align-items:stretch!important;}
.tgbgc-mass-video-card{display:flex!important;flex-direction:column!important;height:100%!important;}
.tgbgc-mass-video-card h3{min-height:3.1em!important;line-height:1.25!important;}
.tgbgc-mass-video-card h3 span{display:block!important;}
.tgbgc-mass-video-card .tgbgc-mass-video{flex:0 0 auto;}
.tgbgc-mass-video-card>p{flex:1 1 auto;margin-bottom:0!important;}

/* Full-prayer comparison readability. */
.tgbgc-mass-text-note{max-width:980px;margin:0 auto 24px;padding:16px 18px;border:1px solid #e3d4b9;border-left:5px solid var(--gold);background:#fffaf0;border-radius:10px;line-height:1.62}
.tgbgc-mass-text-note small{display:block;margin-top:8px;color:#666;line-height:1.5}
.tgbgc-prayer-block{margin:16px 0 20px;padding:16px 17px;background:#fbf7ef;border:1px solid #eadbc3;border-radius:12px;}
.tgbgc-prayer-block h5{font-family:Georgia,serif;font-size:1rem;line-height:1.35;color:var(--navy);margin:0 0 9px;}
.tgbgc-prayer-block p{font-family:Georgia,serif;font-size:1rem;line-height:1.66;margin:0 0 10px;color:#342f28;}
.tgbgc-prayer-block p:last-child{margin-bottom:0;}
.tgbgc-prayer-role{display:block;margin:9px 0 4px;font-family:Arial,sans-serif;font-size:.76rem;letter-spacing:.05em;text-transform:uppercase;font-weight:800;color:#9b641d;}
.tgbgc-prayer-note{font-family:Arial,sans-serif!important;font-size:.88rem!important;color:#626262!important;font-style:italic;}
.tgbgc-mass-col.no .tgbgc-prayer-block{background:#f8fafb;}
.tgbgc-no-counterpart{padding:15px 16px;border:1px dashed #cbb99a;border-radius:10px;background:#fff;color:#666;font-style:italic;line-height:1.55;}
.tgbgc-mass-stage .tgbgc-subhead{font-family:Georgia,serif;color:var(--navy);font-size:1.08rem;margin:21px 0 8px;}

/* v6.9.5 — Our Lady of the Cape uses the full-resolution historic statue photo and a matched card crop. */
.tgbgc-marian-devotions .tgbgc-cape-card img.tgbgc-fixed-devotion-img{
  object-fit:cover!important;
  object-position:center 42%!important;
  background:#f7f0e2!important;
}


/* v6.9.6 — Words of the Mass opens as an internal subpage view */
.tgbgc-mass-subview-nav{max-width:1180px;margin:0 auto 18px;padding:0 2px}
.tgbgc-mass-subview-nav a{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:999px;padding:9px 15px;background:#fff;color:var(--navy);font-weight:700;text-decoration:none}
.tgbgc-mass-subview-nav a:hover,.tgbgc-mass-subview-nav a:focus{border-color:var(--gold2);color:var(--gold2)}
.tgbgc-mass-subview-nav-bottom{margin-top:22px;margin-bottom:0}
body.tgbgc-mass-words-view main.tgbgc-mass>.tgbgc-page-hero,
body.tgbgc-mass-words-view main.tgbgc-mass>.tgbgc-mass-anchors,
body.tgbgc-mass-words-view main.tgbgc-mass>#mass-visual,
body.tgbgc-mass-words-view main.tgbgc-mass>.tgbgc-mass-purpose,
body.tgbgc-mass-words-view main.tgbgc-mass>#mass-practice,
body.tgbgc-mass-words-view main.tgbgc-mass>#mass-check{display:none!important}
body:not(.tgbgc-mass-words-view) main.tgbgc-mass>#mass-compare{display:none}
body.tgbgc-mass-words-view main.tgbgc-mass>#mass-compare{display:block}


/* v6.9.7 — prevent status badges from covering card headings */
.tgbgc-check-status{position:static!important;display:inline-block!important;margin:0 0 11px!important;}
.tgbgc-check-card h3{margin:0 0 10px!important;}
.tgbgc-check-card{padding-top:18px!important;}
.tgbgc-mass-purpose a.tgbgc-doc-popup,.tgbgc-section a.tgbgc-doc-popup{color:#9b641d;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px;}
.tgbgc-mass-purpose a.tgbgc-doc-popup:hover,.tgbgc-section a.tgbgc-doc-popup:hover{color:var(--navy);}


/* v6.9.8 — proof-of-concept third column at the Penitential Act and Consecration */
.tgbgc-mass-cols-3{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(250px,.9fr)}
.tgbgc-mass-col.practice{background:#f7f8f4}
.tgbgc-mass-moment{padding:10px 22px;background:#f4f6f5;border-bottom:1px solid #e1d8c8;color:#4d4a44;font-size:.92rem;line-height:1.45}
.tgbgc-practice-reference{margin:0 0 12px;padding:10px 12px;border:1px solid #e2d8c7;border-radius:10px;background:#fff;font-size:.88rem;line-height:1.45;color:#514b42}
.tgbgc-practice-status{display:inline-block;margin:0 0 12px;padding:5px 9px;border-radius:999px;font-size:.72rem;letter-spacing:.055em;text-transform:uppercase;font-weight:800;border:1px solid #cdbb9d;background:#fff;color:#5b5041}
.tgbgc-practice-status.permitted{border-color:#a9bba5;background:#f5f8f3;color:#435440}
.tgbgc-practice-status.not-prescribed{border-color:#d6b879;background:#fff9ed;color:#71551f}
.tgbgc-practice-card{margin:0;padding:15px 16px;border:1px solid #dfd8cb;border-radius:12px;background:#fff}
.tgbgc-practice-card h5{font-family:Georgia,serif;font-size:1rem;line-height:1.35;color:var(--navy);margin:0 0 9px}
.tgbgc-practice-card p{line-height:1.62;margin:0 0 10px}
.tgbgc-practice-card p:last-child{margin-bottom:0}
.tgbgc-gesture-compare{border-top:1px solid #eadbc3;background:#fcfbf8}
.tgbgc-gesture-compare .tgbgc-mass-moment{border-bottom:1px solid #eadbc3}
@media(max-width:850px){
  .tgbgc-mass-cols-3{grid-template-columns:1fr}
}


/* v6.9.9 — The Mass landing page and hidden study-page architecture */
.tgbgc-mass-triptych{max-width:1180px;margin:22px auto 34px;border:1px solid var(--line);border-radius:18px;overflow:hidden;background:#fff}
.tgbgc-mass-triptych img{display:block;width:100%;height:auto}
.tgbgc-mass-triptych figcaption{padding:15px 18px;color:var(--muted);line-height:1.55}
.tgbgc-mass-triptych figcaption strong{color:var(--navy)}
.tgbgc-mass-hub-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;max-width:1180px;margin:0 auto}
.tgbgc-mass-hub-card{display:flex;flex-direction:column;min-height:230px;padding:26px;border:1px solid var(--line);border-radius:18px;background:#fff;color:var(--text);text-decoration:none;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease}
.tgbgc-mass-hub-card:hover,.tgbgc-mass-hub-card:focus{transform:translateY(-2px);border-color:var(--gold2);box-shadow:0 10px 24px rgba(31,43,71,.08)}
.tgbgc-mass-hub-card strong{font-family:Georgia,'Times New Roman',serif;font-size:1.65rem;line-height:1.15;color:var(--navy);margin:7px 0 10px}
.tgbgc-mass-hub-card p{margin:0 0 18px;line-height:1.65}
.tgbgc-mass-hub-card em{margin-top:auto;color:var(--gold2);font-style:normal;font-weight:800}
.tgbgc-mass-hub-kicker{font-size:.76rem;letter-spacing:.11em;text-transform:uppercase;font-weight:800;color:var(--muted)}
.tgbgc-mass-subpage-nav{display:flex;flex-wrap:wrap;gap:9px;max-width:1180px;margin:0 auto 24px;padding:0}
.tgbgc-mass-subpage-nav a{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:999px;padding:9px 14px;background:#fff;color:var(--navy);font-weight:700;text-decoration:none}
.tgbgc-mass-subpage-nav a:hover,.tgbgc-mass-subpage-nav a:focus{border-color:var(--gold2);color:var(--gold2)}
.tgbgc-mass-subpage-nav .tgbgc-mass-back{background:var(--navy);border-color:var(--navy);color:#fff}
.tgbgc-mass-subpage>.tgbgc-mass-subpage-nav:last-of-type{margin-top:28px;margin-bottom:0}
@media(max-width:760px){.tgbgc-mass-hub-grid{grid-template-columns:1fr}.tgbgc-mass-hub-card{min-height:0}.tgbgc-mass-subpage-nav{gap:7px}.tgbgc-mass-subpage-nav a{font-size:.9rem;padding:8px 11px}}


/* v6.9.10 — Mass child pages are real pages now, not the old hidden internal subview. */
main.tgbgc-mass-subpage.tgbgc-mass-words-page > #mass-compare{display:block!important;}
main.tgbgc-mass-subpage > .tgbgc-mass-subpage-nav ~ .tgbgc-mass-subpage-nav{display:none!important;}

/* v6.9.10 — match Our Lady of the Cape to the other Marian devotion cards using the prepared portrait crop. */
.tgbgc-marian-devotions .tgbgc-cape-card img.tgbgc-fixed-devotion-img{
  object-fit:contain!important;
  object-position:center center!important;
  background:#f7f0e2!important;
}

/* v6.9.10 — pull the desktop page navigation toward the logo and make room for Resources. */
@media(min-width:1221px){
  .tgbgc-headrow{gap:10px!important;padding-left:12px!important;padding-right:12px!important;}
  .tgbgc-headrow nav{margin-left:0!important;flex:1 1 auto!important;min-width:0!important;}
  .tgbgc-menu{justify-content:flex-start!important;gap:5px 13px!important;}
  .tgbgc-menu a{font-size:.96rem!important;}
}

/* v6.9.10 — sitewide Resources page */
.tgbgc-resources-page .tgbgc-page-hero{border-bottom:1px solid #ead7b4;}
.tgbgc-resources-intro{max-width:1180px;}
.tgbgc-resource-summary{display:inline-flex;align-items:baseline;gap:10px;margin:5px 0 20px;padding:11px 15px;border:1px solid #e4c991;border-radius:12px;background:#fffaf0;color:#17314f;}
.tgbgc-resource-summary strong{font-family:Georgia,serif;font-size:1.55rem;color:#a96816;}
.tgbgc-resource-summary span{font-size:.92rem;}
.tgbgc-resource-search-label{display:block;font-weight:800;color:#17314f;margin:5px 0 7px;}
.tgbgc-resource-search{width:100%;max-width:720px;border:1px solid #ccb98f;border-radius:999px;padding:12px 17px;background:#fff;font-size:1rem;outline:none;}
.tgbgc-resource-search:focus{border-color:#a96816;box-shadow:0 0 0 3px rgba(169,104,22,.12);}
.tgbgc-resource-note{max-width:900px;color:#686057;font-size:.9rem;line-height:1.55;margin-top:14px;}
.tgbgc-resource-groups{max-width:1180px;padding-top:0;}
.tgbgc-resource-group{margin:0 0 14px;border:1px solid #dfc99f;border-radius:12px;background:#fff;overflow:hidden;}
.tgbgc-resource-group summary{display:flex;justify-content:space-between;gap:18px;align-items:center;cursor:pointer;padding:15px 18px;background:#fbf5ea;color:#17314f;font-family:Georgia,serif;font-size:1.08rem;font-weight:700;}
.tgbgc-resource-group summary small{font-family:Arial,sans-serif;font-size:.76rem;font-weight:700;color:#8a6a38;white-space:nowrap;}
.tgbgc-resource-group ol{margin:0;padding:8px 22px 14px 48px;}
.tgbgc-resource-item{padding:9px 2px;border-bottom:1px solid #f0e7d8;line-height:1.42;}
.tgbgc-resource-item:last-child{border-bottom:0;}
.tgbgc-resource-item a{color:#17314f;font-weight:700;text-decoration:none;}
.tgbgc-resource-item a:hover,.tgbgc-resource-item a:focus{color:#a96816;text-decoration:underline;}
.tgbgc-resource-item span{display:block;margin-top:2px;color:#7d7469;font-size:.78rem;}
.tgbgc-resource-empty{padding:18px;border:1px dashed #ccb98f;border-radius:10px;background:#fffaf0;}
@media(max-width:760px){.tgbgc-resource-group summary{align-items:flex-start;flex-direction:column;gap:4px}.tgbgc-resource-group ol{padding-left:38px}.tgbgc-resource-search{border-radius:12px}}
@media(min-width:1221px) and (max-width:1500px){
  .tgbgc-headrow{gap:7px!important;}
  .tgbgc-brand{flex-basis:104px!important;}
  .tgbgc-brand img{width:98px!important;height:72px!important;}
  .tgbgc-menu{gap:4px 8px!important;}
  .tgbgc-menu a{font-size:.86rem!important;}
}


/* v6.9.11 — Our Lady of the Cape matched card proportion and Eucharistic Prayer II row */
.tgbgc-marian-devotions .tgbgc-cape-card img.tgbgc-fixed-devotion-img{
  object-fit:contain!important;
  object-position:center center!important;
  background:#f7f0e2!important;
}
.tgbgc-ep2-row{
  margin:22px 22px 0;
  padding:20px;
  border:1px solid #d9c9aa;
  border-radius:14px;
  background:#f7fafc;
}
.tgbgc-ep2-heading{
  max-width:980px;
  margin:0 auto 14px;
  text-align:center;
}
.tgbgc-ep2-heading h4{
  margin:5px 0 8px;
  font-family:Georgia,'Times New Roman',serif;
  font-size:1.35rem;
  line-height:1.25;
  color:var(--navy);
}
.tgbgc-ep2-heading p{
  margin:0;
  line-height:1.6;
  color:#4f5358;
}
.tgbgc-ep2-body{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
}
.tgbgc-ep2-row .tgbgc-mass-change{
  margin:4px 0 0;
}
@media(max-width:850px){
  .tgbgc-ep2-row{margin:18px 0 0;padding:15px;}
  .tgbgc-ep2-body{grid-template-columns:1fr;}
}


/* v6.9.12 — AI Cape image and three-up Mass video comparison */
.tgbgc-marian-devotions .tgbgc-cape-card img.tgbgc-fixed-devotion-img{
  object-fit:cover!important;
  object-position:center center!important;
  background:#f7f0e2!important;
}
@media(min-width:851px){
  .tgbgc-mass-video-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
}


/* v6.9.15 — per-prayer linked liturgical text in Eucharistic Prayer II column */
.tgbgc-prayer-source-link{display:inline-block;margin-top:2px;font-size:.88rem;font-weight:800;color:#9b641d!important;text-decoration:underline;text-underline-offset:3px;}
.tgbgc-prayer-source-link:hover,.tgbgc-prayer-source-link:focus{color:var(--navy)!important;}
.tgbgc-icel-note{margin:16px 0 0;padding:12px 14px;border-top:1px solid #eadbc3;background:#fffaf0;border-radius:10px;}

/* v6.9.21 — Mass history introduction simplified. */
.tgbgc-mass-history-nav{
  display:flex;flex-wrap:wrap;justify-content:center;gap:9px;max-width:1050px;margin:0 auto 8px;padding:0 18px;
}
.tgbgc-mass-history-nav a{
  display:inline-flex;align-items:center;justify-content:center;padding:9px 15px;border:1px solid var(--line);border-radius:999px;
  background:#fff;color:var(--navy);font-size:.92rem;font-weight:800;text-decoration:none;
}
.tgbgc-mass-history-nav a:hover,.tgbgc-mass-history-nav a:focus-visible{border-color:var(--gold2);color:var(--gold2)}
.tgbgc-mass-history-first{max-width:1180px;padding-top:26px;scroll-margin-top:120px}
.tgbgc-mass-history-lead{max-width:940px;margin:0 auto 18px;font-size:1.07rem;line-height:1.8;color:#383633}
.tgbgc-mass-history-first sup{font-size:.72em;margin-left:2px}
.tgbgc-mass-history-first sup a{color:var(--gold2);text-decoration:none;font-weight:800}
.tgbgc-mass-era-strip{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;max-width:1120px;margin:30px auto 38px;padding:18px;
  background:#fbf7ef;border:1px solid #e5d8bf;border-radius:18px;
}
.tgbgc-mass-era-strip span{display:flex;flex-direction:column;min-height:72px;padding:13px 14px;background:#fff;border:1px solid #eadfc9;border-radius:12px;line-height:1.3;color:#5d574d}
.tgbgc-mass-era-strip b{font-family:Georgia,'Times New Roman',serif;color:var(--navy);font-size:1rem;margin-bottom:5px}
.tgbgc-mass-history-timeline{position:relative;max-width:1080px;margin:0 auto}
.tgbgc-mass-history-timeline:before{content:"";position:absolute;left:128px;top:12px;bottom:12px;width:2px;background:#e1cfaa}
.tgbgc-mass-history-era{display:grid;grid-template-columns:112px minmax(0,1fr);gap:34px;position:relative;margin:0 0 24px;align-items:start}
.tgbgc-mass-history-era:before{content:"";position:absolute;left:122px;top:26px;width:14px;height:14px;border-radius:50%;background:var(--gold);border:3px solid #fff;box-shadow:0 0 0 1px #d9bd87}
.tgbgc-mass-history-date{padding-top:19px;text-align:right;font-weight:900;letter-spacing:.03em;color:#8a5b17;font-size:.86rem;line-height:1.25;text-transform:uppercase}
.tgbgc-mass-history-copy{background:#fff;border:1px solid var(--line);border-radius:18px;padding:25px 28px;box-shadow:0 7px 20px rgba(70,48,19,.045)}
.tgbgc-mass-history-copy h3{font-family:Georgia,'Times New Roman',serif;color:var(--navy);font-size:clamp(1.35rem,2vw,1.72rem);line-height:1.2;margin:0 0 14px}
.tgbgc-mass-history-copy p{margin:0 0 13px;line-height:1.75;color:#403d38}
.tgbgc-mass-history-copy p:last-of-type{margin-bottom:0}
.tgbgc-mass-history-key{display:grid;grid-template-columns:minmax(150px,.36fr) minmax(0,1fr);gap:14px;margin-top:18px;padding:15px 17px;border-radius:12px;background:#fbf6ec;border-left:4px solid var(--gold)}
.tgbgc-mass-history-key strong{font-family:Georgia,'Times New Roman',serif;color:var(--navy);line-height:1.35}
.tgbgc-mass-history-key span{line-height:1.6;color:#4b4740}
.tgbgc-mass-history-era-emphasis .tgbgc-mass-history-copy{border-color:#d7b66f;background:#fffdf8;box-shadow:0 10px 28px rgba(120,83,21,.08)}
.tgbgc-mass-history-era-council .tgbgc-mass-history-copy{border-top:4px solid #8c9cae}
.tgbgc-mass-history-era-final .tgbgc-mass-history-copy{border-top:4px solid var(--gold)}
.tgbgc-mass-continuity-summary{max-width:1010px;margin:40px auto 8px;padding:30px 32px;background:#f6f7f4;border:1px solid #dfe2d8;border-left:6px solid #6f806c;border-radius:18px}
.tgbgc-mass-continuity-summary .tgbgc-eyebrow{text-align:left;margin:0 0 7px}
.tgbgc-mass-continuity-summary h3{font-family:Georgia,'Times New Roman',serif;color:var(--navy);font-size:clamp(1.5rem,2.2vw,2rem);margin:0 0 15px}
.tgbgc-mass-continuity-summary p{margin:0 0 13px;line-height:1.75;color:#3f433c}
.tgbgc-mass-continuity-summary p:last-child{margin-bottom:0}
#mass-study{scroll-margin-top:120px}
@media(max-width:900px){
  .tgbgc-mass-era-strip{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tgbgc-mass-history-timeline:before{left:17px}
  .tgbgc-mass-history-era{grid-template-columns:1fr;gap:8px;padding-left:38px}
  .tgbgc-mass-history-era:before{left:10px;top:14px}
  .tgbgc-mass-history-date{text-align:left;padding-top:0}
}
@media(max-width:620px){
  .tgbgc-mass-history-nav{padding:0 10px}
  .tgbgc-mass-history-nav a{flex:1 1 100%}
  .tgbgc-mass-era-strip{grid-template-columns:1fr;margin-left:0;margin-right:0;padding:12px}
  .tgbgc-mass-history-copy{padding:20px 18px}
  .tgbgc-mass-history-key{grid-template-columns:1fr;gap:7px}
  .tgbgc-mass-continuity-summary{padding:24px 20px}
}


/* v6.9.25 — Homepage simplification and Our Lady of the Cape framing adjustment. */
.tgbgc-marian-devotions .tgbgc-cape-card img.tgbgc-fixed-devotion-img{
  object-fit:cover!important;
  object-position:center 20%!important;
  background:#f7f0e2!important;
}


/* v6.9.29 — Healthy Living review-status notice and centered modal close control. */
.tgbgc-health-under-construction{max-width:1180px;margin:0 auto 22px;padding:22px 26px;background:#fff7df;border:2px solid #c99635;border-radius:16px;color:#343a43;line-height:1.65;box-shadow:0 5px 18px rgba(93,68,20,.06)}
.tgbgc-health-under-construction>strong{display:block;font-family:Georgia,'Times New Roman',serif;color:var(--navy);font-size:1.42rem;margin-bottom:7px}
.tgbgc-health-under-construction p{margin:0}

/* v6.9.27 — Healthy Living evidence-informed topic popups. */
.tgbgc-health-source-note{max-width:1180px;margin:18px auto 24px;padding:24px 28px;background:#f7f4ed;border:1px solid #e4d9c7;border-radius:16px;line-height:1.7}
.tgbgc-health-source-note h2{font-family:Georgia,'Times New Roman',serif;color:var(--navy);margin:0 0 9px;font-size:1.45rem}
.tgbgc-health-source-note p{margin:0;color:#45443f}
.tgbgc-health-grid .tgbgc-health{min-height:310px;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}
.tgbgc-health-grid .tgbgc-health:hover{transform:translateY(-2px);box-shadow:0 10px 26px rgba(31,41,55,.08);border-color:#d8c49d}
.tgbgc-health-open{margin-top:auto;align-self:flex-start;border:0;background:transparent;padding:8px 0 0;font:inherit;font-weight:700;cursor:pointer;text-align:left;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.tgbgc-health-open:hover,.tgbgc-health-open:focus{color:var(--navy)}
.tgbgc-health-modal[hidden]{display:none!important}
.tgbgc-health-modal{position:fixed;inset:0;z-index:100050;background:rgba(16,23,37,.76);padding:28px 18px;display:flex;align-items:center;justify-content:center}
.tgbgc-health-modal-dialog{position:relative;width:min(980px,96vw);max-height:90vh;overflow:auto;background:#fffdf9;border-radius:20px;box-shadow:0 24px 75px rgba(0,0,0,.35);padding:42px 48px 48px;outline:none}
.tgbgc-health-modal-close{position:sticky;float:right;top:0;z-index:2;margin:-22px -26px 0 18px;width:44px;height:44px;border-radius:50%;border:1px solid #d9d0c3;background:#fff;color:#252b37;font-size:30px;line-height:1;cursor:pointer;box-shadow:0 3px 12px rgba(0,0,0,.08);display:flex;align-items:center;justify-content:center;padding:0;font-family:Arial,Helvetica,sans-serif;font-weight:400}
.tgbgc-health-modal-body h2{font-family:Georgia,'Times New Roman',serif;color:var(--navy);font-size:clamp(2rem,3.5vw,2.8rem);margin:0 0 8px}
.tgbgc-health-article{color:#343a43;font-size:1.03rem;line-height:1.78}
.tgbgc-health-article p{margin:0 0 17px}
.tgbgc-health-article h3{font-family:Georgia,'Times New Roman',serif;color:var(--navy);font-size:1.48rem;margin:30px 0 10px}
.tgbgc-health-article strong{color:#252d3a}
.tgbgc-health-reviewed{font-size:.88rem;text-transform:uppercase;letter-spacing:.08em;color:#8b6a28;font-weight:700;margin-bottom:18px!important}
.tgbgc-health-callout{margin:24px 0;padding:20px 22px;background:#f7f4ed;border-left:5px solid var(--gold);border-radius:10px}
.tgbgc-health-callout>strong{display:block;font-family:Georgia,'Times New Roman',serif;font-size:1.25rem;color:var(--navy);margin-bottom:6px}
.tgbgc-health-callout p{margin:0}
.tgbgc-health-sources{margin:8px 0 0;padding-left:24px;font-size:.96rem}
.tgbgc-health-sources li{margin:0 0 9px;padding-left:3px}
.tgbgc-health-sources a{color:#7c5817;text-decoration:underline;text-underline-offset:2px}
.tgbgc-health-sources a:hover{color:var(--navy)}
html.tgbgc-health-modal-open,html.tgbgc-health-modal-open body{overflow:hidden}
@media(max-width:700px){
 .tgbgc-health-modal{padding:12px 8px;align-items:flex-start}
 .tgbgc-health-modal-dialog{width:100%;max-height:96vh;border-radius:14px;padding:32px 20px 34px;margin-top:1vh}
 .tgbgc-health-modal-close{margin:-16px -8px 0 12px}
 .tgbgc-health-article{font-size:1rem;line-height:1.7}
 .tgbgc-health-source-note{margin-left:16px;margin-right:16px;padding:20px}
 .tgbgc-health-under-construction{margin-left:16px;margin-right:16px;padding:18px 20px}
}


/* v6.9.30 — Prayers & Meditations three-section library */
.tgbgc-prayers-page .tgbgc-page-hero{padding-bottom:46px}
.tgbgc-prayer-intro{max-width:1180px;margin:34px auto 22px;padding:28px 30px;background:#fffaf1;border:1px solid #e8dcc8;border-radius:20px;text-align:center;box-shadow:0 8px 24px rgba(61,48,29,.04)}
.tgbgc-prayer-intro h2{font-family:Georgia,'Times New Roman',serif;color:var(--navy);font-size:clamp(1.75rem,3vw,2.35rem);margin:0 0 12px}
.tgbgc-prayer-intro>p{max-width:900px;margin:0 auto;color:#514a41;line-height:1.75}
.tgbgc-prayer-nav{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:22px}
.tgbgc-prayer-nav a{display:inline-flex;align-items:center;justify-content:center;padding:10px 16px;border:1px solid #d5b980;border-radius:999px;background:#fff;color:var(--navy);font-weight:750;text-decoration:none}
.tgbgc-prayer-nav a:hover,.tgbgc-prayer-nav a:focus{background:#f7ead2;color:#805417}
.tgbgc-prayer-section{max-width:1220px;margin:0 auto;padding:54px 20px 18px;scroll-margin-top:90px}
.tgbgc-prayer-section-head{text-align:center;max-width:850px;margin:0 auto 28px}
.tgbgc-prayer-section-head .tgbgc-eyebrow{margin-bottom:8px}
.tgbgc-prayer-section-head h2{font-family:Georgia,'Times New Roman',serif;color:var(--navy);font-size:clamp(2rem,4vw,3rem);margin:0 0 12px}
.tgbgc-prayer-section-head>p:last-child{color:#5d554b;line-height:1.7;margin:0}
.tgbgc-prayer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.tgbgc-prayer-card{display:flex;flex-direction:column;min-height:320px;padding:25px;background:#fff;border:1px solid #e6d8c2;border-radius:18px;box-shadow:0 8px 26px rgba(55,45,29,.045)}
.tgbgc-prayer-badge{align-self:flex-start;display:inline-flex;padding:5px 10px;border-radius:999px;background:#f5e5c6;color:#885b18;font-size:.72rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase}
.tgbgc-prayer-card h3{font-family:Georgia,'Times New Roman',serif;color:var(--navy);font-size:1.45rem;line-height:1.2;margin:16px 0 10px}
.tgbgc-prayer-summary{color:#514a43;line-height:1.62;margin:0 0 20px}
.tgbgc-prayer-audio-control{display:grid;grid-template-columns:minmax(0,1fr) 44px;gap:8px;margin-top:auto;align-items:stretch}
.tgbgc-prayer-audio{width:100%;display:flex;align-items:center;gap:12px;padding:12px 13px;border:1px solid #d5b980;border-radius:13px;background:#fffaf2;color:#493f33;text-align:left;font:inherit;cursor:pointer;transition:background .16s ease,border-color .16s ease,box-shadow .16s ease}
.tgbgc-prayer-audio:hover,.tgbgc-prayer-audio:focus-visible{background:#fff4df;border-color:#bb8b37;box-shadow:0 0 0 3px rgba(196,145,63,.12);outline:none}
.tgbgc-prayer-play{flex:0 0 34px;display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#f0dbb2;color:#70470f;font-size:.88rem;padding-left:1px}
.tgbgc-prayer-audio-copy{min-width:0}.tgbgc-prayer-audio strong,.tgbgc-prayer-audio small{display:block}.tgbgc-prayer-audio small{color:#7a7165;margin-top:2px;line-height:1.25}
.tgbgc-prayer-restart{border:1px solid #d5b980;border-radius:13px;background:#fff;color:#7a5117;font:700 1.2rem/1 Arial,sans-serif;cursor:pointer;display:grid;place-items:center;padding:0}
.tgbgc-prayer-restart:hover,.tgbgc-prayer-restart:focus-visible{background:#fff4df;border-color:#bb8b37;outline:none}.tgbgc-prayer-restart:disabled{opacity:.34;cursor:default;background:#faf7f1}
.tgbgc-prayer-open{margin-top:14px;align-self:flex-start;border:0;background:transparent;padding:5px 0;color:#986116;font:inherit;font-weight:800;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.tgbgc-prayer-open:hover,.tgbgc-prayer-open:focus{color:var(--navy)}
.tgbgc-prayer-modal[hidden]{display:none!important}
.tgbgc-prayer-modal{position:fixed;inset:0;z-index:100060;background:rgba(15,21,34,.78);padding:24px 16px;display:flex;align-items:center;justify-content:center}
.tgbgc-prayer-modal-dialog{position:relative;width:min(940px,96vw);max-height:91vh;overflow:auto;background:#fffdf9;border-radius:20px;box-shadow:0 25px 80px rgba(0,0,0,.38);padding:44px 50px 52px;outline:none}
.tgbgc-prayer-modal-close{position:sticky;float:right;top:0;z-index:4;margin:-22px -28px 0 20px;width:44px;height:44px;border-radius:50%;border:1px solid #d9d0c3;background:#fff;color:#202735;font:400 30px/1 Arial,Helvetica,sans-serif;cursor:pointer;box-shadow:0 3px 12px rgba(0,0,0,.09);display:flex;align-items:center;justify-content:center;padding:0 0 3px 0}
.tgbgc-prayer-modal-body>h2{font-family:Georgia,'Times New Roman',serif;color:var(--navy);font-size:clamp(2rem,4vw,3rem);line-height:1.12;margin:0 58px 10px 0}
.tgbgc-prayer-modal-body>.tgbgc-prayer-popup-kicker{margin:0 0 24px;color:#9a651b;font-weight:800;text-transform:uppercase;letter-spacing:.06em;font-size:.78rem}
.tgbgc-prayer-popup-player{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:stretch;margin:0 0 26px;max-width:620px}
.tgbgc-prayer-popup-player .tgbgc-prayer-restart{display:flex;align-items:center;justify-content:center;gap:7px;padding:0 16px;font-size:.93rem;white-space:nowrap}
.tgbgc-prayer-popup-article{font-size:1.08rem;line-height:1.82;color:#342f2a}
.tgbgc-prayer-popup-article p{margin:0 0 1.05em}
.tgbgc-prayer-popup-article blockquote{margin:26px 0;padding:18px 22px;border-left:4px solid #c4913f;background:#fff6e6;color:#213454;font-family:Georgia,'Times New Roman',serif;font-size:1.24rem;line-height:1.58}
.tgbgc-prayer-note{padding:12px 14px;border-radius:12px;background:#f3f0ea;color:#625b52;font-size:.9rem;line-height:1.55;margin:0 0 24px!important}
.tgbgc-prayer-sources{margin-top:34px;padding-top:24px;border-top:1px solid #ded4c5}
.tgbgc-prayer-sources h3{font-family:Georgia,'Times New Roman',serif;color:var(--navy);font-size:1.55rem;margin:0 0 12px}
.tgbgc-prayer-sources ol{padding-left:24px;margin:0}.tgbgc-prayer-sources li{margin:0 0 10px;line-height:1.55}.tgbgc-prayer-sources a{color:#8c5a14}
.tgbgc-litany-text p{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;border-bottom:1px dotted #ddd0bd;padding:7px 0;margin:0}.tgbgc-litany-text p span{font-weight:700;color:#72501e;text-align:right}.tgbgc-litany-text p:last-child{display:block;border-bottom:0;margin-top:20px}
html.tgbgc-prayer-modal-open,html.tgbgc-prayer-modal-open body{overflow:hidden}
@media(max-width:900px){.tgbgc-prayer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.tgbgc-prayer-popup-player{grid-template-columns:1fr 42px}.tgbgc-prayer-popup-player .tgbgc-prayer-restart{padding:0}.tgbgc-prayer-popup-player .tgbgc-prayer-restart span{display:none}.tgbgc-prayer-grid{grid-template-columns:1fr}.tgbgc-prayer-section{padding:40px 12px 10px}.tgbgc-prayer-intro{margin:24px 12px 12px;padding:22px 18px}.tgbgc-prayer-card{min-height:0}.tgbgc-prayer-modal{padding:10px 7px;align-items:flex-start}.tgbgc-prayer-modal-dialog{width:100%;max-height:97vh;margin-top:1vh;border-radius:14px;padding:34px 20px 38px}.tgbgc-prayer-modal-close{margin:-17px -7px 0 12px}.tgbgc-prayer-modal-body>h2{margin-right:38px}.tgbgc-litany-text p{grid-template-columns:1fr;gap:2px}.tgbgc-litany-text p span{text-align:left}}

/* ==========================================================
   v6.9.33 — SITEWIDE VISUAL REFRESH
   Blessed Virgin Mary page intentionally excluded.
   Existing Saint portraits/images are intentionally untouched.
   ========================================================== */

/* Page-specific color identities */
.tgbgc-prayers-page{--vr-accent:#756a9a;--vr-accent2:#d0a25a;--vr-soft:#f2f0f8;background:linear-gradient(180deg,#f5f3f9 0,#fbf8f2 24%,#fbf8f2 100%)}
.tgbgc-bible{--vr-accent:#2f6e72;--vr-accent2:#c89a50;--vr-soft:#eef6f3;background:linear-gradient(180deg,#eef5f3 0,#fbf8f2 30%,#fbf8f2 100%)}
.tgbgc-healthy{--vr-accent:#5e7f60;--vr-accent2:#d59a45;--vr-soft:#edf4e9;background:linear-gradient(180deg,#edf4e9 0,#faf8f0 27%,#fbf8f2 100%)}
.tgbgc-mass{--vr-accent:#8c543f;--vr-accent2:#c89a50;--vr-soft:#f7eee8;background:linear-gradient(180deg,#f8f0e9 0,#fbf8f2 28%,#fbf8f2 100%)}
.tgbgc-rosary{--vr-accent:#7c6288;--vr-accent2:#c89a50;--vr-soft:#f3edf5;background:linear-gradient(180deg,#f3edf5 0,#fbf8f2 28%,#fbf8f2 100%)}
.tgbgc-saints{--vr-accent:#7a4858;--vr-accent2:#c89a50;--vr-soft:#f7eef1;background:linear-gradient(180deg,#f7eef1 0,#fbf8f2 24%,#fbf8f2 100%)}
.tgbgc-stations{--vr-accent:#72513e;--vr-accent2:#c89a50;--vr-soft:#f5eee8;background:linear-gradient(180deg,#f5eee8 0,#fbf8f2 27%,#fbf8f2 100%)}
.tgbgc-resources-page{--vr-accent:#405d75;--vr-accent2:#c89a50;--vr-soft:#eef2f5;background:linear-gradient(180deg,#eef2f5 0,#fbf8f2 30%,#fbf8f2 100%)}
.tgbgc-contact{--vr-accent:#52747a;--vr-accent2:#c89a50;--vr-soft:#eff5f3;background:linear-gradient(180deg,#eff5f3 0,#fbf8f2 30%,#fbf8f2 100%)}

/* Rich visual heroes — only pages listed here are changed. */
.tgbgc-prayers-page .tgbgc-page-hero,
.tgbgc-bible .tgbgc-page-hero,
.tgbgc-healthy .tgbgc-page-hero,
.tgbgc-mass .tgbgc-page-hero,
.tgbgc-rosary .tgbgc-page-hero,
.tgbgc-saints .tgbgc-page-hero,
.tgbgc-stations .tgbgc-page-hero,
.tgbgc-resources-page .tgbgc-page-hero,
.tgbgc-contact .tgbgc-page-hero{
  position:relative;isolation:isolate;overflow:hidden;height:530px;min-height:530px;max-height:530px;box-sizing:border-box;
  display:flex;flex-direction:column;justify-content:center;align-items:center;
  padding:72px 24px 76px;background-size:cover;background-position:center;
  border-bottom:0;box-shadow:inset 0 -1px 0 rgba(255,255,255,.28),0 8px 24px rgba(29,34,43,.08)
}
.tgbgc-prayers-page .tgbgc-page-hero:after,
.tgbgc-bible .tgbgc-page-hero:after,
.tgbgc-healthy .tgbgc-page-hero:after,
.tgbgc-mass .tgbgc-page-hero:after,
.tgbgc-rosary .tgbgc-page-hero:after,
.tgbgc-saints .tgbgc-page-hero:after,
.tgbgc-stations .tgbgc-page-hero:after,
.tgbgc-resources-page .tgbgc-page-hero:after,
.tgbgc-contact .tgbgc-page-hero:after{
  content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(10,20,37,.74),rgba(10,20,37,.48) 48%,rgba(10,20,37,.62));
}
.tgbgc-prayers-page .tgbgc-page-hero>* ,
.tgbgc-bible .tgbgc-page-hero>* ,
.tgbgc-healthy .tgbgc-page-hero>* ,
.tgbgc-mass .tgbgc-page-hero>* ,
.tgbgc-rosary .tgbgc-page-hero>* ,
.tgbgc-saints .tgbgc-page-hero>* ,
.tgbgc-stations .tgbgc-page-hero>* ,
.tgbgc-resources-page .tgbgc-page-hero>* ,
.tgbgc-contact .tgbgc-page-hero>*{position:relative;z-index:1}
.tgbgc-prayers-page .tgbgc-page-hero h1,
.tgbgc-bible .tgbgc-page-hero h1,
.tgbgc-healthy .tgbgc-page-hero h1,
.tgbgc-mass .tgbgc-page-hero h1,
.tgbgc-rosary .tgbgc-page-hero h1,
.tgbgc-saints .tgbgc-page-hero h1,
.tgbgc-stations .tgbgc-page-hero h1,
.tgbgc-resources-page .tgbgc-page-hero h1,
.tgbgc-contact .tgbgc-page-hero h1{color:#fff!important;text-shadow:0 2px 14px rgba(0,0,0,.34);font-size:clamp(2.6rem,4.3vw,4.25rem)!important;margin:6px 0 10px!important}
.tgbgc-prayers-page .tgbgc-page-hero .tgbgc-eyebrow,
.tgbgc-bible .tgbgc-page-hero .tgbgc-eyebrow,
.tgbgc-healthy .tgbgc-page-hero .tgbgc-eyebrow,
.tgbgc-mass .tgbgc-page-hero .tgbgc-eyebrow,
.tgbgc-rosary .tgbgc-page-hero .tgbgc-eyebrow,
.tgbgc-saints .tgbgc-page-hero .tgbgc-eyebrow,
.tgbgc-stations .tgbgc-page-hero .tgbgc-eyebrow,
.tgbgc-resources-page .tgbgc-page-hero .tgbgc-eyebrow,
.tgbgc-contact .tgbgc-page-hero .tgbgc-eyebrow{color:#f5d99f!important;text-shadow:0 1px 6px rgba(0,0,0,.28)}
.tgbgc-prayers-page .tgbgc-page-hero>p:last-child,
.tgbgc-bible .tgbgc-page-hero>p:last-child,
.tgbgc-healthy .tgbgc-page-hero>p:last-child,
.tgbgc-mass .tgbgc-page-hero>p:last-child,
.tgbgc-rosary .tgbgc-page-hero>p:last-child,
.tgbgc-saints .tgbgc-page-hero>p:last-child,
.tgbgc-stations .tgbgc-page-hero>p:last-child,
.tgbgc-resources-page .tgbgc-page-hero>p:last-child,
.tgbgc-contact .tgbgc-page-hero>p:last-child{color:#fff!important;max-width:880px;font-size:1.08rem;line-height:1.65;text-shadow:0 1px 7px rgba(0,0,0,.35)}

.tgbgc-prayers-page .tgbgc-page-hero{background-image:url('visual/prayers-hero-ai.png');background-position:center 40%}
.tgbgc-bible .tgbgc-page-hero{background-image:url('visual/bible-hero-ai.png');background-position:center 62%}
.tgbgc-healthy .tgbgc-page-hero{background-image:url('visual/healthy-hero-ai.png');background-position:center 42%}
.tgbgc-saints .tgbgc-page-hero{background-image:url('visual/saints-hero-ai.png');background-position:center 35%}
.tgbgc-resources-page .tgbgc-page-hero{background-image:url('visual/resources-hero.svg')}
.tgbgc-contact .tgbgc-page-hero{background-image:url('visual/contact-hero.svg')}
.tgbgc-mass .tgbgc-page-hero{background-image:url('mass/mass-gesture-triptych.png');background-position:center 38%}
.tgbgc-mass .tgbgc-page-hero:after{background:linear-gradient(90deg,rgba(23,20,22,.80),rgba(42,28,25,.57) 50%,rgba(23,20,22,.78))}
.tgbgc-rosary .tgbgc-page-hero{background-image:url('rosary/rosary-hero-linen.jpg');background-position:center;background-size:cover;align-items:flex-start;justify-content:center;padding-left:clamp(52px,10vw,180px);padding-right:52px}
.tgbgc-rosary .tgbgc-page-hero:after{background:linear-gradient(90deg,rgba(255,250,241,.62) 0%,rgba(255,250,241,.28) 44%,rgba(255,250,241,.05) 68%,rgba(255,250,241,0) 100%)}
.tgbgc-rosary .tgbgc-page-hero h1{color:#102f66!important;text-shadow:0 1px 1px rgba(255,255,255,.85)!important;text-align:left!important;margin-left:0!important}
.tgbgc-stations .tgbgc-page-hero{background-image:url('stations/01.jpg');background-position:center 18%}
.tgbgc-stations .tgbgc-page-hero:after{background:linear-gradient(90deg,rgba(43,31,24,.83),rgba(62,42,31,.53),rgba(43,31,24,.80))}

/* Prayer/Meditation page — more visual rhythm without changing content. */
.tgbgc-prayers-page .tgbgc-prayer-intro{margin-top:38px;background:linear-gradient(135deg,#fffdf8,#f3eef7);border-color:#d9cfdf;border-top:5px solid #8275a1;box-shadow:0 14px 34px rgba(65,55,85,.08)}
.tgbgc-prayers-page .tgbgc-prayer-section{margin-top:24px;margin-bottom:22px;border-radius:28px;padding:42px 28px 34px}
.tgbgc-prayers-page #meditation-prayers{background:linear-gradient(145deg,#eeedf7,#f8f6fb);border:1px solid #d9d4e8}
.tgbgc-prayers-page #common-prayers{background:linear-gradient(145deg,#fff8e9,#fdfcf7);border:1px solid #ead7b1}
.tgbgc-prayers-page #litanies{background:linear-gradient(145deg,#f8eff1,#fffafa);border:1px solid #e8ced3}
.tgbgc-prayers-page .tgbgc-prayer-card{position:relative;overflow:hidden;box-shadow:0 12px 28px rgba(41,43,56,.07);transition:transform .18s ease,box-shadow .18s ease;border-top-width:4px}
.tgbgc-prayers-page #meditation-prayers .tgbgc-prayer-card{border-top-color:#7c72a0}
.tgbgc-prayers-page #common-prayers .tgbgc-prayer-card{border-top-color:#c69242}
.tgbgc-prayers-page #litanies .tgbgc-prayer-card{border-top-color:#9e6070}
.tgbgc-prayers-page .tgbgc-prayer-card:hover{transform:translateY(-3px);box-shadow:0 18px 38px rgba(41,43,56,.11)}
.tgbgc-prayers-page #meditation-prayers .tgbgc-prayer-badge{background:#e7e1f3;color:#5f5481}
.tgbgc-prayers-page #litanies .tgbgc-prayer-badge{background:#f3dfe4;color:#824b5a}

/* Bible page — each card has a gentle color identity instead of six white boxes. */
.tgbgc-bible .tgbgc-center{max-width:960px;margin-top:34px;padding:26px 30px;background:rgba(255,255,255,.74);border:1px solid #d9e4df;border-radius:20px;box-shadow:0 10px 28px rgba(38,75,73,.06)}
.tgbgc-bible .tgbgc-grid3{padding-top:20px;gap:26px}
.tgbgc-bible .tgbgc-verse{position:relative;overflow:hidden;min-height:300px;border-top:5px solid #3f7b7a;box-shadow:0 13px 30px rgba(38,67,67,.08);padding:30px 26px}
.tgbgc-bible .tgbgc-verse:nth-child(3n+1){background:linear-gradient(150deg,#f3faf8,#fff);border-top-color:#3f7b7a}
.tgbgc-bible .tgbgc-verse:nth-child(3n+2){background:linear-gradient(150deg,#fff7e8,#fff);border-top-color:#c8913d}
.tgbgc-bible .tgbgc-verse:nth-child(3n+3){background:linear-gradient(150deg,#eff3fa,#fff);border-top-color:#617a9e}
.tgbgc-bible .tgbgc-verse:before{content:"“";position:absolute;right:18px;top:5px;font:700 6.5rem/1 Georgia,serif;color:rgba(47,110,114,.10);pointer-events:none}
.tgbgc-bible .tgbgc-verse h2{color:#164a59;font-size:1.65rem}
.tgbgc-bible .tgbgc-verse blockquote{font-family:Georgia,'Times New Roman',serif;font-size:1.18rem;color:#263943;line-height:1.65}

/* Healthy Living — colorful topic cards; information text itself is unchanged. */
.tgbgc-healthy .tgbgc-health-under-construction{margin-top:34px;border-radius:18px;box-shadow:0 10px 26px rgba(62,89,55,.06)}
.tgbgc-healthy .tgbgc-health-source-note,.tgbgc-healthy .tgbgc-healthnote{border-radius:18px;box-shadow:0 8px 22px rgba(62,89,55,.055)}
.tgbgc-healthy .tgbgc-health-grid{gap:26px}
.tgbgc-healthy .tgbgc-health{position:relative;overflow:hidden;min-height:315px;border:0;border-top:6px solid #6f9368;box-shadow:0 14px 34px rgba(54,80,49,.10);padding:32px 27px 26px;transition:transform .18s ease,box-shadow .18s ease}
.tgbgc-healthy .tgbgc-health:hover{transform:translateY(-3px);box-shadow:0 18px 40px rgba(54,80,49,.14)}
.tgbgc-healthy .tgbgc-health>span:first-child{display:grid;place-items:center;width:50px;height:50px;border-radius:50%;font-size:1.45rem;margin-bottom:14px;background:#edf4e6;color:#5b7b58}
.tgbgc-healthy .tgbgc-health[data-health-topic="vitamin-d"]{background:linear-gradient(150deg,#fff7dc,#fff);border-top-color:#e0a331}.tgbgc-healthy .tgbgc-health[data-health-topic="vitamin-d"]>span{background:#fff0ba;color:#b17415}
.tgbgc-healthy .tgbgc-health[data-health-topic="magnesium"]{background:linear-gradient(150deg,#eef6ef,#fff);border-top-color:#71926e}
.tgbgc-healthy .tgbgc-health[data-health-topic="sleep-recovery"]{background:linear-gradient(150deg,#eef0f8,#fff);border-top-color:#68759d}.tgbgc-healthy .tgbgc-health[data-health-topic="sleep-recovery"]>span{background:#e4e8f5;color:#58658d}
.tgbgc-healthy .tgbgc-health[data-health-topic="movement-strength"]{background:linear-gradient(150deg,#eef7f6,#fff);border-top-color:#4f8987}.tgbgc-healthy .tgbgc-health[data-health-topic="movement-strength"]>span{background:#dff0ef;color:#3f7775}
.tgbgc-healthy .tgbgc-health[data-health-topic="home-remedies"]{background:linear-gradient(150deg,#f4efe6,#fff);border-top-color:#9c764d}.tgbgc-healthy .tgbgc-health[data-health-topic="home-remedies"]>span{background:#eee2d2;color:#795836}
.tgbgc-healthy .tgbgc-health[data-health-topic="ingredients-products"]{background:linear-gradient(150deg,#f6edf1,#fff);border-top-color:#9a6578}.tgbgc-healthy .tgbgc-health[data-health-topic="ingredients-products"]>span{background:#f1dfe6;color:#805368}
.tgbgc-healthy .tgbgc-health h2{color:#27463a;font-size:1.62rem}
.tgbgc-healthy .tgbgc-health-open{font-weight:800;text-underline-offset:4px}

/* Saints — portraits are not modified; only the surrounding presentation is refreshed. */
.tgbgc-saints .tgbgc-sotd,.tgbgc-saints .tgbgc-sainttools{background:linear-gradient(145deg,#fff,#fbf1f4);border:1px solid #ead8dd;border-radius:22px;box-shadow:0 12px 30px rgba(94,54,67,.07)}
.tgbgc-saints .tgbgc-sainttools{margin-top:24px;margin-bottom:18px;padding:26px}
.tgbgc-saints .tgbgc-sainttools label{color:#6f4051;font-family:Georgia,'Times New Roman',serif;font-size:1.15rem}
.tgbgc-saints .tgbgc-saint{box-shadow:0 11px 28px rgba(80,50,58,.08)!important;transition:transform .17s ease,box-shadow .17s ease}
.tgbgc-saints .tgbgc-saint:hover{transform:translateY(-2px);box-shadow:0 16px 34px rgba(80,50,58,.12)!important}

/* Stations — preserve every existing station image; add visual rhythm around the cards. */
.tgbgc-stations .tgbgc-stations-intro{margin-top:32px;background:#fff;border:1px solid #ead8c6;border-radius:18px;padding:24px 28px;box-shadow:0 9px 24px rgba(82,57,39,.06)}
.tgbgc-stations .tgbgc-station-card{border-top:5px solid #8b6650;box-shadow:0 13px 31px rgba(70,47,31,.09);transition:transform .17s ease,box-shadow .17s ease}
.tgbgc-stations .tgbgc-station-card:nth-child(4n+2){border-top-color:#a57b45}
.tgbgc-stations .tgbgc-station-card:nth-child(4n+3){border-top-color:#6f7e73}
.tgbgc-stations .tgbgc-station-card:nth-child(4n+4){border-top-color:#805a68}
.tgbgc-stations .tgbgc-station-card:hover{transform:translateY(-2px);box-shadow:0 17px 38px rgba(70,47,31,.13)}

/* Rosary — already image-rich; add gentle colored panels rather than altering imagery. */
.tgbgc-rosary .tgbgc-anchors{background:linear-gradient(90deg,#f0e9f3,#fff7e9);padding-top:16px;padding-bottom:16px}
.tgbgc-rosary .tgbgc-rosaryintro{margin-top:28px;margin-bottom:12px;background:rgba(255,255,255,.72);border:1px solid #e2d3e5;border-radius:24px;padding:30px;box-shadow:0 10px 26px rgba(72,55,82,.06)}
.tgbgc-rosary .tgbgc-rosary-contemplation{background:linear-gradient(180deg,rgba(242,235,246,.72),rgba(255,249,237,.45));border-top:1px solid #e3d5e7;border-bottom:1px solid #eadcc5}
.tgbgc-rosary .tgbgc-reading{margin-top:28px;margin-bottom:42px;background:#fff;border:1px solid #e5d8e6;border-radius:22px;padding:32px 34px;box-shadow:0 10px 28px rgba(72,55,82,.06)}

/* Mass — preserve all existing Mass content and imagery; make the study sections feel more intentional. */
.tgbgc-mass .tgbgc-mass-history-nav{margin-top:32px;background:#fff;border:1px solid #e7d8cb;border-radius:18px;padding:15px;box-shadow:0 9px 24px rgba(74,45,35,.06)}
.tgbgc-mass .tgbgc-mass-history-copy{box-shadow:0 11px 28px rgba(73,48,35,.07)}
.tgbgc-mass .tgbgc-mass-history-era:nth-child(4n+1) .tgbgc-mass-history-copy{border-top:4px solid #8e5944}
.tgbgc-mass .tgbgc-mass-history-era:nth-child(4n+2) .tgbgc-mass-history-copy{border-top:4px solid #b98944}
.tgbgc-mass .tgbgc-mass-history-era:nth-child(4n+3) .tgbgc-mass-history-copy{border-top:4px solid #6b7d88}
.tgbgc-mass .tgbgc-mass-history-era:nth-child(4n+4) .tgbgc-mass-history-copy{border-top:4px solid #756479}

/* Resources and Contact — calmer pages receive a visual anchor and card treatment. */
.tgbgc-resources-page .tgbgc-resource-section,.tgbgc-resources-page .tgbgc-card,
.tgbgc-contact .tgbgc-contactbox,.tgbgc-contact form{box-shadow:0 12px 30px rgba(50,66,79,.07)}
.tgbgc-resources-page .tgbgc-resource-section{border-top:4px solid #547289}
.tgbgc-contact .tgbgc-contactbox,.tgbgc-contact form{border-radius:18px}

/* Home remains simple as requested — just give the welcome area a touch more depth. */
.tgbgc-home .tgbgc-welcome{position:relative;background:linear-gradient(180deg,#fff,#fbf7ef);max-width:none;padding-left:max(28px,calc((100% - 1100px)/2));padding-right:max(28px,calc((100% - 1100px)/2))}
.tgbgc-home .tgbgc-welcome:before{content:"";display:block;width:84px;height:3px;border-radius:999px;margin:0 auto 22px;background:linear-gradient(90deg,#c99a52,#7e8fa7,#c99a52)}

/* Blog gets color without adding a new content block. */
.tgbgc-bloghero{position:relative;overflow:hidden;background:linear-gradient(125deg,#213d59,#526f7b 56%,#c39752)!important;color:#fff!important;border:0!important;box-shadow:0 9px 26px rgba(31,49,64,.10)}
.tgbgc-bloghero:after{content:"✦";position:absolute;right:7%;top:12%;font-size:9rem;color:rgba(255,236,193,.12);font-family:Georgia,serif}
.tgbgc-bloghero h1,.tgbgc-bloghero p{color:#fff!important}.tgbgc-bloghero .tgbgc-eyebrow{color:#f5d99f!important}

/* Responsive adjustments for the richer heroes and colored panels. */
@media(max-width:760px){
  .tgbgc-prayers-page .tgbgc-page-hero,.tgbgc-bible .tgbgc-page-hero,.tgbgc-healthy .tgbgc-page-hero,.tgbgc-mass .tgbgc-page-hero,.tgbgc-rosary .tgbgc-page-hero,.tgbgc-saints .tgbgc-page-hero,.tgbgc-stations .tgbgc-page-hero,.tgbgc-resources-page .tgbgc-page-hero,.tgbgc-contact .tgbgc-page-hero{height:330px;min-height:330px;max-height:330px;padding:48px 18px 50px;box-sizing:border-box}
  .tgbgc-prayers-page .tgbgc-page-hero h1,.tgbgc-bible .tgbgc-page-hero h1,.tgbgc-healthy .tgbgc-page-hero h1,.tgbgc-mass .tgbgc-page-hero h1,.tgbgc-rosary .tgbgc-page-hero h1,.tgbgc-saints .tgbgc-page-hero h1,.tgbgc-stations .tgbgc-page-hero h1,.tgbgc-resources-page .tgbgc-page-hero h1,.tgbgc-contact .tgbgc-page-hero h1{font-size:2.45rem!important}
  .tgbgc-prayers-page .tgbgc-prayer-section{margin:16px 10px;padding:34px 12px 24px;border-radius:20px}
  .tgbgc-rosary .tgbgc-rosaryintro,.tgbgc-rosary .tgbgc-reading{margin-left:12px;margin-right:12px;padding:22px 18px}
  .tgbgc-stations .tgbgc-stations-intro{margin-left:12px;margin-right:12px}
}


/* v6.9.38 — Blessed Virgin Mary hero unified with sitewide hero height.
   Keep the existing Cana artwork and copy, but let the hero run full width,
   match the 530px desktop hero height, and crop only a little from the
   bottom of the jars so all six still remain visible. */
@media (min-width:981px){
  .tgbgc-cana-scale-shell{
    --tgbgc-cana-scale:1;
    width:100%!important;
    overflow:hidden!important;
  }
  .tgbgc-cana-scale-shell > .tgbgc-cana-final{
    position:relative!important;
    top:auto!important;
    left:auto!important;
    width:100%!important;
    margin:0!important;
    transform:none!important;
  }
}
.tgbgc-cana-final{
  width:100%!important;
  min-height:530px!important;
  height:530px!important;
  grid-template-columns:minmax(365px,.82fr) minmax(0,1.95fr)!important;
}
.tgbgc-cana-final-copy{
  padding:42px 44px!important;
}
.tgbgc-cana-final-art{
  overflow:hidden!important;
}
.tgbgc-cana-final-art img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center 15%!important;
}
@media (max-width:980px){
  .tgbgc-cana-final{
    height:auto!important;
    min-height:0!important;
  }
  .tgbgc-cana-final-art img{
    width:100%!important;
    height:auto!important;
    object-fit:contain!important;
    object-position:center center!important;
  }
}


/* v6.9.39 — refine the unified Cana hero.
   Keep the same full-width 530px presentation, but reveal a little more of the
   six water jars and ensure the left copy fully fits within the shared hero height. */
.tgbgc-cana-final{
  grid-template-columns:minmax(430px,.98fr) minmax(0,1.52fr)!important;
}
.tgbgc-cana-final-copy{
  padding:30px 34px!important;
}
.tgbgc-cana-final-copy h2{
  font-size:clamp(2.7rem,3.5vw,3.75rem)!important;
  line-height:1.01!important;
  margin:0 0 8px!important;
}
.tgbgc-cana-final-ref{
  margin:0 0 10px!important;
  font-size:.96rem!important;
}
.tgbgc-cana-final-rule{
  margin:0 0 14px!important;
}
.tgbgc-cana-final-copy > p:last-child{
  max-width:470px!important;
  font-size:1rem!important;
  line-height:1.48!important;
}
.tgbgc-cana-final-art img{
  object-position:center 28%!important;
}
@media (max-width:980px){
  .tgbgc-cana-final{
    grid-template-columns:1fr!important;
  }
  .tgbgc-cana-final-copy{
    padding:32px 28px!important;
  }
}


/* v6.9.40 — consistent typography and centered card headings.
   Standardize the visual hierarchy without changing page imagery or body copy. */
:root{
  --tgbgc-section-heading-size:clamp(2.05rem,3vw,2.5rem);
  --tgbgc-card-heading-size:1.45rem;
}

/* Major content-section headings use one scale. */
.tgbgc-bible .tgbgc-center h2,
.tgbgc-prayers-page .tgbgc-prayer-section-head h2,
.tgbgc-prayers-page .tgbgc-prayer-intro h2,
.tgbgc-saints .tgbgc-sotd h2{
  font-family:Georgia,'Times New Roman',serif!important;
  font-size:var(--tgbgc-section-heading-size)!important;
  line-height:1.12!important;
}
.tgbgc-bible .tgbgc-center h2,
.tgbgc-prayers-page .tgbgc-prayer-section-head h2,
.tgbgc-prayers-page .tgbgc-prayer-intro h2{
  text-align:center!important;
}

/* Card badge + title are centered; reading/description text remains left aligned. */
.tgbgc-prayers-page .tgbgc-prayer-badge{
  align-self:center!important;
  text-align:center!important;
  justify-content:center!important;
}
.tgbgc-prayers-page .tgbgc-prayer-card h3,
.tgbgc-bible .tgbgc-verse h2,
.tgbgc-healthy .tgbgc-health h2,
.tgbgc-saints .tgbgc-saint h2{
  font-family:Georgia,'Times New Roman',serif!important;
  font-size:var(--tgbgc-card-heading-size)!important;
  line-height:1.24!important;
  text-align:center!important;
}
.tgbgc-prayers-page .tgbgc-prayer-card h3{margin:16px 0 10px!important}
.tgbgc-bible .tgbgc-verse h2{margin:0 0 14px!important}
.tgbgc-healthy .tgbgc-health h2{margin:0 0 12px!important}
.tgbgc-saints .tgbgc-saint h2{margin:0 0 8px!important}

/* Healthy Living icon follows the centered heading while the explanation stays left aligned. */
.tgbgc-healthy .tgbgc-health>span:first-child{
  margin-left:auto!important;
  margin-right:auto!important;
}

/* Preserve readable body alignment inside cards. */
.tgbgc-prayers-page .tgbgc-prayer-summary,
.tgbgc-bible .tgbgc-verse blockquote,
.tgbgc-bible .tgbgc-verse p,
.tgbgc-healthy .tgbgc-health p,
.tgbgc-saints .tgbgc-saint p{
  text-align:left!important;
}

@media(max-width:760px){
  :root{--tgbgc-card-heading-size:1.35rem}
}


/* v6.9.41 — consistent title-first section hierarchy across principal pages. */
.tgbgc-mass .tgbgc-sectiontitle h2,
.tgbgc-mary .tgbgc-apparitions-heading h2,
.tgbgc-rosary .tgbgc-rosarycopy h2,
.tgbgc-rosary .tgbgc-sectiontitle h2,
.tgbgc-saints .tgbgc-sotd h2,
.tgbgc-stations .tgbgc-stations-intro h2,
.tgbgc-bible .tgbgc-center h2,
.tgbgc-prayers-page .tgbgc-prayer-intro h2,
.tgbgc-prayers-page .tgbgc-prayer-section-head h2,
.tgbgc-healthy .tgbgc-health-under-construction h2,
.tgbgc-healthy .tgbgc-health-source-note h2{
  font-family:Georgia,'Times New Roman',serif!important;
  font-size:var(--tgbgc-section-heading-size)!important;
  line-height:1.12!important;
}
.tgbgc-stations .tgbgc-stations-intro h2,
.tgbgc-healthy .tgbgc-health-under-construction h2{
  text-align:center!important;
  margin:0 0 12px!important;
  color:#17395f!important;
}
.tgbgc-stations .tgbgc-stations-intro p,
.tgbgc-healthy .tgbgc-health-under-construction p,
.tgbgc-bible .tgbgc-center p,
.tgbgc-prayers-page .tgbgc-prayer-intro>p,
.tgbgc-mary .tgbgc-apparition-subtitle{
  font-size:1rem!important;
  line-height:1.6!important;
}


/* v6.9.42 corrected — keep the full EP II presider text available externally and
   bring the homepage Welcome heading into view immediately below the hero. */
.tgbgc-ep2-fulltext-link{margin:0 0 16px;padding:12px 14px;border:1px solid #e0c696;border-radius:12px;background:#fffaf1;line-height:1.45}
.tgbgc-ep2-fulltext-link a{color:#082b67;text-decoration:underline}
.tgbgc-ep2-fulltext-link span{display:block;margin-top:5px;font-size:.88rem;color:#665f56}
.tgbgc-home .tgbgc-welcome{padding-top:18px!important}
.tgbgc-home .tgbgc-welcome:before{display:none!important;content:none!important}
.tgbgc-home .tgbgc-welcome h2{margin-top:0!important}


/* v6.9.44 — Mass text audit visibility */
.tgbgc-liturgical-highlight{display:inline;padding:1px 5px;border-radius:5px;background:#f6e7b9;color:#5e4311;font-weight:800}
.tgbgc-canon-audit-note{margin:14px 0 20px!important}
.tgbgc-current-option-note{margin-top:12px!important;padding:10px 12px!important;border-left:3px solid #c99a52!important;background:#faf5e9!important}


/* v6.9.45 — Mass comparison proofreading key and neutral difference markers. */
.tgbgc-comparison-key{max-width:1180px;margin:16px auto 24px;padding:18px 20px;border:1px solid #dfc58e;border-radius:14px;background:#fffdf7;box-shadow:0 8px 24px rgba(62,48,27,.06);display:grid;gap:8px;line-height:1.5}
.tgbgc-comparison-key>strong{font-family:Georgia,serif;color:#102f66;font-size:1.25rem;margin-bottom:2px}
.tgbgc-comparison-key span{display:block;color:#3d382f}
.tgbgc-comparison-key small{display:block;color:#686158;margin-top:3px}
.tgbgc-diff-absent,.tgbgc-key-absent{font-weight:800;color:#17345f;text-decoration:underline;text-decoration-color:#c7973d;text-decoration-thickness:2px;text-underline-offset:3px}
.tgbgc-diff-moved,.tgbgc-key-moved{font-style:italic;font-weight:700;color:#6a5225;text-decoration-line:underline;text-decoration-style:dotted;text-decoration-color:#c7973d;text-decoration-thickness:2px;text-underline-offset:3px}
.tgbgc-key-optional{font-style:normal;font-weight:800;color:#775a1a;background:#faf1d9;border-left:3px solid #c99a52;padding:2px 6px}
.tgbgc-key-block{font-style:normal;font-weight:800;color:#17345f;border-left:5px solid #c99a52;padding-left:7px}
.tgbgc-diff-block-absent{position:relative;border-left:5px solid #c99a52!important;padding-top:48px!important}
.tgbgc-diff-block-absent:before{content:"NO DIRECT VERBAL COUNTERPART";position:absolute;top:14px;left:16px;font-family:Arial,sans-serif;font-size:.68rem;font-weight:800;letter-spacing:.08em;color:#745416;background:#faf1d9;border:1px solid #e4cc98;border-radius:999px;padding:5px 9px}
.tgbgc-current-option-note:before{content:"OPTIONAL IN CURRENT MISSAL";display:block;font-family:Arial,sans-serif;font-size:.68rem;font-weight:800;letter-spacing:.08em;color:#745416;margin-bottom:4px}
.tgbgc-liturgical-highlight{background:transparent!important;padding:0!important;border-radius:0!important;color:inherit!important;font-weight:inherit!important}
@media(max-width:760px){.tgbgc-comparison-key{margin:12px 10px 20px;padding:16px}.tgbgc-diff-block-absent{padding-top:54px!important}}


/* v6.9.47 — single-rule Mass comparison markup.
   One visual code only: bold + gold underline means absent from the current
   Roman Missal comparison. Retained/moved/optional material is explained in
   notes, not encoded with a second visual style. */
.tgbgc-diff-moved,.tgbgc-key-moved{
  font-style:inherit!important;
  text-decoration:none!important;
  color:inherit!important;
  font-weight:inherit!important;
}
.tgbgc-diff-block-absent{
  border-left:1px solid #ead7b4!important;
  padding-top:16px!important;
}
.tgbgc-diff-block-absent:before{display:none!important;content:none!important;}
.tgbgc-diff-block-absent p:not(.tgbgc-prayer-note){
  font-weight:800!important;
  color:#17345f!important;
  text-decoration:underline!important;
  text-decoration-color:#c7973d!important;
  text-decoration-thickness:2px!important;
  text-underline-offset:3px!important;
}
.tgbgc-diff-block-absent .tgbgc-prayer-role{
  font-weight:800!important;
  color:#17345f!important;
  text-decoration:underline!important;
  text-decoration-color:#c7973d!important;
  text-decoration-thickness:2px!important;
  text-underline-offset:3px!important;
}


/* v6.9.53 — one broad Marian Apparitions and Devotions collection; source-based histories for the final four cards */
.tgbgc-marian-devotions{margin-top:18px!important;}
.tgbgc-devotion-history-open{
  display:inline-block!important;
  align-self:flex-start!important;
  border:0!important;
  background:transparent!important;
  color:#17314f!important;
  padding:0!important;
  margin:2px 0 0!important;
  font:inherit!important;
  font-size:.9rem!important;
  font-weight:700!important;
  line-height:1.35!important;
  text-align:left!important;
  cursor:pointer!important;
  text-decoration:none!important;
}
.tgbgc-devotion-history-open:hover,
.tgbgc-devotion-history-open:focus-visible{color:#8a672e!important;text-decoration:underline!important;outline:none!important;}
.tgbgc-marian-devotions .tgbgc-devotion-cardcopy .tgbgc-image-source-toggle{margin-top:2px!important;}
.tgbgc-marian-status{
  margin:18px 0 24px!important;
  padding:18px 20px!important;
  border:1px solid #e1c98f!important;
  border-left:4px solid #b9852f!important;
  border-radius:10px!important;
  background:#fffaf0!important;
}
.tgbgc-marian-status h3{margin:0 0 8px!important;color:#17314f!important;font-size:1.08rem!important;}
.tgbgc-marian-status p{margin:0 0 10px!important;line-height:1.6!important;}
.tgbgc-marian-status-sources{margin:8px 0 0 1.2rem!important;padding:0!important;}
.tgbgc-marian-status-sources li{margin:5px 0!important;}
.tgbgc-marian-status-sources a{color:#17314f!important;}


/* v6.9.55 — Blessed Virgin Mary typography hierarchy.
   Keep the page title visually primary; make the Marian collection heading a
   true secondary section title rather than an oversized all-caps headline. */
.tgbgc-mary > .tgbgc-page-hero h1{
  font-size:clamp(2.7rem,3.35vw,3.35rem)!important;
  line-height:1.06!important;
  letter-spacing:0!important;
}
.tgbgc-mary .tgbgc-apparitions-heading-clean h2{
  font-size:clamp(1.75rem,2.25vw,2.15rem)!important;
  line-height:1.12!important;
  text-transform:none!important;
  letter-spacing:0!important;
  margin:0 0 7px!important;
}
@media(max-width:760px){
  .tgbgc-mary > .tgbgc-page-hero h1{
    font-size:2.45rem!important;
  }
  .tgbgc-mary .tgbgc-apparitions-heading-clean h2{
    font-size:1.7rem!important;
  }
}


/* v6.9.56 — uniform Marian card artwork framing.
   Every card now uses the same 4:3 image window. Images fill the frame without
   distortion or beige side borders; individual focal positions protect heads,
   crowns, halos, and the principal devotional subject while allowing controlled
   cropping at the lower edge. Modal artwork remains uncropped. */
.tgbgc-mary .tgbgc-apparition-card-vertical > .tgbgc-apparition-open > img{
  display:block!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  aspect-ratio:4 / 3!important;
  object-fit:cover!important;
  object-position:center 12%!important;
  background:transparent!important;
}
/* Per-image focal points: keep faces/crowns/halos safely inside the common frame. */
#apparition-fatima > .tgbgc-apparition-open > img{object-position:center 12%!important;}
#apparition-lourdes > .tgbgc-apparition-open > img{object-position:center 13%!important;}
#apparition-guadalupe > .tgbgc-apparition-open > img{object-position:center 14%!important;}
#apparition-knock > .tgbgc-apparition-open > img{object-position:center 16%!important;}
#apparition-miraculous-medal > .tgbgc-apparition-open > img{object-position:center 10%!important;}
#apparition-la-salette > .tgbgc-apparition-open > img{object-position:center 8%!important;}
#apparition-champion > .tgbgc-apparition-open > img{object-position:center 8%!important;}
#apparition-pontmain > .tgbgc-apparition-open > img{object-position:center 15%!important;}
#apparition-gietrzwald > .tgbgc-apparition-open > img{object-position:center 12%!important;}
#apparition-beauraing > .tgbgc-apparition-open > img{object-position:center 10%!important;}
#apparition-banneux > .tgbgc-apparition-open > img{object-position:center 8%!important;}
#apparition-akita > .tgbgc-apparition-open > img{object-position:center 30%!important;}
#apparition-kibeho > .tgbgc-apparition-open > img{object-position:center 8%!important;}
#apparition-our-lady-of-grace-devotion > .tgbgc-apparition-open > img{object-position:center 10%!important;}
#apparition-mount-carmel-devotion > .tgbgc-apparition-open > img{object-position:center 20%!important;}
#apparition-our-lady-of-the-cape-devotion > .tgbgc-apparition-open > img{object-position:center 13%!important;}
#apparition-our-lady-of-sorrows-devotion > .tgbgc-apparition-open > img{object-position:center 5%!important;}

@media(max-width:680px){
  .tgbgc-mary .tgbgc-apparition-card-vertical > .tgbgc-apparition-open > img{
    aspect-ratio:4 / 3!important;
  }
}


/* v6.9.57 — Marian card alignment + full Fatima composition.
   Reserve one consistent header block so metadata/title wrapping never moves the
   artwork up or down within a row. Use a 4:5 portrait frame, matching the
   source-grounded apparition artwork closely enough to keep Fatima's three
   children visible while still filling every frame edge-to-edge without
   stretching or beige side borders. */
@media(min-width:681px){
  .tgbgc-mary .tgbgc-apparition-card-vertical .tgbgc-apparition-cardhead{
    height:126px!important;
    min-height:126px!important;
    box-sizing:border-box!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
  }
}
.tgbgc-mary .tgbgc-apparition-card-vertical > .tgbgc-apparition-open > img{
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  aspect-ratio:4 / 5!important;
  object-fit:cover!important;
  object-position:center center!important;
  background:transparent!important;
}
/* Fatima's original composition includes Mary above all three children.
   Centering the near-native 4:5 source preserves the full group instead of
   cropping the children at the bottom of the frame. */
#apparition-fatima > .tgbgc-apparition-open > img{
  object-position:center center!important;
}
/* Keep carefully chosen focal points only where the source ratio differs or a
   subject benefits from a slight adjustment inside the common 4:5 window. */
#apparition-lourdes > .tgbgc-apparition-open > img{object-position:center center!important;}
#apparition-guadalupe > .tgbgc-apparition-open > img{object-position:center center!important;}
#apparition-knock > .tgbgc-apparition-open > img{object-position:center center!important;}
#apparition-miraculous-medal > .tgbgc-apparition-open > img{object-position:center center!important;}
#apparition-la-salette > .tgbgc-apparition-open > img{object-position:center center!important;}
#apparition-champion > .tgbgc-apparition-open > img{object-position:center center!important;}
#apparition-pontmain > .tgbgc-apparition-open > img{object-position:center center!important;}
#apparition-gietrzwald > .tgbgc-apparition-open > img{object-position:center center!important;}
#apparition-beauraing > .tgbgc-apparition-open > img{object-position:center center!important;}
#apparition-banneux > .tgbgc-apparition-open > img{object-position:center center!important;}
#apparition-akita > .tgbgc-apparition-open > img{object-position:center center!important;}
#apparition-kibeho > .tgbgc-apparition-open > img{object-position:center center!important;}
#apparition-our-lady-of-grace-devotion > .tgbgc-apparition-open > img{object-position:center center!important;}
#apparition-mount-carmel-devotion > .tgbgc-apparition-open > img{object-position:center 42%!important;}
#apparition-our-lady-of-the-cape-devotion > .tgbgc-apparition-open > img{object-position:center 44%!important;}
#apparition-our-lady-of-sorrows-devotion > .tgbgc-apparition-open > img{object-position:center center!important;}
@media(max-width:680px){
  .tgbgc-mary .tgbgc-apparition-card-vertical .tgbgc-apparition-cardhead{
    height:auto!important;
    min-height:0!important;
  }
  .tgbgc-mary .tgbgc-apparition-card-vertical > .tgbgc-apparition-open > img{
    aspect-ratio:4 / 5!important;
  }
}

/* v6.9.58 — BVM source-panel polish and Church discernment note. */
.tgbgc-mary .tgbgc-image-source-panel dl>div{
  grid-template-columns:80px minmax(0,1fr)!important;
}
.tgbgc-mary .tgbgc-image-source-panel dt{
  white-space:nowrap!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
}
.tgbgc-marian-discernment-note{
  max-width:1180px;
  margin:42px auto 24px;
  padding:30px 34px;
  border:1px solid #dfc68e;
  border-left:5px solid #b9852f;
  border-radius:14px;
  background:#fffaf0;
  box-shadow:0 8px 24px rgba(48,39,25,.06);
}
.tgbgc-marian-discernment-note h2{
  margin:0 0 16px!important;
  color:#17314f!important;
  font-size:clamp(1.55rem,2vw,1.95rem)!important;
  line-height:1.18!important;
  text-transform:none!important;
  letter-spacing:0!important;
}
.tgbgc-marian-discernment-note p{
  margin:0 0 14px!important;
  color:#40372d!important;
  font-size:1rem!important;
  line-height:1.72!important;
}
.tgbgc-marian-discernment-note .tgbgc-marian-note-scope{
  margin-top:18px!important;
}
.tgbgc-marian-discernment-sources{
  margin-top:20px;
  padding-top:16px;
  border-top:1px solid rgba(185,133,47,.28);
  color:#17314f;
}
.tgbgc-marian-discernment-sources ul{
  margin:8px 0 0 1.2rem!important;
  padding:0!important;
}
.tgbgc-marian-discernment-sources li{margin:6px 0!important;}
.tgbgc-marian-discernment-sources a{color:#17314f!important;}
@media(max-width:680px){
  .tgbgc-marian-discernment-note{margin:30px 14px 18px;padding:22px 20px;}
  .tgbgc-mary .tgbgc-image-source-panel dl>div{grid-template-columns:72px minmax(0,1fr)!important;}
}


/* v6.9.60 — Home introduction alignment + expanded Rosary history beside the traditional mysteries. */
.tgbgc-home .tgbgc-welcome h2{
  text-align:center!important;
}
.tgbgc-home .tgbgc-welcome>p{
  text-align:left!important;
  font-family:inherit!important;
  font-size:1.05rem!important;
  font-weight:400!important;
  line-height:1.72!important;
  max-width:1100px!important;
  margin:0 auto 22px!important;
}
.tgbgc-home .tgbgc-welcome>p:last-of-type{
  text-align:left!important;
  font-family:inherit!important;
  font-size:1.05rem!important;
  line-height:1.72!important;
  max-width:1100px!important;
  margin:0 auto!important;
}

.tgbgc-rosary .tgbgc-rosary-contemplation{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(330px,390px)!important;
  gap:30px!important;
  align-items:start!important;
  max-width:1500px!important;
}
.tgbgc-rosary .tgbgc-mysteries-pane{
  min-width:0!important;
  width:100%!important;
}
.tgbgc-traditional-mysteries-note{
  margin:0 0 28px!important;
  padding:18px 20px!important;
  background:#fffaf0!important;
  border:1px solid #e2c88f!important;
  border-left:5px solid #c89244!important;
  border-radius:12px!important;
  color:#40362b!important;
}
.tgbgc-traditional-mysteries-note h3{
  font-family:Georgia,serif!important;
  font-size:1.18rem!important;
  color:#173858!important;
  margin:0 0 7px!important;
}
.tgbgc-traditional-mysteries-note p{
  font-size:.98rem!important;
  line-height:1.62!important;
  margin:0!important;
}
.tgbgc-rosary-history-panel{
  background:#fff!important;
  border:1px solid #e5d8e6!important;
  border-radius:22px!important;
  padding:26px 26px 28px!important;
  box-shadow:0 10px 28px rgba(72,55,82,.06)!important;
  color:#352f2a!important;
  margin-top:22px!important;
}
.tgbgc-rosary-history-heading{
  text-align:center!important;
  margin-bottom:20px!important;
}
.tgbgc-rosary-history-heading .tgbgc-eyebrow{
  margin-bottom:7px!important;
}
.tgbgc-rosary-history-heading h2{
  font-family:Georgia,serif!important;
  color:#173858!important;
  font-size:2rem!important;
  line-height:1.12!important;
  margin:0!important;
}
.tgbgc-rosary-history-panel h3{
  font-family:Georgia,serif!important;
  color:#173858!important;
  font-size:1.18rem!important;
  line-height:1.25!important;
  margin:24px 0 7px!important;
}
.tgbgc-rosary-history-panel p,
.tgbgc-rosary-history-panel li{
  font-size:.96rem!important;
  line-height:1.68!important;
}
.tgbgc-rosary-history-panel p{
  margin:0 0 13px!important;
}
.tgbgc-rosary-history-sources{
  margin-top:24px!important;
  padding-top:16px!important;
  border-top:1px solid #ead8b7!important;
}
.tgbgc-rosary-history-sources h3{
  margin-top:0!important;
}
.tgbgc-rosary-history-sources ul{
  margin:8px 0 0!important;
  padding-left:20px!important;
}
.tgbgc-rosary-history-sources li{
  margin:0 0 8px!important;
}
.tgbgc-rosary-history-sources a{
  color:#805113!important;
}
@media(max-width:1180px){
  .tgbgc-rosary .tgbgc-rosary-contemplation{
    grid-template-columns:1fr!important;
    max-width:1180px!important;
  }
  .tgbgc-rosary-history-panel{
    max-width:900px!important;
    width:100%!important;
    margin:0 auto 24px!important;
  }
}
@media(max-width:760px){
  .tgbgc-home .tgbgc-welcome>p{
    font-size:1rem!important;
    line-height:1.65!important;
  }
  .tgbgc-rosary-history-panel{
    padding:22px 18px!important;
    border-radius:16px!important;
  }
  .tgbgc-rosary-history-heading h2{font-size:1.75rem!important}
  .tgbgc-traditional-mysteries-note{padding:16px!important}
}


/* v6.9.61 — place the traditional-mysteries note beneath the Mysteries-by-Day panel,
   leaving the expanded Rosary history beside the mystery cards. */
.tgbgc-rosary .tgbgc-rosaryintro-reference{
  grid-template-columns:minmax(0,1.4fr) minmax(430px,.9fr)!important;
  gap:34px!important;
  align-items:start!important;
}
.tgbgc-rosary-intro-side{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:18px!important;
  min-width:0!important;
  align-self:start!important;
}
.tgbgc-rosary-intro-side .tgbgc-mystery-days-panel{
  padding-top:0!important;
}
.tgbgc-rosary-intro-side .tgbgc-traditional-mysteries-note{
  margin:0!important;
  padding:16px 18px!important;
}
.tgbgc-rosary-intro-side .tgbgc-traditional-mysteries-note h3{
  font-size:1.08rem!important;
  margin-bottom:6px!important;
}
.tgbgc-rosary-intro-side .tgbgc-traditional-mysteries-note p{
  font-size:.92rem!important;
  line-height:1.52!important;
}
@media(max-width:1180px){
  .tgbgc-rosary .tgbgc-rosaryintro-reference{
    grid-template-columns:1fr!important;
    gap:20px!important;
  }
  .tgbgc-rosary-intro-side{
    width:100%!important;
  }
  .tgbgc-rosary-intro-side .tgbgc-traditional-mysteries-note{
    width:100%!important;
  }
}


/* v6.9.62 — Rosary history is a full-width section between the introduction and Mysteries.
   The About-the-Mysteries note remains beneath the Mysteries-by-Day panel. */
.tgbgc-rosary > .tgbgc-rosary-history-panel,
.tgbgc-rosary .tgbgc-page-body > .tgbgc-rosary-history-panel{
  display:block!important;
  width:calc(100% - 40px)!important;
  max-width:1380px!important;
  margin:24px auto 30px!important;
  padding:30px 36px 32px!important;
}
.tgbgc-rosary .tgbgc-rosary-history-heading{
  margin-bottom:22px!important;
}
.tgbgc-rosary .tgbgc-rosary-history-heading h2{
  font-size:2.15rem!important;
}
.tgbgc-rosary .tgbgc-rosary-history-panel p,
.tgbgc-rosary .tgbgc-rosary-history-panel li{
  font-size:1rem!important;
  line-height:1.7!important;
}
/* With history removed from the side column, Mysteries again use the full content width. */
.tgbgc-rosary .tgbgc-rosary-contemplation{
  display:block!important;
  max-width:1450px!important;
}
@media(max-width:760px){
  .tgbgc-rosary > .tgbgc-rosary-history-panel,
  .tgbgc-rosary .tgbgc-page-body > .tgbgc-rosary-history-panel{
    width:calc(100% - 24px)!important;
    padding:22px 18px 24px!important;
    margin:18px auto 24px!important;
  }
}


/* v6.9.63 — Put the full-width Rosary history after the meditation/mysteries area
   so visitors reach the interactive mysteries immediately after the prayer guide. */
.tgbgc-rosary .tgbgc-rosary-contemplation{
  margin-bottom:30px!important;
}
.tgbgc-rosary .tgbgc-rosary-contemplation + .tgbgc-rosary-history-panel{
  margin-top:0!important;
  margin-bottom:30px!important;
}

/* v6.9.65 — Saints page personal-litany disclosure and Request a Saint invitation */
.tgbgc-saint-personal-note,.tgbgc-saint-request{max-width:1180px;margin:24px auto;padding:24px 28px;background:#fffaf2;border:1px solid #dfc691;border-radius:18px;box-shadow:0 8px 22px rgba(62,44,14,.05)}
.tgbgc-saint-personal-note h2,.tgbgc-saint-request h2{font-family:Georgia,'Times New Roman',serif;color:var(--navy);margin:0 0 10px;font-size:1.65rem}
.tgbgc-saint-personal-note p,.tgbgc-saint-request p{margin:8px 0;line-height:1.65}
.tgbgc-saint-personal-note a,.tgbgc-saint-request a,.tgbgc-saint-no-results a{color:var(--navy)}
.tgbgc-saint-no-results{margin:16px 0 2px;padding:16px 18px;border-left:4px solid #c58a2f;background:#fff9ef;border-radius:10px}
.tgbgc-saint-no-results p{margin:4px 0;line-height:1.55}
.tgbgc-saint-request{text-align:center;margin-top:0}
.tgbgc-saint-request-button{display:inline-block;padding:11px 22px;border:1px solid #c58a2f;border-radius:999px;text-decoration:none;font-weight:800;background:#fff;color:var(--navy)!important}
.tgbgc-saint-request-button:hover{background:#fff4df}
.tgbgc-saint-request-email{font-size:.92rem;color:#6d6255}
@media(max-width:760px){.tgbgc-saint-personal-note,.tgbgc-saint-request{margin:18px 14px;padding:20px}}


/* v6.9.66 — Saints page: compact personal-litany introduction, Saint of the Day card,
   slimmer search bar, and graceful external/request fallback for saints not in the litany. */
.tgbgc-saints-intro-row{
  max-width:1180px;
  margin:22px auto 14px;
  padding:0 20px;
  display:grid;
  grid-template-columns:minmax(0,1.75fr) minmax(300px,.75fr);
  gap:18px;
  align-items:stretch;
}
.tgbgc-saints .tgbgc-saint-personal-note,
.tgbgc-saints .tgbgc-sotd-compact{
  margin:0!important;
  max-width:none!important;
  border-radius:16px!important;
  box-shadow:0 7px 20px rgba(62,44,14,.045)!important;
}
.tgbgc-saints .tgbgc-saint-personal-note{
  padding:18px 22px!important;
}
.tgbgc-saints .tgbgc-saint-personal-note h2{
  font-size:1.35rem!important;
  margin:0 0 6px!important;
}
.tgbgc-saints .tgbgc-saint-personal-note p{
  font-size:.94rem!important;
  line-height:1.48!important;
  margin:5px 0!important;
}
.tgbgc-saint-more-note{
  padding-top:5px;
}
.tgbgc-saint-more-note a{
  font-weight:700;
}
.tgbgc-saints .tgbgc-sotd-compact{
  padding:17px 19px!important;
  background:linear-gradient(145deg,#fff,#fbf1f4)!important;
  border:1px solid #ead8dd!important;
}
.tgbgc-saints .tgbgc-sotd-compact .tgbgc-eyebrow{
  margin:0 0 3px!important;
  color:var(--gold2)!important;
  font-size:.69rem!important;
  font-weight:800!important;
  letter-spacing:.14em!important;
  text-transform:uppercase!important;
}
.tgbgc-saints .tgbgc-sotd-compact h2{
  font-size:1.32rem!important;
  line-height:1.15!important;
  margin:0 0 2px!important;
  text-align:left!important;
}
.tgbgc-sotd-date{
  color:#6d6255;
  font-size:.82rem;
  margin:0 0 10px!important;
}
.tgbgc-sotd-links{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
}
.tgbgc-sotd-links a{
  display:block;
  padding:9px 10px;
  border:1px solid #dfc691;
  border-radius:10px;
  background:#fff;
  color:var(--navy);
  text-decoration:none;
  line-height:1.2;
}
.tgbgc-sotd-links a:hover{background:#fff8ec}
.tgbgc-sotd-links strong{
  display:block;
  font-size:.79rem;
  color:#9a651d;
  margin-bottom:3px;
}
.tgbgc-sotd-links span{
  display:block;
  font-size:.79rem;
}
.tgbgc-saints .tgbgc-sainttools{
  max-width:1180px!important;
  margin:12px auto 12px!important;
  padding:13px 18px 11px!important;
  border-radius:16px!important;
}
.tgbgc-sainttools-head{
  display:flex!important;
  align-items:baseline!important;
  justify-content:space-between!important;
  gap:16px!important;
  margin-bottom:7px!important;
}
.tgbgc-saints .tgbgc-sainttools label{
  margin:0!important;
  font-size:1rem!important;
}
.tgbgc-sainttools-head #tgbgc-count{
  margin:0!important;
  color:#6d6255!important;
  font-size:.78rem!important;
  white-space:nowrap!important;
}
.tgbgc-saints .tgbgc-sainttools>.tgbgc-saint-searchline{
  display:grid!important;
  grid-template-columns:1fr auto!important;
  gap:8px!important;
}
.tgbgc-saints .tgbgc-sainttools input{
  min-height:42px!important;
  padding:8px 15px!important;
  font-size:.92rem!important;
}
.tgbgc-saints .tgbgc-sainttools button{
  min-height:42px!important;
  padding:7px 17px!important;
  font-size:.88rem!important;
}
.tgbgc-saints .tgbgc-sortnote{
  margin:6px 2px 0!important;
  font-size:.76rem!important;
  line-height:1.35!important;
}
.tgbgc-saint-no-results{
  display:block;
  width:auto;
  margin:10px 0 3px!important;
  padding:11px 14px!important;
}
.tgbgc-saint-no-results[hidden]{display:none!important}
.tgbgc-saint-no-results p,
.tgbgc-saint-no-results strong{
  display:block!important;
  width:auto!important;
  max-width:none!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
  writing-mode:horizontal-tb!important;
}
.tgbgc-saint-no-results p{font-size:.86rem!important;margin:0 0 8px!important}
.tgbgc-saint-no-results-actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px 16px;
}
.tgbgc-saint-no-results-actions a{
  font-size:.84rem;
  font-weight:800;
  text-decoration:none;
}
.tgbgc-saint-no-results-actions a:hover{text-decoration:underline}
.tgbgc-saints .tgbgc-saintgrid{
  padding-top:4px!important;
}
@media(max-width:900px){
  .tgbgc-saints-intro-row{grid-template-columns:1fr;padding:0 14px;margin-top:16px}
  .tgbgc-sotd-links{grid-template-columns:1fr 1fr}
}
@media(max-width:560px){
  .tgbgc-sotd-links{grid-template-columns:1fr}
  .tgbgc-sainttools-head{align-items:flex-start!important;flex-direction:column!important;gap:2px!important}
  .tgbgc-saints .tgbgc-sainttools>.tgbgc-saint-searchline{grid-template-columns:1fr auto!important}
}

/* v6.9.67 — Saints page: disclosure + slim search stacked in a wider left column,
   with Saint of the Day aligned as a compact right-hand card. */
.tgbgc-saints-top-layout{
  max-width:1380px;
  margin:20px auto 12px;
  padding:0 20px;
  display:grid;
  grid-template-columns:minmax(0,2.55fr) minmax(300px,.85fr);
  gap:18px;
  align-items:stretch;
}
.tgbgc-saints-top-main{
  min-width:0;
  display:grid;
  grid-template-rows:auto auto;
  gap:10px;
}
.tgbgc-saints-top-layout .tgbgc-saint-personal-note,
.tgbgc-saints-top-layout .tgbgc-sainttools,
.tgbgc-saints-top-layout .tgbgc-sotd-compact{
  margin:0!important;
  max-width:none!important;
}
.tgbgc-saints-top-layout .tgbgc-saint-personal-note{
  padding:15px 20px!important;
}
.tgbgc-saints-top-layout .tgbgc-saint-personal-note h2{
  font-size:1.28rem!important;
  margin-bottom:4px!important;
}
.tgbgc-saints-top-layout .tgbgc-saint-personal-note p{
  font-size:.91rem!important;
  line-height:1.42!important;
  margin:3px 0!important;
}
.tgbgc-saints-top-layout .tgbgc-sainttools{
  padding:10px 15px 9px!important;
  border-radius:15px!important;
}
.tgbgc-saints-top-layout .tgbgc-sainttools-head{
  margin-bottom:5px!important;
}
.tgbgc-saints-top-layout .tgbgc-sainttools input,
.tgbgc-saints-top-layout .tgbgc-sainttools button{
  min-height:39px!important;
}
.tgbgc-saints-top-layout .tgbgc-sortnote{
  margin-top:4px!important;
  font-size:.72rem!important;
}
.tgbgc-saints-top-layout .tgbgc-sotd-compact{
  height:100%;
  box-sizing:border-box;
  display:flex;
  flex-direction:column;
}
.tgbgc-saints-top-layout .tgbgc-sotd-links{
  margin-top:auto;
}
.tgbgc-saints-top-layout + .tgbgc-saintgrid{
  padding-top:4px!important;
}
@media(max-width:980px){
  .tgbgc-saints-top-layout{
    grid-template-columns:1fr;
    padding:0 14px;
    margin-top:16px;
  }
  .tgbgc-saints-top-layout .tgbgc-sotd-compact{height:auto}
}

/* v6.9.68 — Saints search: separate Name, Date, and Cause modes for accurate filtering. */
.tgbgc-saints .tgbgc-sainttools-title{
  color:#6f4051;
  font-family:Georgia,'Times New Roman',serif;
  font-size:1.08rem;
  font-weight:700;
}
.tgbgc-saints .tgbgc-saint-search-tabs{
  display:flex;
  gap:6px;
  margin:2px 0 7px;
  flex-wrap:wrap;
}
.tgbgc-saints .tgbgc-saint-search-tab{
  min-height:30px!important;
  padding:5px 12px!important;
  border:1px solid #d9b777!important;
  border-radius:999px!important;
  background:#fffaf0!important;
  color:#17345f!important;
  font-size:.78rem!important;
  font-weight:700!important;
  cursor:pointer;
}
.tgbgc-saints .tgbgc-saint-search-tab.is-active{
  background:#17345f!important;
  border-color:#17345f!important;
  color:#fff!important;
}
.tgbgc-saints .tgbgc-saint-search-controls{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:9px;
  align-items:end;
}
.tgbgc-saints .tgbgc-saint-search-panel{min-width:0}
.tgbgc-saints .tgbgc-saint-search-panel input[type="search"],
.tgbgc-saints .tgbgc-saint-search-panel input[type="date"]{
  width:100%;
  box-sizing:border-box;
  min-height:39px!important;
  border:1px solid #cfcfcf;
  border-radius:999px;
  background:#fff;
  padding:7px 14px;
  font-size:.88rem;
}
.tgbgc-saints .tgbgc-date-search-label{
  display:block;
  margin:0 0 4px;
  font-size:.72rem;
  font-weight:700;
  color:#6f4051;
}
.tgbgc-saints .tgbgc-date-search-row{
  display:grid;
  grid-template-columns:minmax(180px,240px) minmax(220px,1fr);
  gap:10px;
  align-items:center;
}
.tgbgc-saints .tgbgc-month-toggle{
  display:flex;
  align-items:center;
  gap:7px;
  margin:0;
  color:#5f514a;
  font-size:.76rem;
  line-height:1.25;
}
.tgbgc-saints .tgbgc-month-toggle input{width:auto!important;min-height:0!important}
.tgbgc-saints .tgbgc-saint-no-results{margin-top:8px}
.tgbgc-saints .tgbgc-request-search[hidden]{display:none!important}
@media(max-width:720px){
  .tgbgc-saints .tgbgc-saint-search-controls{grid-template-columns:1fr}
  .tgbgc-saints .tgbgc-date-search-row{grid-template-columns:1fr}
  .tgbgc-saints .tgbgc-saint-search-controls>#tgbgc-clear{justify-self:start}
}

/* v6.9.70 — Compact Saint of the Day comparison popup. */
.tgbgc-saints .tgbgc-sotd-summary{
  margin:6px 0 12px!important;
  font-size:.82rem!important;
  line-height:1.38!important;
  color:#4f463e;
}
.tgbgc-sotd-open{
  margin-top:auto;
  width:100%;
  min-height:40px;
  padding:9px 12px;
  border:1px solid #c58a2f;
  border-radius:10px;
  background:#fff;
  color:var(--navy);
  font-weight:800;
  cursor:pointer;
  text-align:left;
}
.tgbgc-sotd-open:hover{background:#fff8ec}
.tgbgc-sotd-modal[hidden]{display:none!important}
.tgbgc-sotd-modal{
  position:fixed;
  inset:0;
  z-index:100000;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:24px;
}
.tgbgc-sotd-modal-backdrop{
  position:absolute;
  inset:0;
  background:rgba(15,25,42,.66);
}
.tgbgc-sotd-modal-card{
  position:relative;
  z-index:1;
  width:min(650px,100%);
  max-height:90vh;
  overflow:auto;
  box-sizing:border-box;
  padding:28px 30px;
  border:1px solid #dfc691;
  border-radius:20px;
  background:#fffaf2;
  box-shadow:0 24px 70px rgba(12,24,45,.28);
}
.tgbgc-sotd-modal-card h2{
  margin:2px 44px 4px 0!important;
  color:var(--navy);
  font-size:1.8rem!important;
  line-height:1.15!important;
  text-align:left!important;
}
.tgbgc-sotd-modal-close{
  position:absolute;
  top:14px;
  right:16px;
  width:38px;
  height:38px;
  padding:0;
  border:1px solid #dfc691;
  border-radius:50%;
  background:#fff;
  color:var(--navy);
  font-size:1.55rem;
  line-height:1;
  cursor:pointer;
}
.tgbgc-sotd-modal-date{margin:0 0 16px;color:#6d6255;font-size:.92rem}
.tgbgc-sotd-compare-pair{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
  margin:16px 0;
}
.tgbgc-sotd-compare-pair>div{
  padding:14px 16px;
  border:1px solid #dfc691;
  border-radius:12px;
  background:#fff;
}
.tgbgc-sotd-compare-pair strong{display:block;color:#9a651d;margin-bottom:3px}
.tgbgc-sotd-compare-pair span{display:block;color:var(--navy);font-weight:700}
.tgbgc-sotd-modal-copy{line-height:1.55}
.tgbgc-sotd-primary-link{
  display:inline-block;
  padding:11px 16px;
  border-radius:999px;
  background:var(--navy);
  color:#fff!important;
  text-decoration:none!important;
  font-weight:800;
}
.tgbgc-sotd-primary-link:hover{opacity:.92}
.tgbgc-sotd-learnmore{
  margin-top:22px;
  padding:17px 18px;
  border-left:4px solid #c58a2f;
  border-radius:10px;
  background:#fff;
}
.tgbgc-sotd-learnmore h3{margin:0 0 6px;color:var(--navy);font-family:Georgia,'Times New Roman',serif;font-size:1.22rem}
.tgbgc-sotd-learnmore p{margin:5px 0;line-height:1.5}
.tgbgc-sotd-learnmore a{color:var(--navy);font-weight:800}
.tgbgc-sotd-source-note{margin:14px 0 0!important;color:#766b61;font-size:.76rem!important;line-height:1.4!important}
body.tgbgc-modal-open{overflow:hidden}
@media(max-width:560px){
  .tgbgc-sotd-modal{padding:14px}
  .tgbgc-sotd-modal-card{padding:24px 20px}
  .tgbgc-sotd-compare-pair{grid-template-columns:1fr}
}


/* v6.9.71 — Show the daily Traditional and Current results directly in the popup. */
.tgbgc-sotd-results{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
  margin:18px 0 8px;
}
.tgbgc-sotd-result{
  display:flex;
  flex-direction:column;
  min-height:150px;
  padding:17px 18px;
  border:1px solid #dfc691;
  border-radius:14px;
  background:#fff;
}
.tgbgc-sotd-result-label{
  display:block;
  margin-bottom:10px;
  color:#9a651d;
  font-size:.8rem;
  font-weight:800;
  letter-spacing:.02em;
}
.tgbgc-sotd-result strong{
  display:block;
  color:var(--navy);
  font-family:Georgia,'Times New Roman',serif;
  font-size:1.22rem;
  line-height:1.3;
  margin-bottom:14px;
}
.tgbgc-sotd-result a{
  margin-top:auto;
  color:var(--navy);
  font-size:.82rem;
  font-weight:700;
}
@media(max-width:560px){.tgbgc-sotd-results{grid-template-columns:1fr}.tgbgc-sotd-result{min-height:0}}

/* v6.9.72 — Distinguish the U.S. liturgical calendar from the current Roman Martyrology. */
.tgbgc-sotd-result .tgbgc-sotd-source-link,
.tgbgc-sotd-result .tgbgc-sotd-learn-link{
  align-self:flex-start;
  white-space:nowrap;
}
.tgbgc-sotd-result .tgbgc-sotd-learn-link{
  margin-top:8px;
  font-size:.78rem;
  font-weight:700;
}
.tgbgc-sotd-no-saint{
  margin:0 0 13px!important;
  color:#6e6258;
  font-size:.82rem!important;
  line-height:1.42!important;
}
.tgbgc-sotd-martyrology{
  margin-top:22px;
  border:1px solid #dfc691;
  border-left:4px solid #c58a2f;
  border-radius:12px;
  background:#fff;
  overflow:hidden;
}
.tgbgc-sotd-martyrology summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:16px 18px;
  color:var(--navy);
  font-family:Georgia,'Times New Roman',serif;
  font-size:1.12rem;
  font-weight:700;
  cursor:pointer;
  list-style:none;
}
.tgbgc-sotd-martyrology summary::-webkit-details-marker{display:none}
.tgbgc-sotd-martyrology[open] summary span{transform:rotate(90deg)}
.tgbgc-sotd-martyrology summary span{transition:transform .18s ease}
.tgbgc-sotd-martyrology-body{
  padding:0 18px 17px;
  border-top:1px solid #eee2ca;
}
.tgbgc-sotd-martyrology-body>p{
  margin:13px 0 10px;
  color:#665b52;
  font-size:.86rem;
  line-height:1.5;
}
.tgbgc-sotd-martyrology ul{
  list-style:none;
  padding:0;
  margin:8px 0 10px;
}
.tgbgc-sotd-martyrology li{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  padding:10px 0;
  border-bottom:1px solid #eee7db;
}
.tgbgc-sotd-martyrology li:last-child{border-bottom:0}
.tgbgc-sotd-martyrology li span{color:var(--navy);font-weight:700;line-height:1.35}
.tgbgc-sotd-martyrology li a,
.tgbgc-sotd-martyrology-source a{color:var(--navy);font-weight:800;white-space:nowrap}
.tgbgc-sotd-martyrology-source{margin-bottom:0!important}
@media(max-width:560px){
  .tgbgc-sotd-result .tgbgc-sotd-source-link,
  .tgbgc-sotd-result .tgbgc-sotd-learn-link{font-size:.76rem}
  .tgbgc-sotd-martyrology li{display:block}
  .tgbgc-sotd-martyrology li a{display:inline-block;margin-top:4px}
}


/* v6.9.78 — Saint of the Day modal: keep both calendar cards inside the popup. */
.tgbgc-sotd-modal-card{
  width:min(760px,calc(100vw - 32px));
  overflow-x:hidden;
}
.tgbgc-sotd-results{
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
}
.tgbgc-sotd-result{
  min-width:0;
  overflow-wrap:anywhere;
}
.tgbgc-sotd-result strong{
  overflow-wrap:anywhere;
  word-break:normal;
}
.tgbgc-sotd-result .tgbgc-sotd-source-link,
.tgbgc-sotd-result .tgbgc-sotd-learn-link{
  max-width:100%;
  white-space:normal;
  overflow-wrap:anywhere;
  line-height:1.35;
}
@media(max-width:680px){
  .tgbgc-sotd-results{grid-template-columns:1fr}
  .tgbgc-sotd-result{min-height:0}
}


/* v6.9.81 — Keep the two Saint of the Day biography links on the same baseline. */
.tgbgc-sotd-result .tgbgc-sotd-learn-link{
  margin-top:auto;
}


/* v6.9.82 — Stations introduction + indulgence material only. Hero and station cards are intentionally untouched. */
.tgbgc-stations .tgbgc-stations-intro{
  max-width:1380px;
  margin:28px auto 0;
  padding:22px 30px 20px;
  text-align:left;
}
.tgbgc-stations .tgbgc-stations-intro h2{text-align:center!important;margin-bottom:16px!important}
.tgbgc-stations .tgbgc-stations-intro-copy{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:0}
.tgbgc-stations .tgbgc-stations-intro-copy p{margin:0;padding:0 24px;font-size:.98rem!important;line-height:1.58!important;color:#44382f}
.tgbgc-stations .tgbgc-stations-intro-copy p:first-child{padding-left:0}
.tgbgc-stations .tgbgc-stations-intro-copy p:last-child{padding-right:0}
.tgbgc-stations .tgbgc-stations-intro-copy p+p{border-left:1px solid #ead8c6}
.tgbgc-stations .tgbgc-stations-indulgence-jump{margin:17px 0 0!important;text-align:center;font-weight:700}
.tgbgc-stations .tgbgc-stations-indulgence-jump a{color:#72513e;text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px}
.tgbgc-stations .tgbgc-stations-footnote{color:#8b5a17;font-weight:800;text-decoration:none;white-space:nowrap}
.tgbgc-stations .tgbgc-stations-footnote:hover,.tgbgc-stations .tgbgc-stations-footnote:focus-visible{text-decoration:underline}

.tgbgc-stations-indulgence{max-width:1280px;margin:-18px auto 64px;padding:0 22px;scroll-margin-top:110px;color:#3f342d}
.tgbgc-stations-indulgence-heading{text-align:center;margin:0 auto 26px}
.tgbgc-stations-indulgence-kicker{margin:0 0 7px;color:#9a651c;font-weight:800;letter-spacing:.1em;text-transform:uppercase;font-size:.78rem}
.tgbgc-stations-indulgence-heading h2{margin:0;font-family:Georgia,'Times New Roman',serif;color:#17395f;font-size:clamp(2rem,3vw,2.75rem);line-height:1.12}
.tgbgc-stations-indulgence-grid{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:24px;align-items:start}
.tgbgc-stations-indulgence-copy,.tgbgc-stations-conditions,.tgbgc-stations-indulgence-notes,.tgbgc-stations-invitation,.tgbgc-stations-sources{background:#fffdf9;border:1px solid #e2ccb1;border-radius:18px;box-shadow:0 10px 28px rgba(70,47,31,.07)}
.tgbgc-stations-indulgence-copy,.tgbgc-stations-conditions{padding:25px 27px}
.tgbgc-stations-indulgence-copy p{margin:0 0 16px;line-height:1.68}
.tgbgc-stations-indulgence-copy p:last-child{margin-bottom:0}
.tgbgc-stations-indulgence-for{margin:18px 0;padding:15px 18px;background:#fff7e9;border-left:4px solid #b98a49;border-radius:0 12px 12px 0}
.tgbgc-stations-indulgence-for p{margin:0 0 7px}
.tgbgc-stations-indulgence-for ul{margin:0;padding-left:22px}
.tgbgc-stations-indulgence-for li{margin:5px 0}
.tgbgc-stations-conditions h3,.tgbgc-stations-invitation h3,.tgbgc-stations-sources h3{margin:0 0 16px;font-family:Georgia,'Times New Roman',serif;color:#17395f;font-size:1.55rem}
.tgbgc-stations-conditions ol{margin:0;padding:0;list-style:none;counter-reset:tgbgc-indulgence-step}
.tgbgc-stations-conditions li{position:relative;counter-increment:tgbgc-indulgence-step;padding:0 0 17px 46px;line-height:1.55}
.tgbgc-stations-conditions li:last-child{padding-bottom:0}
.tgbgc-stations-conditions li:before{content:counter(tgbgc-indulgence-step);position:absolute;left:0;top:-1px;width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#f4e6ce;border:1px solid #d8b77d;color:#7d531a;font-weight:800}
.tgbgc-stations-conditions li strong{display:block;color:#332c27}
.tgbgc-stations-conditions li span{display:block;margin-top:4px;color:#5a4c43}
.tgbgc-stations-indulgence-notes{margin-top:24px;padding:21px 26px;background:#f8f3eb}
.tgbgc-stations-indulgence-notes p{margin:0 0 11px;line-height:1.62}
.tgbgc-stations-indulgence-notes p:last-child{margin-bottom:0}
.tgbgc-stations-invitation{margin-top:24px;padding:27px 30px}
.tgbgc-stations-invitation p{margin:0 0 14px;line-height:1.7}
.tgbgc-stations-invitation p:last-child{margin-bottom:0}
.tgbgc-stations-invitation blockquote{margin:20px auto;padding:20px 24px;max-width:930px;background:#fff8e9;border:1px solid #dfc18e;border-left:5px solid #9a6b31;border-radius:0 14px 14px 0;font-family:Georgia,'Times New Roman',serif;font-size:1.08rem;font-style:italic;line-height:1.72;color:#3f342d}
.tgbgc-stations-invitation blockquote p{margin:0}
.tgbgc-stations-sources{margin-top:24px;padding:22px 28px}
.tgbgc-stations-sources h3{font-size:1.25rem;margin-bottom:10px}
.tgbgc-stations-sources ol{margin:0;padding-left:22px}
.tgbgc-stations-sources li{margin:7px 0;line-height:1.5;color:#66584e}
.tgbgc-stations-sources a{color:#5f4938;text-decoration:underline;text-underline-offset:3px}

@media(max-width:1000px){
  .tgbgc-stations .tgbgc-stations-intro-copy{grid-template-columns:1fr 1fr}
  .tgbgc-stations .tgbgc-stations-intro-copy p{padding:0 18px}
  .tgbgc-stations .tgbgc-stations-intro-copy p:nth-child(1){padding-left:0}
  .tgbgc-stations .tgbgc-stations-intro-copy p:nth-child(2){padding-right:0}
  .tgbgc-stations .tgbgc-stations-intro-copy p:nth-child(3){grid-column:1/-1;border-left:0;border-top:1px solid #ead8c6;margin-top:15px;padding:15px 0 0}
  .tgbgc-stations-indulgence-grid{grid-template-columns:1fr}
}
@media(max-width:700px){
  .tgbgc-stations .tgbgc-stations-intro{margin:18px 12px 0;padding:20px 18px}
  .tgbgc-stations .tgbgc-stations-intro-copy{grid-template-columns:1fr}
  .tgbgc-stations .tgbgc-stations-intro-copy p,.tgbgc-stations .tgbgc-stations-intro-copy p:first-child,.tgbgc-stations .tgbgc-stations-intro-copy p:last-child{padding:0}
  .tgbgc-stations .tgbgc-stations-intro-copy p+p{border-left:0;border-top:1px solid #ead8c6;margin-top:13px;padding-top:13px}
  .tgbgc-stations .tgbgc-stations-intro-copy p:nth-child(3){grid-column:auto}
  .tgbgc-stations-indulgence{margin:-8px auto 46px;padding:0 14px}
  .tgbgc-stations-indulgence-copy,.tgbgc-stations-conditions,.tgbgc-stations-indulgence-notes,.tgbgc-stations-invitation,.tgbgc-stations-sources{padding:20px 18px;border-radius:15px}
  .tgbgc-stations-conditions li{padding-left:42px}
  .tgbgc-stations-invitation blockquote{padding:17px 18px;font-size:1rem}
}

/* v6.9.86 — EP II contextual full-text reference panel; isolated to Words of the Mass */
.tgbgc-mass-words-page .tgbgc-ep2-exact{padding:10px 12px;border-left:3px solid #caa14d;background:#fffaf0;font-family:Georgia,serif;color:#2e2922}
.tgbgc-mass-words-page .tgbgc-ep2-compare{padding:9px 11px;background:#f5f8fb;border-radius:9px;color:#373d43}
.tgbgc-mass-words-page .tgbgc-ep2-source-open{display:inline-flex;align-items:center;gap:6px;margin:7px 0 1px;padding:8px 11px;border:1px solid #caa14d;border-radius:999px;background:#fffaf0;color:#082b67;font:600 .88rem/1.25 system-ui,-apple-system,"Segoe UI",sans-serif;cursor:pointer;text-align:left}
.tgbgc-mass-words-page .tgbgc-ep2-source-open:hover,.tgbgc-mass-words-page .tgbgc-ep2-source-open:focus-visible{background:#fff3d9;outline:2px solid transparent;box-shadow:0 0 0 2px rgba(202,161,77,.24)}
.tgbgc-mass-words-page .tgbgc-ep2-source-open-top{margin-top:10px;border-radius:10px}
.tgbgc-ep2-source-modal[hidden]{display:none!important}
.tgbgc-ep2-source-modal{position:fixed;inset:0;z-index:100050;display:flex;align-items:center;justify-content:center;padding:24px}
.tgbgc-ep2-source-backdrop{position:absolute;inset:0;background:rgba(13,22,36,.72);backdrop-filter:blur(2px)}
.tgbgc-ep2-source-dialog{position:relative;z-index:1;width:min(1120px,96vw);height:min(860px,92vh);display:flex;flex-direction:column;background:#fffdf9;border:1px solid #d9c08a;border-radius:16px;box-shadow:0 26px 80px rgba(0,0,0,.35);overflow:hidden}
.tgbgc-ep2-source-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:18px 22px 12px;border-bottom:1px solid #eadbc3;background:#fff9ef}
.tgbgc-ep2-source-head h2{margin:2px 0 0;font-family:Georgia,serif;color:#082b67;font-size:1.55rem}
.tgbgc-ep2-source-section{margin:5px 0 0;font-weight:700;color:#655842}
.tgbgc-ep2-source-close{flex:0 0 auto;width:42px;height:42px;border:1px solid #d7c39b;border-radius:50%;background:#fff;color:#17365f;font-size:1.8rem;line-height:1;cursor:pointer}
.tgbgc-ep2-source-help{margin:0;padding:11px 22px;background:#fbf6ed;border-bottom:1px solid #eadbc3;font-size:.91rem;line-height:1.45;color:#5f584d}
.tgbgc-ep2-source-framewrap{flex:1;min-height:0;background:#fff}
.tgbgc-ep2-source-frame{display:block;width:100%;height:100%;border:0;background:#fff}
.tgbgc-ep2-source-fallback{margin:0;padding:10px 22px 13px;border-top:1px solid #eadbc3;background:#fff9ef;font-size:.91rem}
.tgbgc-ep2-source-fallback a{color:#082b67;text-decoration:underline;font-weight:700}
html.tgbgc-ep2-modal-open,html.tgbgc-ep2-modal-open body{overflow:hidden}
@media(max-width:700px){.tgbgc-ep2-source-modal{padding:8px}.tgbgc-ep2-source-dialog{width:100%;height:96vh;border-radius:12px}.tgbgc-ep2-source-head{padding:14px 14px 10px}.tgbgc-ep2-source-help,.tgbgc-ep2-source-fallback{padding-left:14px;padding-right:14px}.tgbgc-mass-words-page .tgbgc-ep2-source-open{width:100%;justify-content:center}}

/* v6.9.87 — EP II comparison: text first, explanation second, compact external continuation links. */
.tgbgc-mass-words-page .tgbgc-ep2-source-link{display:inline-block;margin:7px 0 1px;padding:7px 10px;border:1px solid #caa14d;border-radius:999px;background:#fffaf0;color:#082b67;font:600 .86rem/1.25 system-ui,-apple-system,"Segoe UI",sans-serif;text-decoration:none}
.tgbgc-mass-words-page .tgbgc-ep2-source-link:hover,.tgbgc-mass-words-page .tgbgc-ep2-source-link:focus-visible{background:#fff3d9;text-decoration:underline}


/* v6.9.88 — EP II docked English-source panel: keep comparison visible while reading the external continuation. */
.tgbgc-ep2-source-modal[hidden]{display:none!important}
.tgbgc-ep2-source-modal{position:fixed!important;top:88px!important;right:16px!important;bottom:18px!important;left:auto!important;z-index:100050!important;display:block!important;width:min(620px,42vw)!important;padding:0!important;pointer-events:none!important}
.tgbgc-ep2-source-dialog{position:relative!important;width:100%!important;height:100%!important;display:flex!important;flex-direction:column!important;background:#fffdf9!important;border:1px solid #d9c08a!important;border-radius:14px!important;box-shadow:0 18px 56px rgba(0,0,0,.28)!important;overflow:hidden!important;pointer-events:auto!important}
.tgbgc-ep2-source-head{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:14px!important;padding:12px 14px 9px!important;border-bottom:1px solid #eadbc3!important;background:#fff9ef!important}
.tgbgc-ep2-source-kicker{display:block!important;margin:0 0 2px!important;color:#a16a1a!important;font:700 .72rem/1.2 system-ui,-apple-system,"Segoe UI",sans-serif!important;letter-spacing:.12em!important;text-transform:uppercase!important}
.tgbgc-ep2-source-head h2{margin:0!important;font-size:1.24rem!important;line-height:1.2!important}
.tgbgc-ep2-source-section{margin:3px 0 0!important;font-size:.86rem!important;line-height:1.25!important}
.tgbgc-ep2-source-close{width:36px!important;height:36px!important;font-size:1.5rem!important}
.tgbgc-ep2-source-help{margin:0!important;padding:8px 14px!important;font-size:.79rem!important;line-height:1.35!important;background:#fbf6ed!important;border-bottom:1px solid #eadbc3!important;color:#5f584d!important}
.tgbgc-ep2-source-framewrap{position:relative!important;flex:1!important;min-height:0!important;overflow:hidden!important;background:#f8f0df!important}
/* The external page is intentionally rendered at a fixed desktop width, then shifted left. This clips away its Latin column and keeps the English column visible. */
.tgbgc-ep2-source-frame{position:absolute!important;top:-315px!important;left:-600px!important;width:1220px!important;height:calc(100% + 315px)!important;border:0!important;background:#fff!important;max-width:none!important;transform:none!important}
.tgbgc-ep2-source-fallback{margin:0!important;padding:8px 14px 10px!important;font-size:.78rem!important;line-height:1.3!important}
/* Do not dim or lock the main comparison: the dock is a reference aid, not a blocking modal. */
html.tgbgc-ep2-modal-open,html.tgbgc-ep2-modal-open body{overflow:auto!important}
@media(max-width:1050px){
  .tgbgc-ep2-source-modal{width:min(560px,48vw)!important;right:10px!important}
  .tgbgc-ep2-source-frame{left:-660px!important;width:1220px!important}
}
@media(max-width:760px){
  .tgbgc-ep2-source-modal{top:72px!important;right:8px!important;bottom:8px!important;left:8px!important;width:auto!important}
  .tgbgc-ep2-source-dialog{border-radius:12px!important}
  .tgbgc-ep2-source-frame{position:absolute!important;top:0!important;left:0!important;width:100%!important;height:100%!important}
  .tgbgc-ep2-source-help{font-size:.76rem!important}
}


/* v6.9.89 — EP II source dock refinement: start at the matching passage and crop to the English column only. */
@media(min-width:761px){
  .tgbgc-ep2-source-modal{width:min(560px,38vw)!important;}
  .tgbgc-ep2-source-framewrap{background:#fffaf0!important;}
  /* Scetis renders two text columns inside a centered page. A fixed wide viewport keeps that desktop geometry stable; shifting it left exposes the English column while clipping both green gutters. */
  .tgbgc-ep2-source-frame{top:0!important;left:-880px!important;width:1640px!important;height:100%!important;}
}
@media(min-width:761px) and (max-width:1180px){
  .tgbgc-ep2-source-modal{width:min(540px,46vw)!important;right:8px!important;}
  .tgbgc-ep2-source-frame{left:-890px!important;width:1640px!important;}
}


/* v6.9.90 — Scetis-delivered sectional crop: live source, exact comparison slice. */
@media(min-width:761px){
  .tgbgc-ep2-source-modal{width:min(500px,34vw)!important;right:12px!important;}
  .tgbgc-ep2-source-help{padding:7px 12px!important;font-size:.75rem!important;line-height:1.3!important;}
  .tgbgc-ep2-source-framewrap{
    --tgbgc-ep2-source-y:1120px;
    position:relative!important;
    overflow:hidden!important;
    background:#fffaf0!important;
  }
  /* 1600px matches the desktop geometry of the Scetis page. The 500px dock is placed
     over its English column. A very tall iframe makes the whole external page render in
     one viewport; shifting the iframe up reveals only the requested Scetis section. */
  .tgbgc-ep2-source-frame{
    position:absolute!important;
    top:calc(-1 * var(--tgbgc-ep2-source-y))!important;
    left:-895px!important;
    width:1600px!important;
    height:4200px!important;
    max-width:none!important;
    border:0!important;
    transform:none!important;
    background:#fffaf0!important;
  }
  .tgbgc-ep2-source-fallback{padding:7px 12px 9px!important;font-size:.76rem!important;}
}
@media(min-width:761px) and (max-width:1180px){
  .tgbgc-ep2-source-modal{width:min(480px,42vw)!important;right:8px!important;}
  .tgbgc-ep2-source-frame{left:-900px!important;width:1600px!important;}
}


/* v6.9.91 — EP II live Scetis crop correction: align section 8 after the Sanctus and eliminate right green gutter. */
@media(min-width:761px){
  .tgbgc-ep2-source-modal{width:min(470px,32vw)!important;right:12px!important;}
  .tgbgc-ep2-source-frame{left:-775px!important;width:1600px!important;}
  .tgbgc-ep2-source-help{padding:6px 11px!important;font-size:.73rem!important;line-height:1.28!important;}
}
@media(min-width:761px) and (max-width:1180px){
  .tgbgc-ep2-source-modal{width:min(450px,40vw)!important;right:8px!important;}
  .tgbgc-ep2-source-frame{left:-785px!important;width:1600px!important;}
}


/* v6.9.92 — Section 8 only: synchronized three-way Eucharistic Prayer rows.
   Each horizontal row grows to the tallest comment/card, so the next liturgical
   section begins at the same vertical position in all three columns. */
.tgbgc-mass-words-page .tgbgc-ep-sync-table{width:100%;background:#fff;border-top:1px solid #eadbc3}
.tgbgc-mass-words-page .tgbgc-ep-sync-head,
.tgbgc-mass-words-page .tgbgc-ep-sync-row,
.tgbgc-mass-words-page .tgbgc-ep-sync-footer{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(250px,.9fr);align-items:stretch}
.tgbgc-mass-words-page .tgbgc-ep-sync-head{border-bottom:1px solid #eadbc3}
.tgbgc-mass-words-page .tgbgc-ep-sync-head .tgbgc-mass-col{padding:22px 24px 14px}
.tgbgc-mass-words-page .tgbgc-ep-sync-row{border-bottom:1px solid #eadbc3}
.tgbgc-mass-words-page .tgbgc-ep-sync-cell{padding:14px 16px!important;min-width:0}
.tgbgc-mass-words-page .tgbgc-ep-sync-cell .tgbgc-prayer-block{height:100%;box-sizing:border-box;margin:0!important}
.tgbgc-mass-words-page .tgbgc-ep-sync-footer .tgbgc-mass-col{padding:10px 16px 18px}
.tgbgc-mass-words-page .tgbgc-ep2-cell{background:#fff!important}
.tgbgc-mass-words-page .tgbgc-ep2-cell .tgbgc-prayer-block{background:#f8fafb!important}
.tgbgc-mass-words-page .tgbgc-ep2-placeholder{border-style:dashed;background:#fbfaf6!important}
.tgbgc-mass-words-page .tgbgc-ep2-counterpart{color:#3f3a32!important;line-height:1.55!important}
.tgbgc-mass-words-page .tgbgc-ep2-reference-card{background:#fbf7ef!important}

/* Gold signal requested for Roman-Canon material with no direct EP II verbal counterpart. */
.tgbgc-mass-words-page .tgbgc-ep2-absent{border-left:5px solid #c99a52!important}
.tgbgc-mass-words-page .tgbgc-ep2-absent p:not(.tgbgc-prayer-note){font-weight:800!important;color:#17345f!important;text-decoration:underline!important;text-decoration-color:#c7973d!important;text-decoration-thickness:2px!important;text-underline-offset:3px!important}

@media(max-width:850px){
  .tgbgc-mass-words-page .tgbgc-ep-sync-head{display:none}
  .tgbgc-mass-words-page .tgbgc-ep-sync-row,
  .tgbgc-mass-words-page .tgbgc-ep-sync-footer{grid-template-columns:1fr}
  .tgbgc-mass-words-page .tgbgc-ep-sync-cell{border-left:0!important;border-top:1px solid #eadbc3!important;padding-top:34px!important;position:relative}
  .tgbgc-mass-words-page .tgbgc-ep-sync-cell:before{content:attr(data-column);position:absolute;top:9px;left:16px;right:16px;color:#102f66;font:700 .78rem/1.25 system-ui,-apple-system,"Segoe UI",sans-serif}
}


/* Wix10 v6.10.58 — consistent 450px desktop/tablet heroes. Blessed Virgin Mary is explicitly excluded. */
@media (min-width:761px){
  .tgbgc-homehero,
  .tgbgc-page:not(.tgbgc-mary) > .tgbgc-page-hero,
  .tgbgc-bloghero{
    height:450px!important;
    min-height:450px!important;
    max-height:450px!important;
    box-sizing:border-box!important;
  }
}


/* Wix10 v6.10.59 — Rosary hero refinement. */
.tgbgc-rosary .tgbgc-page-hero.tgbgc-rosary-hero{height:450px;min-height:450px;max-height:450px;box-sizing:border-box;background-image:url('rosary/rosary-hero-linen.jpg');background-size:cover;background-position:center;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:12px;padding:34px clamp(44px,8vw,140px) 20px;overflow:hidden}
.tgbgc-rosary .tgbgc-page-hero.tgbgc-rosary-hero:after{background:linear-gradient(90deg,rgba(255,250,241,.82) 0%,rgba(255,250,241,.50) 40%,rgba(255,250,241,.10) 72%,rgba(255,250,241,0) 100%)}
.tgbgc-rosary .tgbgc-page-hero.tgbgc-rosary-hero h1{position:relative;z-index:2;color:var(--navy)!important;text-align:left!important;text-shadow:0 1px 1px rgba(255,255,255,.92)!important;margin:0!important;align-self:flex-start}
.tgbgc-rosary .tgbgc-rosary-hero-nav{position:relative;z-index:2;display:flex;flex-wrap:wrap;gap:10px;align-self:flex-start}
.tgbgc-rosary .tgbgc-rosary-hero-nav a{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:9px 20px;border:1px solid var(--gold);border-radius:999px;background:var(--navy);color:#fff!important;text-decoration:none;font-weight:700;box-shadow:0 5px 14px rgba(8,36,93,.13)}
.tgbgc-rosary .tgbgc-rosary-hero-nav a:hover{background:#0d326f}
.tgbgc-rosary .tgbgc-rosary-hero-note{position:relative;z-index:2;width:min(1180px,100%);align-self:center;margin-top:auto;background:rgba(255,250,241,.91);border:1px solid rgba(201,154,82,.82);border-radius:15px;padding:11px 17px;box-shadow:0 7px 20px rgba(74,48,25,.09)}
.tgbgc-rosary .tgbgc-rosary-hero-note .tgbgc-traditional-mysteries-note{margin:0!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important}
.tgbgc-rosary .tgbgc-rosary-hero-note h3{margin:0 0 4px!important;color:var(--navy)!important;font-family:Georgia,'Times New Roman',serif!important;font-size:1.14rem!important;line-height:1.15!important}
.tgbgc-rosary .tgbgc-rosary-hero-note p{margin:0!important;max-width:none!important;color:#49392a!important;font-size:.89rem!important;line-height:1.34!important;text-shadow:none!important}
.tgbgc-rosary .tgbgc-rosaryintro{margin-top:22px}
@media(max-width:760px){
 .tgbgc-rosary .tgbgc-page-hero.tgbgc-rosary-hero{height:330px;min-height:330px;max-height:330px;padding:22px 16px 14px;background-position:66% center;gap:8px}
 .tgbgc-rosary .tgbgc-rosary-hero-nav{gap:7px}
 .tgbgc-rosary .tgbgc-rosary-hero-nav a{padding:8px 13px;min-height:38px;font-size:.88rem}
 .tgbgc-rosary .tgbgc-rosary-hero-note{padding:8px 10px;border-radius:12px}
 .tgbgc-rosary .tgbgc-rosary-hero-note h3{font-size:.94rem!important}
 .tgbgc-rosary .tgbgc-rosary-hero-note p{font-size:.70rem!important;line-height:1.22!important}
}
