/* palestra.css — página da palestra no Global Pagan Summit (prefixo pl-) */
.pl-body{--ouro:#d8af3f;--ouro-br:#ecca74;--ouro-esc:#a9842c;--creme:#f4f1ea;--txt:#cfc9b9;--txt2:#9b9584;
  margin:0;color:#e8e4d8;font-family:'Jost',system-ui,sans-serif;line-height:1.5;overflow-x:hidden}
.pl-body *{box-sizing:border-box}
.pl{width:var(--container-w,96%);max-width:1240px;margin:0 auto;padding:0 0 40px}
.pl a{color:var(--ouro-br)}

/* tipografia comum */
.pl-olho{font-size:12px;font-weight:600;letter-spacing:.26em;text-transform:uppercase;color:var(--ouro-esc);margin:0 0 12px}
.pl-h1{font-family:'Cantata One',serif;font-weight:400;font-size:clamp(38px,5.4vw,68px);line-height:1.06;color:var(--creme);margin:0 0 14px;text-shadow:0 2px 30px rgba(216,175,63,.14)}
.pl-h2{font-family:'Cantata One',serif;font-weight:400;font-size:clamp(28px,3.2vw,40px);line-height:1.15;color:var(--creme);margin:0 0 14px}
.pl-sub{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:clamp(22px,2.3vw,28px);line-height:1.25;color:#ddd2b4;margin:0 0 22px;max-width:30ch}
.pl-lead{font-size:19px;font-weight:300;color:var(--txt);max-width:52ch;margin:0 0 24px}

/* botões */
.pl-bts{display:flex;flex-wrap:wrap;gap:12px}
.pl-bt{display:inline-flex;align-items:center;justify-content:center;font:600 15px/1 'Jost',sans-serif;letter-spacing:.05em;
  color:#140f06 !important;background:var(--ouro);border:1px solid var(--ouro);border-radius:44px;padding:17px 32px;text-decoration:none;cursor:pointer;
  transition:background .25s,color .25s,transform .25s,box-shadow .25s}
.pl-bt:hover{background:var(--ouro-br);border-color:var(--ouro-br);transform:translateY(-2px);box-shadow:0 10px 26px rgba(216,175,63,.22)}
.pl-bt--linha{background:transparent;color:var(--ouro-br) !important;border-color:rgba(216,175,63,.45)}
.pl-bt--linha:hover{background:rgba(216,175,63,.08);color:var(--ouro-br) !important}
.pl-bt--cheio{width:100%}
.pl-bt:disabled{opacity:.6;cursor:wait;transform:none}

/* HERO */
.pl-hero{position:relative;min-height:min(92vh,820px);display:flex;align-items:center;padding:120px 0 60px}
.pl-hero__foto{position:absolute;right:-2%;top:0;bottom:0;width:min(52%,640px);pointer-events:none}
.pl-hero__foto img{width:100%;height:100%;object-fit:cover;object-position:50% 20%;filter:grayscale(1) contrast(1.05) brightness(.82);
  -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 42%,#000 88%,transparent),linear-gradient(180deg,#000 62%,transparent 98%);
  -webkit-mask-composite:source-in;
  mask-image:linear-gradient(90deg,transparent 0,#000 42%,#000 88%,transparent),linear-gradient(180deg,#000 62%,transparent 98%);
  mask-composite:intersect;opacity:0;transform:scale(1.04);animation:pl-foto 1.6s .1s cubic-bezier(.2,.7,.2,1) forwards}
@keyframes pl-foto{to{opacity:1;transform:none}}
.pl-hero__txt{position:relative;z-index:1;max-width:640px}
.pl-chips{list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin:0 0 28px;padding:0}
.pl-chips li{font-size:14px;color:#e5dcc4;border:1px solid rgba(216,175,63,.28);border-radius:30px;padding:7px 15px;background:rgba(216,175,63,.05)}
.pl-conta{margin:18px 0 0;font-size:14px;letter-spacing:.14em;text-transform:uppercase;color:var(--ouro)}
.pl-conta::before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--ouro);margin-right:10px;vertical-align:middle;animation:pl-pulso 2s infinite}
@keyframes pl-pulso{0%,100%{box-shadow:0 0 0 0 rgba(216,175,63,.5)}50%{box-shadow:0 0 0 7px rgba(216,175,63,0)}}
.pl-in{opacity:0;transform:translateY(16px);animation:pl-in .9s cubic-bezier(.2,.7,.2,1) forwards;animation-delay:calc(var(--d,0) * 90ms + 150ms)}
@keyframes pl-in{to{opacity:1;transform:none}}

/* seções */
.pl-sec{padding:72px 0}
.pl-cab{text-align:center;max-width:680px;margin:0 auto 44px}
.pl-cab__txt{font-size:18px;font-weight:300;color:var(--txt);margin:0}

/* cinco termos */
.pl-termos{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}
.pl-termo{position:relative;border:1px solid rgba(216,175,63,.16);border-radius:16px;padding:22px 20px 24px;
  background:linear-gradient(180deg,rgba(216,175,63,.05),rgba(10,9,6,.4));transition:border-color .35s,transform .35s,box-shadow .35s}
.pl-termo:hover{border-color:rgba(216,175,63,.4);transform:translateY(-4px);box-shadow:0 18px 40px rgba(0,0,0,.4)}
.pl-termo__fig{height:96px;margin:0 0 14px}
.pl-termo__fig svg{width:100%;height:100%;overflow:visible}
.pl-termo__n{position:absolute;top:16px;right:18px;font:500 13px 'Jost';color:var(--txt2);letter-spacing:.1em}
.pl-termo__tit{font-family:'Cormorant Garamond',serif;font-weight:600;font-size:26px;line-height:1.1;color:var(--creme);margin:0 0 12px}
.pl-termo__l{font-size:15px;color:var(--txt);margin:0 0 10px}
.pl-termo__l b{display:block;font-size:11px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--ouro);margin-bottom:3px}
.pl-termo__l--eso b{color:#b77a62}
.pl-termo__l--eso{margin:0}

/* SVG dos termos */
.pl-termo svg *{fill:none;stroke:var(--ouro);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}
.pl-termo svg .pl-g-guia{stroke-opacity:.28;stroke-dasharray:3 4}
.pl-termo svg .pl-g-tracejado{stroke-opacity:.35;stroke-dasharray:3 4}
.pl-termo svg .pl-g-cheio{fill:var(--ouro);stroke:none}
.pl-termo svg .pl-g-vazio{fill:#0d0b07}
.pl-termo svg .pl-g-total{stroke:var(--ouro-br);stroke-width:1.2;stroke-dasharray:2 3}
.pl-termo svg .pl-g-nivel{stroke-opacity:.6}
.pl-termo svg text{fill:var(--txt2);stroke:none;font:500 10px 'Jost',sans-serif}
.pl-termo svg .pl-g-sinal{fill:var(--ouro);font:600 15px 'Jost';text-anchor:middle}
.pl-termo svg .pl-g-sinal--esc{fill:#140f06}
.pl-termo svg .pl-barra{fill:var(--ouro);stroke:none;transform-box:fill-box;transform-origin:bottom}
.pl-termo svg .pl-barra--b{fill:#b77a62}
.pl-pend{transform-origin:100px 8px;animation:pl-pend 2.4s ease-in-out infinite alternate}
@keyframes pl-pend{from{transform:rotate(-34deg)}to{transform:rotate(34deg)}}
.pl-barra--a{animation:pl-bar 1.2s ease-in-out infinite alternate}
.pl-barra--b{animation:pl-bar 1.2s ease-in-out infinite alternate-reverse}
@keyframes pl-bar{from{transform:scaleY(.15)}to{transform:scaleY(.85)}}
.pl-mola{animation:pl-mola 1.4s ease-in-out infinite alternate;transform-origin:100px 10px}
@keyframes pl-mola{from{transform:scaleY(.82)}to{transform:scaleY(1.12)}}
.pl-onda{animation:pl-onda 3s linear infinite}
.pl-onda--rapida{stroke-opacity:.75}
@keyframes pl-onda{from{transform:translateX(0)}to{transform:translateX(-50px)}}
.pl-linhas path{stroke-dasharray:6 6;animation:pl-flui 1.8s linear infinite;stroke-opacity:.8}
@keyframes pl-flui{to{stroke-dashoffset:-24}}
.pl-salto{animation:pl-salto 4s steps(1) infinite}
@keyframes pl-salto{0%{transform:translateY(0)}25%{transform:translateY(-30px)}50%{transform:translateY(-54px)}75%{transform:translateY(-30px)}}
.pl-fig--frequencia svg{overflow:hidden}

/* tese */
.pl-tese{text-align:center;max-width:860px;margin:20px auto;padding:56px clamp(20px,5vw,64px);border-top:1px solid rgba(216,175,63,.16);border-bottom:1px solid rgba(216,175,63,.16)}
.pl-tese blockquote{font-family:'Cormorant Garamond',serif;font-style:italic;font-weight:500;font-size:clamp(28px,3.6vw,44px);line-height:1.15;color:var(--ouro-br);margin:0 0 20px}
.pl-tese__txt{font-size:18px;font-weight:300;color:var(--txt);margin:0}

/* o que você leva */
.pl-leva{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.pl-leva__it{border-left:1px solid rgba(216,175,63,.35);padding:4px 0 4px 24px}
.pl-leva__n{font-family:'Cormorant Garamond',serif;font-size:30px;color:var(--ouro);line-height:1}
.pl-leva__it h3{font-family:'Jost';font-weight:500;font-size:18px;color:var(--creme);margin:10px 0 8px}
.pl-leva__it p{font-size:15px;color:var(--txt);margin:0}
.pl-formato{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:48px 0 0;padding:0}
.pl-formato li{text-align:center;border:1px solid rgba(216,175,63,.14);border-radius:14px;padding:16px 10px;background:rgba(10,9,6,.35)}
.pl-formato b{display:block;font-family:'Cormorant Garamond',serif;font-weight:600;font-size:22px;color:var(--ouro-br)}
.pl-formato span{font-size:14px;color:var(--txt2)}

/* quem conduz */
.pl-quem{display:grid;grid-template-columns:minmax(240px,400px) 1fr;gap:clamp(32px,6vw,72px);align-items:center;padding:72px 0}
.pl-quem__foto img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:cover;border-radius:18px;filter:grayscale(1);
  box-shadow:0 30px 70px rgba(0,0,0,.6),0 0 0 1px rgba(216,175,63,.16);transition:filter .6s}
.pl-quem__foto:hover img{filter:grayscale(.2)}
.pl-quem__bio{font-size:18px;font-weight:300;color:var(--txt);margin:0 0 20px;max-width:60ch}
.pl-cred{list-style:none;margin:0 0 18px;padding:0;display:grid;gap:9px}
.pl-cred li{position:relative;padding-left:24px;font-size:16px;color:#ddd7c6}
.pl-cred li::before{content:"";position:absolute;left:2px;top:.55em;width:8px;height:8px;border:1px solid var(--ouro);transform:rotate(45deg)}
.pl-links{display:flex;gap:22px;margin:0 0 20px}
.pl-links a{font-size:14px;letter-spacing:.08em;text-transform:uppercase;text-decoration:none;border-bottom:1px solid rgba(216,175,63,.4);padding-bottom:2px;transition:border-color .25s}
.pl-links a:hover{border-color:var(--ouro-br)}
.pl-limite{font-size:14px;color:var(--txt2);margin:0;padding:14px 16px;border-radius:12px;background:rgba(183,122,98,.08);border:1px solid rgba(183,122,98,.2)}

/* evento */
.pl-evento{display:grid;grid-template-columns:1fr minmax(260px,420px);gap:clamp(32px,6vw,72px);align-items:center;padding:72px 0}
.pl-evento__p{font-size:17px;font-weight:300;color:var(--txt);margin:0 0 14px;max-width:60ch}
.pl-br{list-style:none;margin:22px 0;padding:0;display:grid;gap:10px}
.pl-br li{display:flex;flex-direction:column;padding:12px 16px;border-radius:12px;border:1px solid rgba(216,175,63,.12);background:rgba(10,9,6,.35)}
.pl-br b{font-weight:500;color:var(--creme);font-size:16px}
.pl-br span{font-size:14px;color:var(--txt2)}
.pl-passes{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:0 0 24px}
.pl-passes div{padding:14px 16px;border-radius:12px;border:1px solid rgba(216,175,63,.28)}
.pl-passes b{display:block;color:var(--ouro-br);font-weight:500;font-size:16px}
.pl-passes span{font-size:14px;color:var(--txt2)}
.pl-nota{font-size:13px;color:var(--txt2);margin:14px 0 0}
.pl-evento__card img{display:block;width:100%;height:auto;border-radius:14px;box-shadow:0 30px 70px rgba(0,0,0,.6);
  transform:perspective(1200px) rotateY(-7deg);transition:transform .7s cubic-bezier(.2,.7,.2,1)}
.pl-evento__card:hover img{transform:perspective(1200px) rotateY(0)}

/* lista de espera */
.pl-lista{position:relative;border-radius:22px;overflow:hidden;margin:40px 0;border:1px solid rgba(216,175,63,.18)}
.pl-lista__img{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.6;transition:transform 8s ease}
.pl-lista:hover .pl-lista__img{transform:scale(1.05)}
.pl-lista::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,7,7,.95) 32%,rgba(7,7,7,.55) 70%,rgba(7,7,7,.35));z-index:1}
.pl-lista__in{position:relative;z-index:2;max-width:620px;padding:clamp(32px,5vw,64px)}
.pl-lista__txt{font-size:17px;font-weight:300;color:var(--txt);margin:0 0 24px}
.pl-form{display:grid;gap:14px}
.pl-form label{display:grid;gap:6px;font-size:13px;letter-spacing:.06em;color:var(--txt2)}
.pl-form input{font:400 16px 'Jost',sans-serif;color:var(--creme);background:rgba(255,255,255,.04);border:1px solid rgba(216,175,63,.25);border-radius:12px;padding:14px 16px;outline:none;transition:border-color .25s,background .25s}
.pl-form input:focus{border-color:var(--ouro);background:rgba(216,175,63,.06)}
.pl-form__msg{min-height:1em;margin:0;font-size:14px;color:#e39b7f}
.pl-mel{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.pl-ok{padding:22px;border-radius:14px;border:1px solid rgba(216,175,63,.35);background:rgba(216,175,63,.06);animation:pl-in .6s forwards}
.pl-ok__tit{font-family:'Cormorant Garamond',serif;font-size:26px;font-weight:600;color:var(--ouro-br);margin:0 0 6px}
.pl-ok p{margin:0;color:var(--txt)}

/* fecho */
.pl-fecho{text-align:center;padding:64px 0 40px}

/* revelação */
.pl-revela{opacity:0;transform:translateY(22px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.7,.2,1);transition-delay:calc(var(--d,0) * 80ms)}
.pl-revela.is-vis{opacity:1;transform:none}

/* responsivo */
@media (max-width:1100px){
  .pl-termos{grid-template-columns:repeat(3,1fr)}
}
@media (max-width:900px){
  .pl-hero{min-height:0;flex-direction:column;align-items:stretch;padding:96px 0 40px}
  .pl-hero__foto{position:relative;right:auto;width:100%;height:340px;margin:0 0 -90px}
  .pl-hero__foto img{-webkit-mask-image:linear-gradient(180deg,#000 45%,transparent);mask-image:linear-gradient(180deg,#000 45%,transparent);-webkit-mask-composite:source-over;mask-composite:add}
  .pl-quem,.pl-evento{grid-template-columns:1fr}
  .pl-quem__foto{max-width:360px}
  .pl-evento__card{max-width:420px;margin:0 auto}
  .pl-leva{grid-template-columns:1fr;gap:26px}
  .pl-formato{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:640px){
  .pl-termos{grid-template-columns:1fr}
  .pl-termo__l{font-size:16px}
  .pl-leva__it p,.pl-br span,.pl-passes span,.pl-formato span{font-size:16px}
  .pl-lead,.pl-quem__bio,.pl-tese__txt,.pl-evento__p,.pl-lista__txt,.pl-cab__txt{font-size:17px}
  .pl-sec,.pl-quem,.pl-evento{padding:48px 0}
  .pl-bts .pl-bt{width:100%}
  .pl-lista::before{background:rgba(7,7,7,.88)}
  .pl-limite{font-size:15px}
}
@media (prefers-reduced-motion:reduce){
  .pl-in,.pl-revela,.pl-hero__foto img{animation:none !important;opacity:1 !important;transform:none !important;transition:none !important}
  .pl-termo svg *{animation:none !important}
}

/* ===== animações (rodada 2) ===== */
.pl-prog{position:fixed;top:0;left:0;right:0;height:2px;z-index:1100;pointer-events:none}
.pl-prog i{display:block;height:100%;background:linear-gradient(90deg,var(--ouro-esc),var(--ouro-br));transform-origin:0 50%;transform:scaleX(0)}

.pl-hero__fundo{position:absolute;inset:0 -2vw;pointer-events:none;overflow:hidden;z-index:0}
.pl-ondas{position:absolute;left:0;bottom:4%;width:200%;height:46%;opacity:.85}
.pl-ondas path{fill:none;stroke:var(--ouro);vector-effect:non-scaling-stroke}
.pl-onda1{stroke-opacity:.35;stroke-width:1.2;animation:pl-deriva 22s linear infinite}
.pl-onda2{stroke-opacity:.2;stroke-width:1;animation:pl-deriva 14s linear infinite}
.pl-onda3{stroke-opacity:.15;stroke-width:1;stroke-dasharray:4 8;animation:pl-deriva 30s linear infinite reverse}
@keyframes pl-deriva{to{transform:translateX(-50%)}}
.pl-part{position:absolute;left:var(--x);bottom:-10px;width:3px;height:3px;border-radius:50%;background:var(--ouro-br);
  box-shadow:0 0 8px 2px rgba(236,202,116,.45);opacity:0;animation:pl-sobe var(--t) linear var(--a) infinite}
@keyframes pl-sobe{0%{transform:translate(0,0);opacity:0}10%{opacity:.9}70%{opacity:.5}100%{transform:translate(30px,-90vh);opacity:0}}

.pl-brilho{background:linear-gradient(100deg,var(--creme) 0%,var(--creme) 40%,#fff6d6 48%,var(--ouro-br) 52%,var(--creme) 60%,var(--creme) 100%);
  background-size:250% 100%;background-position:100% 0;-webkit-background-clip:text;background-clip:text;color:transparent;
  animation:pl-luz-txt 7s ease-in-out 1.2s infinite}
@keyframes pl-luz-txt{0%{background-position:100% 0}25%,100%{background-position:0 0}}

.pl-bt--luz{position:relative;overflow:hidden}
.pl-bt--luz::after{content:"";position:absolute;top:0;bottom:0;left:-60%;width:40%;
  background:linear-gradient(100deg,transparent,rgba(255,255,255,.55),transparent);transform:skewX(-20deg);animation:pl-luz 4.5s ease-in-out 2s infinite}
@keyframes pl-luz{0%{left:-60%}22%,100%{left:130%}}

.pl-termo__fig svg{transition:transform .5s cubic-bezier(.2,.7,.2,1)}
.pl-termo:hover .pl-termo__fig svg{transform:scale(1.08)}
.pl-pontos{display:none}

.pl-pal{display:inline-block;opacity:0;transform:translateY(.4em);filter:blur(4px);transition:opacity .6s,transform .6s,filter .6s;transition-delay:calc(var(--i) * 90ms + 200ms)}
.pl-tese.is-vis .pl-pal{opacity:1;transform:none;filter:none}

.pl-evento__card{animation:pl-flutua 6s ease-in-out infinite}
@keyframes pl-flutua{0%,100%{translate:0 0}50%{translate:0 -10px}}
.pl-evento__card img{transition:transform .4s ease-out}

.pl-quem__foto.pl-revela{opacity:1;transform:none;clip-path:inset(0 100% 0 0 round 18px);transition:clip-path 1.2s cubic-bezier(.7,0,.2,1)}
.pl-quem__foto.pl-revela.is-vis{clip-path:inset(0 0 0 0 round 18px)}

.pl-lista__img{animation:pl-pan 24s ease-in-out infinite alternate}
@keyframes pl-pan{from{background-position:30% 40%}to{background-position:70% 60%}}

.pl-formato li{transition:transform .35s,border-color .35s}
.pl-formato li:hover{transform:translateY(-3px);border-color:rgba(216,175,63,.4)}

.pl-fixa{display:none}

@media (max-width:640px){
  /* termos viram carrossel deslizável */
  .pl-termos{display:flex;grid-template-columns:none;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;
    margin:0 calc(-1 * (100vw - 100%) / 2);padding:4px calc((100vw - 100%) / 2) 8px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .pl-termos::-webkit-scrollbar{display:none}
  .pl-termo{flex:0 0 84%;scroll-snap-align:center}
  .pl-termo__fig{height:110px}
  .pl-pontos{display:flex;justify-content:center;gap:8px;margin-top:16px}
  .pl-pontos i{width:7px;height:7px;border-radius:7px;background:rgba(216,175,63,.28);transition:width .3s,background .3s}
  .pl-pontos i.is-on{width:22px;background:var(--ouro)}
  .pl-passes{grid-template-columns:1fr}
  .pl-formato span{font-size:15px}
  .pl-hero__foto{height:360px;margin-bottom:-110px}
  .pl-ondas{height:30%;bottom:auto;top:270px;width:300%}
  .pl-evento__card img{transform:none}
  /* barra fixa de ingresso */
  .pl-fixa{display:flex;align-items:center;gap:12px;position:fixed;left:10px;right:10px;bottom:10px;z-index:900;
    padding:10px 10px 10px 18px;border-radius:40px;background:rgba(13,11,8,.92);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);
    border:1px solid rgba(216,175,63,.3);box-shadow:0 14px 34px rgba(0,0,0,.55);
    transform:translateY(140%);transition:transform .45s cubic-bezier(.2,.7,.2,1)}
  .pl-fixa.is-on{transform:none}
  .pl-fixa__txt{flex:1;display:flex;flex-direction:column;line-height:1.2;font-size:13px;color:var(--txt2)}
  .pl-fixa__txt b{font-size:14px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--ouro-br)}
  .pl-fixa .pl-bt{padding:14px 20px;font-size:14px}
  .site-footer{padding-bottom:90px}
}
@media (prefers-reduced-motion:reduce){
  .pl-onda1,.pl-onda2,.pl-onda3,.pl-part,.pl-brilho,.pl-bt--luz::after,.pl-evento__card,.pl-lista__img{animation:none !important}
  .pl-part{display:none}
  .pl-brilho{color:var(--creme);background:none}
  .pl-quem__foto.pl-revela{clip-path:none}
}
