@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/fonts/ecorit-0.ttf) format('truetype');
}
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/fonts/ecorit-1.ttf) format('truetype');
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/fonts/ecorit-2.ttf) format('truetype');
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/fonts/ecorit-3.ttf) format('truetype');
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/fonts/ecorit-4.ttf) format('truetype');
}

:root{--ink:#36253f;--muted:#786a80;--purple:#79548d;--cream:#fcf9f5;--line:#e7deeb;--ease:cubic-bezier(.23,1,.32,1)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;background:var(--cream);color:var(--ink);font-family:'Segoe UI',Arial,sans-serif;font-size:20px;line-height:1.6;position:relative;isolation:isolate}button,input{font:inherit}a{color:inherit;text-decoration:none}button,a,input,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #b490ca;outline-offset:5px}img{max-width:100%;height:auto;display:block}.page-art{position:absolute;inset:0;z-index:-1;background:url('assets/botanical-ribbons.svg') center top/100% auto repeat-y;opacity:.12;pointer-events:none}.wrap{max-width:1400px;margin:auto;padding-inline:48px}.header{display:flex;align-items:center;justify-content:space-between;gap:25px;height:112px}.brand img{width:80px;height:80px;object-fit:contain;mix-blend-mode:multiply}.header nav{display:flex;gap:27px;font-size:16px}.header-cta{font-size:16px;border-bottom:1px solid #c7aed4;padding-bottom:5px}.header-cta span{margin-left:15px}.hero{padding-bottom:30px}.hero-stage{display:grid;grid-template-columns:1.1fr 1fr;gap:35px;align-items:center;background:linear-gradient(125deg,#f1e5f5,#faf5ef 55%,#e9dcef);border:1px solid #ede3ef;border-radius:34px;padding:45px;overflow:hidden}.eyebrow{font-size:12px;letter-spacing:2px;font-weight:600;margin:0 0 24px;color:#8b7496}.hero h1{font-size:clamp(44px,5.5vw,78px);font-weight:500;line-height:1.05;letter-spacing:-3.7px;margin:0}.hero h1>span{font-size:.78em;color:#89629a;display:inline-block;margin-top:15px}.intro{font-size:25px;line-height:1.5;margin:28px 0}.intro strong{font-weight:600}.event{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 26px}.event span{background:#ffffff9c;padding:7px 15px;border-radius:50px;font-size:15px}.button{display:inline-flex;justify-content:center;align-items:center;gap:25px;border:1px solid #9874a9;background:#876299;color:white;min-height:61px;padding:17px 28px;border-radius:50px;font-size:18px;cursor:pointer;transition:transform 180ms var(--ease),background 180ms ease}.button span{font-size:24px;line-height:1}.hero-note{margin-top:24px;background:#fffafbd9;border-radius:16px;padding:15px 18px;font-size:16px;display:flex;gap:14px;align-items:center}.note-star{color:#b38a46;font-size:30px}.hero-art img{width:100%;border-radius:24px}.section{padding-top:95px;padding-bottom:95px}h2{font-size:clamp(36px,4.1vw,58px);font-weight:400;line-height:1.13;letter-spacing:-2px;margin:0 0 25px}h2 em{font-style:normal;color:#a27db1}h3{font-size:29px;line-height:1.2;font-weight:600;letter-spacing:-.6px;margin:0 0 20px}.lead{font-size:23px;line-height:1.65;margin:22px 0;color:#62566a}.teacher{padding-top:45px}.teacher-panel{background:#fff;border-radius:36px;padding:45px;display:grid;grid-template-columns:1.25fr .8fr;gap:55px;align-items:center}.teacher-copy>.lead{max-width:680px}.teacher-facts{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:35px}.teacher-facts>div{background:#f6f0f7;border-radius:22px;padding:24px}.teacher-facts strong{display:block;font-size:22px;font-weight:600;margin-bottom:10px}.teacher-facts span{font-size:18px;line-height:1.5;display:block;color:#716579}.fact-wide{grid-column:1/-1}.teacher-photo img{width:100%;border-radius:25px}.about{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.concept-symbol{width:275px;margin:20px auto -10px;filter:drop-shadow(0 18px 23px #b393c71c)}.statement{background:#fff;border-radius:27px;padding:30px}.statement strong{font-size:25px;line-height:1.4;font-weight:500;display:block}.statement p{font-size:20px;color:#786b7e;margin:18px 0 0;line-height:1.65}.audience{background:linear-gradient(180deg,#f7f1f78c,#eee4f488)}.audience-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:65px;align-items:center}.feeling-chips{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.feeling-chips span{padding:11px 20px;border-radius:50px;background:#fff;font-size:22px;line-height:1.4}.aside-symbol{width:240px;margin:-15px auto -6px}.audience-aside .statement{position:relative}.topics{background:linear-gradient(180deg,#fcf9f5,#eee0f2)}.program-heading{text-align:center;max-width:920px;margin:0 auto 105px}.program-heading .lead{font-size:23px}.program-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;align-items:start}.program-card{position:relative;background:#7e6a87;color:#fff;border-radius:28px;padding:85px 27px 28px;min-width:0;box-shadow:0 12px 30px #6e487314}.program-card:nth-child(2){background:#8d7896}.program-card:nth-child(3){background:#76667f}.card-symbol{width:145px;height:145px;position:absolute;right:15px;top:-69px;filter:drop-shadow(0 12px 16px #45304b24);pointer-events:none}.card-kicker{font-size:11px;letter-spacing:1.4px;color:#e8d7ed;display:block;margin-bottom:20px}.program-card h3{font-size:30px;min-height:72px}.program-card>p{font-size:19px;line-height:1.65;min-height:125px;color:#faf4fc;margin-bottom:25px}.program-card details{border-top:1px solid #ffffff38;padding-top:16px}.program-card summary{font-size:16px;cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:10px}.program-card summary::-webkit-details-marker{display:none}.program-card summary>span{font-size:26px;font-weight:300;transition:transform 200ms ease}.program-card details[open] summary>span{transform:rotate(45deg)}.program-card details h4{font-size:19px;margin:22px 0 8px;font-weight:600}.program-card details p{font-size:17px;line-height:1.65;margin:0;color:#f0e7f3}.program-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:35px;padding:26px 30px;background:#ffffff8f;border-radius:25px}.program-bottom>span{font-size:20px}.story-heading{max-width:850px}.story-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:40px}.story-grid article{border:1px solid #e5d9e8;border-radius:26px;background:#fffdfbc9;padding:30px}.story-grid article>span{font-size:15px;color:#ae8cb9;display:block;margin-bottom:28px}.story-grid h3{font-size:25px}.story-grid p{font-size:19px;color:#75667e;line-height:1.65}blockquote{margin:40px 0 0;padding:38px;text-align:center;background:#efe5f2;border-radius:28px;font-size:31px;line-height:1.45;letter-spacing:-.5px}blockquote>span{display:block;font-size:12px;text-transform:uppercase;letter-spacing:2px;color:#89718f;margin-bottom:15px}blockquote small{display:block;font-size:19px;color:#8b7195;margin-top:20px}.participation{background:#f2eaf5a8}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:35px}.section-heading>p{font-size:20px;color:#786980}.format-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:30px}.format-option{text-align:left;background:#fffafde8;border:1px solid #e1d4e7;border-radius:27px;padding:30px;cursor:pointer;color:var(--ink);display:grid;grid-template-columns:auto 1fr;gap:12px 20px;transition:background 180ms ease,transform 180ms var(--ease)}.format-icon{grid-row:1/4;font-size:40px;line-height:1;color:#a180b2}.format-option strong{font-size:28px;font-weight:500}.format-option>span:not(.format-icon){font-size:19px;color:#7a6c81}.format-option b{font-weight:500;font-size:16px;color:#916ca2;margin-top:12px}.registration{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start}.registration-copy{position:sticky;top:50px}.registration-copy>p{font-size:22px;line-height:1.8;color:#776780}.form-card{position:relative;background:radial-gradient(ellipse at top right,#e9dcf34d,transparent 50%),linear-gradient(150deg,#fffdfa,#fcf8ff);border:1px solid #e4d9e9;border-radius:27px;padding:38px;box-shadow:0 18px 65px #60447809}.pill{display:inline-block;border:1px solid #dbc5a3;color:#8c6735;background:#fffdf8b3;border-radius:40px;padding:7px 15px;font-size:15px}.form-card h3{font-size:34px;font-weight:500;margin:25px 0 16px}.form-card>p{font-size:18px;color:#776580;margin-bottom:30px}form label{display:block;font-size:17px;color:#523664;margin:23px 0 9px}input:not([type=radio]){width:100%;background:#ffffffb8;border:1px solid #e5ddeb;border-radius:12px;min-height:61px;padding:16px;font-size:19px;color:var(--ink)}input::placeholder{color:#a297a9;font-size:17px}input:not([type=radio]):focus{outline:2px solid #b596c94d;outline-offset:2px;border-color:#ad8fc1;background:white}.field-hint{display:block;font-size:13px;line-height:1.6;color:#807287;margin-top:9px}.field-hint[hidden]{display:none}#email-optional{color:#8c7d94}fieldset{border:0;border-top:1px solid #e8deec;margin:28px 0 0;padding:22px 0 0;min-width:0}legend{float:left;width:100%;font-size:18px;line-height:1.4;padding:0;margin-bottom:15px}.choice-grid{clear:both;display:grid;grid-template-columns:1fr 1fr;gap:10px}form label.choice{display:flex;align-items:center;gap:10px;margin:0;padding:14px 12px;min-height:58px;background:#ffffff9e;border:1px solid #e6dceb;border-radius:13px;font-size:16px;cursor:pointer}.choice input{width:18px;height:18px;margin:0;accent-color:#866098;flex-shrink:0}.choice:has(input:checked){background:#eee6f4;border-color:#bba2ca}.choice:focus-within{outline:2px solid #ad8fc1;outline-offset:3px}form .button{width:100%;margin-top:26px;border-radius:14px}.prototype-note{font-size:13px;text-align:center;color:#8b7e92;line-height:1.6;margin-top:17px}#form-status{background:#efe6f4;border-left:2px solid #b598c6;border-radius:12px;padding:18px;font-size:16px}#form-status p{margin:10px 0 0}footer{border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:20px;padding-top:30px;padding-bottom:30px;font-size:13px;color:#8b7893}.footer-brand{font-size:25px;color:#78548b}.footer-brand em{font-size:18px}.hero-copy{animation:enter 650ms var(--ease)}@keyframes enter{from{opacity:.3;transform:translateY(25px)}to{opacity:1;transform:none}}
@media(hover:hover) and (pointer:fine){.button:hover{transform:translateY(-3px);background:#785488}.format-option:hover{transform:translateY(-4px);background:#f8f0fb}.program-card summary:hover{color:#f1d4ff}.header nav a:hover{color:#ac7ac1}}@media(max-width:1100px){.wrap{padding-inline:30px}.hero-stage{padding:32px;gap:25px}.hero h1{letter-spacing:-2.2px}.teacher-panel{padding:32px;gap:30px}.program-card{padding-inline:23px}.program-card h3{font-size:26px}.program-card>p{font-size:18px;min-height:165px}.teacher-facts{grid-template-columns:1fr}.registration{gap:35px}.about,.audience-layout{gap:35px}}
@media(max-width:800px){.header nav{display:none}.wrap{padding-inline:22px}.header{height:95px}.brand img{width:68px;height:68px}.hero-stage{grid-template-columns:1fr;border-radius:26px;padding:30px}.hero h1{font-size:58px;letter-spacing:-2px}.hero-art{max-width:440px;width:100%;margin:auto}.hero-art img{border-radius:18px}.hero .button{width:100%}.hero-note{font-size:15px}.hero-copy>.intro{font-size:23px}.section{padding-block:65px}h2{font-size:43px;letter-spacing:-1.4px}.teacher-panel{grid-template-columns:1fr;padding:30px;border-radius:28px}.teacher-facts{grid-template-columns:1fr 1fr}.teacher-photo{max-width:420px;margin:auto}.about,.audience-layout{grid-template-columns:1fr;gap:15px}.concept-symbol{width:230px}.lead{font-size:21px}.statement{padding:25px}.statement strong{font-size:24px}.statement p{font-size:19px}.feeling-chips span{font-size:20px}.aside-symbol{width:190px;margin:20px auto 0}.program-cards{grid-template-columns:1fr;gap:85px}.program-card{padding:80px 30px 30px;max-width:620px;width:100%;margin:auto}.program-card h3{font-size:32px;min-height:0}.program-card>p{font-size:20px;min-height:0}.program-heading{margin-bottom:95px}.program-heading .lead{font-size:20px}.program-bottom{flex-direction:column;text-align:center}.program-bottom .button{width:100%}.story-grid{grid-template-columns:1fr;gap:17px}.story-grid article{padding:26px}.story-grid article>span{margin-bottom:15px}.story-grid h3{font-size:27px}.story-grid p{font-size:20px}.section-heading{display:block}.format-grid{grid-template-columns:1fr}.registration{grid-template-columns:1fr;gap:25px}.registration-copy{position:static}.form-card{padding:30px}.registration-copy>p{font-size:20px}footer{flex-wrap:wrap}footer p{order:3;width:100%;margin:0}}
@media(max-width:450px){.hero{padding-inline:12px}.hero-stage{padding:26px 22px}.hero h1{font-size:47px;letter-spacing:-1.8px}.hero h1>span{font-size:.79em}.eyebrow{font-size:10px;letter-spacing:1.4px}.hero-copy>.intro{font-size:21px}.event span{font-size:13px}.button{font-size:16px;padding:16px 20px}.hero-note{font-size:14px}h2{font-size:37px;letter-spacing:-1.1px}.teacher{padding-inline:12px}.teacher-panel{padding:26px 22px}.teacher-facts{grid-template-columns:1fr}.teacher-facts>div{padding:21px}.teacher-facts strong{font-size:21px}.teacher-facts span{font-size:18px}.feeling-chips{gap:9px}.feeling-chips span{font-size:18px;padding:10px 16px}.statement strong{font-size:23px}.program-card{padding-inline:25px}.program-card h3{font-size:30px}.program-card>p{font-size:19px}.program-bottom{padding:24px 18px}.program-bottom>span{font-size:17px}blockquote{padding:28px 23px;font-size:26px}blockquote small{font-size:18px}.format-option{padding:26px 22px}.format-option strong{font-size:26px}.format-option>span:not(.format-icon){font-size:18px}.format-icon{font-size:30px}.form-card{padding:28px 22px}.form-card h3{font-size:31px}.choice-grid{gap:8px}form label.choice{font-size:15px;padding:13px 10px;gap:8px}.field-hint{font-size:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-copy{animation:none}*{transition:none!important}.button:hover,.format-option:hover{transform:none}}

/* Refined Cyrillic typography and sculptural illustrations */
body{font-family:Manrope,Arial,sans-serif;font-weight:400}
h1,h2,h3{font-family:"Cormorant Garamond",Georgia,serif}
.hero h1{font-weight:600;letter-spacing:-1.8px;line-height:1.02;font-size:clamp(52px,6vw,86px)}
h2{font-weight:500;letter-spacing:-1px;line-height:1.08;font-size:clamp(42px,4.6vw,65px)}
h2 em{font-style:italic;color:#91679e}
h3,.program-card h3{font-weight:600;font-size:35px;letter-spacing:-.5px;line-height:1.1}
.program-card h3{min-height:80px}.card-symbol{object-fit:contain;width:160px;height:160px;top:-73px;right:18px}
.concept-symbol{width:280px}.aside-symbol{width:255px;margin:0 auto 18px}
@media(max-width:450px){.hero h1{font-size:53px;letter-spacing:-1px}h2{font-size:43px}.program-card h3{font-size:35px}.card-symbol{width:145px;height:145px}.lead{font-size:21px}}
/* Paper collage direction: richer violet, cut-out shadows and one-pass neon accents. */
:root{--ink:#321642;--muted:#6b5279;--purple:#70409b}
h2 em,.hero h1>span{color:#8145a4}.eyebrow{color:#79508b}.lead{color:#61466f}
.hero-stage{background:linear-gradient(125deg,#ead7f3,#faf4ed 58%,#dcc1ec);border-color:#ceb0df;overflow:visible}
.hero-art{position:relative;padding:14px;isolation:isolate}.hero-art img{border-radius:0;object-fit:contain;filter:drop-shadow(7px 15px 9px #4723522d);animation:paper-sway 7s ease-in-out infinite;transform-origin:50% 80%}
.program-card{background:#674080;box-shadow:0 14px 28px #42215820}.program-card:nth-child(2){background:#795092}.program-card:nth-child(3){background:#543268}.card-kicker{color:#eedcf8}
.card-symbol,.concept-symbol,.aside-symbol{object-fit:contain;filter:drop-shadow(5px 9px 4px #34144538);animation:paper-sway 6s ease-in-out infinite}.program-card:nth-child(2) .card-symbol{animation-delay:-2s}.program-card:nth-child(3) .card-symbol{animation-delay:-4s}
.button{background:#754299;border-color:#8e57b2}.audience{background:linear-gradient(180deg,#f0e4f6aa,#e3ccf0aa)}.topics{background:linear-gradient(180deg,#fcf9f5,#e4cbee)}.participation{background:#ecddf3}.teacher-facts>div{background:#f0e3f6}
main>section{position:relative;isolation:isolate}main>section::after{content:"";position:absolute;pointer-events:none;left:5%;right:5%;bottom:0;height:2px;background:linear-gradient(90deg,transparent,#c878ff,#f6d095,transparent);box-shadow:0 0 14px #b352f0;opacity:0;transform:scaleX(.08);transform-origin:left}
.program-card,.statement,.form-card,.format-option,.story-grid article{transition:box-shadow .35s ease,border-color .35s ease}
@keyframes neon-pass{0%{opacity:0;transform:scaleX(.08)}30%{opacity:.85}65%{opacity:.55}100%{opacity:0;transform:scaleX(1)}}
@keyframes paper-sway{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-8px) rotate(1deg)}}
@media(hover:hover){main>section:hover::after{animation:neon-pass 1.2s ease-out}.program-card:hover,.statement:hover,.form-card:hover,.format-option:hover,.story-grid article:hover{box-shadow:0 0 0 1px #b573dd,0 0 22px #ab59dc38,0 16px 30px #40204f1c}.program-card:hover .card-symbol{filter:drop-shadow(5px 9px 4px #34144538) drop-shadow(0 0 7px #ce9af0)}}
main>section:focus-within::after{animation:neon-pass 1.2s ease-out}.format-option:focus-visible{box-shadow:0 0 18px #b56de24d}
@media(max-width:800px){.hero-art{max-width:510px;margin:0 auto;padding:5px}.hero-stage{overflow:hidden}.card-symbol{animation-duration:8s}}
@media(prefers-reduced-motion:reduce){.hero-art img,.card-symbol,.concept-symbol,.aside-symbol,main>section::after{animation:none!important;transform:none!important}main>section:focus-within::after,main>section:hover::after{opacity:.5}.program-card,.statement,.form-card,.format-option,.story-grid article{transition:none}}

/* Real Cyrillic calligraphy: gently curved display type. */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url(assets/fonts/cormorant-italic-0.ttf) format('truetype');
}
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 600;
  font-display: swap;
  src: url(assets/fonts/cormorant-italic-1.ttf) format('truetype');
}

h1,h2,h3{font-style:italic;font-synthesis:none}
.hero h1{letter-spacing:-1px;line-height:1.08}
h2{letter-spacing:-.5px;line-height:1.12}
h3,.program-card h3{line-height:1.16;letter-spacing:0}
.teacher-facts strong,.format-option strong{font-family:"Cormorant Garamond",Georgia,serif;font-style:italic;font-weight:600;font-size:31px;line-height:1.15;letter-spacing:0}
.teacher-facts strong{display:block;margin-bottom:12px}
@media(max-width:450px){.teacher-facts strong,.format-option strong{font-size:29px}.hero h1{font-size:51px;letter-spacing:-.6px}}

/* Living format illustrations: warm office windows and a quiet connection signal. */
.format-icon.live-icon{width:78px;height:88px;line-height:0;align-self:start;filter:drop-shadow(0 5px 3px #4e285720)}
.live-icon svg{width:100%;height:100%;overflow:visible;transition:transform 250ms ease-out}
.window-light{animation:window-glow 3s ease-in-out infinite}
.welcome-spark{transform-origin:70px 17px;animation:welcome-glow 3s ease-in-out infinite}
.signal{animation:signal-wave 3s ease-in-out infinite}.signal-two{animation-delay:.35s}.signal-three{animation-delay:.7s}
.online-light{animation:window-glow 3s ease-in-out infinite}
@keyframes window-glow{0%,100%{opacity:.25}50%{opacity:1}}
@keyframes welcome-glow{0%,100%{opacity:.4;transform:rotate(-8deg) scale(.95)}50%{opacity:1;transform:rotate(8deg) scale(1.05)}}
@keyframes signal-wave{0%,100%{opacity:.2}45%,65%{opacity:1}}
@media(hover:hover){.format-option:hover .live-icon svg{transform:translateY(-4px) rotate(-2deg)}}
@media(max-width:450px){.format-icon.live-icon{width:54px;height:65px}.format-option{column-gap:15px}}
@media(prefers-reduced-motion:reduce){.live-icon *{animation:none!important;transition:none!important;transform:none!important}}

/* Invitation typography: italic invitation, upright webinar title. */
.hero .invitation-title{font-size:clamp(54px,5.2vw,76px);line-height:.98;letter-spacing:-1px;margin-bottom:26px}
.hero .invitation-title em{display:block;font-weight:600;font-size:1em}
.hero .invitation-title>span{display:block;font-size:1.06em;font-style:normal;font-weight:600;color:#321642;letter-spacing:.015em;margin-top:8px}
.hero-copy>.invitation-copy{font-size:clamp(22px,2vw,27px);line-height:1.5;color:#422350;margin:0 0 24px;max-width:580px}
.hero-copy>.intro{font-size:19px;line-height:1.55;margin-bottom:22px}
.hero-art{width:100%;padding:0}.hero-art img{width:100%;height:auto;max-height:620px;object-fit:contain}
@media(max-width:800px){.hero .invitation-title{font-size:64px}.hero-copy>.invitation-copy{font-size:24px}.hero-art{max-width:480px}}
@media(max-width:450px){.hero .invitation-title{font-size:clamp(40px,11.5vw,51px);letter-spacing:-.5px}.hero-copy>.invitation-copy{font-size:21px;line-height:1.5}.hero-copy>.intro{font-size:18px}}

.hero .event span{font-size:17px;padding:9px 15px}.hero .event span:first-child{font-size:21px;color:#5b3473}@media(max-width:450px){.hero .event span{font-size:14px}.hero .event span:first-child{font-size:18px}}

/* Persistent contact and return navigation. */
.floating-action{position:fixed;bottom:calc(22px + env(safe-area-inset-bottom,0px));z-index:50;width:54px;height:54px;border-radius:50%;display:grid;place-items:center;text-decoration:none;box-shadow:0 5px 20px #37224026;transition:transform 200ms ease,box-shadow 200ms ease}
.floating-action svg{width:30px;height:30px}.floating-whatsapp{left:22px;background:#168c4b;color:#fff;border:1px solid #ffffff80}.floating-top{right:22px;background:#fff9fe;color:#754299;border:1px solid #ccb1dd}.floating-top svg{width:25px;height:25px}
.floating-action:focus-visible{outline:3px solid #b683cd;outline-offset:4px}
@media(hover:hover){.floating-action:hover{transform:translateY(-3px);box-shadow:0 8px 25px #37224040}}
footer.wrap{padding-bottom:100px}
@media(max-width:600px){.floating-action{width:48px;height:48px;bottom:calc(14px + env(safe-area-inset-bottom,0px))}.floating-whatsapp{left:14px}.floating-top{right:14px}}
@media(prefers-reduced-motion:reduce){.floating-action{transition:none}.floating-action:hover{transform:none}}

/* Personal invitation, shown only after a saved registration. */
.form-card.is-confirmed{padding:34px;background:radial-gradient(ellipse at 100% 0,#e8d6f180,transparent 55%),linear-gradient(145deg,#fffcf7,#faf4ff);border-color:#d8c2e5}
.form-card.is-confirmed>:not(#registration-confirmation){display:none}
#registration-confirmation{scroll-margin-top:28px;text-align:center;min-width:0}
#registration-confirmation[hidden]{display:none}
.confirmation-topline{display:flex;justify-content:space-between;align-items:center;gap:12px}
.confirmation-badge{display:inline-flex;align-items:center;gap:7px;font-size:12px;color:#614276;background:#efe3f5;border:1px solid #ddc7e8;border-radius:30px;padding:7px 11px}
.confirmation-badge>span{color:#684284;font-size:15px}
.confirmation-brand{font-size:11px;letter-spacing:2px;color:#94743c}
.confirmation-lily{display:block;width:112px;height:112px;object-fit:contain;margin:15px auto 0;filter:drop-shadow(0 7px 5px #6d3d7c20)}
.form-card #confirmation-title{font-size:clamp(36px,3.6vw,49px);line-height:1.04;font-weight:600;margin:8px 0 20px;overflow-wrap:anywhere;outline-offset:7px}
#confirmation-title span,#confirmation-title em{display:block}#confirmation-title em{color:#754299}
.confirmation-date{font-size:clamp(17px,1.65vw,21px);line-height:1.5;color:#43234f;margin:0}
.confirmation-host{font-size:14px;color:#7f6b85;margin:7px 0 0}
.confirmation-details{border-block:1px solid #dfcce8;padding:21px 0;margin:25px 0 22px}
.confirmation-format{font-size:17px;margin:0 0 11px}.confirmation-format strong{font-weight:600;color:#754299}
.confirmation-delivery{font-size:18px;font-weight:500;line-height:1.5;margin:0 0 8px}
.confirmation-instructions{font-size:15px;line-height:1.65;color:#776080;margin:0;overflow-wrap:anywhere}
.confirmation-actions{display:grid;gap:11px}.confirmation-action{display:flex;align-items:center;justify-content:center;gap:10px;min-height:56px;width:100%;border:1px solid #d3b5e2;border-radius:14px;padding:15px 12px;font:500 15px/1.4 Manrope,Arial,sans-serif;text-decoration:none;cursor:pointer;list-style:none;background:#754299;color:white;transition:background .2s ease,box-shadow .2s ease}
.confirmation-action::-webkit-details-marker{display:none}.confirmation-action>svg,.confirmation-share>svg{flex-shrink:0;width:21px;height:21px;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.calendar-chevron{margin-left:auto}.calendar-picker>summary>svg{margin-right:auto}.calendar-picker[open] .calendar-chevron{transform:rotate(180deg)}
.calendar-options{text-align:left;border:1px solid #ddc7e8;border-radius:14px;margin-top:8px;padding:7px 15px;background:#fffdfa}
.calendar-options a{display:flex;justify-content:space-between;align-items:center;gap:8px;min-height:48px;font-size:14px;color:#62377c;text-decoration:none}.calendar-options a+a{border-top:1px solid #eee1f3}.calendar-options small{display:block;font-size:12px;line-height:1.6;color:#807187;padding:9px 0}
.confirmation-question{color:#694083;background:#fffafc}.confirmation-question>span{margin-left:auto}.confirmation-question>svg{margin-right:auto}
.confirmation-share{display:flex;justify-content:center;align-items:center;gap:9px;width:100%;min-height:46px;border:0;background:transparent;color:#76518a;font:500 14px/1.4 Manrope,Arial,sans-serif;cursor:pointer;padding:10px 0}
.confirmation-action:focus-visible,.confirmation-share:focus-visible,.calendar-options a:focus-visible,#copy-invitation:focus-visible{outline:2px solid #9b68b5;outline-offset:4px}
#share-fallback{text-align:left;margin-top:15px;padding-top:15px;border-top:1px solid #dfcce8}#share-fallback[hidden]{display:none}#share-fallback label{font-size:13px;color:#715e7a;display:block;margin-bottom:10px}.share-copy-row{display:flex;gap:8px;flex-wrap:wrap}#share-link{font-size:13px;min-width:0;flex:1 1 190px;min-height:44px;padding:10px;background:white}#copy-invitation{min-height:44px;background:#eee0f5;border:1px solid #d7bde5;border-radius:12px;padding:10px 12px;color:#57336d;font:500 13px Manrope,Arial,sans-serif;cursor:pointer}
#share-status{font-size:13px;line-height:1.6;color:#70587d;margin:12px 0 0}#share-status:empty{display:none}.confirmation-footnote{font-size:13px;line-height:1.5;color:#88758d;margin:18px 0 0}
.is-confirmed #registration-confirmation{animation:invitation-arrive .45s ease-out}
@keyframes invitation-arrive{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@media(hover:hover){.calendar-picker>summary:hover{background:#663684}.confirmation-question:hover{background:#f0e4f7}.confirmation-share:hover{color:#4b2568}.calendar-options a:hover{text-decoration:underline}}
@media(max-width:450px){.form-card.is-confirmed{padding:25px 20px}.confirmation-brand{font-size:10px;letter-spacing:1px}.confirmation-badge{font-size:11px;padding:6px 8px}.confirmation-topline{gap:7px}.confirmation-lily{width:95px;height:95px;margin-top:12px}.form-card #confirmation-title{font-size:39px}.confirmation-date{font-size:17px}.confirmation-details{padding-block:18px;margin-block:21px 19px}.confirmation-delivery{font-size:17px}.confirmation-action{font-size:14px}}
@media(prefers-reduced-motion:reduce){.is-confirmed #registration-confirmation{animation:none}}

/* Restored original ECORIT mark: lilac figures and lettering, yellow sun. */
.header{height:132px}.brand{flex-shrink:0}.brand img{width:112px;height:112px;object-fit:contain;mix-blend-mode:multiply}
.footer-brand{display:block;flex-shrink:0}.footer-brand img{width:108px;height:108px;object-fit:contain;mix-blend-mode:multiply}
@media(max-width:800px){.header{height:112px}.brand img{width:92px;height:92px}.footer-brand img{width:96px;height:96px}}
