@font-face{font-family:Manrope;src:url('assets/manrope-regular.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:Manrope;src:url('assets/manrope-bold.ttf') format('truetype');font-weight:600 800;font-display:swap}
:root{--bg:#0b111b;--surface:#131e2f;--ink:#f1f5fc;--muted:#afbcd0;--accent:#9ecaff;--line:#334257;--space:clamp(24px,5vw,88px);--radius:14px;--ease:cubic-bezier(.23,1,.32,1);color-scheme:dark;scroll-behavior:smooth;scroll-padding-top:110px}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:Manrope,Arial,sans-serif;font-size:16px;line-height:1.6;overflow-x:clip}::selection{background:var(--accent);color:var(--bg)}html{scrollbar-color:#647fa2 var(--bg);scrollbar-width:thin}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:6px}button:active,.button:active{transform:scale(.97)}img,video{display:block;max-width:100%;object-fit:cover}h1,h2,h3,p,figure{margin:0}h1,h2{font-weight:400;letter-spacing:-.04em;line-height:1.06;text-wrap:balance}h3{font-size:1.25rem;font-weight:600;line-height:1.4}p{color:var(--muted);max-width:65ch}em{font-style:normal;color:var(--accent)}[hidden]{display:none!important}.skip{position:fixed;left:20px;top:-100px;padding:12px 20px;background:var(--accent);color:var(--bg);z-index:100}.skip:focus{top:12px}
.header{height:100px;padding:0 var(--space);display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--line);position:relative;z-index:20;background:var(--bg)}.brand{font-weight:700;font-size:19px;line-height:1.05;letter-spacing:-.035em;display:flex;gap:12px;align-items:center}.brand span span{display:block;color:var(--muted);font-size:16px;font-weight:400;margin-top:5px}.brand img{width:44px;height:44px;object-fit:contain}.nav{display:flex;gap:32px;font-size:14px}.nav a,.text-link,.footer a:not(.footer-name),.socials a{transition:color .2s;text-underline-offset:6px}.nav a:hover,.text-link:hover,.footer a:hover,.socials a:hover{color:var(--accent)}.nav-visit{border:1px solid #647fa2;padding:10px 20px;border-radius:40px;font-size:14px;transition:background .2s,color .2s}.nav-visit:hover{background:var(--ink);color:var(--bg)}.menu-button{display:none;background:none;border:1px solid var(--line);border-radius:24px;padding:8px 16px}.mobile-nav{padding:20px var(--space);background:var(--surface);position:absolute;left:0;right:0;z-index:19}.mobile-nav a{display:block;padding:12px 0;border-bottom:1px solid var(--line)}
.hero{padding:58px var(--space) 0}.hero-copy{display:flex;align-items:flex-end;justify-content:space-between;gap:42px;margin-bottom:52px}h1{font-size:clamp(3.6rem,7.25vw,7.2rem);line-height:1.02}h1 span{display:block}h1 span:last-child{color:var(--accent)}.hero-intro{max-width:305px;padding-bottom:7px}.hero-intro p{font-size:15px;line-height:1.7;margin-bottom:23px}.button{display:inline-flex;align-items:center;justify-content:center;padding:14px 23px;border-radius:32px;font-weight:600;font-size:14px;transition:background .2s,transform .2s var(--ease);white-space:nowrap;border:0}.primary{background:var(--accent);color:var(--bg)}.primary:hover{background:#c4dfff}.hero-perspective{perspective:1400px;padding:0 5%;}.hero-media{height:clamp(350px,45vw,690px);position:relative;overflow:hidden;border-radius:var(--radius);transform-origin:center;isolation:isolate}.hero-media>img,.hero-media>video{width:100%;height:100%;position:absolute;inset:0;object-position:50% 58%}.media-shade{position:absolute;inset:0;background:linear-gradient(180deg,transparent 30%,rgba(0,0,0,.6))}.media-message{position:absolute;bottom:8%;left:6%;color:var(--ink);font-size:clamp(2rem,4vw,4rem);letter-spacing:-.035em;line-height:1.08;max-width:12ch}.hero-caption{display:flex;justify-content:space-between;gap:24px;align-items:center;font-size:12px;color:var(--muted);margin-top:24px}.motion-toggle{background:none;border:0;border-bottom:1px solid var(--line);font-size:12px;padding:5px 0;white-space:nowrap}.motion-toggle:hover{color:var(--ink)}
.section{padding:clamp(90px,10vw,160px) var(--space)}.manifesto{padding-top:clamp(110px,14vw,210px);padding-bottom:clamp(110px,14vw,210px)}.section-label{font-size:14px;color:var(--muted);margin-bottom:35px}.manifesto h2{font-size:clamp(3rem,7.7vw,7.4rem);max-width:1100px}.manifesto h2 span{color:var(--muted)}.manifesto-bottom{display:grid;grid-template-columns:1fr 1fr;gap:70px;margin-top:54px}.short-rule{width:95px;border-top:2px solid var(--accent);margin-top:14px}.manifesto-bottom p{font-size:clamp(17px,1.5vw,22px);max-width:520px}
.journey{padding:0 var(--space);}.journey-stage{min-height:850px;min-height:100svh;display:grid;grid-template-columns:1fr 1.2fr;gap:5%;align-items:center;position:relative;overflow:hidden}.journey-heading{position:relative;z-index:2;padding:60px 0}.journey h2{font-size:clamp(3.2rem,6vw,6rem);max-width:600px}.journey-heading p{margin-top:30px;max-width:320px;font-size:17px}.photo-space{perspective:1200px;position:relative;padding:70px 30px 100px 0}.community-photo{height:570px;transform-origin:50% 65%;border-radius:var(--radius);overflow:hidden}.community-photo img{width:100%;height:100%;object-position:55% 50%}.floating-word{position:absolute;bottom:55px;left:-60px;font-size:clamp(4rem,8vw,8rem);letter-spacing:-.04em;font-weight:600;color:var(--ink);line-height:1;z-index:3;pointer-events:none;text-shadow:0 8px 30px #0008}
.gatherings{border-top:1px solid var(--line);margin-top:90px;display:grid;grid-template-columns:1.2fr 1fr;gap:9%}.gatherings h2{font-size:clamp(2.4rem,4vw,4rem)}.gatherings h2 span{color:var(--muted)}.gatherings-intro>p{margin-top:28px}.schedule{align-self:center}.schedule-empty{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:28px 0}.schedule-empty p{margin-top:12px}.schedule-empty span{display:block;font-size:12px;color:var(--muted);margin-top:28px}.schedule-row{display:grid;grid-template-columns:1fr auto;gap:12px;padding:25px 0;border-bottom:1px solid var(--line)}.schedule-row:first-child{border-top:1px solid var(--line)}.schedule-day{font-size:14px;color:var(--muted)}.schedule-name{font-size:19px;margin-top:4px}.schedule-time{font-size:24px;color:var(--accent);align-self:center}
.visit{border-top:1px solid var(--line);padding-bottom:120px}.visit h2{font-size:clamp(3.1rem,6.6vw,6.5rem);max-width:1100px}.visit-grid{display:grid;grid-template-columns:1fr 1fr;gap:14%;margin-top:70px}.visit-grid p{margin-top:16px;max-width:410px}.visit-grid .button{margin-top:30px}.pending{font-size:14px}.visit-details>p{margin-bottom:18px}.text-link{text-decoration:underline;display:inline-block;margin-bottom:25px}.visit-details details{border-top:1px solid var(--line);padding:22px 0}.visit-details details:last-child{border-bottom:1px solid var(--line)}summary{list-style:none;cursor:pointer;padding-right:28px;position:relative;font-size:16px}summary::-webkit-details-marker{display:none}summary:after{content:'+';position:absolute;right:0;font-size:23px;line-height:1}details[open] summary:after{content:'−'}details p{font-size:14px;line-height:1.8}.socials{display:flex;gap:24px;margin-top:20px}.socials a{text-decoration:underline}
.footer{padding:70px var(--space) 24px;border-top:1px solid var(--line);background:#0f1929}.footer-name{font-size:clamp(2.9rem,10.4vw,10rem);letter-spacing:-.04em;line-height:1.02;display:inline-block}.footer-name span{color:var(--accent)}.footer-bottom{display:flex;justify-content:space-between;gap:24px;margin-top:70px;padding-top:22px;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}#preview-note{font-size:12px;margin-top:15px}.noscript{padding:20px var(--space)}
/* Full-width surfaces at every desktop size. */
@media(max-width:1000px){.hero-copy{gap:20px}h1{font-size:7.5vw}.hero-intro{max-width:255px}.hero-intro .button{padding:13px 16px;font-size:12px}.nav{gap:18px}.community-photo{height:450px}.journey-stage{min-height:720px}.floating-word{left:-20px}.gatherings{gap:6%}}
@media(max-width:700px){:root{--space:22px;scroll-padding-top:24px}.header{height:82px;gap:10px}.brand{font-size:17px}.brand span span{font-size:14px}.nav,.nav-visit{display:none}.menu-button{display:block;font-size:14px}.hero{padding-top:42px}.hero-copy{display:block;margin-bottom:35px}h1{font-size:clamp(2.9rem,11.7vw,5rem);line-height:1.06}.hero-intro{max-width:330px;margin-top:24px}.hero-intro p{font-size:14px;margin-bottom:20px}.hero-intro .button{font-size:13px;padding:13px 19px}.hero-perspective{padding:0}.hero-media{height:370px}.hero-media>img{object-position:55% 55%}.media-message{font-size:2.2rem;left:8%;bottom:9%}.hero-caption{align-items:flex-start;gap:15px;margin-top:18px}.hero-caption>span{max-width:170px;line-height:1.5;font-size:11px}.motion-toggle{font-size:11px}.manifesto{padding-top:100px;padding-bottom:80px}.manifesto h2{font-size:clamp(2.5rem,10.8vw,4.6rem)}.section-label{margin-bottom:25px}.manifesto-bottom{display:block;margin-top:30px}.short-rule{display:block;margin:0 0 26px;width:60px}.manifesto-bottom p{font-size:16px}.journey-stage{display:block;min-height:0;overflow:visible}.journey-heading{padding:30px 0}.journey h2{font-size:clamp(2.9rem,12vw,4.8rem)}.journey-heading p{font-size:16px;max-width:310px;margin-top:24px}.photo-space{padding:18px 0 45px}.community-photo{height:430px}.floating-word{font-size:18vw;bottom:16px;left:8px}.gatherings{display:block;margin-top:55px;padding-top:75px;padding-bottom:75px}.gatherings h2{font-size:2.5rem}.schedule{margin-top:36px}.visit{padding-top:75px;padding-bottom:75px}.visit h2{font-size:clamp(2.6rem,10.8vw,4.6rem)}.visit-grid{display:block;margin-top:40px}.visit-details{margin-top:45px}.footer{padding-top:50px}.footer-name{font-size:12vw}.footer-bottom{margin-top:45px;font-size:11px}.footer-bottom span{max-width:200px}#preview-note{font-size:11px}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
html.reduce-motion{scroll-behavior:auto}
.label-roll{display:inline-block;position:relative;vertical-align:middle;overflow:hidden;perspective:300px;line-height:1.6;padding:2px 0}
.label-size{display:block;visibility:hidden;white-space:nowrap}
.label-front,.label-back{position:absolute;inset:2px 0;display:block;white-space:nowrap;transform-origin:50% 50%;backface-visibility:hidden;transition:transform .55s var(--ease),opacity .3s var(--ease),letter-spacing .55s var(--ease)}
.label-front{transform:translateY(0) rotateX(0);opacity:1;letter-spacing:0}
.label-back{transform:translateY(115%) rotateX(-75deg);opacity:0;letter-spacing:.09em;pointer-events:none}
.roll-link:focus-visible .label-front{transform:translateY(-115%) rotateX(75deg);opacity:0;letter-spacing:.09em}
.roll-link:focus-visible .label-back{transform:translateY(0) rotateX(0);opacity:1;letter-spacing:0}
@media(hover:hover) and (pointer:fine){.roll-link:hover .label-front{transform:translateY(-115%) rotateX(75deg);opacity:0;letter-spacing:.09em}.roll-link:hover .label-back{transform:translateY(0) rotateX(0);opacity:1;letter-spacing:0}}
@media(prefers-reduced-motion:reduce){.roll-link .label-front{transform:none!important;opacity:1!important;letter-spacing:0!important}.roll-link .label-back{display:none}}
html.reduce-motion .roll-link .label-front{transform:none!important;opacity:1!important;letter-spacing:0!important}html.reduce-motion .roll-link .label-back{display:none}

h1{font-size:clamp(3.2rem,6.2vw,6rem)}
@media(max-width:1000px){h1{font-size:6.5vw}}
@media(max-width:700px){h1{font-size:clamp(2.1rem,9vw,3.5rem)}}

@media(max-width:700px){.schedule-row{grid-template-columns:1fr auto;gap:10px}.schedule-time{font-size:20px;white-space:nowrap}.schedule-name{font-size:18px}}

/* Atmosfera: luz, papel e azul. Cores locais mantem o contraste do conteudo. */
:root{--bg:#edf4f8;--surface:#dceaf4;--ink:#152c45;--muted:#496078;--accent:#205da2;--line:#b9cbdc;color-scheme:light}
body{background:#edf4f8;background-image:none}
.header{background:#edf4f8;border-color:#bccfdf;height:90px}
.nav-visit{border-color:#6887a7}.nav-visit:hover{background:#153c69;color:#fff}
.mobile-nav{background:#e4eef6}
.primary{background:#205da2;color:#fff}.primary:hover{background:#17497f}
.hero{position:relative;isolation:isolate;overflow:clip;padding-bottom:65px;background:linear-gradient(145deg,#f4f8fa 12%,#e1eef8 60%,#b7d4ed)}
.hero::before,.hero::after{content:'';position:absolute;z-index:-1;pointer-events:none;border:1px solid #5c92bd38;border-radius:50%;width:115vw;height:115vw;right:-62vw;top:-47vw;transform:translateY(var(--ambient-shift,0px))}
.hero::before{box-shadow:0 0 0 65px #86b4d510,0 0 0 130px #86b4d510,0 0 0 195px #86b4d510}
.hero::after{width:80vw;height:80vw;right:-44vw;top:-29vw;background:#fff2}
.hero-copy{position:relative;z-index:1}.hero h1 span:last-child{color:#205da2}
.hero-media{box-shadow:0 28px 65px #15395830,0 0 0 1px #ffffff70}
.media-message{color:#fff}.hero-caption{color:#405976}.motion-toggle{color:#405976;border-color:#8ba7bf}
.manifesto{position:relative;isolation:isolate;overflow:clip;background:#f7f8f5;padding-top:120px;padding-bottom:120px}
.manifesto::before{content:'';position:absolute;z-index:-1;inset:0;pointer-events:none;opacity:.32;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%2390a5b8' opacity='.2' filter='url(%23n)' d='M0 0h180v180H0z'/%3E%3C/svg%3E")}
.manifesto h2 span{color:#23609d}.manifesto-bottom p{color:#496078}
.journey{--bg:#143d68;--surface:#315a80;--ink:#f5f9ff;--muted:#d0e0ef;--accent:#badfff;--line:#587b9c;position:relative;isolation:isolate;color:var(--ink);background:#143d68;border-radius:64px 64px 0 0;padding-top:75px;margin-top:-1px}
.journey::before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:repeating-linear-gradient(115deg,transparent 0,transparent 120px,#ffffff04 121px,#ffffff04 122px),radial-gradient(ellipse at 90% 10%,#487dae80,transparent 65%);border-radius:inherit}
.journey .scroll-card{background:#719ac0;box-shadow:0 32px 70px #031a3659}
.gatherings{--accent:#205da2;--ink:#152c45;--muted:#496078;--line:#b9cbdc;color:var(--ink);margin-top:0;border:0;background:#e7f0f7;position:relative}
.gatherings h2 span{color:#23609d}.schedule{padding:12px 30px;background:#ffffff80;border-radius:16px;box-shadow:0 16px 40px #29517a09}.schedule-row:first-child{border-top:0}.schedule-row:last-child{border-bottom:0}
.visit{--ink:#15334f;--muted:#405e79;--accent:#164f8c;--line:#a4bfd7;color:var(--ink);border:0;background:#c9deef;position:relative;isolation:isolate;overflow:clip}
.visit::before{content:'';position:absolute;z-index:-1;width:900px;height:900px;border:1px solid #ffffff80;border-radius:50%;right:-470px;top:-330px;box-shadow:0 0 0 85px #ffffff18,0 0 0 170px #ffffff12;pointer-events:none}
.footer{--ink:#eff6ff;--muted:#b9cddd;--accent:#a3d2ff;--line:#355472;color:var(--ink);background:#102c48;border:0}
.gallery-page{background:#edf4f8;background-image:none}.gallery-heading{position:relative;overflow:clip;background:linear-gradient(115deg,#edf4f8,#c9e0f2)}
.gallery-heading::after{content:'';position:absolute;pointer-events:none;width:600px;height:600px;border:1px solid #7cadd44d;border-radius:50%;right:-300px;top:-330px;box-shadow:0 0 0 60px #ffffff20,0 0 0 120px #ffffff20}
.gallery-toolbar{padding-top:32px}.photo-window{box-shadow:0 20px 45px #16395825}.gallery-close{margin-top:50px;background:#c9deef}.gallery-footer{background:#102c48;color:#d0dfec;border:0}
@media(max-width:700px){.header{height:82px}.hero{padding-bottom:40px}.hero::before{width:180vw;height:180vw;right:-125vw;top:-30vw}.manifesto{padding-top:80px;padding-bottom:80px}.journey{border-radius:32px 32px 0 0;padding-top:45px}.schedule{padding:8px 18px}.gallery-close{margin-top:30px}.visit::before{right:-680px}}

/* Mescla continua de azul profundo e luz, dentro de cada composicao. */
.header{--ink:#eef6ff;--muted:#c3d6e8;color:var(--ink);background:#123452;border-color:#ffffff21}
.header .nav-visit{color:#eef6ff;border-color:#9cbad2}.header .nav a:hover{color:#b9ddff}
.hero{--ink:#f2f7ff;--muted:#d2e1ee;color:var(--ink);background:radial-gradient(ellipse 75% 90% at 104% 5%,#eff7fb 5%,#bad8ed 30%,transparent 77%),linear-gradient(125deg,#102d4b 5%,#20577e 48%,#82afcf 78%,#e3f0f7 100%)}
.hero h1{color:#f2f7ff;text-shadow:0 2px 18px #0c294820}.hero h1 span:last-child{color:#bde1ff}
.hero-intro p{color:#173d5b}.hero-intro .primary{background:#173f64;color:#fff}.hero-intro .primary:hover{background:#102d4b}
.hero::before,.hero::after{border-color:#c8e6fa40}.hero::before{box-shadow:0 0 0 65px #b0d8f414,0 0 0 130px #b0d8f410,0 0 0 195px #b0d8f408}
.hero-caption{color:#eff7ff}.hero .motion-toggle{color:#173d5b;border-color:#557c9a}.hero .motion-toggle:hover{color:#102d4b}
.manifesto{background:radial-gradient(ellipse at 100% 0,#b5d1e6,transparent 70%),linear-gradient(115deg,#f7f8f5 20%,#e5eef3 65%,#bdd5e6)}
.journey{background:radial-gradient(ellipse 85% 70% at 100% 90%,#bcd8eb 0,#628fad 35%,transparent 80%),linear-gradient(120deg,#102e4d,#245c84);border-radius:0}
.journey::before{border-radius:0;background:repeating-linear-gradient(115deg,transparent 0,transparent 120px,#ffffff06 121px,#ffffff06 122px)}
.gatherings{background:linear-gradient(115deg,#eaf2f7 5%,#d7e7f2 60%,#9cbdd7)}
.visit{background:radial-gradient(ellipse at 100% 100%,#82acca,transparent 70%),linear-gradient(110deg,#dceaf4,#b2cee2)}
.gallery-heading{background:linear-gradient(110deg,#123452 5%,#2b638a 48%,#cce2f1 85%);color:#f2f7ff}.gallery-heading h1 span{color:#bde1ff}.gallery-heading p{color:#173d5b}.gallery-heading .profile-link{color:#173d5b}
@media(max-width:1000px){.hero-intro p{color:#eff7ff}.hero-intro .primary{background:#c5e5fc;color:#133957}}
@media(max-width:700px){.hero{background:radial-gradient(ellipse 100% 65% at 110% 85%,#d3e8f6,transparent 80%),linear-gradient(140deg,#102d4b 10%,#285f87 60%,#92bcd8)}.hero h1 span:last-child{color:#bde1ff}.hero-caption{color:#173d5b}.hero-caption>span{max-width:160px}.hero .motion-toggle{color:#173d5b}.journey{border-radius:0}.gallery-heading{background:linear-gradient(140deg,#123452 5%,#2b638a 65%,#9ac1dc)}.gallery-heading p,.gallery-heading .profile-link{color:#eff7ff}}

/* Agenda: dois ritmos, uma leitura clara. */
.gatherings{display:block;padding-top:100px;padding-bottom:110px}
.gatherings-intro{max-width:850px}.gatherings-intro h2{font-size:clamp(2.5rem,4.8vw,4.6rem)}.gatherings-intro>p{margin-top:22px}
.schedule{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:48px;padding:0;background:none;border-radius:0;box-shadow:none;align-items:stretch}
.schedule-group{padding:34px 36px;border-radius:22px;position:relative;overflow:hidden}
.schedule-group.weekly{--ink:#f2f8ff;--muted:#c0d6e9;--accent:#c3e4ff;--line:#ffffff26;color:var(--ink);background:linear-gradient(125deg,#143654,#29618d);box-shadow:0 18px 35px #173e641c}
.schedule-group.monthly{background:#f5f9fc;border:1px solid #fff;box-shadow:0 18px 35px #173e6409}
.schedule-group-title{font-size:15px;font-weight:600;color:var(--muted);margin:0 0 30px}.schedule-group-note{font-size:14px;margin-top:-22px;margin-bottom:24px}
.schedule-row{grid-template-columns:1fr auto;gap:16px;padding:26px 0;align-items:center;transition:transform .28s var(--ease)}
.schedule-row:first-of-type{border-top:1px solid var(--line)}.schedule-name{font-size:clamp(20px,2vw,27px);line-height:1.2;margin:0;font-weight:600;letter-spacing:-.035em}.schedule-day{margin-top:8px;font-size:13px}.schedule-hours{display:flex;gap:9px;align-items:center}.schedule-time{font-size:clamp(20px,2.2vw,30px);font-weight:600;line-height:1.2;letter-spacing:-.035em;padding:12px;border-radius:10px;background:#dcebf6;color:#174b78;white-space:nowrap;transition:background .25s,transform .3s var(--ease)}
.weekly .schedule-time{background:#ffffff13;color:#e1f2ff;border:1px solid #ffffff1a}
@media(hover:hover) and (pointer:fine){.schedule-row:hover{transform:translateX(4px)}.schedule-row:hover .schedule-time{background:#c4e1f4;transform:translateY(-3px)}.weekly .schedule-row:hover .schedule-time{background:#ffffff25}}
@media(max-width:1000px){.schedule-group{padding:28px 24px}.schedule-hours{gap:6px}.schedule-time{padding:10px;font-size:22px}}
@media(max-width:700px){.gatherings{padding-top:70px;padding-bottom:70px}.schedule{grid-template-columns:1fr;gap:18px;margin-top:32px}.schedule-group{padding:28px 22px;border-radius:18px}.schedule-row{gap:10px;padding:23px 0}.schedule-name{font-size:22px}.schedule-time{font-size:22px}.schedule-group-title{margin-bottom:26px}}
html.reduce-motion .schedule-row,html.reduce-motion .schedule-time{transition:none;transform:none!important}
@media(prefers-reduced-motion:reduce){.schedule-row,.schedule-time{transition:none;transform:none!important}}

/* Controles de movimento retirados da interface; a preferencia do sistema permanece. */
.motion-toggle,.word-control,#hover-toggle{display:none!important}

/* Abertura fotografica, com transicao para a atmosfera azul do site. */
.hero{min-height:760px;min-height:min(900px,100svh);display:grid;place-items:center;padding:100px var(--space) 170px;background:#153a59;isolation:isolate;overflow:hidden}
.hero::before{display:none}.hero::after{inset:auto 0 0;width:100%;height:190px;border:0;border-radius:0;transform:none;background:linear-gradient(0deg,#b8d2e6,transparent);z-index:1;box-shadow:none}
.hero-backdrop{position:absolute;inset:0;z-index:-1;overflow:hidden}.hero-backdrop img,.hero-backdrop video{width:100%;height:112%;object-fit:cover;object-position:center 48%}
.hero-backdrop::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#05162665,#071c35a8 48%,#12375980)}
.hero-copy{display:block;text-align:center;margin:0;width:100%;max-width:1100px;z-index:2}.hero h1{font-size:clamp(3rem,6.5vw,6.5rem);line-height:1.06;color:#fff;text-shadow:0 4px 30px #0005}.hero h1 span:last-child{color:#d2eaff}
.hero-intro{max-width:510px;margin:30px auto 0;padding:0}.hero-intro p{color:#f1f6fb;font-size:17px;line-height:1.7;margin-bottom:27px}.hero-intro .primary{background:#deeffc;color:#143c60;border:1px solid #ffffff80}.hero-intro .primary:hover{background:#fff;color:#123452}
.manifesto{background:linear-gradient(145deg,#b8d2e6 0%,#edf3f6 65%,#d7e5ef)}
.journey::before{background-size:100% 100%,180% 180%;background-image:repeating-linear-gradient(115deg,transparent 0,transparent 120px,#ffffff05 121px,#ffffff05 122px),radial-gradient(ellipse at 70% 50%,#8fc5e550,transparent 65%);animation:ambient-flow 22s ease-in-out infinite alternate}
.visit::before{animation:ambient-orbit 24s ease-in-out infinite alternate}
#titulo2{animation:title-breathe 8s ease-in-out 2.4s infinite}.manifesto h2 span{animation:word-tint 9s ease-in-out infinite}
@keyframes ambient-flow{from{background-position:0 0,0% 20%}to{background-position:0 0,100% 80%}}
@keyframes ambient-orbit{from{transform:translate(0,0) scale(1)}to{transform:translate(-40px,35px) scale(1.08)}}
@keyframes title-breathe{0%,100%{color:#d2eaff;text-shadow:0 0 0 #cbe9ff00}50%{color:#fff;text-shadow:0 0 22px #cbe9ff30}}
@keyframes word-tint{0%,100%{color:#23609d}50%{color:#3e779c}}
@media(max-width:700px){.hero{min-height:690px;min-height:90svh;padding:90px 22px 140px}.hero h1{font-size:clamp(2.8rem,10.7vw,4.5rem)}.hero-intro{margin-top:26px;max-width:340px}.hero-intro p{font-size:16px}.hero-backdrop img{object-position:57% center}.hero::after{height:140px}}
@media(prefers-reduced-motion:reduce){#titulo2,.manifesto h2 span,.journey::before,.visit::before{animation:none!important}}
html.reduce-motion #titulo2,html.reduce-motion .manifesto h2 span,html.reduce-motion .journey::before,html.reduce-motion .visit::before{animation:none!important}
/* Fachada em 16:9 e recorte aproximado. */
.hero{width:100%;aspect-ratio:16/9;min-height:0;height:auto;padding:40px var(--space) 90px;background:#102b46}
.hero-backdrop img,.hero-backdrop video{height:100%;object-position:54% 44%;filter:grayscale(1);transform:scale(1.48);transform-origin:54% 44%;animation:facade-zoom 32s ease-in-out infinite alternate}
.hero-backdrop::after{background:#07172b80}
.hero::after{height:65px;bottom:-1px;background:#102b46;border-radius:65% 40% 0 0 / 100% 100% 0 0}
.hero h1{font-size:clamp(2rem,6.1vw,6rem)}
@keyframes facade-zoom{from{transform:scale(1.48)}to{transform:scale(1.68)}}
/* Bordas esculpidas: cada superficie cobre a anterior, sem faixas de degrade. */
.manifesto{--ink:#f0f6ff;--muted:#c3d6e8;--accent:#acd6fa;color:var(--ink);background:#102b46;padding-bottom:180px}
.manifesto h2 span{color:#a8d5f5;animation:navy-word 9s ease-in-out infinite}.manifesto-bottom p{color:#c3d6e8}
@keyframes navy-word{50%{color:#e1f2ff}}
.journey{--bg:#c9dfec;--surface:#a7c5db;--ink:#173953;--muted:#35566e;--accent:#205f91;color:var(--ink);background:#c9dfec;border-radius:55% 30% 0 0 / 75px 100px 0 0;margin-top:-85px;padding-top:150px;padding-bottom:100px}
.journey::before{inset:-10%;border-radius:45%;background:#eef7fa45;box-shadow:inset 100px 0 0 #9bc4df30;animation:surface-drift 18s ease-in-out infinite alternate}
.journey .scroll-card{background:#91b4ce}
.gatherings{background:#eaf2f7;border-radius:26% 65% 0 0 / 75px 95px 0 0;margin-top:-80px;padding-top:135px;padding-bottom:180px;isolation:isolate;overflow:clip}
.gatherings::before{content:'';position:absolute;width:55vw;height:55vw;right:-30vw;top:10%;border:1px solid #7faace40;border-radius:50%;box-shadow:0 0 0 55px #93bada10,0 0 0 110px #93bada0c;z-index:-1;animation:ring-drift 16s ease-in-out infinite alternate;pointer-events:none}
.visit{background:#bdd6e8;border-radius:60% 25% 0 0 / 95px 65px 0 0;margin-top:-90px;padding-top:145px;padding-bottom:170px}
.footer{position:relative;border-radius:30% 70% 0 0 / 50px 85px 0 0;margin-top:-75px;padding-top:105px}
.gallery-heading{isolation:isolate;background:#174568;padding-bottom:110px;border-radius:0 0 42% 12% / 0 0 65px 35px}
.gallery-heading::before{content:'';position:absolute;z-index:-1;width:90%;height:180%;right:-38%;top:-60%;border-radius:44%;background:#6e9cbb;box-shadow:0 0 0 65px #76a7c130,0 0 0 130px #76a7c118;animation:gallery-tide 16s ease-in-out infinite alternate;pointer-events:none}
.gallery-heading::after{z-index:-1;animation:ring-drift 19s ease-in-out infinite alternate;border-color:#d3edff40}
.gallery-heading>div p{color:#eff7ff}.gallery-heading .profile-link{background:#d8edfc;color:#153c5c;margin-top:24px}.gallery-heading .profile-link:hover{background:#fff;text-decoration:none}
.gallery-page .nav a[aria-current]{color:#c1e3ff}
.gallery-close{position:relative;isolation:isolate;overflow:clip;border-radius:45% 20% 0 0 / 50px 60px 0 0;padding-top:125px;background:#c9deef}
.gallery-close::before{content:'';position:absolute;z-index:-1;width:500px;height:500px;background:#edf6fb60;border-radius:50%;right:-160px;top:-190px;animation:surface-drift 18s ease-in-out infinite alternate;pointer-events:none}
@keyframes surface-drift{from{transform:translate(-3%,2%) rotate(-8deg)}to{transform:translate(7%,-4%) rotate(8deg)}}
@keyframes ring-drift{from{transform:translate(-15px,0) scale(.92)}to{transform:translate(-100px,65px) scale(1.12)}}
@keyframes gallery-tide{from{transform:translate(0,-4%) rotate(-15deg)}to{transform:translate(-16%,12%) rotate(16deg)}}
/* Letras deslocam-se em torno do ponto do cursor, sem refluencia do texto. */
.kinetic-word{display:inline-block!important;white-space:nowrap;font:inherit;color:inherit!important;animation:none!important;line-height:inherit}
.kinetic-char{display:inline-block!important;white-space:pre;font:inherit;color:inherit!important;animation:none!important;transform:translateX(var(--letter-shift,0px));transition:transform .3s cubic-bezier(.23,1,.32,1);will-change:auto}
.schedule-group{transform-style:preserve-3d;transition:box-shadow .35s,border-color .35s;isolation:isolate}
.schedule-group::after{content:'';position:absolute;z-index:-1;pointer-events:none;width:190px;height:190px;left:var(--spot-x,50%);top:var(--spot-y,50%);border-radius:50%;background:#82bdec15;transform:translate(-50%,-50%);opacity:0;transition:opacity .35s}
.schedule-group.weekly{background:#194665}
@media(hover:hover) and (pointer:fine){.schedule-group:hover{box-shadow:0 25px 50px #173e642d}.schedule-group:hover::after{opacity:1}.schedule-group:hover .schedule-group-title{color:var(--accent)}.schedule-time:hover{transform:translateY(-5px) scale(1.08)!important}}
@media(max-width:700px){.hero{aspect-ratio:16/9;padding:18px 16px 35px}.hero h1{font-size:clamp(1.35rem,5.6vw,2.5rem);line-height:1.08}.hero-intro{margin-top:10px;max-width:320px}.hero-intro p{font-size:clamp(10px,2.8vw,14px);line-height:1.4;margin-bottom:10px}.hero-intro .button{font-size:11px;padding:7px 14px;min-height:32px}.hero::after{height:24px}.hero-backdrop img{object-position:54% 44%}.manifesto{padding-bottom:135px}.journey{margin-top:-60px;border-radius:45% 20% 0 0 / 35px 50px 0 0;padding-top:95px;padding-bottom:70px}.gatherings{margin-top:-55px;padding-top:90px;padding-bottom:135px;border-radius:25% 60% 0 0 / 45px 40px 0 0}.visit{margin-top:-60px;padding-top:100px;padding-bottom:125px;border-radius:55% 20% 0 0 / 50px 40px 0 0}.footer{margin-top:-55px;padding-top:85px;border-radius:25% 70% 0 0 / 35px 50px 0 0}.gallery-heading{padding-bottom:80px;border-radius:0 0 45% 10% / 0 0 40px 20px}.gallery-heading::before{right:-65%;width:120%}.gallery-close{padding-top:90px}}
@media(prefers-reduced-motion:reduce){.hero-backdrop img,.hero-backdrop video,.manifesto h2 span,.journey::before,.gatherings::before,.gallery-heading::before,.gallery-heading::after,.gallery-close::before{animation:none!important}.kinetic-char{transform:none!important}}
.ambient-paused::before,.ambient-paused::after,.ambient-paused .hero-backdrop img,.ambient-paused .hero-backdrop video{animation-play-state:paused!important}
.kinetic-word:not(:last-child){margin-inline-end:.07em}
.gallery-heading>div{background:#123452e8;padding:24px;border-radius:18px}
.gallery-page .header .nav a[aria-current]{color:#c1e3ff}

/* Base escura e abertura sem tratamento automatico de cor. */
html,body,body.gallery-page{background:#080f19}
.header{position:fixed;inset:0 0 auto;height:68px;z-index:50;background:#0818289c;backdrop-filter:blur(12px);border-bottom:1px solid #ffffff12;padding-inline:var(--space)}
.header .brand{font-size:17px}.header .brand span span{font-size:13px}.header .brand img{width:35px;height:35px}.header .nav{gap:22px;font-size:13px}.header .nav-visit{font-size:12px;padding:7px 15px}
.mobile-nav{position:fixed;top:68px;z-index:49;background:#112d47;color:#eff7ff}
.hero{padding-top:110px;min-height:560px;overflow:hidden;overflow:clip}
.hero-backdrop{inset:-2px;transform-origin:center;backface-visibility:hidden}
.hero-backdrop img,.hero-backdrop video{filter:none;object-position:center;transform-origin:center;transform:scale(1.025);animation:facade-zoom 36s ease-in-out infinite alternate;will-change:transform}
@keyframes facade-zoom{from{transform:scale(1.025)}to{transform:scale(1.075)}}
.hero-backdrop::after{background:#06142670}
.gallery-page main{padding-top:68px}.gallery-toolbar,.photo-track,.gallery-status{background:#edf4f8}
@media(max-width:1050px){.header .nav{gap:13px;font-size:12px}.header .nav-visit{display:none}}
@media(max-width:700px){.header{height:60px}.mobile-nav{top:60px}.hero{min-height:540px;aspect-ratio:auto;padding:110px 22px 85px}.hero h1{font-size:clamp(2rem,8.4vw,3rem)}.hero-intro{margin-top:24px}.hero-intro p{font-size:15px;line-height:1.65;margin-bottom:22px}.hero-intro .button{font-size:13px;padding:12px 20px;min-height:44px}.gallery-page main{padding-top:60px}}
@media(prefers-reduced-motion:reduce){.hero-backdrop img,.hero-backdrop video{animation:none!important;transform:scale(1.025)}}

/* rev.10 — branding oficial no topo em 200% */
.header .brand,.admin-header .brand{display:inline-flex;align-items:center;flex:0 0 auto;line-height:1;min-width:max-content}
.header .brand>img,.admin-header .brand>img{display:block;width:auto;height:60px;max-width:340px;object-fit:contain}
@media(max-width:700px){.header .brand>img,.admin-header .brand>img{height:52px;max-width:296px}}

/* rev.11 — logo oficial restaurada e 30% menor que a versão ampliada */
.header .brand,.admin-header .brand{display:inline-flex;align-items:center;flex:0 0 auto;line-height:1}
.header .brand>img,.admin-header .brand>img{display:block;width:auto!important;height:31.5px!important;max-width:178.5px!important;object-fit:contain!important;object-position:left center}
@media(max-width:700px){.header .brand>img,.admin-header .brand>img{height:27px!important;max-width:155.25px!important}}

[data-events-link][hidden]{display:none!important}


/* rev.21 — usabilidade da navegação móvel */
.nav a[aria-current="page"],.mobile-nav a[aria-current="page"]{color:var(--accent);font-weight:700}
@media(max-width:700px){
 body.menu-open{overflow:hidden}
 .mobile-nav{position:fixed;top:82px;left:0;right:0;max-height:calc(100svh - 82px);overflow:auto;overscroll-behavior:contain;padding:14px var(--space) 24px;background:color-mix(in srgb,var(--surface) 96%,transparent);backdrop-filter:blur(16px);box-shadow:0 20px 40px #0005;border-bottom:1px solid var(--line)}
 .mobile-nav a{min-height:48px;display:flex;align-items:center}
}
