/* Generated from site.css by build/scope_css.py — scoped for Elementor. Edit the source, then regenerate. */
:root{--navy-900: #0f1b30;
  --navy-800: #16253f;
  --navy-700: #1f3354;
  --navy-600: #2b4468;
  --navy-500: #364f75;
  --navy-100: #e6ecf5;
  --tint: #f6f8fd;
  --cream: #fbf7ef;
  --cream-2: #f4ecdc;
  --gold: #d4a64a;
  --gold-600: #b88a2e;
  --gold-100: #f7ecd2;
  --crimson: #d7263d;
  --crimson-700: #b51d31;
  --ink: #1e2533;
  --body: #3d4554;
  --muted: #6b7385;
  --line: #e3e7ef;
  --white: #ffffff;

  --font-display: "Playfair Display", Georgia, "Times New Roman", serif;
  --font-ui: "Montserrat", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  --font-read: "Lora", Georgia, "Times New Roman", serif;

  --radius: 18px;
  --radius-sm: 10px;
  --shadow-sm: 0 2px 8px rgba(15, 27, 48, .06);
  --shadow: 0 10px 30px rgba(15, 27, 48, .10);
  --shadow-lg: 0 24px 60px rgba(15, 27, 48, .18);
  --wrap: 1200px;
  --wrap-narrow: 820px;
  --header-h: 84px;}
*,*::before,*::after{box-sizing: border-box;}
html{scroll-behavior: smooth; -webkit-text-size-adjust: 100%;}
body{margin: 0;
  font-family: var(--font-ui);
  font-size: 16px;
  line-height: 1.65;
  color: var(--body);
  background: var(--white);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;}
.elementor img{max-width: 100%; height: auto;}
.elementor svg{width: 1.15em; height: 1.15em; flex: none; vertical-align: -0.18em;}
.elementor a{color: var(--navy-500); text-decoration-thickness: 1px; text-underline-offset: 3px;}
.elementor a:hover{color: var(--crimson);}
.elementor :focus-visible{outline: 3px solid var(--gold); outline-offset: 3px; border-radius: 4px;}
.elementor h1,.elementor h2,.elementor h3,.elementor h4,.elementor h5{font-family: var(--font-display); color: var(--ink); line-height: 1.2; margin: 0 0 .5em;}
.elementor p{margin: 0 0 1.1em;}
.elementor .sr-only{position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0;}
.elementor .skip-link{position: absolute; left: 16px; top: -60px; z-index: 1000; background: var(--gold); color: var(--navy-900); padding: 10px 16px; border-radius: 8px; font-weight: 700;}
.elementor .skip-link:focus{top: 12px;}
.elementor .wrap{width: 100%; max-width: var(--wrap); margin: 0 auto; padding: 0 24px;}
.elementor .wrap--narrow{max-width: var(--wrap-narrow);}
.elementor .btn{display: inline-flex; align-items: center; justify-content: center; gap: .55em;
  font-family: var(--font-ui); font-weight: 600; font-size: 15px; line-height: 1;
  padding: 15px 28px; border-radius: 999px; border: 2px solid transparent;
  text-decoration: none; cursor: pointer; transition: transform .18s ease, background .18s ease, color .18s ease, box-shadow .18s ease, border-color .18s ease;
  white-space: nowrap;}
.elementor .btn svg{width: 18px; height: 18px; flex: none;}
.elementor .btn:hover{transform: translateY(-2px);}
.elementor .btn--primary{background: var(--crimson); color: #fff; box-shadow: 0 8px 22px rgba(215, 38, 61, .28);}
.elementor .btn--primary:hover{background: var(--crimson-700); color: #fff;}
.elementor .btn--gold{background: var(--gold); color: var(--navy-900); box-shadow: 0 8px 22px rgba(212, 166, 74, .3);}
.elementor .btn--gold:hover{background: #e2b65c; color: var(--navy-900);}
.elementor .btn--outline{border-color: rgba(255,255,255,.75); color: #fff; background: transparent;}
.elementor .btn--outline:hover{background: #fff; color: var(--navy-800);}
.elementor .btn--ghost{border-color: var(--navy-500); color: var(--navy-500); background: transparent;}
.elementor .btn--ghost:hover{background: var(--navy-500); color: #fff;}
.elementor .btn--sm{padding: 10px 18px; font-size: 13.5px;}
.elementor .btn--block{width: 100%;}
.elementor .topbar{background: var(--navy-900); color: rgba(255,255,255,.78); font-size: 13px;}
.elementor .topbar .wrap{display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 42px;}
.elementor .topbar__verse{font-family: var(--font-read); font-style: italic; letter-spacing: .01em; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}
.elementor .topbar__links{display: flex; gap: 22px; flex: none;}
.elementor .topbar a{color: rgba(255,255,255,.88); text-decoration: none; font-weight: 500;}
.elementor .topbar a:hover{color: var(--gold);}
.elementor .site-header{position: sticky; top: 0; z-index: 100; background: rgba(255,255,255,.96); backdrop-filter: saturate(160%) blur(10px); border-bottom: 1px solid var(--line); transition: box-shadow .2s;}
.elementor .site-header.is-scrolled{box-shadow: var(--shadow-sm);}
.elementor .site-header .wrap{display: flex; align-items: center; gap: 28px; min-height: var(--header-h);}
.elementor .brand{display: flex; align-items: center; gap: 12px; text-decoration: none; flex: none;}
.elementor .brand img{width: 52px; height: 52px; border-radius: 50%; box-shadow: 0 4px 14px rgba(15,27,48,.18);}
.elementor .brand__name{font-family: var(--font-display); font-weight: 700; font-size: 21px; color: var(--navy-800); line-height: 1.05;}
.elementor .brand__name small{display: block; font-family: var(--font-ui); font-size: 10.5px; letter-spacing: .22em; text-transform: uppercase; color: var(--gold-600); font-weight: 600; margin-top: 4px;}
.elementor .nav{margin-left: auto;}
.elementor .nav__list{list-style: none; display: flex; align-items: center; gap: 4px; margin: 0; padding: 0;}
.elementor .nav__item{position: relative;}
.elementor .nav__link{display: inline-flex; align-items: center; gap: 6px; padding: 10px 14px; border-radius: 999px;
  font-size: 14.5px; font-weight: 600; color: var(--ink); text-decoration: none; background: none; border: 0; cursor: pointer; font-family: var(--font-ui);
  white-space: nowrap;}
.elementor .nav__link:hover,.elementor .nav__item:focus-within > .nav__link,.elementor .nav__item:focus-within > .elementor-element > .nav__link,.elementor .nav__item:focus-within > .elementor-element > .elementor-widget-container > .nav__link{color: var(--crimson); background: var(--tint);}
.elementor .nav__link.is-active{color: var(--crimson);}
.elementor .nav__link svg{width: 12px; height: 12px; transition: transform .2s;}
.elementor .nav__item:hover > .nav__link svg,.elementor .nav__item:hover > .elementor-element > .nav__link svg,.elementor .nav__item:hover > .elementor-element > .elementor-widget-container > .nav__link svg,.elementor .nav__item:focus-within > .nav__link svg,.elementor .nav__item:focus-within > .elementor-element > .nav__link svg,.elementor .nav__item:focus-within > .elementor-element > .elementor-widget-container > .nav__link svg{transform: rotate(180deg);}
.elementor .dropdown{position: absolute; top: calc(100% + 10px); left: 50%; transform: translate(-50%, 8px); min-width: 300px;
  background: #fff; border: 1px solid var(--line); border-radius: 16px; box-shadow: var(--shadow-lg); padding: 10px;
  opacity: 0; visibility: hidden; transition: opacity .18s, transform .18s, visibility .18s; list-style: none; margin: 0;}
.elementor .dropdown::before{content: ""; position: absolute; left: 0; right: 0; top: -14px; height: 14px;}
.elementor .nav__item:hover > .dropdown,.elementor .nav__item:hover > .elementor-element > .dropdown,.elementor .nav__item:hover > .elementor-element > .elementor-widget-container > .dropdown,.elementor .nav__item:focus-within > .dropdown,.elementor .nav__item:focus-within > .elementor-element > .dropdown,.elementor .nav__item:focus-within > .elementor-element > .elementor-widget-container > .dropdown{opacity: 1; visibility: visible; transform: translate(-50%, 0);}
.elementor .dropdown a{display: block; padding: 10px 14px; border-radius: 10px; font-size: 14px; font-weight: 500; color: var(--ink); text-decoration: none; line-height: 1.35;}
.elementor .dropdown a:hover{background: var(--tint); color: var(--crimson);}
.elementor .dropdown .dropdown__all{border-top: 1px solid var(--line); margin-top: 6px; padding-top: 12px; color: var(--navy-500); font-weight: 600;}
.elementor .header-actions{display: flex; align-items: center; gap: 10px; flex: none;}
.elementor .icon-btn{width: 44px; height: 44px; border-radius: 50%; border: 1px solid var(--line); background: #fff; display: inline-grid; place-items: center; color: var(--ink); cursor: pointer; text-decoration: none;}
.elementor .icon-btn:hover{border-color: var(--navy-500); color: var(--crimson);}
.elementor .icon-btn svg{width: 19px; height: 19px;}
.elementor .burger{display: none;}
.elementor .drawer{position: fixed; inset: 0; z-index: 200; visibility: hidden;}
.elementor .drawer.is-open{visibility: visible;}
.elementor .drawer__scrim{position: absolute; inset: 0; background: rgba(15,27,48,.55); opacity: 0; transition: opacity .25s;}
.elementor .drawer.is-open .drawer__scrim{opacity: 1;}
.elementor .drawer__panel{position: absolute; top: 0; right: 0; bottom: 0; width: min(380px, 88vw); background: #fff; transform: translateX(100%); transition: transform .28s ease; display: flex; flex-direction: column; overflow-y: auto;}
.elementor .drawer.is-open .drawer__panel{transform: none;}
.elementor .drawer__head{display: flex; align-items: center; justify-content: space-between; padding: 18px 20px; border-bottom: 1px solid var(--line);}
.elementor .drawer nav{padding: 10px 12px 24px;}
.elementor .drawer details{border-bottom: 1px solid var(--line);}
.elementor .drawer summary,.elementor .drawer .m-link{display: flex; justify-content: space-between; align-items: center; padding: 14px 10px; font-weight: 600; color: var(--ink); text-decoration: none; cursor: pointer; list-style: none; font-size: 15.5px;}
.elementor .drawer summary::-webkit-details-marker{display: none;}
.elementor .drawer summary svg{width: 14px; height: 14px; transition: transform .2s;}
.elementor .drawer details[open] summary svg{transform: rotate(180deg);}
.elementor .drawer details a{display: block; padding: 10px 10px 10px 22px; color: var(--body); text-decoration: none; font-size: 14.5px;}
.elementor .drawer .m-link{border-bottom: 1px solid var(--line);}
.elementor .drawer__cta{padding: 0 22px 28px; margin-top: auto;}
.elementor .search-overlay{position: fixed; inset: 0; z-index: 300; background: rgba(15,27,48,.72); backdrop-filter: blur(6px); display: none; align-items: flex-start; justify-content: center; padding: 12vh 16px 16px;}
.elementor .search-overlay.is-open{display: flex;}
.elementor .search-overlay form{width: 100%; max-width: 720px; display: flex; gap: 10px; background: #fff; padding: 10px; border-radius: 999px; box-shadow: var(--shadow-lg);}
.elementor .search-overlay input{flex: 1; border: 0; font: inherit; font-size: 18px; padding: 10px 18px; outline: none; min-width: 0; border-radius: 999px;}
.elementor .search-overlay__close{position: absolute; top: 20px; right: 20px;}
.elementor .hero{position: relative; overflow: hidden; color: #fff;
  background:
    radial-gradient(ellipse 60% 70% at 72% 18%, rgba(255, 214, 140, .55) 0%, rgba(212, 166, 74, .18) 38%, rgba(15,27,48,0) 70%),
    radial-gradient(ellipse 40% 40% at 15% 90%, rgba(54,79,117,.6), rgba(15,27,48,0) 70%),
    linear-gradient(160deg, #0b1526 0%, #16253f 45%, #1f3354 100%);}
.elementor .hero::before{content: ""; position: absolute; inset: -20% -10% auto auto; width: 900px; height: 900px; pointer-events: none;
  background: repeating-conic-gradient(from 200deg at 70% 20%, rgba(255,231,180,.10) 0deg 4deg, rgba(255,231,180,0) 4deg 14deg);
  mask-image: radial-gradient(circle at 70% 20%, #000 0%, transparent 60%);
  -webkit-mask-image: radial-gradient(circle at 70% 20%, #000 0%, transparent 60%);}
.elementor .hero .wrap{position: relative; display: grid; grid-template-columns: 1.15fr .85fr; gap: 56px; align-items: center; padding-top: 96px; padding-bottom: 150px;}
.elementor .hero__eyebrow{display: inline-flex; align-items: center; gap: 10px; font-size: 12.5px; letter-spacing: .26em; text-transform: uppercase; font-weight: 700; color: var(--gold); margin-bottom: 22px;}
.elementor .hero__eyebrow::before{content: ""; width: 34px; height: 2px; background: var(--gold);}
.elementor .hero h1{color: #fff; font-size: clamp(38px, 5.4vw, 66px); font-weight: 800; line-height: 1.06; letter-spacing: -.01em; margin-bottom: 20px;}
.elementor .hero h1 em{font-style: italic; color: #f5d48d; font-weight: 700;}
.elementor .hero__lead{font-size: clamp(17px, 1.6vw, 20px); color: rgba(255,255,255,.86); max-width: 600px; margin-bottom: 14px;}
.elementor .hero__verse{font-family: var(--font-read); font-style: italic; color: rgba(255,255,255,.72); font-size: 16.5px; max-width: 560px; border-left: 2px solid var(--gold); padding-left: 16px; margin: 26px 0 34px;}
.elementor .hero__actions{display: flex; flex-wrap: wrap; gap: 14px;}
.elementor .hero__art{position: relative; justify-self: center;}
.elementor .hero__art::before{content: ""; position: absolute; inset: 8%; border-radius: 50%; background: radial-gradient(circle, rgba(255,214,140,.55), rgba(255,214,140,0) 68%); filter: blur(20px);}
.elementor .hero__art img{position: relative; display: block; width: min(420px, 100%); border-radius: 30px; box-shadow: 0 0 0 1px rgba(255,255,255,.08), 0 0 0 8px rgba(212,166,74,.28), 0 34px 70px rgba(0,0,0,.5); transform: rotate(1.5deg); transition: transform .4s ease;}
.elementor .hero__art:hover img{transform: rotate(0deg) scale(1.01);}
.elementor .quick{position: relative; margin-top: -92px; z-index: 2;}
.elementor .quick__grid{display: grid; grid-template-columns: repeat(5, 1fr); gap: 16px;}
.elementor .quick__card{background: var(--navy-500); color: #fff; border-radius: var(--radius); padding: 24px 20px 22px; text-decoration: none;
  box-shadow: var(--shadow-lg); display: flex; flex-direction: column; gap: 14px; transition: transform .2s, background .2s; min-height: 170px;}
.elementor .quick__card:nth-child(even){background: var(--navy-700);}
.elementor .quick__card:hover{transform: translateY(-6px); background: var(--crimson); color: #fff;}
.elementor .quick__icon{width: 50px; height: 50px; border-radius: 50%; border: 2px solid rgba(255,255,255,.55); display: grid; place-items: center;}
.elementor .quick__icon svg{width: 22px; height: 22px;}
.elementor .quick__card h3{color: #fff; font-size: 21px; margin: 0;}
.elementor .quick__meta{font-size: 13px; color: rgba(255,255,255,.75); margin-top: auto; display: flex; align-items: center; justify-content: space-between;}
.elementor .quick__meta svg{width: 18px; height: 18px;}
.elementor .section{padding: 96px 0; position: relative;}
.elementor .section--tint{background: var(--tint);}
.elementor .section--cream{background: var(--cream);}
.elementor .section--navy{background: linear-gradient(160deg, var(--navy-800), var(--navy-600)); color: rgba(255,255,255,.88);}
.elementor .section--navy h2,.elementor .section--navy h3{color: #fff;}
.elementor .section--tight{padding: 64px 0;}
.elementor .eyebrow{display: inline-block; font-family: var(--font-ui); font-size: 12.5px; font-weight: 700; letter-spacing: .24em; text-transform: uppercase; color: var(--crimson); margin-bottom: 14px;}
.elementor .section--navy .eyebrow{color: var(--gold);}
.elementor .section-head{text-align: center; max-width: 760px; margin: 0 auto 52px;}
.elementor .section-head h2{font-size: clamp(30px, 3.6vw, 46px); font-weight: 700; color: var(--navy-500);}
.elementor .section--navy .section-head h2{color: #fff;}
.elementor .section-head p{color: var(--muted); font-size: 17px;}
.elementor .section-head--left{text-align: left; margin-left: 0;}
.elementor .ornament{display: flex; align-items: center; justify-content: center; gap: 12px; color: var(--gold); margin: 6px 0 0;}
.elementor .ornament::before,.elementor .ornament::after{content: ""; width: 48px; height: 1px; background: currentColor; opacity: .6;}
.elementor .ornament svg{width: 16px; height: 16px;}
.elementor .split{display: grid; grid-template-columns: 1fr 1fr; gap: 64px; align-items: center;}
.elementor .split--wide-text{grid-template-columns: 1.25fr .75fr;}
.elementor .split--reverse > :first-child,.elementor .split--reverse > .elementor-element:first-child > *:first-child,.elementor .split--reverse > .elementor-element:first-child > .elementor-widget-container > *:first-child{order: 2;}
.elementor .media-frame{position: relative; border-radius: 24px; overflow: hidden; box-shadow: var(--shadow-lg);}
.elementor .media-frame img{display: block; width: 100%; height: auto;}
.elementor .media-frame--offset{overflow: visible; box-shadow: none;}
.elementor .media-frame--offset::before{content: ""; position: absolute; inset: 22px -22px -22px 22px; border-radius: 24px; border: 2px solid var(--gold); z-index: 0;}
.elementor .media-frame--offset img{position: relative; z-index: 1; border-radius: 24px; box-shadow: var(--shadow-lg);}
.elementor .prose{font-family: var(--font-read); font-size: 18.5px; line-height: 1.85; color: #2b3240;}
.elementor .prose > *:first-child,.elementor .prose > .elementor-element:first-child > *:first-child,.elementor .prose > .elementor-element:first-child > .elementor-widget-container > *:first-child{margin-top: 0;}
.elementor .prose p{margin: 0 0 1.25em;}
.elementor .prose a{color: var(--crimson-700);}
.elementor .prose a.btn--primary,.elementor .prose a.btn--outline{color: #fff;}
.elementor .prose a.btn--gold{color: var(--navy-900);}
.elementor .prose a.btn--ghost{color: var(--navy-500);}
.elementor .prose a.btn--ghost:hover{color: #fff;}
.elementor .prose a.btn--outline:hover{color: var(--navy-800);}
.elementor .prose [style*="justify"]{text-align: left !important;}
.elementor .prose strong{color: var(--ink);}
.elementor .prose h1,.elementor .prose h2,.elementor .prose h3{margin: 1.6em 0 .6em; color: var(--navy-500);}
.elementor .prose h2{font-size: 1.6em;}
.elementor .prose h3{font-size: 1.32em;}
.elementor .prose ul,.elementor .prose ol{padding-left: 1.4em; margin: 0 0 1.3em;}
.elementor .prose li{margin-bottom: .45em;}
.elementor .prose img{height: auto !important; max-width: 100%; border-radius: 12px;}
.elementor .prose img.right,.elementor .prose img[style*="float:right"],.elementor .prose img[style*="float: right"]{float: right; margin: 6px 0 18px 28px !important; max-width: 46%;}
.elementor .prose img.left,.elementor .prose img[style*="float:left"],.elementor .prose img[style*="float: left"]{float: left; margin: 6px 28px 18px 0 !important; max-width: 46%;}
.elementor .prose::after{content: ""; display: block; clear: both;}
.elementor .prose table{width: 100%; border-collapse: collapse; margin: 0 0 1.4em; font-size: .9em; display: block; overflow-x: auto;}
.elementor .prose td,.elementor .prose th{border: 1px solid var(--line); padding: 8px 12px;}
.elementor .prose hr{border: 0; height: 1px; background: var(--line); margin: 2.4em 0;}
.elementor .prose iframe{max-width: 100%;}
.elementor .prose h4{font-family: var(--font-read); font-weight: 500; font-size: 1.08em; line-height: 1.7; color: var(--navy-700);
  background: linear-gradient(135deg, var(--cream) 0%, #fff 100%); border-left: 4px solid var(--gold);
  border-radius: 0 14px 14px 0; padding: 22px 26px 22px 30px; margin: 1.6em 0; position: relative; text-align: left !important;}
.elementor .prose h4 small{font-size: 1em;}
.elementor .prose h4 em,.elementor .prose h4 small em{font-style: italic;}
.elementor .prose blockquote{margin: 1.8em 0; padding: 26px 30px 26px 64px; background: var(--tint); border-radius: 16px; position: relative; color: var(--ink);
  font-style: italic;}
.elementor .prose blockquote::before{content: "\201C"; position: absolute; left: 18px; top: 2px; font-family: var(--font-display); font-size: 72px; color: var(--crimson); line-height: 1; opacity: .85;}
.elementor .prose blockquote p:last-child{margin-bottom: 0;}
.elementor .prose big{font-size: 1.12em;}
.elementor .prose--center-quotes h4{text-align: center !important; border-left: 0; border-radius: 16px; border-top: 3px solid var(--gold);}
.elementor .on-navy .prose,.elementor .prose.on-navy{color: rgba(255,255,255,.88);}
.elementor .on-navy .prose strong{color: #fff;}
.elementor .on-navy .prose h4{background: rgba(255,255,255,.06); color: #fdf3dc;}
.elementor .verse-banner{text-align: center; max-width: 900px; margin: 0 auto;}
.elementor .verse-banner .ornament{margin-bottom: 26px;}
.elementor .verse-banner blockquote{margin: 0; font-family: var(--font-display); font-style: italic; font-size: clamp(26px, 3.4vw, 42px); line-height: 1.32; color: #fff;}
.elementor .verse-banner cite{display: block; margin-top: 22px; font-style: normal; font-family: var(--font-ui); font-weight: 700; letter-spacing: .2em; text-transform: uppercase; font-size: 13px; color: var(--gold);}
.elementor .highlight{background: var(--navy-500); color: #fff; border-radius: 22px; padding: 38px 42px; margin: 2em 0; box-shadow: var(--shadow);
  font-family: var(--font-display); font-size: 1.12em; line-height: 1.6; position: relative; overflow: hidden;}
.elementor .highlight::after{content: ""; position: absolute; right: -60px; top: -60px; width: 220px; height: 220px; border-radius: 50%; background: radial-gradient(circle, rgba(212,166,74,.45), transparent 70%);}
.elementor .highlight strong,.elementor .highlight big{color: #fff; font-weight: 600; position: relative; z-index: 1;}
.elementor .page-hero{position: relative; color: #fff; overflow: hidden;
  background:
    radial-gradient(ellipse 55% 90% at 85% 0%, rgba(255, 214, 140, .38), rgba(15,27,48,0) 65%),
    linear-gradient(160deg, #0d182b 0%, #1a2b48 55%, #2b4468 100%);}
.elementor .page-hero::after{content: ""; position: absolute; left: 0; right: 0; bottom: -1px; height: 48px; background: var(--white); clip-path: ellipse(75% 100% at 50% 100%);}
.elementor .page-hero--tint::after{background: var(--tint);}
.elementor .page-hero .wrap{position: relative; padding-top: 64px; padding-bottom: 104px;}
.elementor .page-hero h1{color: #fff; font-size: clamp(30px, 4.2vw, 52px); font-weight: 700; max-width: 980px; margin-bottom: 14px;}
.elementor .page-hero__ref{display: inline-block; font-family: var(--font-ui); font-size: 14px; font-weight: 700; letter-spacing: .06em; color: var(--navy-900); background: var(--gold); border-radius: 999px; padding: 7px 16px; margin-bottom: 18px;}
.elementor .page-hero__lead{color: rgba(255,255,255,.82); font-size: 18px; max-width: 760px;}
.elementor .page-hero__meta{display: flex; flex-wrap: wrap; gap: 10px 22px; color: rgba(255,255,255,.8); font-size: 14.5px; margin-top: 18px; align-items: center;}
.elementor .page-hero__meta a{color: #fff; text-decoration: none; border-bottom: 1px solid rgba(255,255,255,.35);}
.elementor .page-hero__meta a:hover{color: var(--gold); border-color: var(--gold);}
.elementor .page-hero__meta span{display: inline-flex; align-items: center; gap: 7px;}
.elementor .page-hero__meta svg{width: 16px; height: 16px; opacity: .8;}
.elementor .crumbs{display: flex; flex-wrap: wrap; gap: 8px; align-items: center; font-size: 13px; font-weight: 600; letter-spacing: .04em; margin-bottom: 22px; color: rgba(255,255,255,.65);}
.elementor .crumbs a{color: var(--gold); text-decoration: none;}
.elementor .crumbs a:hover{color: #fff;}
.elementor .crumbs svg{width: 12px; height: 12px; opacity: .6;}
.elementor .layout{display: grid; grid-template-columns: minmax(0, 1fr) 340px; gap: 56px; align-items: start;}
.elementor .layout--single{grid-template-columns: minmax(0, 1fr); max-width: 880px; margin: 0 auto;}
.elementor .sidebar{position: sticky; top: calc(var(--header-h) + 24px); display: grid; gap: 24px;}
.elementor .widget{background: #fff; border: 1px solid var(--line); border-radius: var(--radius); padding: 24px; box-shadow: var(--shadow-sm);}
.elementor .widget h3{font-size: 20px; color: var(--navy-500); margin-bottom: 14px; display: flex; align-items: center; gap: 10px;}
.elementor .widget h3::before{content: ""; width: 4px; height: 20px; background: var(--crimson); border-radius: 2px;}
.elementor .widget--navy{background: var(--navy-500); border: 0; color: rgba(255,255,255,.85);}
.elementor .widget--navy h3{color: #fff;}
.elementor .widget--navy h3::before{background: var(--gold);}
.elementor .mini-list{list-style: none; margin: 0; padding: 0;}
.elementor .mini-list li + li{border-top: 1px solid var(--line);}
.elementor .mini-list a{display: block; padding: 12px 0; text-decoration: none; color: var(--ink); font-weight: 600; font-size: 14.5px; line-height: 1.45;}
.elementor .mini-list a:hover{color: var(--crimson);}
.elementor .mini-list small{display: block; font-weight: 500; color: var(--muted); font-size: 12.5px; margin-top: 4px;}
.elementor .mini-list--num{counter-reset: n;}
.elementor .mini-list--num li{counter-increment: n; display: grid; grid-template-columns: 30px 1fr; align-items: start;}
.elementor .mini-list--num li::before{content: counter(n, decimal-leading-zero); font-family: var(--font-display); font-weight: 700; color: var(--gold-600); padding-top: 12px; font-size: 15px;}
.elementor .search-mini{display: flex; gap: 8px;}
.elementor .search-mini input{flex: 1; min-width: 0; border: 1px solid var(--line); border-radius: 999px; padding: 11px 16px; font: inherit; font-size: 14px;}
.elementor .search-mini input:focus{outline: none; border-color: var(--navy-500); box-shadow: 0 0 0 3px var(--navy-100);}
.elementor .tools{display: flex; flex-wrap: wrap; gap: 10px; align-items: center; justify-content: space-between; padding-bottom: 22px; margin-bottom: 34px; border-bottom: 1px solid var(--line);}
.elementor .tools__share{display: flex; gap: 8px; align-items: center; font-size: 13px; color: var(--muted); font-weight: 600;}
.elementor .share-btn{width: 38px; height: 38px; border-radius: 50%; display: inline-grid; place-items: center; border: 1px solid var(--line); color: var(--navy-500); background: #fff; cursor: pointer; text-decoration: none;}
.elementor .share-btn:hover{background: var(--navy-500); color: #fff; border-color: var(--navy-500);}
.elementor .share-btn svg{width: 16px; height: 16px;}
.elementor .pager{display: grid; grid-template-columns: 1fr 1fr; gap: 18px; margin-top: 56px;}
.elementor .pager a{display: block; padding: 22px 24px; border: 1px solid var(--line); border-radius: var(--radius); text-decoration: none; color: var(--ink); background: #fff; transition: border-color .2s, box-shadow .2s, transform .2s;}
.elementor .pager a:hover{border-color: var(--navy-500); box-shadow: var(--shadow); transform: translateY(-3px);}
.elementor .pager small{display: block; font-size: 12px; letter-spacing: .18em; text-transform: uppercase; color: var(--crimson); font-weight: 700; margin-bottom: 6px;}
.elementor .pager span{font-family: var(--font-display); font-weight: 700; font-size: 17px; line-height: 1.35;}
.elementor .pager .next{text-align: right;}
.elementor .grid{display: grid; gap: 24px;}
.elementor .grid--2{grid-template-columns: repeat(2, 1fr);}
.elementor .grid--3{grid-template-columns: repeat(3, 1fr);}
.elementor .grid--4{grid-template-columns: repeat(4, 1fr);}
.elementor .card{background: #fff; border: 1px solid var(--line); border-radius: var(--radius); padding: 28px; box-shadow: var(--shadow-sm); transition: transform .2s, box-shadow .2s, border-color .2s;}
.elementor .card:hover{transform: translateY(-4px); box-shadow: var(--shadow); border-color: transparent;}
.elementor .article-card{display: flex; flex-direction: column; gap: 12px; text-decoration: none; color: inherit; height: 100%;}
.elementor .article-card__ref{align-self: flex-start; font-size: 12px; font-weight: 700; letter-spacing: .05em; color: var(--crimson-700); background: #fdecee; padding: 5px 12px; border-radius: 999px;}
.elementor .article-card h3{font-size: 20px; line-height: 1.32; color: var(--navy-700); margin: 0;}
.elementor .article-card:hover h3{color: var(--crimson);}
.elementor .article-card__meta{margin-top: auto; padding-top: 14px; border-top: 1px dashed var(--line); font-size: 13px; color: var(--muted); display: flex; flex-wrap: wrap; gap: 6px 14px;}
.elementor .article-card__cat{font-size: 12px; font-weight: 600; color: var(--navy-500); text-transform: uppercase; letter-spacing: .1em;}
.elementor .cat-card{display: flex; flex-direction: column; text-decoration: none; color: inherit; border-radius: var(--radius); overflow: hidden; background: #fff; border: 1px solid var(--line); box-shadow: var(--shadow-sm); transition: transform .2s, box-shadow .2s; height: 100%;}
.elementor .cat-card:hover{transform: translateY(-5px); box-shadow: var(--shadow);}
.elementor .cat-card__top{background: linear-gradient(150deg, var(--navy-700), var(--navy-500)); color: #fff; padding: 26px 26px 22px; position: relative; overflow: hidden;}
.elementor .cat-card__top::after{content: ""; position: absolute; right: -40px; top: -40px; width: 140px; height: 140px; border-radius: 50%; background: radial-gradient(circle, rgba(212,166,74,.45), transparent 70%);}
.elementor .cat-card__top h3{color: #fff; font-size: 22px; margin: 0 0 6px; position: relative;}
.elementor .cat-card__count{font-size: 13px; color: var(--gold); font-weight: 700; letter-spacing: .08em; text-transform: uppercase; position: relative;}
.elementor .cat-card__body{padding: 20px 26px 24px; display: flex; flex-direction: column; gap: 6px; flex: 1;}
.elementor .cat-card__body ul{list-style: none; margin: 0 0 14px; padding: 0;}
.elementor .cat-card__body li{padding: 9px 0; border-bottom: 1px solid var(--line); font-size: 14px; color: var(--ink); line-height: 1.45;}
.elementor .cat-card__body li:last-child{border-bottom: 0;}
.elementor .cat-card__body li a{color: var(--ink); text-decoration: none; display: flex; justify-content: space-between; gap: 12px;}
.elementor .cat-card__body li a:hover{color: var(--crimson);}
.elementor .cat-card__body li small{color: var(--muted); flex: none;}
.elementor .cat-card__link{margin-top: auto; font-weight: 700; font-size: 14px; color: var(--crimson); display: inline-flex; gap: 6px; align-items: center; text-decoration: none;}
.elementor .book-grid{display: grid; grid-template-columns: repeat(auto-fill, minmax(170px, 1fr)); gap: 34px 26px;}
.elementor .book{display: flex; flex-direction: column; gap: 14px; text-decoration: none; color: var(--ink);}
.elementor .book__cover{position: relative; aspect-ratio: 2 / 3; transition: transform .25s;}
.elementor .book--tract .book__cover{aspect-ratio: 4 / 9;}
.elementor .footer-books__row .book__cover{aspect-ratio: 2 / 3;}
.elementor .book__cover img{position: absolute; left: 50%; bottom: 0; transform: translateX(-50%); width: auto; height: auto; max-width: 100%; max-height: 100%; display: block; border-radius: 6px 12px 12px 6px; background: var(--navy-100); box-shadow: 0 2px 4px rgba(0,0,0,.08), 0 14px 30px rgba(15,27,48,.18); transition: box-shadow .25s;}
.elementor .book:hover .book__cover{transform: translateY(-6px) rotate(-1deg);}
.elementor .book:hover .book__cover img{box-shadow: 0 4px 8px rgba(0,0,0,.08), 0 26px 46px rgba(15,27,48,.26);}
.elementor .book__title{font-family: var(--font-display); font-weight: 700; font-size: 16.5px; line-height: 1.32;}
.elementor .book:hover .book__title{color: var(--crimson);}
.elementor .book__badge{position: absolute; top: 10px; right: 10px; z-index: 2; font-size: 10.5px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; background: var(--gold); color: var(--navy-900); padding: 4px 9px; border-radius: 999px;}
.elementor .theme-block + .theme-block{margin-top: 88px;}
.elementor .theme-block__head{display: grid; grid-template-columns: 1fr auto; gap: 24px; align-items: end; margin-bottom: 26px;}
.elementor .theme-block__head h2{font-size: clamp(26px, 3vw, 36px); color: var(--navy-500); margin: 0;}
.elementor .theme-block__head h2 a{color: inherit; text-decoration: none;}
.elementor .theme-block__head h2 a:hover{color: var(--crimson);}
.elementor .count-pill{white-space: nowrap; display: inline-flex; align-items: center; gap: 8px; background: var(--gold-100); color: var(--gold-600); font-weight: 700; font-size: 13px; padding: 7px 14px; border-radius: 999px;}
.elementor .theme-intro{background: var(--cream); border-radius: var(--radius); padding: 30px 34px; margin-bottom: 36px; border: 1px solid var(--cream-2);}
.elementor .theme-intro.prose{font-size: 17px;}
.elementor .notice{display: grid; grid-template-columns: auto 1fr; gap: 22px; align-items: start; background: var(--navy-500); color: rgba(255,255,255,.9); border-radius: var(--radius); padding: 28px 32px; margin-bottom: 56px; box-shadow: var(--shadow);}
.elementor .notice__icon{width: 54px; height: 54px; border-radius: 50%; background: var(--gold); color: var(--navy-900); display: grid; place-items: center;}
.elementor .notice__icon svg{width: 24px; height: 24px;}
.elementor .notice .prose{color: rgba(255,255,255,.92); font-size: 16.5px; font-family: var(--font-ui); line-height: 1.7;}
.elementor .notice .prose strong{color: #fff; font-weight: 600;}
.elementor .notice .prose p:last-child{margin: 0;}
.elementor .book-detail{display: grid; grid-template-columns: 340px minmax(0, 1fr); gap: 60px; align-items: start;}
.elementor .book-detail__aside{position: sticky; top: calc(var(--header-h) + 24px); display: grid; gap: 22px;}
.elementor .book-detail__cover{border-radius: 8px 16px 16px 8px; overflow: hidden; box-shadow: 0 4px 10px rgba(0,0,0,.1), 0 30px 60px rgba(15,27,48,.28); margin-top: -150px; position: relative; z-index: 2; background: #fff;}
.elementor .book-detail__cover img{display: block; width: 100%;}
.elementor .facts{display: grid; grid-template-columns: 1fr 1fr; gap: 1px; background: var(--line); border: 1px solid var(--line); border-radius: var(--radius-sm); overflow: hidden;}
.elementor .facts div{background: #fff; padding: 14px 16px;}
.elementor .facts dt{font-size: 11.5px; letter-spacing: .14em; text-transform: uppercase; color: var(--muted); font-weight: 700; margin-bottom: 4px;}
.elementor .facts dd{margin: 0; font-weight: 600; color: var(--ink); font-size: 15px;}
.elementor .facts dd a{text-decoration: none;}
.elementor .languages{background: var(--tint); border-radius: var(--radius); padding: 18px 22px; margin-bottom: 30px; display: flex; flex-wrap: wrap; align-items: center; gap: 12px;}
.elementor .languages strong{display: inline-flex; align-items: center; gap: 8px; font-size: 13px; letter-spacing: .14em; text-transform: uppercase; color: var(--navy-500); margin-right: 6px;}
.elementor .languages a{display: inline-flex; align-items: center; gap: 8px; background: #fff; border: 1px solid var(--line); border-radius: 999px; padding: 6px 14px 6px 6px; text-decoration: none; color: var(--ink); font-size: 13.5px; font-weight: 600;}
.elementor .languages a:hover{border-color: var(--navy-500);}
.elementor .languages img{width: 26px; height: 18px; object-fit: cover; border-radius: 3px;}
.elementor .table-wrap{background: #fff; border: 1px solid var(--line); border-radius: var(--radius); overflow: hidden; box-shadow: var(--shadow-sm);}
.elementor .table-tools{display: flex; flex-wrap: wrap; gap: 12px; justify-content: space-between; align-items: center; padding: 16px 18px; border-bottom: 1px solid var(--line); background: var(--tint);}
.elementor .table-tools input{border: 1px solid var(--line); border-radius: 999px; padding: 10px 16px; font: inherit; font-size: 14px; min-width: 0; width: min(360px, 100%); background: #fff;}
.elementor .table-tools input:focus{outline: none; border-color: var(--navy-500); box-shadow: 0 0 0 3px var(--navy-100);}
.elementor .table-tools small{color: var(--muted); font-weight: 600;}
.elementor .dtable{width: 100%; border-collapse: collapse; font-size: 15px;}
.elementor .dtable th{text-align: left; font-size: 12px; letter-spacing: .14em; text-transform: uppercase; color: var(--muted); font-weight: 700; padding: 14px 18px; border-bottom: 1px solid var(--line); white-space: nowrap;}
.elementor .dtable th button{all: unset; cursor: pointer; display: inline-flex; gap: 6px; align-items: center;}
.elementor .dtable th button:hover,.elementor .dtable th[aria-sort] button{color: var(--navy-500);}
.elementor .dtable th button::after{content: "\2195"; opacity: .4; font-size: 13px;}
.elementor .dtable th[aria-sort="ascending"] button::after{content: "\25B2"; opacity: .9; font-size: 10px;}
.elementor .dtable th[aria-sort="descending"] button::after{content: "\25BC"; opacity: .9; font-size: 10px;}
.elementor .dtable td{padding: 16px 18px; border-bottom: 1px solid var(--line); vertical-align: top;}
.elementor .dtable tr:last-child td{border-bottom: 0;}
.elementor .dtable tbody tr:hover{background: #fbfcff;}
.elementor .dtable td:first-child a{font-weight: 600; color: var(--navy-700); text-decoration: none; line-height: 1.45;}
.elementor .dtable td:first-child a:hover{color: var(--crimson);}
.elementor .dtable td a{text-decoration: none;}
.elementor .dtable .num,.elementor .dtable .date,.elementor .dtable td[data-label="Author"],.elementor .dtable td[data-label="Presenter"]{white-space: nowrap; color: var(--muted);}
.elementor .series-head{display: grid; grid-template-columns: 200px 1fr; gap: 36px; align-items: center; margin-bottom: 48px;}
.elementor .series-head img{width: 200px; height: 200px; object-fit: cover; border-radius: 50%; border: 6px solid #fff; box-shadow: var(--shadow-lg); margin-top: -140px; position: relative; z-index: 2; background: #fff;}
.elementor .video-list{display: grid; gap: 30px;}
.elementor .video-card{display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); gap: 0; background: #fff; border: 1px solid var(--line); border-radius: var(--radius); overflow: hidden; box-shadow: var(--shadow-sm);}
.elementor .video-card__body{padding: 28px 30px; display: flex; flex-direction: column; gap: 10px;}
.elementor .video-card__body h3{font-size: 23px; margin: 0;}
.elementor .video-card__body h3 a{color: var(--navy-700); text-decoration: none;}
.elementor .video-card__body h3 a:hover{color: var(--crimson);}
.elementor .video-card__body .prose{font-size: 16.5px; line-height: 1.7;}
.elementor .video-card__meta{margin-top: auto; font-size: 13.5px; color: var(--muted);}
.elementor .yt{position: relative; aspect-ratio: 16 / 9; background: #000; overflow: hidden;}
.elementor .yt img{width: 100%; height: 100%; object-fit: cover; display: block; opacity: .9; transition: opacity .2s, transform .4s;}
.elementor .yt button{position: absolute; inset: 0; border: 0; background: linear-gradient(180deg, rgba(0,0,0,0) 40%, rgba(0,0,0,.45)); cursor: pointer; display: grid; place-items: center; width: 100%;}
.elementor .yt button span{width: 78px; height: 78px; border-radius: 50%; background: var(--crimson); display: grid; place-items: center; box-shadow: 0 12px 30px rgba(0,0,0,.4); transition: transform .2s;}
.elementor .yt button svg{width: 30px; height: 30px; color: #fff; margin-left: 4px;}
.elementor .yt:hover img{opacity: 1; transform: scale(1.03);}
.elementor .yt:hover button span{transform: scale(1.08);}
.elementor .yt iframe{position: absolute; inset: 0; width: 100%; height: 100%; border: 0;}
.elementor .video-card--stack{grid-template-columns: 1fr;}
.elementor .profile{display: grid; grid-template-columns: 260px 1fr; gap: 48px; align-items: start;}
.elementor .profile__photo{border-radius: 24px; overflow: hidden; box-shadow: var(--shadow-lg); margin-top: -150px; position: relative; z-index: 2; border: 6px solid #fff; background: #fff;}
.elementor .profile__photo img{display: block; width: 100%;}
.elementor .tabs{display: flex; flex-wrap: wrap; gap: 10px; margin: 0 0 30px;}
.elementor .tabs a{display: inline-flex; align-items: center; gap: 8px; padding: 11px 20px; border-radius: 999px; border: 1px solid var(--line); text-decoration: none; color: var(--ink); font-weight: 600; font-size: 14.5px; background: #fff;}
.elementor .tabs a:hover{border-color: var(--navy-500); color: var(--navy-500);}
.elementor .tabs a.is-active{background: var(--navy-500); color: #fff; border-color: var(--navy-500);}
.elementor .tabs svg{width: 16px; height: 16px;}
.elementor .contact-grid{display: grid; grid-template-columns: 1fr 1.25fr; gap: 48px; align-items: start;}
.elementor .form{display: grid; gap: 18px;}
.elementor .form label{font-weight: 600; font-size: 14px; color: var(--ink); display: block; margin-bottom: 7px;}
.elementor .form input,.elementor .form textarea{width: 100%; border: 1px solid var(--line); border-radius: 12px; padding: 14px 16px; font: inherit; font-size: 15.5px; background: #fff; color: var(--ink);}
.elementor .form textarea{min-height: 190px; resize: vertical;}
.elementor .form input:focus,.elementor .form textarea:focus{outline: none; border-color: var(--navy-500); box-shadow: 0 0 0 4px var(--navy-100);}
.elementor .form-card{background: #fff; border: 1px solid var(--line); border-radius: 24px; padding: 36px; box-shadow: var(--shadow);}
.elementor .info-card{background: linear-gradient(160deg, var(--navy-700), var(--navy-500)); color: rgba(255,255,255,.88); border-radius: 24px; padding: 36px; position: relative; overflow: hidden;}
.elementor .info-card h2,.elementor .info-card h3{color: #fff;}
.elementor .info-card::after{content: ""; position: absolute; right: -80px; bottom: -80px; width: 260px; height: 260px; border-radius: 50%; background: radial-gradient(circle, rgba(212,166,74,.4), transparent 70%);}
.elementor .info-card > *,.elementor .info-card > .elementor-element > *,.elementor .info-card > .elementor-element > .elementor-widget-container > *{position: relative; z-index: 1;}
.elementor .search-big{display: flex; gap: 10px; background: #fff; padding: 8px; border-radius: 999px; box-shadow: var(--shadow); max-width: 720px;}
.elementor .search-big input{flex: 1; border: 0; font: inherit; font-size: 17px; padding: 10px 18px; outline: none; min-width: 0; border-radius: 999px;}
.elementor .results{display: grid; gap: 16px;}
.elementor .result{display: block; padding: 22px 26px; background: #fff; border: 1px solid var(--line); border-radius: var(--radius); text-decoration: none; color: inherit;}
.elementor .result:hover{border-color: var(--navy-500); box-shadow: var(--shadow-sm);}
.elementor .result small{font-size: 11.5px; letter-spacing: .16em; text-transform: uppercase; color: var(--crimson); font-weight: 700;}
.elementor .result h3{font-size: 19px; margin: 6px 0 6px; color: var(--navy-700);}
.elementor .result p{margin: 0; font-size: 14.5px; color: var(--muted);}
.elementor .result mark{background: var(--gold-100); color: inherit; padding: 0 2px; border-radius: 3px;}
.elementor .comments{margin-top: 64px; padding-top: 40px; border-top: 1px solid var(--line);}
.elementor .comments h2{font-size: 26px; color: var(--navy-500);}
.elementor .cta-band{background: linear-gradient(120deg, var(--crimson-700), var(--crimson) 55%, #e2584f); color: #fff; border-radius: 28px; padding: 54px 56px; display: grid; grid-template-columns: 1.4fr auto; gap: 36px; align-items: center; box-shadow: 0 30px 60px rgba(181, 29, 49, .28); position: relative; overflow: hidden;}
.elementor .cta-band::after{content: ""; position: absolute; right: -90px; top: -90px; width: 320px; height: 320px; border-radius: 50%; background: radial-gradient(circle, rgba(255,214,140,.45), transparent 70%);}
.elementor .cta-band > *,.elementor .cta-band > .elementor-element > *,.elementor .cta-band > .elementor-element > .elementor-widget-container > *{position: relative; z-index: 1;}
.elementor .cta-band h2{color: #fff; font-size: clamp(26px, 3vw, 38px); margin-bottom: 12px;}
.elementor .cta-band p{color: rgba(255,255,255,.92); margin: 0; font-size: 16px;}
.elementor .footer-books{background: var(--cream); padding: 64px 0 70px;}
.elementor .footer-books__row{display: grid; grid-template-columns: repeat(6, 1fr); gap: 22px;}
.elementor .site-footer{background: var(--navy-900); color: rgba(255,255,255,.72); font-size: 14.5px;}
.elementor .site-footer .wrap{padding-top: 72px;}
.elementor .footer-grid{display: grid; grid-template-columns: 1.3fr 1fr 1fr 1fr; gap: 40px; padding-bottom: 54px;}
.elementor .site-footer h4{color: #fff; font-family: var(--font-ui); font-size: 13px; letter-spacing: .2em; text-transform: uppercase; margin-bottom: 18px;}
.elementor .site-footer ul{list-style: none; margin: 0; padding: 0; display: grid; gap: 10px;}
.elementor .site-footer a{color: rgba(255,255,255,.78); text-decoration: none;}
.elementor .site-footer a:hover{color: var(--gold);}
.elementor .footer-brand{display: flex; gap: 14px; align-items: center; margin-bottom: 20px; text-decoration: none;}
.elementor .footer-brand img{width: 62px; height: 62px; border-radius: 50%;}
.elementor .footer-brand span{font-family: var(--font-display); font-weight: 700; font-size: 22px; color: #fff; line-height: 1.1;}
.elementor .footer-verse{font-family: var(--font-read); font-style: italic; color: rgba(255,255,255,.66); line-height: 1.7; max-width: 340px;}
.elementor .footer-bottom{border-top: 1px solid rgba(255,255,255,.1); padding: 22px 0; display: flex; flex-wrap: wrap; gap: 12px; justify-content: space-between; font-size: 13.5px;}
.elementor .back-top{position: fixed; right: 22px; bottom: 22px; width: 48px; height: 48px; border-radius: 50%; background: var(--navy-500); color: #fff; border: 0; display: grid; place-items: center; box-shadow: var(--shadow); cursor: pointer; opacity: 0; transform: translateY(12px); transition: opacity .2s, transform .2s; z-index: 90;}
.elementor .back-top.is-visible{opacity: 1; transform: none;}
.elementor .back-top svg{width: 20px; height: 20px;}
.elementor .progress{position: fixed; left: 0; top: 0; height: 3px; background: linear-gradient(90deg, var(--gold), var(--crimson)); width: 0; z-index: 150;}
.elementor .reveal{opacity: 0; transform: translateY(22px); transition: opacity .7s ease, transform .7s ease;}
.elementor .reveal.is-in{opacity: 1; transform: none;}
@media (prefers-reduced-motion: reduce){.elementor .reveal{opacity: 1; transform: none; transition: none;}
html{scroll-behavior: auto;}
*{transition: none !important;}

}
@media print{.elementor .topbar,.elementor .site-header,.elementor .site-footer,.elementor .footer-books,.elementor .sidebar,.elementor .tools,.elementor .comments,.elementor .pager,.elementor .back-top,.elementor .progress,.elementor .drawer,.elementor .search-overlay,.elementor .cta-band{display: none !important;}
.elementor .page-hero{background: none; color: #000;}
.elementor .page-hero h1,.elementor .page-hero__meta,.elementor .page-hero__meta a{color: #000;}
.elementor .page-hero::after{display: none;}
.elementor .layout{display: block;}
.elementor .prose{font-size: 12pt;}

}
@media (max-width: 1340px){.elementor .site-header .wrap{gap: 16px;}
.elementor .nav__link{padding: 10px 9px; font-size: 13.8px;}
.elementor .brand__name{font-size: 18px;}

}
@media (max-width: 1180px){.elementor .nav__link{padding: 10px 10px; font-size: 14px;}
.elementor .brand__name{font-size: 19px;}
.elementor .quick__grid{grid-template-columns: repeat(3, 1fr);}
.elementor .footer-books__row{grid-template-columns: repeat(5, 1fr);}
.elementor .footer-books__row > :nth-child(6),.elementor .footer-books__row > .elementor-element:nth-child(6) > *:first-child,.elementor .footer-books__row > .elementor-element:nth-child(6) > .elementor-widget-container > *:first-child{display: none;}

}
@media (max-width: 1180px){:root{--header-h: 72px;}
.elementor .nav,.elementor .header-actions .btn{display: none;}
.elementor .burger{display: inline-grid;}
.elementor .header-actions{margin-left: auto;}

}
@media (max-width: 1024px){.elementor .nav,.elementor .header-actions .btn{display: none;}
.elementor .burger{display: inline-grid;}
.elementor .header-actions{margin-left: auto;}
.elementor .hero .wrap{grid-template-columns: 1fr; padding-top: 64px; padding-bottom: 130px; text-align: left;}
.elementor .hero__art{order: -1; justify-self: start;}
.elementor .hero__art img{width: 200px; border-radius: 22px;}
.elementor .layout{grid-template-columns: 1fr;}
.elementor .sidebar{position: static;}
.elementor .split,.elementor .split--wide-text{grid-template-columns: 1fr; gap: 40px;}
.elementor .split--reverse > :first-child,.elementor .split--reverse > .elementor-element:first-child > *:first-child,.elementor .split--reverse > .elementor-element:first-child > .elementor-widget-container > *:first-child{order: 0;}
.elementor .grid--3,.elementor .grid--4{grid-template-columns: repeat(2, 1fr);}
.elementor .book-detail{grid-template-columns: 260px minmax(0, 1fr); gap: 36px;}
.elementor .footer-grid{grid-template-columns: 1fr 1fr;}
.elementor .contact-grid{grid-template-columns: 1fr;}
.elementor .video-card{grid-template-columns: 1fr;}
.elementor .cta-band{grid-template-columns: 1fr; padding: 40px 34px;}

}
@media (max-width: 760px){body{font-size: 15.5px;}
.elementor .wrap{padding: 0 16px;}
.elementor .topbar__verse{display: none;}
.elementor .topbar .wrap{justify-content: center;}
.elementor .brand img{width: 44px; height: 44px;}
.elementor .brand__name{font-size: 17px;}
.elementor .brand__name small{font-size: 9px; letter-spacing: .16em;}
.elementor .section{padding: 68px 0;}
.elementor .section--tight{padding: 48px 0;}
.elementor .quick{margin-top: -72px;}
.elementor .quick__grid{grid-template-columns: repeat(2, 1fr); gap: 12px;}
.elementor .quick__card{min-height: 0; padding: 18px 16px;}
.elementor .quick__card:last-child{grid-column: 1 / -1;}
.elementor .quick__card h3{font-size: 18px;}
.elementor .grid--2,.elementor .grid--3,.elementor .grid--4{grid-template-columns: 1fr;}
.elementor .prose{font-size: 17px; line-height: 1.8;}
.elementor .prose img.right,.elementor .prose img.left,.elementor .prose img[style*="float"]{float: none !important; display: block; margin: 0 auto 22px !important; max-width: 100%; width: 100% !important;}
.elementor .prose h4{padding: 18px 18px 18px 20px;}
.elementor .prose blockquote{padding: 22px 20px 22px 48px;}
.elementor .prose blockquote::before{left: 10px; font-size: 56px;}
.elementor .highlight{padding: 28px 24px;}
.elementor .page-hero .wrap{padding-top: 42px; padding-bottom: 84px;}
.elementor .book-grid{grid-template-columns: repeat(2, 1fr); gap: 26px 16px;}
.elementor .book-detail{grid-template-columns: 1fr;}
.elementor .book-detail__aside{position: static; max-width: 340px; margin: 0 auto; width: 100%;}
.elementor .book-detail__cover{margin-top: -120px; max-width: 240px; margin-left: auto; margin-right: auto;}
.elementor .theme-block__head{grid-template-columns: 1fr;}
.elementor .notice{grid-template-columns: 1fr; padding: 24px;}
.elementor .pager{grid-template-columns: 1fr;}
.elementor .pager .next{text-align: left;}
.elementor .series-head,.elementor .profile{grid-template-columns: 1fr; gap: 20px; text-align: left;}
.elementor .series-head img{width: 140px; height: 140px; margin-top: -110px;}
.elementor .profile__photo{max-width: 220px; margin-top: -120px;}
.elementor .footer-books__row{grid-template-columns: repeat(3, 1fr);}
.elementor .footer-books__row > :nth-child(n+4),.elementor .footer-books__row > .elementor-element:nth-child(n+4) > *:first-child,.elementor .footer-books__row > .elementor-element:nth-child(n+4) > .elementor-widget-container > *:first-child{display: none;}
.elementor .footer-grid{grid-template-columns: 1fr; gap: 32px;}
.elementor .dtable thead{display: none;}
.elementor .dtable,.elementor .dtable tbody,.elementor .dtable tr,.elementor .dtable td{display: block; width: 100%;}
.elementor .dtable tr{padding: 14px 16px; border-bottom: 1px solid var(--line);}
.elementor .dtable td{border: 0; padding: 2px 0;}
.elementor .dtable td:first-child{padding-bottom: 6px; font-size: 15.5px;}
.elementor .dtable td:not(:first-child){display: inline-block; width: auto; margin-right: 14px; font-size: 13px; color: var(--muted);}
.elementor .dtable td[data-label]:not(:first-child)::before{content: attr(data-label) ": "; font-weight: 600;}
.elementor .form-card,.elementor .info-card{padding: 26px 22px;}
.elementor .cta-band{padding: 34px 24px; border-radius: 22px;}
.elementor .verse-banner blockquote{font-size: 25px;}

}
.elementor .avatar{display: inline-grid; place-items: center; border-radius: 50%; background: radial-gradient(circle at 30% 25%, #4a6894, var(--navy-700)); color: var(--gold); font-family: var(--font-display); font-weight: 700; letter-spacing: .02em; flex: none; box-shadow: var(--shadow);}
.elementor .profile__photo .avatar{border-radius: 18px;}
.elementor main{overflow-x: clip;}
.elementor .prose blockquote,.elementor .prose h4,.elementor .prose .highlight,.elementor .prose pre{display: flow-root;}


