/* Tipografia e imagens incluídas no pacote: funcionamento integral offline. */
@font-face{font-family:Inter;src:url("assets/fonts/Inter-Variable.ttf") format("truetype");font-style:normal;font-weight:100 900;font-display:swap}
@font-face{font-family:Inter;src:url("assets/fonts/Inter-Italic-Variable.ttf") format("truetype");font-style:italic;font-weight:100 900;font-display:swap}
:root{
  --indigo:#283284;--ink:#262b79;--green:#009b60;--mint:#0bce87;
  --lavender:#eeefff;--u:min(.09765625vw,1.40625px);
  font-family:Inter,Arial,sans-serif;color:var(--ink);background:#eeefff;
  font-synthesis:none;font-optical-sizing:auto;-webkit-font-smoothing:antialiased;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:24px}
body{margin:0}
button,input{font:inherit}
button,a{-webkit-tap-highlight-color:transparent}
button{cursor:pointer}
a{color:inherit}
img{display:block;max-width:none}
svg{display:block;flex:0 0 auto}
.page{max-width:1440px;margin-inline:auto;background:#fff;overflow:clip}
.icon-library{position:absolute;width:0;height:0;overflow:hidden}
.icon{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:2.7;stroke-linecap:round;stroke-linejoin:round}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link{position:fixed;top:-80px;left:16px;padding:14px 20px;z-index:20;background:white;border:2px solid var(--indigo);border-radius:8px}
.skip-link:focus{top:12px}
:focus-visible{outline:3px solid #7350d2;outline-offset:4px}
.crop{display:block;position:relative;overflow:hidden}
.crop img{position:absolute;height:auto;user-select:none;pointer-events:none}
.button{
  display:inline-flex;align-items:center;justify-content:center;gap:calc(12 * var(--u));
  border:0;border-radius:calc(10 * var(--u));color:#fff;
  background:linear-gradient(120deg,#00a469,#008e52);
  text-decoration:none;font-weight:750;letter-spacing:-.025em;word-spacing:.035em;
  box-shadow:inset 0 1px 0 #ffffff16;
  transition:background .18s,box-shadow .18s,transform .18s;
}
.button:hover{background:linear-gradient(120deg,#008d5b,#007847);box-shadow:0 5px 16px #006b3d20;transform:translateY(-1px)}
.button:active{transform:translateY(0)}
.button .icon{width:calc(22 * var(--u));height:calc(22 * var(--u));stroke-width:2.2}
.site-header{
  position:relative;height:calc(78 * var(--u));padding:0 calc(37 * var(--u)) 0 calc(50 * var(--u));
  display:flex;align-items:center;justify-content:space-between;gap:20px;background:#fff;
}
.brand{display:flex;align-items:center;width:calc(210 * var(--u));height:calc(70 * var(--u));flex:0 0 auto}
.brand img{position:static;width:100%;height:100%;object-fit:contain}
.header-title{
  position:absolute;left:54.3%;transform:translateX(-50%);margin:0;
  font-size:calc(30 * var(--u));font-weight:900;font-style:italic;letter-spacing:-.055em;white-space:nowrap;
}
.header-title em{color:var(--green);margin-left:.15em;font-size:1.18em}
.header-cta{min-height:calc(42 * var(--u));min-width:calc(195 * var(--u));padding:8px calc(18 * var(--u));font-size:calc(18 * var(--u))}
.mobile-only{display:none}
.hero{position:relative;background:radial-gradient(ellipse at 70% 40%,#dfe4fb 0,#ecedff 58%,#edf0fe 100%)}
.hero-grid{display:grid;grid-template-columns:60.546875% 39.453125%;align-items:start}
.hero-visual{min-width:0}
.hero-art-desktop{aspect-ratio:620 / 754;mask-image:linear-gradient(90deg,#000 0 98.4%,transparent 100%)}
.hero-art-desktop img{width:165.16129%;left:0;top:-10.344828%}
.hero-art-mobile{display:none}
.registration-wrap{padding:calc(36 * var(--u)) calc(40 * var(--u)) calc(32 * var(--u)) calc(18 * var(--u))}
.registration-card{
  position:relative;background:#fff;border-radius:calc(24 * var(--u));
  padding:calc(27 * var(--u)) calc(28 * var(--u)) calc(28 * var(--u));
  box-shadow:0 calc(15 * var(--u)) calc(36 * var(--u)) #4249a02a;scroll-margin-top:24px;
}
.card-accent{width:calc(86 * var(--u));height:calc(8 * var(--u));border-radius:20px;margin-bottom:calc(14 * var(--u));background:linear-gradient(90deg,#2bd29a,#2ac47c)}
.registration-card h2{margin:0;font-size:calc(42 * var(--u));font-weight:880;letter-spacing:-.045em;word-spacing:.025em;line-height:.97}
.registration-card h2>span{white-space:nowrap}
.registration-card h2 em{display:block;color:var(--green);font-style:italic;font-weight:900}
.form-intro{margin:calc(8 * var(--u)) 0 calc(16 * var(--u));font-size:calc(17 * var(--u));line-height:1.22;white-space:nowrap;letter-spacing:-.025em}
.field+.field{margin-top:calc(14 * var(--u))}
.field label{display:block;margin-bottom:calc(6 * var(--u));font-weight:720;font-size:calc(16 * var(--u));line-height:1.18;letter-spacing:-.025em}
.field input{
  display:block;width:100%;height:calc(40 * var(--u));padding:0 calc(15 * var(--u));
  border:1px solid #b8bdd9;border-radius:calc(6 * var(--u));color:var(--ink);background:#fff;
  font-size:calc(16 * var(--u));font-weight:400;letter-spacing:-.035em;transition:border-color .15s,box-shadow .15s;
}
.field input::placeholder{color:#7f86b0;opacity:1}
.field input:focus{outline:0;border-color:#009b60;box-shadow:0 0 0 3px #009b601c}
.field input[aria-invalid="true"]{border-color:#bf3b49}
.field-error{font-size:13px;line-height:1.35;color:#a42537;margin:6px 0 0}
.field-error:empty,.form-status:empty{display:none}
.submit-button{margin-top:calc(18 * var(--u));width:100%;min-height:calc(54 * var(--u));font-size:calc(22 * var(--u))}
.form-status{font-size:13px;line-height:1.4;margin:12px 0 0}
.card-details{border-top:2px solid #d5d9ff;margin-top:calc(20 * var(--u));padding-top:calc(18 * var(--u));display:grid;gap:calc(15 * var(--u))}
.card-details>div{display:flex;align-items:center;gap:calc(14 * var(--u));min-height:calc(36 * var(--u))}
.card-details .icon{color:var(--green);width:calc(37 * var(--u));height:calc(37 * var(--u))}
.card-details strong{font-size:calc(19 * var(--u));font-weight:760;line-height:1.15;letter-spacing:-.045em}
.card-details .pin{height:calc(42 * var(--u))}
.address-line{display:block}
.location-link{text-decoration:none}
.card-details .card-address{display:flex;align-items:flex-start;gap:calc(14 * var(--u))}
.card-address>span{min-width:0}
.card-address strong{display:block;font-size:calc(14.5 * var(--u));font-weight:700;line-height:1.3;letter-spacing:-.025em}
.card-map-label{display:block;margin-top:calc(5 * var(--u));color:#00884e;font-size:calc(14 * var(--u));font-weight:650;text-decoration:underline;text-underline-offset:3px}
.card-address:hover .card-map-label{color:#00693e}
.event-info{background:linear-gradient(115deg,#283184,#252c7b 60%,#283885);color:#fff}
.event-info-inner{display:grid;grid-template-columns:.9fr 1.17fr 1.5fr;min-height:calc(104 * var(--u));padding:calc(18 * var(--u)) calc(55 * var(--u));align-items:center}
.info-item{display:flex;align-items:center;justify-content:center;gap:calc(22 * var(--u))}
.info-item+.info-item{border-left:1px solid #ffffff4d}
.info-item .icon{color:var(--mint);width:calc(47 * var(--u));height:calc(47 * var(--u));--pin-center:#283184}
.info-item .pin{width:calc(42 * var(--u));height:calc(53 * var(--u))}
.info-item strong{font-size:calc(23 * var(--u));font-weight:760;line-height:1.12;letter-spacing:-.04em}
.info-address{justify-content:flex-start;align-items:center;gap:calc(16 * var(--u));padding-left:calc(24 * var(--u))}
.info-address>span{min-width:0}
.info-address strong{display:block;font-size:calc(17 * var(--u));line-height:1.3;letter-spacing:-.025em;font-weight:750}
.map-link-label{display:flex;align-items:center;gap:calc(7 * var(--u));margin-top:calc(7 * var(--u));font-size:calc(14 * var(--u));line-height:1.25;font-weight:650;color:#fff;text-decoration:underline;text-underline-offset:3px}
.map-link-label .icon{width:calc(17 * var(--u));height:calc(17 * var(--u));color:var(--mint);stroke-width:2.2}
.info-address:hover .map-link-label{color:#8ff5c9}
.time-separator{display:none}
.time-start{display:block}
.benefits{display:grid;grid-template-columns:42.8% 54.4%;gap:2.8%;padding:calc(18 * var(--u)) calc(36 * var(--u)) calc(16 * var(--u)) calc(56 * var(--u));background:white}
.benefits-copy{min-width:0}
.benefits h2{font-size:calc(54 * var(--u));font-style:italic;font-weight:900;letter-spacing:-.045em;line-height:.91;margin:0}
.heading-first>span{display:block}
.benefits h2 em{display:block;color:var(--green)}
.benefits-intro{font-size:calc(22 * var(--u));line-height:1.2;font-weight:420;margin:calc(8 * var(--u)) 0 calc(17 * var(--u));letter-spacing:-.035em;max-width:calc(355 * var(--u))}
.benefit-cards{display:grid;grid-template-columns:1fr 1.09fr;gap:calc(10 * var(--u))}
.benefit-card{border:1px solid #ccd4ff;border-radius:calc(6 * var(--u));min-height:calc(75 * var(--u));padding:calc(10 * var(--u));display:flex;align-items:center;justify-content:center;gap:calc(10 * var(--u));background:linear-gradient(#fff,#fdfdff)}
.benefit-card .icon{width:calc(34 * var(--u));height:calc(34 * var(--u));color:#00a772}
.benefit-card p{font-size:calc(15.5 * var(--u));line-height:1.1;font-weight:680;letter-spacing:-.045em;margin:0}
.audience-photo{overflow:hidden;border-radius:calc(24 * var(--u));align-self:start}
.audience-desktop{aspect-ratio:506 / 295;width:100%}
.audience-desktop img{width:202.371542%;left:-95.256917%;top:-323.389831%}
.audience-mobile{display:none}

/* Foto limpa e um único painel com transparência diagonal. */
.location{position:relative;isolation:isolate;min-height:calc(246 * var(--u));overflow:hidden;background:#eeefff}
.location-scene{position:absolute;inset:0 0 0 20%;z-index:-2}
.location-scene img{position:static;width:100%;height:100%;object-fit:cover;object-position:center 28%;filter:saturate(.87) contrast(.99)}
.location::before{
  content:"";position:absolute;inset:-1px;z-index:-1;background:#eeefff;
  mask-image:linear-gradient(128deg,#000 0 46%,#000e 49%,#0006 53%,transparent 58%);
}
.location-content{display:flex;gap:calc(20 * var(--u));padding:calc(28 * var(--u)) calc(68 * var(--u))}
.location-pin{width:calc(58 * var(--u));height:calc(73 * var(--u));color:#00a568;--pin-center:#eeefff}
.location h2{font-size:calc(21 * var(--u));font-weight:700;margin:0;letter-spacing:-.025em;line-height:1.05}
.location h2 strong{display:block;font-size:calc(58 * var(--u));font-style:italic;font-weight:900;line-height:.95;letter-spacing:-.04em}
.location address{font-size:calc(18 * var(--u));font-style:normal;font-weight:650;line-height:1.35;margin-top:calc(9 * var(--u));letter-spacing:-.025em}
.location-cta{width:calc(320 * var(--u));height:calc(47 * var(--u));margin-top:calc(14 * var(--u));font-size:calc(18 * var(--u))}
.site-footer{display:flex;align-items:center;gap:calc(30 * var(--u));min-height:calc(94 * var(--u));padding:calc(12 * var(--u)) calc(58 * var(--u));background:linear-gradient(115deg,#27317f,#202b76);color:white}
.footer-brand{display:flex;align-items:center;justify-content:center;flex:0 0 auto;width:calc(216 * var(--u));padding:calc(3 * var(--u)) calc(10 * var(--u));background:#fff;border-radius:calc(10 * var(--u));box-shadow:0 3px 12px #101b4d12}
.footer-brand img{position:static;width:100%;height:auto}
.site-footer p{margin:0;border-left:1px solid #ffffff65;padding-left:calc(30 * var(--u));font-size:calc(15 * var(--u));font-weight:460;line-height:1.45;letter-spacing:-.02em}
.footer-event{font-weight:650}
.noscript-note{font-size:14px;line-height:1.4}
.preview-dialog[hidden]{display:none}
.preview-dialog{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:20px;background:#151d58b8;backdrop-filter:blur(5px)}
.dialog-inner{position:relative;width:min(100%,470px);max-height:calc(100dvh - 40px);overflow-y:auto;border-radius:22px;padding:38px 32px 28px;background:white;box-shadow:0 24px 80px #070d3940}
.dialog-close{position:absolute;top:7px;right:10px;width:40px;height:40px;border:none;border-radius:50%;background:transparent;color:var(--ink);font-size:30px}
.dialog-close:hover{background:var(--lavender)}
.dialog-eyebrow{display:block;font-size:12px;font-weight:800;letter-spacing:.16em;color:var(--green);margin-bottom:12px}
.dialog-inner h2{font-size:27px;line-height:1.1;letter-spacing:-1px;margin:0 0 14px}
.dialog-inner p{font-size:16px;line-height:1.5;margin:0 0 12px}
.dialog-return{margin-top:12px;border:none;border-radius:9px;background:var(--green);color:white;padding:14px 20px;width:100%;min-height:48px;font-weight:700}
.dialog-open{overflow:hidden}

@media(max-width:900px){
  :root{--u:.1302083333vw}
  .page{width:100%}
  .site-header{height:clamp(64px,9vw,80px);padding:5px clamp(20px,8vw,80px);gap:18px}
  .brand{width:clamp(152px,27vw,210px);height:56px}
  .header-title,.desktop-only{display:none}
  .mobile-only{display:inline}
  .header-cta{min-height:40px;min-width:108px;border-radius:9px;gap:8px;font-size:15px;padding:9px 14px}
  .button .icon{width:20px;height:20px}
  .hero-grid{display:block}
  .hero-art-desktop{display:none}
  .hero-art-mobile{display:block;aspect-ratio:768 / 661}
  .hero-art-mobile img{width:100%;left:0;top:-10.287443%}
  .registration-wrap{position:relative;padding:0 clamp(22px,6.5vw,68px)}
  .registration-card{padding:clamp(16px,2vw,24px) clamp(18px,4.3vw,33px) clamp(18px,2.5vw,24px);border-radius:clamp(18px,2.9vw,24px);box-shadow:0 12px 32px #3b42951d}
  .card-accent{width:clamp(64px,12.6vw,97px);height:clamp(5px,1vw,8px);margin-bottom:10px}
  .registration-card h2{font-size:clamp(21px,5.9vw,46px);line-height:1.05;letter-spacing:-.04em;white-space:nowrap}
  .registration-card h2 em{display:inline;margin-left:.15em}
  .form-intro{font-size:clamp(13px,3vw,23px);line-height:1.3;letter-spacing:-.025em;margin:6px 0 14px;white-space:normal}
  .field+.field{margin-top:12px}
  .field label{font-size:clamp(14px,2.6vw,20px);line-height:1.2;margin-bottom:6px}
  .field input{height:clamp(46px,6.25vw,50px);padding:0 12px;border-radius:6px;font-size:clamp(16px,2.6vw,20px)}
  .submit-button{min-height:48px;font-size:clamp(18px,3.6vw,28px);gap:12px;border-radius:9px;margin-top:16px}
  .card-details{display:none}
  .event-info{padding:12px clamp(22px,6.5vw,68px) 0;background:linear-gradient(#edf0ff 90%,#fff 90%)}
  .event-info-inner{display:grid;grid-template-columns:1fr;padding:8px clamp(20px,6.5vw,50px);background:linear-gradient(120deg,#283284,#242e7d);border-radius:17px;min-height:0}
  .info-item{justify-content:flex-start;min-height:clamp(44px,6.4vw,50px);gap:clamp(12px,2.6vw,20px)}
  .info-item+.info-item{border-left:0;border-top:1px solid #ffffff48}
  .info-item .icon{width:clamp(28px,5vw,39px);height:clamp(28px,5vw,39px)}
  .info-item .pin{width:clamp(28px,4.7vw,36px);height:clamp(32px,5.5vw,42px)}
  .info-item strong{font-size:clamp(16px,3.3vw,26px);line-height:1.2;letter-spacing:-.035em}
  .info-time strong{font-size:clamp(12.5px,3.3vw,26px)}
  .info-address{padding:12px 0;align-items:flex-start}
  .info-address .pin{margin-top:2px}
  .info-address strong{font-size:clamp(14px,3.65vw,23px);line-height:1.35;letter-spacing:-.025em}
  .map-link-label{font-size:clamp(13px,3.4vw,21px);line-height:1.3;gap:7px;margin-top:7px}
  .map-link-label .icon{width:17px;height:17px}
  .time-separator{display:inline}
  .time-start{display:inline;white-space:nowrap}
  .benefits{display:block;padding:clamp(25px,4vw,32px) clamp(22px,6.5vw,70px) 12px}
  .benefits h2{text-align:center;font-size:clamp(24px,6.8vw,53px);line-height:.95;letter-spacing:-.045em}
  .heading-first{display:flex;justify-content:center;gap:.2em;white-space:nowrap}
  .heading-first>span{display:inline}
  .benefits-intro{font-size:clamp(11px,3.25vw,24px);white-space:nowrap;text-align:center;line-height:1.3;max-width:none;letter-spacing:-.045em;margin:7px -5px clamp(20px,4vw,30px)}
  .benefit-cards{grid-template-columns:1fr 1fr;gap:clamp(8px,1.45vw,12px)}
  .benefit-card{min-height:clamp(60px,8.5vw,70px);padding:8px 7px;gap:clamp(6px,1.6vw,13px);border-radius:7px}
  .benefit-card .icon{width:clamp(23px,4.6vw,36px);height:clamp(25px,4.6vw,36px)}
  .benefit-card p{font-size:clamp(11.5px,3.35vw,22px);line-height:1.12;letter-spacing:-.04em}
  .audience-photo{border-radius:13px;margin-top:12px}
  .audience-desktop{display:none}
  .audience-mobile{display:block;width:100%;aspect-ratio:630 / 153}
  .audience-mobile img{width:121.904762%;left:-11.111111%;top:-1045.751634%}
  .location{min-height:300px}
  .location-scene{inset:auto 0 0;height:170px}
  .location-scene img{width:100%;height:100%;object-fit:cover;object-position:62% 30%}
  .location::before{background:#eeefff;mask-image:linear-gradient(170deg,#000 0 44%,#000e 47%,#0006 52%,transparent 58%)}
  .location-content{padding:24px clamp(22px,6.5vw,70px);gap:12px}
  .location-pin{width:36px;height:46px}
  .location-copy{flex:1;min-width:0}
  .location h2{font-size:clamp(15px,2.8vw,20px);line-height:1.05;letter-spacing:-.025em}
  .location h2 strong{font-size:clamp(42px,7.5vw,58px);line-height:.96;letter-spacing:-.04em}
  .location address{font-size:clamp(14px,2.3vw,18px);margin-top:8px;line-height:1.35;max-width:360px}
  .location-cta{position:absolute;left:clamp(22px,6.5vw,70px);right:clamp(22px,6.5vw,70px);bottom:20px;width:auto;height:48px;margin:0;font-size:clamp(16px,4.4vw,18px);border-radius:9px;box-shadow:0 6px 22px #113b3f38}
  .site-footer{min-height:98px;padding:16px clamp(22px,6.5vw,70px);gap:20px;justify-content:center}
  .footer-brand{width:156px;padding:4px 7px;border-radius:8px;flex-shrink:0}
  .site-footer p{font-size:13px;line-height:1.5;padding-left:20px;white-space:nowrap}
  .footer-event,.footer-city{display:block}
  .footer-separator{display:none}
}
@media(min-width:600px) and (max-width:900px){
  .registration-wrap,.event-info{padding-inline:calc(68 * var(--u))}
  .registration-card{padding:calc(14 * var(--u)) calc(33 * var(--u)) calc(17 * var(--u))}
  .registration-card h2{font-size:calc(47 * var(--u))}
  .form-intro{margin-bottom:12px}
  .field+.field{margin-top:12px}
  .submit-button{min-height:56px}
  .benefits{padding-inline:calc(70 * var(--u))}
  .location{min-height:280px}
  .location-scene{height:100%;left:20%}
  .location::before{mask-image:linear-gradient(128deg,#000 0 46%,#000e 49%,#0006 53%,transparent 58%)}
  .location-content{padding-top:25px}
  .location-cta{width:320px;right:auto;left:calc(118 * var(--u));bottom:22px}
  .footer-brand{width:190px}
  .site-footer p{font-size:15px}
}
@media(max-width:359px){
  .site-header{padding-inline:16px;gap:10px}
  .brand{width:144px}
  .header-cta{min-width:100px;font-size:14px;padding-inline:12px}
  .registration-wrap,.event-info{padding-inline:18px}
  .registration-card{padding-inline:16px}
  .registration-card h2{font-size:20px}
  .benefits{padding-inline:18px}
  .benefits h2{font-size:23px}
  .benefits-intro{font-size:10.7px;letter-spacing:-.05em}
  .benefit-card{gap:5px;padding-inline:5px}
  .benefit-card .icon{width:20px}
  .benefit-card p{font-size:10.7px}
  .location-content{padding-inline:18px}
  .location-cta{left:18px;right:18px}
  .site-footer{padding-inline:18px;gap:14px}
  .footer-brand{width:140px}
  .site-footer p{font-size:11px;padding-left:14px}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{transition:none!important}
}
