@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--purple:#7c2ae8;--light-purple:#b98af7;--ink:#000;--muted:#aaa7b1;--line:#242127;--white:#fff;--font:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:#000;color:#fff;font:16px/1.7 var(--font);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button,a,input,textarea,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid #b98af7;outline-offset:5px}::selection{background:var(--purple);color:white}img{max-width:100%;display:block}button{color:inherit}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:'Manrope',Arial,sans-serif;font-weight:500;line-height:1.1;letter-spacing:-.055em}h2{font-size:clamp(36px,4.3vw,64px)}h3{font-size:26px;letter-spacing:-.035em}p{color:var(--muted)}strong{color:#e9e7ee;font-weight:500}em{color:var(--light-purple);font-style:normal}.purple{color:var(--purple)}.section{max-width:1440px;margin:auto;padding:100px 5.5%}.eyebrow{font-size:10px;letter-spacing:.2em;font-weight:600;color:#b7b2bf;line-height:1.7;margin-bottom:22px}.header{height:94px;display:flex;align-items:center;justify-content:space-between;padding:0 4%;gap:28px;background:rgba(0,0,0,.93);border-bottom:1px solid #1b191e;position:relative;z-index:20}.brand{display:flex;align-items:center;gap:13px;white-space:nowrap}.brand img{filter:none}.brand span{font-size:13px;letter-spacing:.16em;font-weight:600}.desktop-nav{display:flex;gap:27px;font-size:12px;color:#b7b2bf}.desktop-nav a:hover{color:#fff}.socials{display:flex;gap:15px;align-items:center}.socials a{display:flex;align-items:center;justify-content:center;width:22px;height:34px;color:#b8b4bf;transition:color .2s,transform .2s}.socials svg{width:17px;height:17px}.socials a:hover{color:#ba8aff;transform:translateY(-3px)}.menu-toggle{display:none}.mobile-nav[hidden]{display:none}.mobile-nav{position:absolute;z-index:30;top:80px;width:100%;padding:25px;background:#100b18;border-bottom:1px solid #3c2654}.mobile-nav>a{display:block;padding:10px 0}.skip{position:absolute;left:20px;top:-100px;background:var(--purple);padding:10px;z-index:100}.skip:focus{top:10px}.hero{max-width:1600px;min-height:665px;position:relative;margin:auto;isolation:isolate;overflow:hidden}.hero-art{position:absolute;right:0;top:25px;width:min(88%,1265px);z-index:-2}.hero-art img{width:100%;height:auto}.hero:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#000 0%,rgba(0,0,0,.9) 20%,rgba(0,0,0,.32) 43%,transparent 65%),linear-gradient(0deg,#000,transparent 20%)}.hero-content{padding:65px 5% 50px;width:52%}.hero-content .eyebrow{font-size:9px;letter-spacing:.23em}.tiny-star{color:var(--light-purple);font-size:16px;margin-right:10px}.hero-name{display:flex;align-items:center;gap:22px;margin-bottom:25px}.hero-name img{width:58px;height:auto;filter:none;opacity:1}.hero h1{font-size:clamp(76px,7.4vw,112px);line-height:.96;letter-spacing:-.07em}.hero h1 span{font-weight:400}.hero-slogan{font-size:16px;line-height:1.8;color:#d2cfd6;max-width:410px;margin-bottom:28px}.hero-slogan em{font-weight:600}.button{display:inline-flex;gap:30px;justify-content:space-between;align-items:center;padding:17px 23px;background:var(--purple);color:#fff;border:1px solid var(--purple);border-radius:3px;font-size:13px;font-weight:600;transition:background .25s,box-shadow .25s,transform .25s}.button span{font-size:21px;line-height:1}.button:hover{background:#8d3af5;box-shadow:0 0 36px #7c2ae83a;transform:translateY(-3px)}.explore{font-size:10px;display:flex;gap:36px;align-items:center;width:fit-content;margin-top:28px;color:#a19aa9}.explore span{font-size:18px;color:var(--light-purple)}.hero-caption{position:absolute;right:5%;bottom:38px;font-size:8px;letter-spacing:.22em;text-transform:uppercase;color:#96909e}.specialties{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:18px;font-size:10px;text-transform:uppercase;letter-spacing:.14em;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:24px}.specialties i{color:var(--purple);font-style:normal;font-size:15px}.intro{display:grid;grid-template-columns:1fr 2.1fr;gap:60px;padding-top:70px;padding-bottom:70px;border-bottom:1px solid var(--line)}.intro .eyebrow{padding-top:8px}.intro p{font-size:21px;line-height:1.7;letter-spacing:-.025em}.priest{display:grid;grid-template-columns:1fr 1.06fr;gap:8%;align-items:center}.priest-photo{position:relative;overflow:hidden}.priest-photo img{width:100%;height:670px;object-fit:cover;object-position:center 35%}.image-label{position:absolute;bottom:0;left:0;right:0;padding:30px 25px;background:linear-gradient(transparent,#000);font-size:9px;letter-spacing:.15em;display:flex;justify-content:space-between}.image-label>span{color:#aaa}.priest-content h2{margin-bottom:28px}.priest-content p{font-size:14px;margin-bottom:18px;line-height:1.9}details{border-bottom:1px solid var(--line);border-top:1px solid var(--line);margin-top:25px}summary{list-style:none;display:flex;align-items:center;justify-content:space-between;padding:17px 0;font-size:12px;cursor:pointer}summary::-webkit-details-marker{display:none}.plus{color:var(--light-purple);font-size:23px;transition:transform .3s}details[open] .plus{transform:rotate(45deg)}.statement{font-family:'Manrope',Arial,sans-serif;font-size:clamp(23px,2.2vw,32px);line-height:1.45;letter-spacing:-.035em;margin:30px 0}.text-link{display:inline-flex;justify-content:space-between;align-items:center;gap:32px;font-size:12px;padding:10px 0;border-bottom:1px solid #614384;transition:color .2s,border .2s}.text-link:hover{color:var(--light-purple);border-color:var(--light-purple)}.text-link span{font-size:20px}.services{border-top:1px solid var(--line)}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:50px;gap:25px}.section-heading p{font-size:13px}.service-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:20px}.service-photo{position:relative;display:block;overflow:hidden;background:#0b090e}.service-photo img{width:100%;height:310px;object-fit:cover;transition:transform .7s,filter .7s;filter:saturate(.7)}.service-photo:hover img{transform:scale(1.045);filter:saturate(1)}.photo-arrow{position:absolute;right:14px;bottom:16px;width:34px;height:34px;border:1px solid #81758e;border-radius:50%;display:grid;place-items:center;background:#08050bb3;transition:background .2s}.service-photo:hover .photo-arrow{background:var(--purple);border-color:var(--purple)}.service-number{position:absolute;top:14px;left:15px;font-size:10px;color:#bfb9c7}.service h3{font-size:20px;margin-top:23px;line-height:1.25;letter-spacing:-.035em}.service p{font-size:12px;line-height:1.85;margin-top:14px}.courses{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center;background:radial-gradient(ellipse at 35% 65%,#180b28 0%,#08050c 45%,#000 80%);padding-top:75px;padding-bottom:75px}.course-content h2{font-size:clamp(40px,4.5vw,68px);line-height:1.15}.course-label{font-size:11px;letter-spacing:.2em;color:#fff;margin:28px 0 13px}.course-content p{font-size:14px;line-height:1.9;max-width:490px}.soon{display:flex;align-items:center;gap:10px;font-size:9px;letter-spacing:.13em;margin:28px 0 10px;color:#b5a4ca}.soon>span{width:5px;height:5px;border-radius:50%;background:#b98af7;box-shadow:0 0 12px #7c2ae8}.course-image{position:relative}.course-image img{width:100%;height:600px;object-fit:cover;object-position:center}.course-word{position:absolute;bottom:5%;left:-15%;font-size:clamp(60px,8vw,120px);letter-spacing:.1em;color:transparent;-webkit-text-stroke:1px #ab91c84a;pointer-events:none;font-family:'Manrope',sans-serif;font-weight:700}.numbers{padding-top:80px;padding-bottom:80px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.numbers>.eyebrow{text-align:center;margin-bottom:50px}.numbers-grid{display:grid;grid-template-columns:repeat(4,1fr)}.numbers-grid>div{padding-left:28px;border-left:1px solid #32263f}.numbers-grid>div:first-child{border:none;padding-left:0}.numbers strong{display:block;font-family:'Manrope',sans-serif;font-size:clamp(36px,4.3vw,64px);letter-spacing:-.07em;line-height:1.2;font-weight:400;font-variant-numeric:tabular-nums}.numbers strong small{font-size:15px;letter-spacing:0;margin-left:7px;color:#a99bb7}.numbers p{font-size:11px;text-transform:uppercase;letter-spacing:.09em;line-height:1.8;margin-top:20px}.testimonials{display:grid;grid-template-columns:1fr 1.6fr;gap:10%;padding-top:110px;padding-bottom:100px}.testimonials h2{font-size:clamp(30px,3.5vw,49px);line-height:1.15}.quote-mark{font-family:Georgia,serif;font-size:150px;color:var(--purple);line-height:1;margin-top:35px;height:85px}.quote blockquote{margin:0;font-size:19px;color:#d8d3df;line-height:1.85;letter-spacing:-.02em}.quote figcaption{font-size:8px;letter-spacing:.14em;margin-top:30px;color:#aaa}.quote figcaption span{margin:0 10px;color:var(--purple)}.quotes .quote{padding-bottom:25px}.carousel-ready .quote{display:none}.carousel-ready .quote.active{display:block;animation:fade .4s}.quote-controls{display:none;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:24px;margin-top:5px}.carousel-ready+.quote-controls{display:flex}.quote-dots{display:flex;gap:15px}.quote-dots button{border:0;border-bottom:2px solid transparent;background:none;font-size:10px;padding:7px 2px;color:#777}.quote-dots button[aria-current=true]{color:#fff;border-color:var(--purple)}.arrows{display:flex;gap:10px}.arrows button{width:40px;height:40px;border:1px solid #343039;border-radius:50%;background:transparent;font-size:20px}.arrows button:hover{background:var(--purple)}.discreet{font-size:9px;color:#777;display:block;margin-top:18px}.contact{border-top:1px solid var(--line);background:linear-gradient(155deg,#100917,#000 70%)}.contact-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:12%}.newsletter{padding-top:10px}.mail-icon{font-size:36px;color:var(--light-purple)}.newsletter h3{font-size:35px;line-height:1.2;margin:20px 0}.newsletter>p{font-size:13px;line-height:1.9;margin-bottom:30px}.contact-form h3{font-size:25px;margin-bottom:10px}.contact-form>p{font-size:13px;margin-bottom:30px}label{display:block;font-size:11px;color:#c1bacb}input:not([type=checkbox]),textarea{display:block;background:transparent;border:0;border-bottom:1px solid #4a3d55;color:white;width:100%;border-radius:0;padding:12px 0;margin:2px 0 23px;font-size:13px;transition:border-color .2s}input::placeholder,textarea::placeholder{color:#77717e}input:not([type=checkbox]):focus,textarea:focus{outline:0;border-color:var(--light-purple)}textarea{resize:vertical;min-height:115px}.field-pair{display:grid;grid-template-columns:1fr 1fr;gap:24px}.check{display:flex;align-items:flex-start;gap:10px;line-height:1.6;font-size:10px;color:#aaa;margin-top:20px}.check input{accent-color:var(--purple);margin:3px 0 0;min-width:15px}.email-row{display:flex;align-items:center;border-bottom:1px solid #4a3d55}.email-row input{margin:0;border:0}.email-row button{background:transparent;border:0;font-size:23px;padding:8px 15px;color:var(--light-purple)}.form-note{font-size:9px;line-height:1.7;margin:15px 0 22px;color:#89828f}.form-note a{text-decoration:underline}.contact-form .button{width:100%}.email-direct{font-size:11px;color:#a59aaa;display:block;margin-top:15px;text-align:center}.honey{display:none!important}.footer{padding:45px 5.5% 25px;border-top:1px solid var(--line);max-width:1600px;margin:auto}.footer-top{display:flex;justify-content:space-between;align-items:center;gap:25px;padding-bottom:40px}.footer-bottom{display:flex;justify-content:space-between;gap:20px;font-size:9px;color:#8d8595;border-top:1px solid var(--line);padding-top:22px}.floating-wa{position:fixed;right:23px;bottom:23px;width:48px;height:48px;border-radius:50%;background:#12071f;border:1px solid #744ca1;z-index:25;display:grid;place-items:center;box-shadow:0 3px 25px #0009;transition:background .2s}.floating-wa:hover{background:var(--purple)}.floating-wa svg{width:23px;height:23px}.back-link{display:block;width:fit-content;font-size:12px;color:#b99bdc;margin-bottom:55px}.bio-main{padding-top:45px}.bio-top{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:10%}.bio-top h1{font-size:clamp(48px,6vw,85px)}.bio-subtitle{font-size:20px;margin-top:25px}.bio-top img{width:100%;height:620px;object-fit:cover}.bio-sections{margin-top:65px}.bio-sections>section{display:grid;grid-template-columns:1fr 2fr;gap:8%;padding:55px 0;border-top:1px solid var(--line)}.bio-sections h2{font-size:32px;margin-bottom:25px}.bio-sections p{margin:15px 0;font-size:15px}.bio-cta{margin-top:40px;padding:65px 0;border-top:1px solid #3e2558;display:flex;align-items:center;justify-content:space-between;gap:30px}.bio-cta h2{font-size:40px}.legal{max-width:900px}.legal h1,.thank-you h1{font-size:clamp(40px,5vw,70px);margin-bottom:30px}.legal h2{font-size:25px;margin:35px 0 15px}.legal p{font-size:15px}.legal p a{text-decoration:underline}.thank-you{min-height:65vh;max-width:1000px}.thank-you p{max-width:620px;margin-bottom:30px}.thank-you .back-link{margin-top:30px}.reveal{animation:reveal .7s ease both}@keyframes reveal{from{opacity:.3;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fade{from{opacity:.2}to{opacity:1}}
@media(min-width:1600px){.hero-content{padding-left:8%}.hero-art{right:1%}}@media(max-width:1100px){.header{gap:20px}.desktop-nav{gap:16px}.header>.socials{gap:10px}.brand span{font-size:11px}.hero-content{width:58%}.hero{min-height:620px}.hero-art{top:60px;width:95%}.hero h1{font-size:88px}.section{padding:75px 5%}.priest{gap:6%}.priest-photo img{height:620px}.service-grid{gap:15px}.service-photo img{height:260px}.service h3{font-size:18px}.service p{font-size:11px}.contact-grid{gap:7%}.testimonials{gap:7%}.quote blockquote{font-size:17px}}
@media(max-width:850px){.header{height:80px}.desktop-nav{display:none}.header>.socials{margin-left:auto}.menu-toggle{display:flex;flex-direction:column;gap:6px;background:none;border:0;padding:12px}.menu-toggle span{width:22px;height:1px;background:#fff}.hero-content{padding-top:55px}.hero h1{font-size:76px}.hero-name img{width:40px}.hero-art{top:100px;width:100%}.hero-content{width:62%}.hero-slogan{font-size:14px}.specialties{gap:12px;font-size:9px}.intro{gap:30px;grid-template-columns:1fr 2fr}.intro p{font-size:18px}.priest{align-items:start}.priest-photo img{height:550px}.priest-content p{font-size:12px}.priest-content h2{font-size:38px}.statement{font-size:24px}.service-grid{grid-template-columns:repeat(3,1fr);gap:35px 20px}.service-photo img{height:310px}.service h3{font-size:22px}.service p{font-size:12px}.courses{gap:6%}.course-image img{height:550px}.course-content p{font-size:13px}.numbers strong{font-size:38px}.numbers strong small{font-size:10px}.numbers p{font-size:9px}.numbers-grid>div{padding-left:16px}.testimonials{grid-template-columns:1fr;gap:30px}.testimonial-heading{position:relative}.quote-mark{position:absolute;right:15px;top:10px;margin:0}.testimonials h2 br{display:none}.contact-grid{gap:35px}.newsletter h3{font-size:30px}.field-pair{grid-template-columns:1fr;gap:0}.footer-top{flex-wrap:wrap}.footer-top>.text-link{width:100%}.bio-top{gap:5%}.bio-top img{height:500px}}
@media(max-width:700px){html{scroll-padding-top:25px}.header{padding:0 6%;height:74px}.header>.socials{gap:9px}.header>.socials a{width:18px}.header>.socials svg{width:15px;height:15px}.brand span{font-size:9px;letter-spacing:.1em}.header .brand{gap:8px}.header .brand img{width:25px;height:30px}.menu-toggle{padding:8px}.header{gap:12px}.mobile-nav{top:74px}.hero{min-height:930px}.hero-art{top:0;left:0;width:100%;height:100%;right:auto}.hero-art img{width:100%;height:100%;object-fit:cover;object-position:center bottom}.hero:after{background:linear-gradient(180deg,#000 0%,rgba(0,0,0,.25) 24%,transparent 42%,transparent 75%,#000 99%)}.hero-content{width:100%;padding:42px 7% 0;text-align:center}.hero-content .eyebrow{font-size:8px;letter-spacing:.18em;margin-bottom:23px}.hero-name{justify-content:center;gap:17px;margin-bottom:20px}.hero h1{text-align:left;font-size:74px;line-height:.95}.hero-name img{width:44px}.hero-slogan{font-size:13px;max-width:100%;margin-bottom:24px}.hero .button{padding:14px 21px;font-size:12px}.hero .explore{position:absolute;bottom:23px;left:7%;margin-top:0;font-size:9px}.hero-caption{right:7%;bottom:30px;font-size:6px;letter-spacing:.1em}.specialties{padding:22px 6%;gap:10px 12px;font-size:8px;line-height:1.8}.specialties i{font-size:10px}.section{padding:65px 7%}.intro{display:block}.intro .eyebrow{margin-bottom:20px}.intro p{font-size:18px}.priest{display:flex;flex-direction:column;gap:35px}.priest-photo{width:100%}.priest-photo img{height:480px;object-position:center 32%}.priest-content h2{font-size:42px}.priest-content p{font-size:14px}.eyebrow{font-size:9px;margin-bottom:15px}.statement{font-size:27px}.section-heading{display:block;margin-bottom:32px}.section-heading>p{margin-top:20px;font-size:12px}.section-heading h2{font-size:42px}.service-grid{grid-template-columns:1fr 1fr;gap:35px 18px}.service-photo img{height:255px;object-position:center top}.service h3{font-size:20px}.service p{font-size:12px}.service:last-child{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;column-gap:18px;align-items:start}.service:last-child .service-photo{grid-row:1/3}.service:last-child h3{margin-top:20px}.service:last-child p{align-self:start;margin-top:0}.courses{display:flex;flex-direction:column;gap:35px}.course-content h2{font-size:47px}.course-content p{font-size:14px}.course-image{width:100%;overflow:hidden}.course-image img{height:440px}.course-word{font-size:83px;left:6%;bottom:20px}.numbers>.eyebrow{text-align:left;max-width:230px;margin-bottom:32px}.numbers-grid{grid-template-columns:1fr 1fr;gap:35px 20px}.numbers strong{font-size:45px}.numbers strong small{font-size:11px}.numbers-grid>div{padding-left:18px}.numbers-grid>div:nth-child(3){border:0;padding-left:0}.numbers p{font-size:9px;margin-top:12px}.testimonials h2{font-size:36px;max-width:300px}.quote-mark{display:none}.quote blockquote{font-size:16px;line-height:1.9}.quote-controls{gap:10px}.quote-dots{gap:14px}.contact .section-heading>.text-link{margin-top:20px}.contact-grid{grid-template-columns:1fr;gap:55px}.newsletter h3{font-size:36px}.newsletter>p{font-size:14px}.contact-form{border-top:1px solid var(--line);padding-top:40px}.field-pair{grid-template-columns:1fr 1fr;gap:18px}.footer{padding:35px 7% 85px}.footer-top{align-items:flex-start;gap:25px}.footer-top .brand{width:100%}.footer-top .brand span{font-size:13px}.footer-top .brand img{width:35px;height:40px}.footer-top .socials{gap:20px}.footer-bottom{flex-wrap:wrap;font-size:8px;gap:15px}.footer-bottom>span{width:100%}.floating-wa{bottom:16px;right:16px;width:44px;height:44px}.bio-main{padding-top:35px}.back-link{margin-bottom:35px}.bio-top{display:flex;flex-direction:column;gap:35px;align-items:stretch}.bio-top h1{font-size:53px}.bio-subtitle{font-size:18px}.bio-top img{height:500px}.bio-sections{margin-top:40px}.bio-sections>section{display:block;padding:35px 0}.bio-sections h2{font-size:29px}.bio-sections p{font-size:14px}.bio-cta{display:block;padding:40px 0 0}.bio-cta h2{font-size:35px;margin-bottom:30px}.legal h1{font-size:45px}}
@media(max-width:390px){.header>.socials{gap:6px}.header>.socials a{width:16px}.header .brand span{display:none}.hero{min-height:850px}.hero h1{font-size:68px}.hero-content{padding-top:35px}.hero-slogan{font-size:12px}.hero-content .eyebrow{font-size:7px}.service-photo img{height:230px}.service h3{font-size:18px}.service:last-child p{font-size:11px}.field-pair{grid-template-columns:1fr;gap:0}.numbers strong{font-size:40px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

/* Preserve the supplied logo artwork and its intrinsic aspect ratio. */
.brand img,.hero-name img,.header .brand img,.footer-top .brand img{height:auto;object-fit:contain;filter:none;opacity:1}

/* Refined visual direction — original SVG is never recolored or distorted. */
@font-face{font-family:'Droid Serif';font-style:normal;font-weight:400;font-display:swap;src:url('/assets/droid-serif-regular.ttf') format('truetype')}
.hero-name h1{font-family:'Droid Serif',Georgia,serif;font-size:clamp(40px,4.9vw,76px);font-weight:400;line-height:1.2;letter-spacing:-.055em;white-space:nowrap;color:#7c2ae8;text-shadow:0 0 24px #7c2ae84d,0 0 60px #7c2ae824;transition:text-shadow .5s,transform .5s;transform:translate3d(var(--name-x,0px),var(--name-y,0px),0)}
.hero-name:hover h1{ text-shadow:0 0 10px #7c2ae87a,0 0 35px #7c2ae878,0 0 75px #7c2ae84a}
.hero-name{gap:20px;margin-bottom:28px}.hero-name img{flex-shrink:0;width:52px}.hero-content{padding-top:110px;width:64%;position:relative;z-index:3}.hero-slogan{max-width:440px}.hero-slogan em{color:#7c2ae8}
.desktop-nav a,.mobile-nav>a,.socials a{color:#7c2ae8}.desktop-nav a:hover,.mobile-nav>a:hover{color:#7c2ae8;text-shadow:0 0 16px #7c2ae8}.socials a{border-radius:50%;transition:filter .35s,transform .35s,background .35s;filter:drop-shadow(0 0 3px #7c2ae830)}.socials a:hover,.socials a:focus-visible{color:#7c2ae8;filter:drop-shadow(0 0 6px #7c2ae8) drop-shadow(0 0 13px #7c2ae875);transform:translateY(-3px) scale(1.12)}
.hero{background:#000;--light-x:68%;--light-y:55%;--light-strength:.4}.hero-art{top:20px;right:0;width:min(88%,1265px);mask-image:linear-gradient(to right,transparent,#000 12%,#000 88%,transparent);-webkit-mask-image:linear-gradient(to right,transparent,#000 12%,#000 88%,transparent)}
.hero:after{background:linear-gradient(90deg,#000 0%,#000d 17%,#0006 39%,transparent 62%,#0005 94%,#000 100%),linear-gradient(180deg,#000 0%,transparent 16%,transparent 72%,#000 98%)}
.hero:before{content:'';position:absolute;inset:0;pointer-events:none;z-index:1;opacity:var(--light-strength);background:radial-gradient(ellipse 290px 230px at var(--light-x) var(--light-y),#7c2ae833,transparent 76%);transition:opacity .6s;mix-blend-mode:screen}
.specialties{padding:15px 24px;background:linear-gradient(90deg,#000,#16082255,#000);border-top:0;border-bottom-color:#7c2ae82b}
.button{border-radius:50px;border:1px solid #b488f044;background:linear-gradient(115deg,#481382 0%,#7c2ae8 34%,#a752f0 54%,#661fc4 75%,#391064 100%);background-size:240% 100%;background-position:0% 50%;box-shadow:inset 0 1px 0 #ffffff18,0 5px 24px #7c2ae81c;transition:background-position .65s ease,box-shadow .4s,transform .4s,border-color .4s;gap:22px;padding:16px 25px}
.button:hover,.button:focus-visible{background:linear-gradient(115deg,#481382 0%,#7c2ae8 34%,#a752f0 54%,#661fc4 75%,#391064 100%);background-size:240% 100%;background-position:100% 50%;border-color:#bb8df480;box-shadow:inset 0 1px 0 #ffffff25,0 8px 35px #7c2ae84d;transform:translateY(-3px)}
.button>span{transition:transform .35s}.button:hover>span{transform:translate(2px,-2px)}.footer-cta{white-space:nowrap;font-size:11px}.footer-cta:before{content:'';width:19px;height:19px;flex-shrink:0;background:currentColor;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='black' stroke-width='1.7' d='M21 11.5a9 9 0 0 1-13.5 8L3 21l1.5-4.5A9 9 0 1 1 21 11.5Z M8 7c0 5 4 9 8 9l1-3-3-1-1 1-3-3 1-1-1-2z'/%3E%3C/svg%3E") center/contain no-repeat}
.intro{align-items:center}.sigil-scene{position:relative;width:230px;height:250px;margin:auto;display:grid;place-items:center;perspective:800px;isolation:isolate}.sigil-scene:before{content:'';position:absolute;inset:15%;border-radius:50%;background:radial-gradient(circle,#7c2ae82b,transparent 68%);filter:blur(10px);transition:opacity .4s,transform .4s}.sigil-scene img{width:118px;height:auto;z-index:2;transform:translate3d(var(--sigil-x,0px),var(--sigil-y,0px),0);transition:transform .25s ease-out,filter .4s;filter:drop-shadow(0 0 14px #7c2ae85c)}.sigil-scene:hover img,.sigil-scene:focus-visible img{filter:drop-shadow(0 0 22px #7c2ae8a0)}.sigil-scene:hover:before{transform:scale(1.3)}.sigil-orbit{position:absolute;inset:18px;border:1px solid #7c2ae82f;border-radius:50%;animation:orbit 35s linear infinite}.sigil-orbit:before{content:'';position:absolute;top:20px;left:25px;width:5px;height:5px;border-radius:50%;background:#7c2ae8;box-shadow:0 0 16px #7c2ae8}.orbit-two{inset:0 6px;animation-direction:reverse;animation-duration:48s;border-style:dashed;opacity:.45}@keyframes orbit{to{transform:rotate(360deg)}}
.priest-photo{isolation:isolate}.priest-photo img{mask-image:linear-gradient(to bottom,transparent 0%,#000 12%,#000 80%,transparent 100%);-webkit-mask-image:linear-gradient(to bottom,transparent 0%,#000 12%,#000 80%,transparent 100%)}.priest-photo:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,#000 0%,transparent 15%,transparent 85%,#000 100%)}.image-label{z-index:2;background:none;bottom:8px}
.scroll-clear{filter:blur(var(--reveal-blur,0px));opacity:var(--reveal-opacity,1);transform:translateY(var(--reveal-shift,0px));will-change:filter,opacity;transition:filter .12s linear,opacity .12s linear,transform .12s linear}.scroll-clear:focus-within{filter:none!important;opacity:1!important;transform:none!important}
.service{position:relative;transition:transform .45s}.service h3{transition:color .35s,transform .35s;text-wrap:balance}.service p{transition:color .35s,transform .35s}.service h3:after{content:'';display:block;width:28px;height:2px;background:linear-gradient(90deg,#7c2ae8,#7c2ae800);margin-top:13px;transition:width .45s}.service:hover,.service:focus-within{transform:translateY(-6px)}.service:hover h3,.service:focus-within h3{color:#ae73fb;transform:translateX(3px)}.service:hover h3:after,.service:focus-within h3:after{width:100%}.service:hover p,.service:focus-within p{color:#ddd3e8;transform:translateX(3px)}.service-photo{border-radius:5px;box-shadow:0 0 0 1px #7c2ae800;transition:box-shadow .4s}.service:hover .service-photo{box-shadow:0 0 0 1px #7c2ae840,0 15px 35px #7c2ae810}
.numbers-heading{text-align:center;margin-bottom:48px}.numbers-heading h2{font-size:42px;margin-bottom:17px;display:inline-block;position:relative}.numbers-heading h2:after{content:'';display:block;height:2px;width:60%;margin:18px auto 0;background:linear-gradient(90deg,transparent,#7c2ae8,transparent);background-size:200% 100%;animation:number-line 5s ease-in-out infinite}.numbers-heading .eyebrow{display:block;font-size:9px}.numbers-grid strong{color:#b17bf8;background:linear-gradient(110deg,#7c2ae8 0%,#c59cf9 45%,#8d38ed 75%,#7c2ae8 100%);background-size:200% 100%;background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;filter:drop-shadow(0 0 20px #7c2ae835);transition:filter .4s,background-position .6s}.numbers-grid>div:hover strong{background-position:100% 50%;filter:drop-shadow(0 0 25px #7c2ae87a)}.numbers-grid>div{transition:border-color .4s}.numbers-grid>div:hover{border-color:#7c2ae8}.numbers strong small{-webkit-text-fill-color:#b79bcf;background:none}.agency-credit strong{color:#b98af7}.agency-credit:hover{color:#b98af7}.footer-bottom{flex-wrap:wrap}.footer-bottom .agency-credit{font-size:9px}@keyframes number-line{50%{background-position:100% 50%;opacity:.5}}
@media(max-width:1100px){.hero-content{padding-top:110px;width:72%}.hero-name h1{font-size:5vw}.hero-name img{width:44px}.hero-name{gap:17px}.hero-art{top:35px;width:95%}.footer-cta{gap:13px;padding:14px 20px}}
@media(max-width:850px){.hero-content{width:80%;padding-top:110px}.hero-name h1{font-size:5.7vw}.hero-name img{width:40px}.hero-art{top:85px}.sigil-scene{width:185px;height:210px}.sigil-scene img{width:100px}.numbers-heading h2{font-size:36px}.footer-top .footer-cta{width:auto}}
@media(max-width:700px){.hero-content{width:100%;padding:46px 6% 0}.hero-name{gap:12px;margin-bottom:22px}.hero-name h1{font-size:8.2vw;letter-spacing:-.055em;line-height:1.3}.hero-name img{width:33px}.hero-slogan{max-width:none}.hero-art{top:0;left:0;width:100%;height:100%;mask-image:linear-gradient(180deg,transparent,#000 20%,#000 80%,transparent);-webkit-mask-image:linear-gradient(180deg,transparent,#000 20%,#000 80%,transparent)}.hero:after{background:linear-gradient(180deg,#000 0%,#0003 23%,transparent 42%,transparent 77%,#000 99%),linear-gradient(90deg,#000a,transparent 15%,transparent 85%,#000a)}.hero:before{background:radial-gradient(ellipse at 50% 65%,#7c2ae825,transparent 65%)}.hero{min-height:880px}.specialties{padding:13px 6%;font-size:7.5px;gap:7px 10px}.intro{display:flex;flex-direction:column;gap:30px}.sigil-scene{width:190px;height:210px}.sigil-scene img{width:104px}.intro p{font-size:17px}.numbers-heading{text-align:left;margin-bottom:35px}.numbers-heading h2{font-size:34px}.numbers-heading h2:after{margin-left:0}.numbers-heading .eyebrow{font-size:8px}.testimonials h2{font-size:38px;max-width:none}.footer-cta{white-space:normal;font-size:11px}.footer-top .footer-cta{width:100%;justify-content:center}.footer-cta>span{margin-left:auto}.footer-bottom .agency-credit{width:100%}.priest-photo img{height:auto;max-height:600px;object-fit:contain}.priest-photo:after{background:linear-gradient(90deg,#000,transparent 12%,transparent 88%,#000)}}
@media(max-width:390px){.hero{min-height:820px}.hero-name h1{font-size:8.1vw}.hero-name img{width:29px}.hero-name{gap:10px}}
@media(prefers-reduced-motion:reduce){.scroll-clear{filter:none!important;opacity:1!important;transform:none!important}.hero-name h1,.sigil-scene img{transform:none!important}.sigil-orbit,.numbers-heading h2:after{animation:none!important}.hero:before{opacity:.3}}

/* Compact hero: presentation is integrated into the opening section. */
.desktop-nav a,.mobile-nav>a{color:#b7b2bf}.desktop-nav a:hover,.mobile-nav>a:hover{color:#e9e7ee;text-shadow:none}
.hero-content{padding-top:62px;padding-bottom:58px}.hero-name{margin-bottom:18px}.hero-slogan{font-size:13px;line-height:1.45;margin-bottom:23px}.hero-description{max-width:425px;margin:0 0 27px;padding-left:17px;border-left:1px solid #7c2ae854}.hero-description p{font-size:13px;line-height:1.75;color:#b1a9ba;letter-spacing:.005em}.hero-description p+p{margin-top:12px}.hero-description strong{font-weight:500;color:#d5c8e6}.hero .button{font-size:12px}.hero{min-height:650px}
@media(max-width:1100px){.hero-content{padding-top:58px;padding-bottom:45px}.hero-description{max-width:385px}.hero-description p{font-size:12px;line-height:1.75}.hero-slogan{font-size:12px;line-height:1.45}}
@media(max-width:850px){.hero-content{padding-top:54px}.hero-description{max-width:360px}.hero-name{margin-bottom:18px}}
@media(max-width:700px){.hero{min-height:1050px}.hero-content{padding:35px 6% 0}.hero-name{margin-bottom:15px}.hero-slogan{font-size:11px;line-height:1.4;margin-bottom:21px}.hero-description{max-width:370px;margin:0 auto 23px;padding:0;border:0}.hero-description p{font-size:12px;line-height:1.65;color:#b8b0c0}.hero-description p+p{margin-top:10px}.hero:after{background:linear-gradient(180deg,#000 0%,#000e 31%,#0005 47%,transparent 62%,transparent 83%,#000 99%),linear-gradient(90deg,#000a,transparent 15%,transparent 85%,#000a)}}
@media(max-width:390px){.hero{min-height:1010px}.hero-content{padding-top:30px}.hero-description p{font-size:11.5px}.hero-slogan{font-size:10.5px}}

/* Fade the course photograph into the actual section background on every edge. */
.course-image{background:transparent;isolation:isolate}
.course-image img{
 -webkit-mask-image:linear-gradient(to right,transparent 0%,#000 17%,#000 83%,transparent 100%),linear-gradient(to bottom,transparent 0%,#000 17%,#000 79%,transparent 100%);
 -webkit-mask-composite:source-in;
 mask-image:linear-gradient(to right,transparent 0%,#000 17%,#000 83%,transparent 100%),linear-gradient(to bottom,transparent 0%,#000 17%,#000 79%,transparent 100%);
 mask-composite:intersect;
 mask-repeat:no-repeat;
}

/* One continuous cursor light across all sections and pages. */
.site-cursor-light{position:fixed;top:0;left:0;width:580px;height:460px;z-index:60;pointer-events:none;user-select:none;opacity:0;background:radial-gradient(ellipse 290px 230px at center,#7c2ae833 0%,transparent 76%);mix-blend-mode:screen;will-change:transform;transition:opacity .6s ease;contain:strict}
.site-cursor-light.is-visible{opacity:.85}
body.has-site-cursor-light .hero:before{opacity:0}
@media(hover:none),(pointer:coarse),(prefers-reduced-motion:reduce){.site-cursor-light{display:none}body.has-site-cursor-light .hero:before{opacity:.3}}

/* Violet gradient name and defined biography call to action. */
.hero-name h1{color:#a66aef;background:linear-gradient(110deg,#7c2ae8 0%,#b67af5 30%,#ebd5ff 50%,#a454ed 72%,#7c2ae8 100%);background-size:200% 100%;background-position:0% 50%;background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;text-shadow:none;filter:drop-shadow(0 0 15px #7c2ae850);transition:background-position .85s ease,filter .5s ease,transform .5s ease}
.hero-name:hover h1{text-shadow:none;background-position:100% 50%;filter:drop-shadow(0 0 21px #7c2ae890)}
.priest-cta{min-width:165px;margin-top:3px;justify-content:space-between;padding:15px 25px;font-size:12px}
@media(prefers-reduced-motion:reduce){.hero-name h1{transition:none}}

/* Horizontal carousel: persistent pagination and arrows, seamless wrap. */
.testimonial-body{min-width:0}
.horizontal-carousel{overflow:hidden;touch-action:pan-y}
.quote-track{display:flex;align-items:flex-start;width:100%;will-change:transform}
.horizontal-carousel .quote,.horizontal-carousel .quote.active{display:block;flex:0 0 100%;min-width:0;margin:0;padding-right:2px;animation:none}
.carousel-ready+.quote-controls{flex-wrap:wrap;gap:16px}
.carousel-pause{background:none;color:#b7aac7;border:1px solid #4a315f;border-radius:20px;padding:6px 13px;font-size:10px;letter-spacing:.03em;transition:color .2s,border-color .2s}
.carousel-pause:hover{color:white;border-color:#7c2ae8}
@media(max-width:700px){.carousel-pause{margin-left:auto}.quote-controls .arrows{margin-left:auto}}
@media(prefers-reduced-motion:reduce){.quote-track{transition:none!important}}

/* Biography page only: full original portrait and expandable trajectory. */
.bio-top img.bio-portrait{width:100%;max-width:480px;height:auto;max-height:none;object-fit:contain;object-position:center;justify-self:center;margin:0 auto;aspect-ratio:1278/2048;
 -webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 7%,#000 93%,transparent 100%),linear-gradient(180deg,transparent 0%,#000 6%,#000 91%,transparent 100%);
 -webkit-mask-composite:source-in;
 mask-image:linear-gradient(90deg,transparent 0%,#000 7%,#000 93%,transparent 100%),linear-gradient(180deg,transparent 0%,#000 6%,#000 91%,transparent 100%);
 mask-composite:intersect;mask-repeat:no-repeat;
}
.bio-sections>.bio-accordion{display:block;margin:0;border-top:1px solid #33263e;border-bottom:0;overflow:hidden}
.bio-sections>.bio-accordion:last-child{border-bottom:1px solid #33263e}
.bio-accordion>summary{display:flex;gap:24px;padding:29px 0;align-items:center;cursor:pointer;list-style:none}
.bio-accordion>summary h2{font-size:clamp(22px,2.5vw,32px);line-height:1.3;margin:0;transition:color .25s}
.bio-accordion>summary:hover h2,.bio-accordion[open]>summary h2{color:#bb8af7}
.bio-accordion>summary .plus{display:grid;place-items:center;flex-shrink:0;width:38px;height:38px;border:1px solid #7c2ae85c;border-radius:50%;font-size:25px;line-height:1}
.bio-accordion-content{display:flow-root;padding:0 64px 25px 0}
.bio-accordion-content p:first-child{margin-top:0}.bio-accordion-content p:last-child{margin-bottom:0}
@media(max-width:700px){.bio-top img.bio-portrait{width:100%;height:auto;max-height:none}.bio-accordion>summary{padding:23px 0;gap:16px}.bio-accordion>summary h2{font-size:23px}.bio-accordion-content{padding:0 0 25px}.bio-accordion>summary .plus{width:32px;height:32px;font-size:22px}}

/* Biography closes directly after the final trajectory item. */
.bio-main{padding-bottom:24px}
.bio-sections>.bio-accordion:last-child{border-bottom:0}
.bio-main+.footer{border-top:0}

/* Bring the opening portraits together without resizing either image. */
.hero + #sacerdote{padding-top:40px}
@media(max-width:700px){
 .hero + #sacerdote{position:relative;margin-top:-140px;padding-top:0}
}
@media(max-width:390px){
 .hero + #sacerdote{margin-top:-125px}
}

#newsletter-form .email-row button{font-size:12px;font-weight:600;white-space:nowrap;padding:12px 8px}#newsletter-form .email-row input{min-width:0}

/* Bilingual, on-site newsletter feedback. */
.newsletter-status{margin-top:24px;padding:24px;border:1px solid #7c2ae866;border-radius:18px;background:radial-gradient(ellipse at top right,#7c2ae828,transparent 75%),#0b0710;box-shadow:0 0 30px #7c2ae814}
.newsletter-status[hidden]{display:none}.newsletter-status-mark{display:block;color:#b98af7;font-size:28px;margin-bottom:8px}.newsletter-status h4{margin:0;font-size:18px;line-height:1.4;font-weight:500;color:#eee3ff}.newsletter-status h4[lang=en]{font-size:14px;color:#b98af7;margin-top:4px}.newsletter-status p{font-size:13px;line-height:1.7;margin-top:16px}.newsletter-status p[lang=en]{font-size:12px;color:#9789a8;margin-top:8px}.newsletter-status[data-state=sending] .newsletter-status-mark{animation:newsletter-pulse 1.2s ease-in-out infinite}#newsletter-form button:disabled{cursor:wait;opacity:.65}.newsletter-thanks{max-width:800px;text-align:center;min-height:65vh}.newsletter-thanks .confirmation-logo{margin:0 auto 24px;height:auto}.newsletter-thanks h1{font-size:clamp(32px,5vw,58px)}.newsletter-thanks h2{font-size:clamp(20px,3vw,28px);color:#b98af7;margin:18px 0 30px;letter-spacing:-.02em}.newsletter-thanks p{max-width:600px;margin:18px auto}.newsletter-thanks p[lang=en]{font-size:14px;color:#9789a8}.newsletter-thanks .button{margin-top:24px}@keyframes newsletter-pulse{50%{opacity:.35}}@media(prefers-reduced-motion:reduce){.newsletter-status-mark{animation:none!important}}

/* Language selector, available on every page and screen size. */
.language-switch{position:relative;margin:0;border:0;flex-shrink:0;z-index:35;font-size:12px}.language-switch>summary{gap:7px;border:1px solid #7c2ae866;border-radius:24px;padding:9px 12px;color:#ded4eb;white-space:nowrap;background:#120a1c}.language-switch>summary:hover{border-color:#b98af7;box-shadow:0 0 18px #7c2ae830}.language-switch nav{position:absolute;right:0;top:calc(100% + 8px);min-width:190px;padding:8px;background:#120b1c;border:1px solid #7c2ae866;border-radius:14px;box-shadow:0 12px 35px #0009}.language-switch nav a{display:block;padding:10px 12px;border-radius:8px;font-size:13px;color:#d9d0e3;white-space:nowrap}.language-switch nav a:hover,.language-switch nav a[aria-current=page]{background:#7c2ae833;color:#fff}.header{gap:20px}.desktop-nav{gap:20px}html[lang=en] .hero-description,html[lang=es] .hero-description{max-width:440px}html[lang=en] .hero-content,html[lang=es] .hero-content{padding-bottom:45px}html[lang=en] .newsletter-status p,html[lang=es] .newsletter-status p{color:#b1a9ba}html[lang=en] .newsletter-status h4{font-size:18px;color:#eee3ff}
@media(max-width:1100px){.header>.socials{display:none}.language-switch{margin-left:auto}.desktop-nav{gap:16px}}
@media(max-width:700px){.language-switch>summary{padding:8px 10px;font-size:11px}.header{gap:10px}.language-switch nav{right:0}.hero-description{overflow-wrap:break-word}.hero-name h1{white-space:nowrap}.newsletter-thanks .button{gap:16px}html[lang=en] .hero-content,html[lang=es] .hero-content{padding-bottom:0}}
